From: Auger Eric <eric.auger-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org> To: Robin Murphy <robin.murphy-5wv7dgnIgG8@public.gmane.org>, will.deacon-5wv7dgnIgG8@public.gmane.org, joro-zLv9SwRftAIdnm+yROfE0A@public.gmane.org, iommu-cunTk1MwBs9QetFLy7KEm3xJsTq8ys+cHZ5vskTnxNA@public.gmane.org, linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org Cc: devicetree-u79uwXL29TY76Z2rM5mHXA@public.gmane.org, lorenzo.pieralisi-5wv7dgnIgG8@public.gmane.org, jean-philippe.brucker-5wv7dgnIgG8@public.gmane.org, punit.agrawal-5wv7dgnIgG8@public.gmane.org, thunder.leizhen-hv44wF8Li93QT0dZR+AlfA@public.gmane.org Subject: Re: [PATCH v7 00/22] Generic DT bindings for PCI IOMMUs and ARM SMMU Date: Wed, 14 Sep 2016 10:41:57 +0200 [thread overview] Message-ID: <11ebd81e-2ea5-5ff3-35b3-be95f03e05bd@redhat.com> (raw) In-Reply-To: <cover.1473695704.git.robin.murphy-5wv7dgnIgG8@public.gmane.org> Hi, On 12/09/2016 18:13, Robin Murphy wrote: > Hi all, > > To any more confusing fixups and crazily numbered extra patches, here's > a quick v7 with everything rebased into the right order. The significant > change this time is to implement iommu_fwspec properly from the start, > which ends up being far simpler and more robust than faffing about > introducing it somewhere 'less intrusive' to move toward core code later. > > New branch in the logical place: > > git://linux-arm.org/linux-rm iommu/generic-v7 For information, as discussed privately with Robin I experience some regressions with the former and now deprecated dt description. on my AMD Overdrive board and my old dt description I now only see a single group: /sys/kernel/iommu_groups/ /sys/kernel/iommu_groups/0 /sys/kernel/iommu_groups/0/devices /sys/kernel/iommu_groups/0/devices/e0700000.xgmac whereas I formerly see /sys/kernel/iommu_groups/ /sys/kernel/iommu_groups/3 /sys/kernel/iommu_groups/3/devices /sys/kernel/iommu_groups/3/devices/0000:00:00.0 /sys/kernel/iommu_groups/1 /sys/kernel/iommu_groups/1/devices /sys/kernel/iommu_groups/1/devices/e0700000.xgmac /sys/kernel/iommu_groups/4 /sys/kernel/iommu_groups/4/devices /sys/kernel/iommu_groups/4/devices/0000:00:02.2 /sys/kernel/iommu_groups/4/devices/0000:01:00.1 /sys/kernel/iommu_groups/4/devices/0000:00:02.0 /sys/kernel/iommu_groups/4/devices/0000:01:00.0 /sys/kernel/iommu_groups/2 /sys/kernel/iommu_groups/2/devices /sys/kernel/iommu_groups/2/devices/e0900000.xgmac /sys/kernel/iommu_groups/0 /sys/kernel/iommu_groups/0/devices /sys/kernel/iommu_groups/0/devices/f0000000.pcie This is the group topology without ACS override. Applying the non upstreamed "pci: Enable overrides for missing ACS capabilities" I used to see separate groups for each PCIe components. Now I don't see any difference with and without ACS override. Thanks Eric > > Robin. > > Mark Rutland (1): > Docs: dt: add PCI IOMMU map bindings > > Robin Murphy (21): > of/irq: Break out msi-map lookup (again) > iommu/of: Handle iommu-map property for PCI > iommu: Introduce iommu_fwspec > Docs: dt: document ARM SMMUv3 generic binding usage > iommu/arm-smmu: Fall back to global bypass > iommu/arm-smmu: Implement of_xlate() for SMMUv3 > iommu/arm-smmu: Support non-PCI devices with SMMUv3 > iommu/arm-smmu: Set PRIVCFG in stage 1 STEs > iommu/arm-smmu: Handle stream IDs more dynamically > iommu/arm-smmu: Consolidate stream map entry state > iommu/arm-smmu: Keep track of S2CR state > iommu/arm-smmu: Refactor mmu-masters handling > iommu/arm-smmu: Streamline SMMU data lookups > iommu/arm-smmu: Add a stream map entry iterator > iommu/arm-smmu: Intelligent SMR allocation > iommu/arm-smmu: Convert to iommu_fwspec > Docs: dt: document ARM SMMU generic binding usage > iommu/arm-smmu: Wire up generic configuration support > iommu/arm-smmu: Set domain geometry > iommu/dma: Add support for mapping MSIs > iommu/dma: Avoid PCI host bridge windows > > .../devicetree/bindings/iommu/arm,smmu-v3.txt | 8 +- > .../devicetree/bindings/iommu/arm,smmu.txt | 63 +- > .../devicetree/bindings/pci/pci-iommu.txt | 171 ++++ > arch/arm64/mm/dma-mapping.c | 2 +- > drivers/gpu/drm/exynos/exynos_drm_iommu.h | 2 +- > drivers/iommu/Kconfig | 2 +- > drivers/iommu/arm-smmu-v3.c | 386 +++++---- > drivers/iommu/arm-smmu.c | 962 ++++++++++----------- > drivers/iommu/dma-iommu.c | 161 +++- > drivers/iommu/iommu.c | 56 ++ > drivers/iommu/of_iommu.c | 52 +- > drivers/irqchip/irq-gic-v2m.c | 3 + > drivers/irqchip/irq-gic-v3-its.c | 3 + > drivers/of/irq.c | 78 +- > drivers/of/of_pci.c | 102 +++ > include/linux/device.h | 3 + > include/linux/dma-iommu.h | 12 +- > include/linux/iommu.h | 38 + > include/linux/of_pci.h | 10 + > 19 files changed, 1323 insertions(+), 791 deletions(-) > create mode 100644 Documentation/devicetree/bindings/pci/pci-iommu.txt > -- To unsubscribe from this list: send the line "unsubscribe devicetree" in the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org More majordomo info at http://vger.kernel.org/majordomo-info.html
WARNING: multiple messages have this Message-ID (diff)
From: eric.auger@redhat.com (Auger Eric) To: linux-arm-kernel@lists.infradead.org Subject: [PATCH v7 00/22] Generic DT bindings for PCI IOMMUs and ARM SMMU Date: Wed, 14 Sep 2016 10:41:57 +0200 [thread overview] Message-ID: <11ebd81e-2ea5-5ff3-35b3-be95f03e05bd@redhat.com> (raw) In-Reply-To: <cover.1473695704.git.robin.murphy@arm.com> Hi, On 12/09/2016 18:13, Robin Murphy wrote: > Hi all, > > To any more confusing fixups and crazily numbered extra patches, here's > a quick v7 with everything rebased into the right order. The significant > change this time is to implement iommu_fwspec properly from the start, > which ends up being far simpler and more robust than faffing about > introducing it somewhere 'less intrusive' to move toward core code later. > > New branch in the logical place: > > git://linux-arm.org/linux-rm iommu/generic-v7 For information, as discussed privately with Robin I experience some regressions with the former and now deprecated dt description. on my AMD Overdrive board and my old dt description I now only see a single group: /sys/kernel/iommu_groups/ /sys/kernel/iommu_groups/0 /sys/kernel/iommu_groups/0/devices /sys/kernel/iommu_groups/0/devices/e0700000.xgmac whereas I formerly see /sys/kernel/iommu_groups/ /sys/kernel/iommu_groups/3 /sys/kernel/iommu_groups/3/devices /sys/kernel/iommu_groups/3/devices/0000:00:00.0 /sys/kernel/iommu_groups/1 /sys/kernel/iommu_groups/1/devices /sys/kernel/iommu_groups/1/devices/e0700000.xgmac /sys/kernel/iommu_groups/4 /sys/kernel/iommu_groups/4/devices /sys/kernel/iommu_groups/4/devices/0000:00:02.2 /sys/kernel/iommu_groups/4/devices/0000:01:00.1 /sys/kernel/iommu_groups/4/devices/0000:00:02.0 /sys/kernel/iommu_groups/4/devices/0000:01:00.0 /sys/kernel/iommu_groups/2 /sys/kernel/iommu_groups/2/devices /sys/kernel/iommu_groups/2/devices/e0900000.xgmac /sys/kernel/iommu_groups/0 /sys/kernel/iommu_groups/0/devices /sys/kernel/iommu_groups/0/devices/f0000000.pcie This is the group topology without ACS override. Applying the non upstreamed "pci: Enable overrides for missing ACS capabilities" I used to see separate groups for each PCIe components. Now I don't see any difference with and without ACS override. Thanks Eric > > Robin. > > Mark Rutland (1): > Docs: dt: add PCI IOMMU map bindings > > Robin Murphy (21): > of/irq: Break out msi-map lookup (again) > iommu/of: Handle iommu-map property for PCI > iommu: Introduce iommu_fwspec > Docs: dt: document ARM SMMUv3 generic binding usage > iommu/arm-smmu: Fall back to global bypass > iommu/arm-smmu: Implement of_xlate() for SMMUv3 > iommu/arm-smmu: Support non-PCI devices with SMMUv3 > iommu/arm-smmu: Set PRIVCFG in stage 1 STEs > iommu/arm-smmu: Handle stream IDs more dynamically > iommu/arm-smmu: Consolidate stream map entry state > iommu/arm-smmu: Keep track of S2CR state > iommu/arm-smmu: Refactor mmu-masters handling > iommu/arm-smmu: Streamline SMMU data lookups > iommu/arm-smmu: Add a stream map entry iterator > iommu/arm-smmu: Intelligent SMR allocation > iommu/arm-smmu: Convert to iommu_fwspec > Docs: dt: document ARM SMMU generic binding usage > iommu/arm-smmu: Wire up generic configuration support > iommu/arm-smmu: Set domain geometry > iommu/dma: Add support for mapping MSIs > iommu/dma: Avoid PCI host bridge windows > > .../devicetree/bindings/iommu/arm,smmu-v3.txt | 8 +- > .../devicetree/bindings/iommu/arm,smmu.txt | 63 +- > .../devicetree/bindings/pci/pci-iommu.txt | 171 ++++ > arch/arm64/mm/dma-mapping.c | 2 +- > drivers/gpu/drm/exynos/exynos_drm_iommu.h | 2 +- > drivers/iommu/Kconfig | 2 +- > drivers/iommu/arm-smmu-v3.c | 386 +++++---- > drivers/iommu/arm-smmu.c | 962 ++++++++++----------- > drivers/iommu/dma-iommu.c | 161 +++- > drivers/iommu/iommu.c | 56 ++ > drivers/iommu/of_iommu.c | 52 +- > drivers/irqchip/irq-gic-v2m.c | 3 + > drivers/irqchip/irq-gic-v3-its.c | 3 + > drivers/of/irq.c | 78 +- > drivers/of/of_pci.c | 102 +++ > include/linux/device.h | 3 + > include/linux/dma-iommu.h | 12 +- > include/linux/iommu.h | 38 + > include/linux/of_pci.h | 10 + > 19 files changed, 1323 insertions(+), 791 deletions(-) > create mode 100644 Documentation/devicetree/bindings/pci/pci-iommu.txt >
next prev parent reply other threads:[~2016-09-14 8:41 UTC|newest] Thread overview: 104+ messages / expand[flat|nested] mbox.gz Atom feed top 2016-09-12 16:13 [PATCH v7 00/22] Generic DT bindings for PCI IOMMUs and ARM SMMU Robin Murphy 2016-09-12 16:13 ` Robin Murphy [not found] ` <cover.1473695704.git.robin.murphy-5wv7dgnIgG8@public.gmane.org> 2016-09-12 16:13 ` [PATCH v7 01/22] Docs: dt: add PCI IOMMU map bindings Robin Murphy 2016-09-12 16:13 ` Robin Murphy 2016-09-12 16:13 ` [PATCH v7 02/22] of/irq: Break out msi-map lookup (again) Robin Murphy 2016-09-12 16:13 ` Robin Murphy 2016-09-12 16:13 ` [PATCH v7 03/22] iommu/of: Handle iommu-map property for PCI Robin Murphy 2016-09-12 16:13 ` Robin Murphy 2016-09-12 16:13 ` [PATCH v7 04/22] iommu: Introduce iommu_fwspec Robin Murphy 2016-09-12 16:13 ` Robin Murphy [not found] ` <742a71630de502ac5a7a8641c6ed368d8409324d.1473695704.git.robin.murphy-5wv7dgnIgG8@public.gmane.org> 2016-09-13 9:54 ` [PATCH v7.1 " Robin Murphy 2016-09-13 9:54 ` Robin Murphy 2016-09-12 16:13 ` [PATCH v7 05/22] Docs: dt: document ARM SMMUv3 generic binding usage Robin Murphy 2016-09-12 16:13 ` Robin Murphy [not found] ` <2273645f1fa5c76b6b98b5fd03804ab8b55a7691.1473695704.git.robin.murphy-5wv7dgnIgG8@public.gmane.org> 2016-09-20 14:46 ` Rob Herring 2016-09-20 14:46 ` Rob Herring 2016-09-12 16:13 ` [PATCH v7 06/22] iommu/arm-smmu: Fall back to global bypass Robin Murphy 2016-09-12 16:13 ` Robin Murphy 2016-09-12 16:13 ` [PATCH v7 07/22] iommu/arm-smmu: Implement of_xlate() for SMMUv3 Robin Murphy 2016-09-12 16:13 ` Robin Murphy 2016-09-12 16:13 ` [PATCH v7 08/22] iommu/arm-smmu: Support non-PCI devices with SMMUv3 Robin Murphy 2016-09-12 16:13 ` Robin Murphy 2016-09-12 16:13 ` [PATCH v7 09/22] iommu/arm-smmu: Set PRIVCFG in stage 1 STEs Robin Murphy 2016-09-12 16:13 ` Robin Murphy 2016-09-12 16:13 ` [PATCH v7 10/22] iommu/arm-smmu: Handle stream IDs more dynamically Robin Murphy 2016-09-12 16:13 ` Robin Murphy 2016-09-12 16:13 ` [PATCH v7 11/22] iommu/arm-smmu: Consolidate stream map entry state Robin Murphy 2016-09-12 16:13 ` Robin Murphy 2016-09-12 16:13 ` [PATCH v7 12/22] iommu/arm-smmu: Keep track of S2CR state Robin Murphy 2016-09-12 16:13 ` Robin Murphy 2016-09-12 16:13 ` [PATCH v7 13/22] iommu/arm-smmu: Refactor mmu-masters handling Robin Murphy 2016-09-12 16:13 ` Robin Murphy [not found] ` <046d2d21f988d6ece916fc45b0af0804a7f200f2.1473695704.git.robin.murphy-5wv7dgnIgG8@public.gmane.org> 2016-09-14 14:21 ` [PATCH v7.1 " Robin Murphy 2016-09-14 14:21 ` Robin Murphy 2016-09-12 16:13 ` [PATCH v7 14/22] iommu/arm-smmu: Streamline SMMU data lookups Robin Murphy 2016-09-12 16:13 ` Robin Murphy 2016-09-12 16:13 ` [PATCH v7 15/22] iommu/arm-smmu: Add a stream map entry iterator Robin Murphy 2016-09-12 16:13 ` Robin Murphy 2016-09-12 16:13 ` [PATCH v7 16/22] iommu/arm-smmu: Intelligent SMR allocation Robin Murphy 2016-09-12 16:13 ` Robin Murphy 2016-09-12 16:13 ` [PATCH v7 17/22] iommu/arm-smmu: Convert to iommu_fwspec Robin Murphy 2016-09-12 16:13 ` Robin Murphy 2016-09-12 16:13 ` [PATCH v7 18/22] Docs: dt: document ARM SMMU generic binding usage Robin Murphy 2016-09-12 16:13 ` Robin Murphy 2016-09-12 16:13 ` [PATCH v7 19/22] iommu/arm-smmu: Wire up generic configuration support Robin Murphy 2016-09-12 16:13 ` Robin Murphy [not found] ` <228dc6c675f10ae7481640d4ef2f4960c170621f.1473695704.git.robin.murphy-5wv7dgnIgG8@public.gmane.org> 2016-09-14 14:26 ` [PATCH v7.1 " Robin Murphy 2016-09-14 14:26 ` Robin Murphy 2016-09-12 16:13 ` [PATCH v7 20/22] iommu/arm-smmu: Set domain geometry Robin Murphy 2016-09-12 16:13 ` Robin Murphy 2016-09-12 16:13 ` [PATCH v7 21/22] iommu/dma: Add support for mapping MSIs Robin Murphy 2016-09-12 16:13 ` Robin Murphy [not found] ` <2273af20d844bd618c6a90b57e639700328ebf7f.1473695704.git.robin.murphy-5wv7dgnIgG8@public.gmane.org> 2016-10-05 7:00 ` Nipun Gupta 2016-10-05 7:00 ` Nipun Gupta [not found] ` <DB6PR0402MB2694B2E5AE266F138784D2C2E6C40-2mNvjAGDOPn2WJ5A9zev/o3W/0Ik+aLCnBOFsp37pqbUKgpGm//BTAC/G2K4zDHf@public.gmane.org> 2016-10-05 9:55 ` Robin Murphy 2016-10-05 9:55 ` Robin Murphy [not found] ` <6ec9519b-01df-3be8-2967-7556bd306909-5wv7dgnIgG8@public.gmane.org> 2016-10-05 11:31 ` Nipun Gupta 2016-10-05 11:31 ` Nipun Gupta 2016-09-12 16:14 ` [PATCH v7 22/22] iommu/dma: Avoid PCI host bridge windows Robin Murphy 2016-09-12 16:14 ` Robin Murphy [not found] ` <5f7bfee298f98d29a35933d3e0252d32b83d62b8.1473695704.git.robin.murphy-5wv7dgnIgG8@public.gmane.org> 2016-09-14 10:55 ` Marek Szyprowski 2016-09-14 10:55 ` Marek Szyprowski [not found] ` <ab8693f6-20d6-2a95-9f1f-0607e72bc012-Sze3O3UU22JBDgjK7y7TUQ@public.gmane.org> 2016-09-14 11:10 ` Robin Murphy 2016-09-14 11:10 ` Robin Murphy [not found] ` <49c51c4f-cb00-445d-b8f8-b632babf2b3e-5wv7dgnIgG8@public.gmane.org> 2016-09-14 12:35 ` Marek Szyprowski 2016-09-14 12:35 ` Marek Szyprowski [not found] ` <dc9f945f-2756-ab70-d061-9fdc7c5afdee-Sze3O3UU22JBDgjK7y7TUQ@public.gmane.org> 2016-09-14 13:25 ` Robin Murphy 2016-09-14 13:25 ` Robin Murphy [not found] ` <bbdc42fa-ea35-945f-3e2a-e0ab03fc997d-5wv7dgnIgG8@public.gmane.org> 2016-09-15 7:08 ` Marek Szyprowski 2016-09-15 7:08 ` Marek Szyprowski 2016-09-13 12:14 ` [PATCH v7 00/22] Generic DT bindings for PCI IOMMUs and ARM SMMU Auger Eric 2016-09-13 12:14 ` Auger Eric [not found] ` <92f27a6b-9752-516d-3924-c552fc6a5ace-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org> 2016-09-13 12:40 ` Robin Murphy 2016-09-13 12:40 ` Robin Murphy [not found] ` <e24821be-5cc4-52b3-f961-1eb32cf58293-5wv7dgnIgG8@public.gmane.org> 2016-09-13 12:57 ` Auger Eric 2016-09-13 12:57 ` Auger Eric 2016-09-14 8:41 ` Auger Eric [this message] 2016-09-14 8:41 ` Auger Eric [not found] ` <11ebd81e-2ea5-5ff3-35b3-be95f03e05bd-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org> 2016-09-14 9:20 ` Will Deacon 2016-09-14 9:20 ` Will Deacon [not found] ` <20160914092051.GB19622-5wv7dgnIgG8@public.gmane.org> 2016-09-14 9:35 ` Auger Eric 2016-09-14 9:35 ` Auger Eric 2016-09-14 10:35 ` Robin Murphy 2016-09-14 10:35 ` Robin Murphy [not found] ` <d03ea5e7-59f1-8b49-4ba2-d05fc2030ebc-5wv7dgnIgG8@public.gmane.org> 2016-09-14 12:32 ` Auger Eric 2016-09-14 12:32 ` Auger Eric [not found] ` <04a0a682-4fdc-8d62-57cd-efdf730582c6-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org> 2016-09-14 12:53 ` Robin Murphy 2016-09-14 12:53 ` Robin Murphy [not found] ` <c2645c5e-edd3-2b31-4311-0ca621a915e2-5wv7dgnIgG8@public.gmane.org> 2016-09-15 9:29 ` Auger Eric 2016-09-15 9:29 ` Auger Eric [not found] ` <4d87d5f2-0350-b5f8-ffc3-4e9377cf1f87-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org> 2016-09-15 10:15 ` Robin Murphy 2016-09-15 10:15 ` Robin Murphy [not found] ` <fc4ce398-4eeb-f2ca-b964-e9f466be79c4-5wv7dgnIgG8@public.gmane.org> 2016-09-15 16:46 ` Auger Eric 2016-09-15 16:46 ` Auger Eric [not found] ` <1838c65d-5944-8946-781c-b420bea1acab-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org> 2016-09-16 16:18 ` Robin Murphy 2016-09-16 16:18 ` Robin Murphy [not found] ` <f16db032-1905-9804-0607-fe007af72b0e-5wv7dgnIgG8@public.gmane.org> 2016-09-19 12:13 ` Auger Eric 2016-09-19 12:13 ` Auger Eric [not found] ` <48f3bc10-3966-7d50-d070-7ec7f0946c92-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org> 2016-09-19 12:24 ` Will Deacon 2016-09-19 12:24 ` Will Deacon [not found] ` <20160919122435.GD9005-5wv7dgnIgG8@public.gmane.org> 2016-09-19 12:41 ` Robin Murphy 2016-09-19 12:41 ` Robin Murphy [not found] ` <99ee0946-c7ff-e6e4-08c1-ff686ea1a8a5-5wv7dgnIgG8@public.gmane.org> 2016-09-19 14:17 ` Will Deacon 2016-09-19 14:17 ` Will Deacon
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=11ebd81e-2ea5-5ff3-35b3-be95f03e05bd@redhat.com \ --to=eric.auger-h+wxahxf7alqt0dzr+alfa@public.gmane.org \ --cc=devicetree-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \ --cc=iommu-cunTk1MwBs9QetFLy7KEm3xJsTq8ys+cHZ5vskTnxNA@public.gmane.org \ --cc=jean-philippe.brucker-5wv7dgnIgG8@public.gmane.org \ --cc=joro-zLv9SwRftAIdnm+yROfE0A@public.gmane.org \ --cc=linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org \ --cc=lorenzo.pieralisi-5wv7dgnIgG8@public.gmane.org \ --cc=punit.agrawal-5wv7dgnIgG8@public.gmane.org \ --cc=robin.murphy-5wv7dgnIgG8@public.gmane.org \ --cc=thunder.leizhen-hv44wF8Li93QT0dZR+AlfA@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: linkBe sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.