From: Hiroshi Doyu <hdoyu-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org> To: "swarren-3lzwWm7+Weoh9ZMKESR00Q@public.gmane.org" <swarren-3lzwWm7+Weoh9ZMKESR00Q@public.gmane.org> Cc: "iommu-cunTk1MwBs9QetFLy7KEm3xJsTq8ys+cHZ5vskTnxNA@public.gmane.org" <iommu-cunTk1MwBs9QetFLy7KEm3xJsTq8ys+cHZ5vskTnxNA@public.gmane.org>, "linux-tegra-u79uwXL29TY76Z2rM5mHXA@public.gmane.org" <linux-tegra-u79uwXL29TY76Z2rM5mHXA@public.gmane.org>, "linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org" <linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org>, "thierry.reding-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org" <thierry.reding-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org> Subject: Re: [PATCH v2 03/22] ARM: tegra: Create a DT header defining swgroups ID Date: Mon, 29 Jul 2013 12:53:36 +0200 [thread overview] Message-ID: <20130729.135336.943359637886118972.hdoyu@nvidia.com> (raw) In-Reply-To: <51E5D220.1070708-3lzwWm7+Weoh9ZMKESR00Q@public.gmane.org> Stephen Warren <swarren-3lzwWm7+Weoh9ZMKESR00Q@public.gmane.org> wrote @ Wed, 17 Jul 2013 01:07:12 +0200: > On 07/05/2013 04:44 AM, Hiroshi Doyu wrote: > > Create a header file to define the swgroup IDs used by the IOMMU(SMMU) > > binding. "swgroup" is a group of H/W clients in Tegra SoC from S/W POV. > > > > This will allow the same header to be used by both device tree files, > > and drivers implementing this binding, which guarantees that the two > > stay in sync. This also makes device trees more readable by using names > > instead of magic numbers. > > Why does the driver need these constants; shouldn't it simply support > 0..n SW group IDs that all work the same way? Or, is there some reason > for it to know the identities? > > > diff --git a/include/dt-bindings/memory/tegra-swgroup.h b/include/dt-bindings/memory/tegra-swgroup.h > > s/memory/iommu/? This info would be used in PMC code as well, which H/W belongs to which swgroup. So I use the term "memory(-client)" instead of "iommu". > s/tegra-swgroup.h/tegra-smmu.h/? Is "tegra-memory-clients.h" preferable, then? > > +#define TEGRA_SWGROUP_AFI 0 > > Should this file document which values are valid for which SoCs? Should > there be separate files for each SoC; I don't know if it's guaranteed > that IDs won't be re-assigned between different SoCs. I've checked all SoC which I can refer. Those IDs are calculated from the register offset. But I haven't got any explicit guarantee from H/W designers yet. > > +#define TEGRA_SWGROUP_BIT(x) (1ULL << TEGRA_SWGROUP_##x) > > + > > +#define TEGRA30_SWGROUP_ALL <0x00000000 0x000779ff> > > +#define TEGRA114_SWGROUP_ALL <0x00000000 0x01b659fe> > > Are those 3 values needed by DT files, or just the driver? Only from DT.
WARNING: multiple messages have this Message-ID (diff)
From: hdoyu@nvidia.com (Hiroshi Doyu) To: linux-arm-kernel@lists.infradead.org Subject: [PATCH v2 03/22] ARM: tegra: Create a DT header defining swgroups ID Date: Mon, 29 Jul 2013 12:53:36 +0200 [thread overview] Message-ID: <20130729.135336.943359637886118972.hdoyu@nvidia.com> (raw) In-Reply-To: <51E5D220.1070708@wwwdotorg.org> Stephen Warren <swarren@wwwdotorg.org> wrote @ Wed, 17 Jul 2013 01:07:12 +0200: > On 07/05/2013 04:44 AM, Hiroshi Doyu wrote: > > Create a header file to define the swgroup IDs used by the IOMMU(SMMU) > > binding. "swgroup" is a group of H/W clients in Tegra SoC from S/W POV. > > > > This will allow the same header to be used by both device tree files, > > and drivers implementing this binding, which guarantees that the two > > stay in sync. This also makes device trees more readable by using names > > instead of magic numbers. > > Why does the driver need these constants; shouldn't it simply support > 0..n SW group IDs that all work the same way? Or, is there some reason > for it to know the identities? > > > diff --git a/include/dt-bindings/memory/tegra-swgroup.h b/include/dt-bindings/memory/tegra-swgroup.h > > s/memory/iommu/? This info would be used in PMC code as well, which H/W belongs to which swgroup. So I use the term "memory(-client)" instead of "iommu". > s/tegra-swgroup.h/tegra-smmu.h/? Is "tegra-memory-clients.h" preferable, then? > > +#define TEGRA_SWGROUP_AFI 0 > > Should this file document which values are valid for which SoCs? Should > there be separate files for each SoC; I don't know if it's guaranteed > that IDs won't be re-assigned between different SoCs. I've checked all SoC which I can refer. Those IDs are calculated from the register offset. But I haven't got any explicit guarantee from H/W designers yet. > > +#define TEGRA_SWGROUP_BIT(x) (1ULL << TEGRA_SWGROUP_##x) > > + > > +#define TEGRA30_SWGROUP_ALL <0x00000000 0x000779ff> > > +#define TEGRA114_SWGROUP_ALL <0x00000000 0x01b659fe> > > Are those 3 values needed by DT files, or just the driver? Only from DT.
next prev parent reply other threads:[~2013-07-29 10:53 UTC|newest] Thread overview: 132+ messages / expand[flat|nested] mbox.gz Atom feed top 2013-07-05 10:44 [PATCH v2 00/22] Unified SMMU driver among Tegra SoCs Hiroshi Doyu 2013-07-05 10:44 ` Hiroshi Doyu [not found] ` <1373021097-32420-1-git-send-email-hdoyu-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org> 2013-07-05 10:44 ` [PATCH v2 01/22] [HACK] of: dev_node has struct device pointer Hiroshi Doyu 2013-07-05 10:44 ` Hiroshi Doyu [not found] ` <1373021097-32420-2-git-send-email-hdoyu-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org> 2013-07-16 22:57 ` Stephen Warren 2013-07-16 22:57 ` Stephen Warren [not found] ` <51E5CFBF.5080407-3lzwWm7+Weoh9ZMKESR00Q@public.gmane.org> 2013-07-16 23:16 ` Thierry Reding 2013-07-16 23:16 ` Thierry Reding [not found] ` <20130716231629.GA12189-RcKxWJ4Cfj3FNiLNb7+IINdj8bHVeoWogfoxzgwHRXE@public.gmane.org> 2013-07-29 10:13 ` Hiroshi Doyu 2013-07-29 10:13 ` Hiroshi Doyu [not found] ` <20130729.131344.1221933042559369096.hdoyu-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org> 2013-07-29 13:13 ` Lorenzo Pieralisi 2013-07-29 13:13 ` Lorenzo Pieralisi 2013-07-05 10:44 ` [PATCH v2 02/22] ARM: tegra: Populate AHB/IOMMU earlier than others Hiroshi Doyu 2013-07-05 10:44 ` Hiroshi Doyu [not found] ` <1373021097-32420-3-git-send-email-hdoyu-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org> 2013-07-16 23:03 ` Stephen Warren 2013-07-16 23:03 ` Stephen Warren 2013-07-05 10:44 ` [PATCH v2 03/22] ARM: tegra: Create a DT header defining swgroups ID Hiroshi Doyu 2013-07-05 10:44 ` Hiroshi Doyu [not found] ` <1373021097-32420-4-git-send-email-hdoyu-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org> 2013-07-16 23:07 ` Stephen Warren 2013-07-16 23:07 ` Stephen Warren [not found] ` <51E5D220.1070708-3lzwWm7+Weoh9ZMKESR00Q@public.gmane.org> 2013-07-29 10:53 ` Hiroshi Doyu [this message] 2013-07-29 10:53 ` Hiroshi Doyu [not found] ` <20130729.135336.943359637886118972.hdoyu-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org> 2013-07-29 17:45 ` Stephen Warren 2013-07-29 17:45 ` Stephen Warren [not found] ` <51F6AA2B.7050509-3lzwWm7+Weoh9ZMKESR00Q@public.gmane.org> 2013-07-30 4:56 ` Hiroshi Doyu 2013-07-30 4:56 ` Hiroshi Doyu 2013-07-05 10:44 ` [PATCH v2 04/22] ARM: dt: tegra30: iommu: Add "nvidia,swgroup" Hiroshi Doyu 2013-07-05 10:44 ` Hiroshi Doyu [not found] ` <1373021097-32420-5-git-send-email-hdoyu-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org> 2013-07-16 23:10 ` Stephen Warren 2013-07-16 23:10 ` Stephen Warren 2013-07-05 10:44 ` [PATCH v2 05/22] ARM: dt: tegra30: iommu: Add "nvidia,memory-client" Hiroshi Doyu 2013-07-05 10:44 ` Hiroshi Doyu [not found] ` <1373021097-32420-6-git-send-email-hdoyu-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org> 2013-07-16 23:14 ` [PATCH v2 05/22] ARM: dt: tegra30: iommu: Add "nvidia, memory-client" Stephen Warren 2013-07-16 23:14 ` Stephen Warren [not found] ` <51E5D3D9.2090608-3lzwWm7+Weoh9ZMKESR00Q@public.gmane.org> 2013-07-29 11:06 ` [PATCH v2 05/22] ARM: dt: tegra30: iommu: Add "nvidia,memory-client" Hiroshi Doyu 2013-07-29 11:06 ` Hiroshi Doyu [not found] ` <20130729.140646.649065361266278007.hdoyu-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org> 2013-07-29 17:47 ` Stephen Warren 2013-07-29 17:47 ` [PATCH v2 05/22] ARM: dt: tegra30: iommu: Add "nvidia, memory-client" Stephen Warren [not found] ` <51F6AA98.4020701-3lzwWm7+Weoh9ZMKESR00Q@public.gmane.org> 2013-07-30 5:11 ` [PATCH v2 05/22] ARM: dt: tegra30: iommu: Add "nvidia,memory-client" Hiroshi Doyu 2013-07-30 5:11 ` Hiroshi Doyu 2013-07-05 10:44 ` [PATCH v2 06/22] ARM: dt: tegra114: iommu: Fix IOMMU register address Hiroshi Doyu 2013-07-05 10:44 ` Hiroshi Doyu [not found] ` <1373021097-32420-7-git-send-email-hdoyu-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org> 2013-07-16 23:18 ` Stephen Warren 2013-07-16 23:18 ` Stephen Warren [not found] ` <51E5D4C5.4090109-3lzwWm7+Weoh9ZMKESR00Q@public.gmane.org> 2013-07-16 23:27 ` Thierry Reding 2013-07-16 23:27 ` Thierry Reding 2013-07-05 10:44 ` [PATCH v2 07/22] ARM: dt: tegra114: iommu: Add "nvidia,swgroups" Hiroshi Doyu 2013-07-05 10:44 ` Hiroshi Doyu 2013-07-05 10:44 ` [PATCH v2 08/22] ARM: dt: tegra114: Add "nvidia,memory-client" Hiroshi Doyu 2013-07-05 10:44 ` Hiroshi Doyu 2013-07-05 10:44 ` [PATCH v2 09/22] amba: Move AHB to core_initcall Hiroshi Doyu 2013-07-05 10:44 ` Hiroshi Doyu [not found] ` <1373021097-32420-10-git-send-email-hdoyu-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org> 2013-07-16 23:20 ` Stephen Warren 2013-07-16 23:20 ` Stephen Warren 2013-07-05 10:44 ` [PATCH v2 10/22] iommu/tegra: smmu: Move IOMMU " Hiroshi Doyu 2013-07-05 10:44 ` Hiroshi Doyu [not found] ` <1373021097-32420-11-git-send-email-hdoyu-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org> 2013-07-16 23:21 ` Stephen Warren 2013-07-16 23:21 ` Stephen Warren 2013-07-05 10:44 ` [PATCH v2 11/22] iommu/tegra: smmu: Add Tegra 114 support Hiroshi Doyu 2013-07-05 10:44 ` Hiroshi Doyu [not found] ` <1373021097-32420-12-git-send-email-hdoyu-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org> 2013-07-18 20:01 ` Stephen Warren 2013-07-18 20:01 ` Stephen Warren 2013-07-05 10:44 ` [PATCH v2 12/22] iommu/tegra: smmu: Select ARM_DMA_USE_IOMMU in Kconfig Hiroshi Doyu 2013-07-05 10:44 ` Hiroshi Doyu 2013-07-05 10:44 ` [PATCH v2 13/22] iommu/tegra: smmu: Create default IOVA maps Hiroshi Doyu 2013-07-05 10:44 ` Hiroshi Doyu [not found] ` <1373021097-32420-14-git-send-email-hdoyu-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org> 2013-07-18 20:10 ` Stephen Warren 2013-07-18 20:10 ` Stephen Warren [not found] ` <51E84BB5.9010303-3lzwWm7+Weoh9ZMKESR00Q@public.gmane.org> 2013-07-29 11:24 ` Hiroshi Doyu 2013-07-29 11:24 ` Hiroshi Doyu [not found] ` <20130729.142409.995770519696534476.hdoyu-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org> 2013-07-29 17:50 ` Stephen Warren 2013-07-29 17:50 ` Stephen Warren 2013-07-05 10:44 ` [PATCH v2 14/22] iommu/tegra: smmu: Register platform_device to IOMMU dynamically Hiroshi Doyu 2013-07-05 10:44 ` Hiroshi Doyu [not found] ` <1373021097-32420-15-git-send-email-hdoyu-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org> 2013-07-18 20:17 ` Stephen Warren 2013-07-18 20:17 ` Stephen Warren [not found] ` <51E84D51.2030404-3lzwWm7+Weoh9ZMKESR00Q@public.gmane.org> 2013-07-29 11:27 ` Hiroshi Doyu 2013-07-29 11:27 ` Hiroshi Doyu [not found] ` <20130729.142752.1020949402019811407.hdoyu-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org> 2013-07-29 17:54 ` Stephen Warren 2013-07-29 17:54 ` Stephen Warren [not found] ` <51F6AC41.30007-3lzwWm7+Weoh9ZMKESR00Q@public.gmane.org> 2013-07-30 5:18 ` Hiroshi Doyu 2013-07-30 5:18 ` Hiroshi Doyu 2013-07-05 10:44 ` [PATCH v2 15/22] iommu/tegra: smmu: Calculate ASID register offset by ID Hiroshi Doyu 2013-07-05 10:44 ` Hiroshi Doyu [not found] ` <1373021097-32420-16-git-send-email-hdoyu-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org> 2013-07-18 20:18 ` Stephen Warren 2013-07-18 20:18 ` Stephen Warren 2013-07-05 10:44 ` [PATCH v2 16/22] iommu/tegra: smmu: Get "nvidia,swgroup" from DT Hiroshi Doyu 2013-07-05 10:44 ` Hiroshi Doyu [not found] ` <1373021097-32420-17-git-send-email-hdoyu-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org> 2013-07-18 20:28 ` Stephen Warren 2013-07-18 20:28 ` Stephen Warren [not found] ` <51E84FFA.8020509-3lzwWm7+Weoh9ZMKESR00Q@public.gmane.org> 2013-07-29 11:39 ` Hiroshi Doyu 2013-07-29 11:39 ` Hiroshi Doyu [not found] ` <20130729.143950.524913713971518557.hdoyu-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org> 2013-07-29 18:00 ` Stephen Warren 2013-07-29 18:00 ` Stephen Warren 2013-07-05 10:44 ` [PATCH v2 17/22] iommu/tegra: smmu: Unfied driver for Tegra SoCs Hiroshi Doyu 2013-07-05 10:44 ` Hiroshi Doyu 2013-07-05 10:44 ` [PATCH v2 18/22] iommu/tegra: smmu: Use dt-bindings MACRO Hiroshi Doyu 2013-07-05 10:44 ` Hiroshi Doyu [not found] ` <1373021097-32420-19-git-send-email-hdoyu-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org> 2013-07-18 20:30 ` Stephen Warren 2013-07-18 20:30 ` Stephen Warren 2013-07-05 10:44 ` [PATCH v2 19/22] iommu/tegra: smmu: Workaround PCIe IOMMU'able Hiroshi Doyu 2013-07-05 10:44 ` Hiroshi Doyu [not found] ` <1373021097-32420-20-git-send-email-hdoyu-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org> 2013-07-18 20:33 ` Stephen Warren 2013-07-18 20:33 ` Stephen Warren 2013-07-05 10:44 ` [PATCH v2 20/22] iommu/tegra: smmu: Get "nvidia,memory-client" from DT Hiroshi Doyu 2013-07-05 10:44 ` [PATCH v2 20/22] iommu/tegra: smmu: Get "nvidia, memory-client" " Hiroshi Doyu [not found] ` <1373021097-32420-21-git-send-email-hdoyu-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org> 2013-07-18 20:40 ` [PATCH v2 20/22] iommu/tegra: smmu: Get "nvidia,memory-client" " Stephen Warren 2013-07-18 20:40 ` Stephen Warren 2013-07-18 20:40 ` Stephen Warren 2013-07-05 10:44 ` [PATCH v2 21/22] iommu/tegra: smmu: Support Multiple ASID Hiroshi Doyu 2013-07-05 10:44 ` Hiroshi Doyu [not found] ` <1373021097-32420-22-git-send-email-hdoyu-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org> 2013-07-18 20:43 ` Stephen Warren 2013-07-18 20:43 ` Stephen Warren [not found] ` <51E8535A.30605-3lzwWm7+Weoh9ZMKESR00Q@public.gmane.org> 2013-07-29 10:31 ` Hiroshi Doyu 2013-07-29 10:31 ` Hiroshi Doyu [not found] ` <20130729.133155.1836775489422797370.hdoyu-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org> 2013-07-29 17:41 ` Stephen Warren 2013-07-29 17:41 ` Stephen Warren [not found] ` <51F6A943.8000004-3lzwWm7+Weoh9ZMKESR00Q@public.gmane.org> 2013-07-30 5:22 ` Hiroshi Doyu 2013-07-30 5:22 ` Hiroshi Doyu 2013-07-05 10:44 ` [PATCH v2 22/22] ARM: dma-mapping: Drop GFP_COMP for DMA memory allocations Hiroshi Doyu 2013-07-05 10:44 ` Hiroshi Doyu [not found] ` <1373021097-32420-23-git-send-email-hdoyu-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org> 2013-07-18 20:45 ` Stephen Warren 2013-07-18 20:45 ` Stephen Warren 2013-07-05 11:03 ` [PATCH v2 00/22] Unified SMMU driver among Tegra SoCs Marc Dietrich 2013-07-05 11:03 ` Marc Dietrich [not found] ` <4999563.JlU6BysXQl-D3pzGp0ZKuDWZbiwp4sFPyrtisivX6KghOMvlBiLbJSELgA04lAiVw@public.gmane.org> 2013-07-05 11:08 ` Hiroshi Doyu 2013-07-05 11:08 ` Hiroshi Doyu 2013-07-08 8:47 ` Hiroshi Doyu [not found] ` <20130708.114736.1280783845180530098.hdoyu-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org> 2013-07-08 15:49 ` Stephen Warren [not found] ` <51DADF91.30009-3lzwWm7+Weoh9ZMKESR00Q@public.gmane.org> 2013-07-08 17:11 ` Hiroshi Doyu [not found] ` <20130708.201148.1964850060334610089.hdoyu-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org> 2013-07-08 17:37 ` Stephen Warren 2013-09-23 17:07 ` Hiroshi Doyu
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=20130729.135336.943359637886118972.hdoyu@nvidia.com \ --to=hdoyu-ddmlm1+adcrqt0dzr+alfa@public.gmane.org \ --cc=iommu-cunTk1MwBs9QetFLy7KEm3xJsTq8ys+cHZ5vskTnxNA@public.gmane.org \ --cc=linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org \ --cc=linux-tegra-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \ --cc=swarren-3lzwWm7+Weoh9ZMKESR00Q@public.gmane.org \ --cc=thierry.reding-Re5JQEeQqe8AvxtiuMwx3w@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.