iommu.lists.linux-foundation.org archive mirror
 help / color / mirror / Atom feed
From: "Sricharan" <sricharan-sgV2jX0FEOL9JmXXK+q4OQ@public.gmane.org>
To: 'Lorenzo Pieralisi' <lorenzo.pieralisi-5wv7dgnIgG8@public.gmane.org>
Cc: linux-arm-msm-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
	will.deacon-5wv7dgnIgG8@public.gmane.org,
	iommu-cunTk1MwBs9QetFLy7KEm3xJsTq8ys+cHZ5vskTnxNA@public.gmane.org,
	linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org
Subject: RE: [PATCH 02/10] iommu/of: Prepare for deferred IOMMU configuration
Date: Thu, 19 Jan 2017 20:40:18 +0530	[thread overview]
Message-ID: <001a01d27266$295a2550$7c0e6ff0$@codeaurora.org> (raw)
In-Reply-To: <20170119144056.GA4312@red-moon>

Hi Lorenzo,

>-----Original Message-----
>From: linux-arm-kernel [mailto:linux-arm-kernel-bounces-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org] On Behalf Of Lorenzo Pieralisi
>Sent: Thursday, January 19, 2017 8:11 PM
>To: Sricharan <sricharan-sgV2jX0FEOL9JmXXK+q4OQ@public.gmane.org>
>Cc: linux-arm-msm-u79uwXL29TY76Z2rM5mHXA@public.gmane.org; joro-zLv9SwRftAIdnm+yROfE0A@public.gmane.org; will.deacon-5wv7dgnIgG8@public.gmane.org; iommu-cunTk1MwBs9QetFLy7KEm3xJsTq8ys+cHZ5vskTnxNA@public.gmane.org; 'Robin Murphy'
><robin.murphy-5wv7dgnIgG8@public.gmane.org>; linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org
>Subject: Re: [PATCH 02/10] iommu/of: Prepare for deferred IOMMU configuration
>
>Hi Sricharan,
>
>On Fri, Jan 06, 2017 at 04:24:00PM +0000, Lorenzo Pieralisi wrote:
>> On Thu, Jan 05, 2017 at 08:21:53PM +0530, Sricharan wrote:
>> > Hi,
>> >
>> > [...]
>> >
>> > >>>
>> > >>> With the thinking of taking this series through, would it be fine if i
>> > >>> cleanup the pci configure hanging outside and push it in to
>> > >>> of/acpi_iommu configure respectively ? This time with all neeeded for
>> > >>> ACPI added as well.  Also on the last post of V4, Lorenzo commented
>> > >>> that it worked for him, although still the of_match_node equivalent in
>> > >>> ACPI has to be added. If i can get that, then i will add that as well
>> > >>> to make this complete.
>> > >>
>> > >> Question: I had a look into this and instead of fiddling about with the
>> > >> linker script entries in ACPI (ie IORT_ACPI_DECLARE - which I hope this
>> > >> patchset would help remove entirely), I think that the only check we
>> > >> need in IORT is, depending on what type of SMMU a given device is
>> > >> connected to, to check if the respective SMMU driver is compiled in the
>> > >> kernel and it will be probed, _eventually_.
>> > >>
>> > >> As Robin said, by the time a device is probed the respective SMMU
>> > >> devices are already created and registered with IORT kernel code or
>> > >> they will never be, so to understand if we should defer probing
>> > >> SMMU device creation is _not_ really a problem in ACPI.
>> > >>
>> > >> To check if a SMMU driver is enabled, do we really need a linker
>> > >> table ?
>> > >>
>> > >> Would not a check based on eg:
>> > >>
>> > >> /**
>> > >>  * @type: IOMMU IORT node type of the IOMMU a device is connected to
>> > >>  */
>> > >> static bool iort_iommu_driver_enabled(u8 type)
>> > >> {
>> > >> 	switch (type) {
>> > >> 	case ACPI_IORT_SMMU_V3:
>> > >> 		return IS_ENABLED(CONFIG_ARM_SMMU_V3);
>> > >
>> > >IS_BUILTIN(...)
>> > >
>> > >> 	case ACPI_IORT_SMMU:
>> > >> 		return IS_ENABLED(CONFIG_ARM_SMMU);
>> > >> 	default:
>> > >> 		pr_warn("Unknown IORT SMMU type\n");
>> > >
>> > >Might displaying the actual value be helfpul for debugging a broken IORT
>> > >table?
>> > >
>> > >> 		return false;
>> > >> 	}
>> > >> }
>> > >>
>> > >> be sufficient (it is a bit gross, agreed, but it is to understand if
>> > >> that's all we need) ? Is there anything I am missing ?
>> > >>
>> > >> Let me know, I will put together a patch for you I really do not
>> > >> want to block your series for this trivial niggle.
>> > >
>> > >Other than that, though, I like it :) IORT has a small, strictly
>> > >bounded, set of supported devices, so I really don't see the need to go
>> > >overboard putting it on parity with DT when something this neat and
>> > >simple will suffice.
>> > >
>> >
>> > Ok sure, looks correct for me as well in whole of the context here.
>>
>> Ok, I put together a branch where you can find your original series
>> plus some ACPI patches for you to test and use:
>>
>> git://git.kernel.org/pub/scm/linux/kernel/git/lpieralisi/linux.git iommu/probe-deferral
>>
>> Feel free to post the additional patches I added along with your series
>> (that from what I gather you have reworked already) and please both have a
>> look if the deferral mechanism I put in place in ACPI makes sense to you.
>
>Did you have time to make progress on this ? I think it is time we
>posted the complete series to aim for 4.11 please, if you need help just
>let us know.
>

I just posted V5 now.  I have mainly reworked the pci dma configure code which
was lying outside and having it all in one place in dma_configure. The ACPI changes
from you looked fine for me. I have tested on arm64/32 with DT, and require testing
help on ACPI. Thanks.

Regards,
 Sricharan

  reply	other threads:[~2017-01-19 15:10 UTC|newest]

Thread overview: 29+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <CGME20161130002326epcas2p462e9291a284c562b3cfeb2ee4339c5af@epcas2p4.samsung.com>
2016-11-30  0:22 ` [PATCH v4 00/10] IOMMU probe deferral support Sricharan R
2016-11-30  0:22   ` [PATCH 01/10] iommu/of: Refactor of_iommu_configure() for error handling Sricharan R
2016-11-30  0:22   ` [PATCH 02/10] iommu/of: Prepare for deferred IOMMU configuration Sricharan R
     [not found]     ` <1480465344-11862-3-git-send-email-sricharan-sgV2jX0FEOL9JmXXK+q4OQ@public.gmane.org>
2016-11-30 16:17       ` Lorenzo Pieralisi
2016-11-30 16:42         ` Robin Murphy
2016-12-01 11:29           ` Lorenzo Pieralisi
2016-12-01 11:50             ` Sricharan
2017-01-05  8:34             ` Sricharan
2017-01-05 12:27               ` Lorenzo Pieralisi
2017-01-05 13:52                 ` Robin Murphy
     [not found]                   ` <7cd7bcfb-abae-2948-c3f8-230c0d9c9db6-5wv7dgnIgG8@public.gmane.org>
2017-01-05 14:51                     ` Sricharan
2017-01-06 16:24                       ` Lorenzo Pieralisi
2017-01-19 14:40                         ` Lorenzo Pieralisi
2017-01-19 15:10                           ` Sricharan [this message]
2017-01-05 15:35                     ` Lorenzo Pieralisi
2016-11-30  0:22   ` [PATCH 03/10] of: dma: Move range size workaround to of_dma_get_range() Sricharan R
2016-11-30  0:22   ` [PATCH 04/10] of: dma: Make of_dma_deconfigure() public Sricharan R
2016-11-30  0:22   ` [PATCH 05/10] drivers: platform: Configure dma operations at probe time Sricharan R
2016-11-30  0:22   ` [PATCH 06/10] iommu: of: Handle IOMMU lookup failure with deferred probing or error Sricharan R
     [not found]     ` <1480465344-11862-7-git-send-email-sricharan-sgV2jX0FEOL9JmXXK+q4OQ@public.gmane.org>
2016-11-30  7:54       ` Marek Szyprowski
     [not found]         ` <8e91ce72-9d37-f4be-9224-856a1a4c3e1d-Sze3O3UU22JBDgjK7y7TUQ@public.gmane.org>
2016-11-30 11:27           ` Sricharan
2016-11-30 12:57           ` Robin Murphy
     [not found]             ` <5043bd01-2fc3-851d-2d6f-ba5fea96c774-5wv7dgnIgG8@public.gmane.org>
2016-11-30 14:01               ` Sricharan
2016-11-30  0:22   ` [PATCH 07/10] arm64: dma-mapping: Remove the notifier trick to handle early setting of dma_ops Sricharan R
2016-11-30  0:22   ` [PATCH 08/10] iommu/arm-smmu: Clean up early-probing workarounds Sricharan R
2016-11-30  0:22   ` [PATCH 09/10] drivers: acpi: Configure acpi devices dma operation at probe time Sricharan R
2016-11-30  0:22   ` [PATCH 10/10] drivers: acpi: Handle IOMMU lookup failure with deferred probing or error Sricharan R
2016-11-30  8:19   ` [PATCH v4 00/10] IOMMU probe deferral support Marek Szyprowski
     [not found]     ` <90b1ad92-f7e6-b512-0676-90b96af10710-Sze3O3UU22JBDgjK7y7TUQ@public.gmane.org>
2016-11-30 11:28       ` Sricharan

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to='001a01d27266$295a2550$7c0e6ff0$@codeaurora.org' \
    --to=sricharan-sgv2jx0feol9jmxxk+q4oq@public.gmane.org \
    --cc=iommu-cunTk1MwBs9QetFLy7KEm3xJsTq8ys+cHZ5vskTnxNA@public.gmane.org \
    --cc=linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org \
    --cc=linux-arm-msm-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
    --cc=lorenzo.pieralisi-5wv7dgnIgG8@public.gmane.org \
    --cc=will.deacon-5wv7dgnIgG8@public.gmane.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).