public inbox for linux-tegra@vger.kernel.org
 help / color / mirror / Atom feed
From: Stephen Warren <swarren-3lzwWm7+Weoh9ZMKESR00Q@public.gmane.org>
To: Hiroshi Doyu <hdoyu-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>,
	"thierry.reding-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org"
	<thierry.reding-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
Cc: "devicetree-u79uwXL29TY76Z2rM5mHXA@public.gmane.org"
	<devicetree-u79uwXL29TY76Z2rM5mHXA@public.gmane.org>,
	Stephen Warren <swarren-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>,
	"rob.herring-bsGFqQB8/DxBDgjK7y7TUQ@public.gmane.org"
	<rob.herring-bsGFqQB8/DxBDgjK7y7TUQ@public.gmane.org>,
	"linux-tegra-u79uwXL29TY76Z2rM5mHXA@public.gmane.org"
	<linux-tegra-u79uwXL29TY76Z2rM5mHXA@public.gmane.org>,
	"iommu-cunTk1MwBs9QetFLy7KEm3xJsTq8ys+cHZ5vskTnxNA@public.gmane.org"
	<iommu-cunTk1MwBs9QetFLy7KEm3xJsTq8ys+cHZ5vskTnxNA@public.gmane.org>,
	"grant.likely-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org"
	<grant.likely-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org>
Subject: Re: [PATCHv3 01/19] [HACK] of: dev_node has struct device pointer
Date: Thu, 31 Oct 2013 10:37:40 -0600	[thread overview]
Message-ID: <52728754.60307@wwwdotorg.org> (raw)
In-Reply-To: <20131031.101405.2229107340254709582.hdoyu-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>

On 10/31/2013 02:14 AM, Hiroshi Doyu wrote:
> Thierry Reding <thierry.reding-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org> wrote @ Wed, 30 Oct 2013 23:41:09 +0100:
> 
>> My earlier proposal for deferred interrupt reference resolution actually
>> tries to solve that problem within the core. Essentially what it does is
>> add a new function that gets called right before the driver's .probe()
>> function, so that it can parse standard resources and services from DT,
>> such as the interrupts property. This could theoretically be done for
>> other resources such as reg as well, but it really only matters where
>> the resource can be dynamic (as is the case for interrupts).
>>
>> In this case I would envision a standard OF function to associate a
>> device with its IOMMU. Perhaps something like:
>>
>> 	int of_iommu_attach(struct device *dev);
>>
>> That could be called by the core independent of the specific device and
>> IOMMU. IOMMU-specifics can probably be handled using .of_xlate(), quite
>> in a similar way to GPIO or regulators.
>>
>> That way drivers can remain agnostic of the IOMMU while still being able
>> to take advantage of deferred probing.
> 
> This could be simpler than making "bus_notifier" return "-EPROBE_DEFER".
> 
> The disadvantage of this is that we may need to provide the similar
> of_<"subsystem">_attach() per subsytem if needed.

Well, "per subsystem" here means per subsystem that is providing
resources, not per subsystem that is consuming resources. How many
subsystems are you expecting to provide resources like this? At present,
I believe IOMMU is the only subsystem missing some kind of API for
clients to acquire the relevant resource. I don't think there's any
scalability problem here.

  parent reply	other threads:[~2013-10-31 16:37 UTC|newest]

Thread overview: 113+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-10-18 10:26 [PATCHv3 00/19] Unifying SMMU driver among Tegra SoCs Hiroshi Doyu
     [not found] ` <1382092020-13170-1-git-send-email-hdoyu-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>
2013-10-18 10:26   ` [PATCHv3 01/19] [HACK] of: dev_node has struct device pointer Hiroshi Doyu
     [not found]     ` <1382092020-13170-2-git-send-email-hdoyu-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>
2013-10-24  8:55       ` Grant Likely
     [not found]         ` <20131024085531.680A4C4039D-WNowdnHR2B42iJbIjFUEsiwD8/FfD2ys@public.gmane.org>
2013-10-24  9:21           ` Hiroshi Doyu
     [not found]             ` < 20131025001038.77299C403B6@trevor.secretlab.ca>
     [not found]             ` <20131024.122115.1035609747068925560.hdoyu-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>
2013-10-24  9:36               ` Kumar Gala
     [not found]                 ` <3E007970-C2E3-4A2E-B2E3-8388DB7A98F9-sgV2jX0FEOL9JmXXK+q4OQ@public.gmane.org>
2013-10-25  0:12                   ` Grant Likely
2013-10-25  0:10               ` Grant Likely
     [not found]                 ` <20131025001038.77299C403B6-WNowdnHR2B42iJbIjFUEsiwD8/FfD2ys@public.gmane.org>
2013-10-25  7:56                   ` Thierry Reding
     [not found]                     ` <20131025075652.GB19622-AwZRO8vwLAwmlAP/+Wk3EA@public.gmane.org>
2013-10-25  8:22                       ` Hiroshi Doyu
     [not found]                         ` <20131025.112202.47792301040951621.hdoyu-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>
2013-10-25 13:20                           ` Will Deacon
     [not found]                             ` <20131025132051.GD9999-MRww78TxoiP5vMa5CHWGZ34zcgK1vI+I0E9HWUfgJXw@public.gmane.org>
2013-10-25 13:46                               ` Thierry Reding
2013-10-30 21:47                               ` Stephen Warren
2013-10-25  8:25                       ` Hiroshi Doyu
     [not found]                         ` <20131025.112549.2040849946958069337.hdoyu-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>
2013-10-25  9:11                           ` Thierry Reding
     [not found]                             ` <20131025091104.GG19622-AwZRO8vwLAwmlAP/+Wk3EA@public.gmane.org>
2013-10-25  9:49                               ` Hiroshi Doyu
     [not found]                                 ` <20131025.124905.1154427805530939055.hdoyu-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>
2013-10-25 10:49                                   ` Thierry Reding
     [not found]                                     ` <20131025104937.GA25080-AwZRO8vwLAwmlAP/+Wk3EA@public.gmane.org>
2013-10-25 11:08                                       ` Hiroshi Doyu
2013-10-25 19:01                                       ` Grant Likely
     [not found]                                         ` <20131025190136.D55F5C403A7-WNowdnHR2B42iJbIjFUEsiwD8/FfD2ys@public.gmane.org>
2013-10-28  7:31                                           ` Thierry Reding
     [not found]                                             ` <20131028073133.GA6629-AwZRO8vwLAwmlAP/+Wk3EA@public.gmane.org>
2013-11-12  7:17                                               ` Grant Likely
2013-10-30 21:58                               ` Stephen Warren
     [not found]                                 ` <52718122.9000206-3lzwWm7+Weoh9ZMKESR00Q@public.gmane.org>
2013-10-30 22:41                                   ` Thierry Reding
2013-10-31  8:14                                     ` Hiroshi Doyu
     [not found]                                       ` <20131031.101405.2229107340254709582.hdoyu-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>
2013-10-31 16:37                                         ` Stephen Warren [this message]
     [not found]                                           ` <52728754.60307-3lzwWm7+Weoh9ZMKESR00Q@public.gmane.org>
2013-10-31 16:49                                             ` Hiroshi Doyu
2013-11-01  9:53                                             ` Thierry Reding
     [not found]                                               ` <20131101095349.GI27864-AwZRO8vwLAwmlAP/+Wk3EA@public.gmane.org>
2013-11-01 10:09                                                 ` Hiroshi Doyu
2013-10-31  8:12                                   ` Hiroshi Doyu
     [not found]                                     ` <20131031.101232.80781047726461143.hdoyu-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>
2013-10-31 16:35                                       ` Stephen Warren
     [not found]                                         ` <527286CC.9080404-3lzwWm7+Weoh9ZMKESR00Q@public.gmane.org>
2013-10-31 16:46                                           ` Hiroshi Doyu
     [not found]                                             ` <20131031.184603.979300613649357798.hdoyu-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>
2013-10-31 17:53                                               ` Stephen Warren
     [not found]                                                 ` <52729912.9050800-3lzwWm7+Weoh9ZMKESR00Q@public.gmane.org>
2013-11-01  6:49                                                   ` Hiroshi Doyu
     [not found]                                                     ` <20131101084909.5ed79987aa3aeb13b14e3f08-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>
2013-11-01  9:52                                                       ` Thierry Reding
     [not found]                                                         ` <20131101095223.GH27864-AwZRO8vwLAwmlAP/+Wk3EA@public.gmane.org>
2013-11-01 10:05                                                           ` Hiroshi Doyu
2013-11-01 21:44                                                       ` Stephen Warren
2013-11-06 14:06                                                       ` [RFC][PATCHv3+ 1/2] driver/core: Add of_iommu_attach() Hiroshi Doyu
     [not found]                                                         ` <20131106160623.2cb72f91cd071e555d0d4b9a-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>
2013-11-08 13:14                                                           ` Hiroshi Doyu
2013-11-01  9:46                                                   ` [PATCHv3 01/19] [HACK] of: dev_node has struct device pointer Thierry Reding
     [not found]                                                     ` <20131101094644.GG27864-AwZRO8vwLAwmlAP/+Wk3EA@public.gmane.org>
2013-11-01  9:59                                                       ` Hiroshi Doyu
     [not found]                                                         ` <20131101.115919.351108054879013006.hdoyu-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>
2013-11-01 21:45                                                           ` Stephen Warren
     [not found]                                                             ` <527420EF.1070102-3lzwWm7+Weoh9ZMKESR00Q@public.gmane.org>
2013-11-04  6:42                                                               ` Hiroshi Doyu
2013-11-15  7:31                                   ` Grant Likely
2013-10-18 10:26   ` [PATCHv3 02/19] [HACK] ARM: tegra: Populate AHB/IOMMU earlier than others Hiroshi Doyu
     [not found]     ` <1382092020-13170-3-git-send-email-hdoyu-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>
2013-10-30 22:01       ` Stephen Warren
2013-10-18 10:26   ` [PATCHv3 03/19] [HACK] amba: Move AHB to core_initcall Hiroshi Doyu
2013-10-18 10:26   ` [PATCHv3 04/19] [HACK] iommu/tegra: smmu: Move IOMMU " Hiroshi Doyu
2013-10-18 10:26   ` [PATCHv3 05/19] ARM: dt: tegra114: iommu: Fix IOMMU register address Hiroshi Doyu
     [not found]     ` <1382092020-13170-6-git-send-email-hdoyu-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>
2013-10-30 22:07       ` Stephen Warren
     [not found]         ` <52718315.1040307-3lzwWm7+Weoh9ZMKESR00Q@public.gmane.org>
2013-10-31  8:14           ` Hiroshi Doyu
2013-10-31 16:51       ` Mark Rutland
2013-10-31 17:05         ` Hiroshi Doyu
     [not found]           ` <20131031.190524.343708041257755667.hdoyu-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>
2013-10-31 17:11             ` Hiroshi Doyu
     [not found]               ` <20131031.191126.1326472797634956722.hdoyu-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>
2013-10-31 17:34                 ` Mark Rutland
2013-10-18 10:26   ` [PATCHv3 06/19] iommu/tegra: smmu: Select ARM_DMA_USE_IOMMU in Kconfig Hiroshi Doyu
     [not found]     ` <1382092020-13170-7-git-send-email-hdoyu-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>
2013-10-30 22:15       ` Stephen Warren
     [not found]         ` <527184E4.1070800-3lzwWm7+Weoh9ZMKESR00Q@public.gmane.org>
2013-10-31  8:16           ` Hiroshi Doyu
     [not found]             ` <20131031.101601.1966768312584871868.hdoyu-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>
2013-11-01 16:55               ` Stephen Warren
2013-10-18 10:26   ` [PATCHv3 07/19] iommu/tegra: smmu: Create default IOVA maps Hiroshi Doyu
     [not found]     ` <1382092020-13170-8-git-send-email-hdoyu-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>
2013-10-30 22:18       ` Stephen Warren
2013-10-18 10:26   ` [PATCHv3 08/19] iommu/tegra: smmu: Register platform_device to IOMMU dynamically Hiroshi Doyu
2013-10-18 10:26   ` [PATCHv3 09/19] iommu/tegra: smmu: Calculate ASID register offset by ID Hiroshi Doyu
2013-10-18 10:26   ` [PATCHv3 10/19] iommu/tegra: smmu: Get "nvidia,swgroups" from DT Hiroshi Doyu
     [not found]     ` <1382092020-13170-11-git-send-email-hdoyu-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>
2013-10-24  8:58       ` Grant Likely
     [not found]         ` <20131024085811.A3F2CC4039D-WNowdnHR2B42iJbIjFUEsiwD8/FfD2ys@public.gmane.org>
2013-10-30 22:22           ` Stephen Warren
2013-10-30 22:33       ` Stephen Warren
     [not found]         ` <5271893C.6000507-3lzwWm7+Weoh9ZMKESR00Q@public.gmane.org>
2013-10-31  8:17           ` Hiroshi Doyu
     [not found]             ` <20131031.101717.1419377840657413108.hdoyu-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>
2013-11-01 16:54               ` Stephen Warren
     [not found]                 ` <5273DCCD.2050901-3lzwWm7+Weoh9ZMKESR00Q@public.gmane.org>
2013-11-04  6:59                   ` Hiroshi Doyu
2013-10-31 17:31           ` Mark Rutland
2013-10-31 18:00             ` Will Deacon
     [not found]               ` <20131031180029.GB31082-MRww78TxoiP5vMa5CHWGZ34zcgK1vI+I0E9HWUfgJXw@public.gmane.org>
2013-11-01  7:41                 ` Hiroshi Doyu
2013-11-01  7:27             ` Hiroshi Doyu
2013-10-31 17:15       ` Mark Rutland
2013-10-18 10:26   ` [PATCHv3 11/19] ARM: dt: tegra30: iommu: Add "nvidia,swgroups" Hiroshi Doyu
     [not found]     ` <1382092020-13170-12-git-send-email-hdoyu-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>
2013-10-30 22:35       ` Stephen Warren
2013-10-18 10:26   ` [PATCHv3 12/19] ARM: dt: tegra114: " Hiroshi Doyu
     [not found]     ` <1382092020-13170-13-git-send-email-hdoyu-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>
2013-10-31 16:46       ` Mark Rutland
2013-10-18 10:26   ` [PATCHv3 13/19] iommu/tegra: smmu: Workaround PCIe IOMMU'able Hiroshi Doyu
     [not found]     ` <1382092020-13170-14-git-send-email-hdoyu-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>
2013-10-30 22:36       ` Stephen Warren
2013-10-18 10:26   ` [PATCHv3 14/19] iommu/tegra: smmu: Get "nvidia,memory-clients" from DT Hiroshi Doyu
     [not found]     ` <1382092020-13170-15-git-send-email-hdoyu-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>
2013-10-24  9:01       ` Grant Likely
2013-10-30 22:44       ` Stephen Warren
     [not found]         ` <52718BB4.4090007-3lzwWm7+Weoh9ZMKESR00Q@public.gmane.org>
2013-10-31  8:18           ` Hiroshi Doyu
     [not found]             ` <20131031.101808.1830527808656695540.hdoyu-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>
2013-10-31 17:40               ` Mark Rutland
2013-10-31 18:02                 ` Will Deacon
     [not found]                   ` <20131031180212.GC31082-MRww78TxoiP5vMa5CHWGZ34zcgK1vI+I0E9HWUfgJXw@public.gmane.org>
2013-10-31 19:13                     ` Stephen Warren
     [not found]                       ` <5272ABBD.4050505-3lzwWm7+Weoh9ZMKESR00Q@public.gmane.org>
2013-10-31 19:21                         ` Will Deacon
2013-10-31 19:16                 ` Stephen Warren
     [not found]                   ` <5272AC82.6080205-3lzwWm7+Weoh9ZMKESR00Q@public.gmane.org>
2013-10-31 19:25                     ` Stephen Warren
     [not found]                       ` <5272AEA5.7020200-3lzwWm7+Weoh9ZMKESR00Q@public.gmane.org>
2013-10-31 19:39                         ` Will Deacon
     [not found]                           ` <20131031193941.GB31516-MRww78TxoiP5vMa5CHWGZ34zcgK1vI+I0E9HWUfgJXw@public.gmane.org>
2013-11-01  8:03                             ` Hiroshi Doyu
2013-11-01 16:08                             ` Stephen Warren
     [not found]                               ` <5273D214.90106-3lzwWm7+Weoh9ZMKESR00Q@public.gmane.org>
2013-11-01 16:34                                 ` Will Deacon
     [not found]                                   ` <20131101163404.GC2442-MRww78TxoiP5vMa5CHWGZ34zcgK1vI+I0E9HWUfgJXw@public.gmane.org>
2013-11-01 17:05                                     ` Stephen Warren
     [not found]                                       ` <5273DF45.8050505-3lzwWm7+Weoh9ZMKESR00Q@public.gmane.org>
2013-11-04  6:48                                         ` Hiroshi Doyu
2013-11-01 17:08                                     ` Stephen Warren
2013-11-01  7:54                     ` Hiroshi Doyu
2013-11-01  7:46                 ` Hiroshi Doyu
2013-10-31 19:17               ` Stephen Warren
2013-10-18 10:26   ` [PATCHv3 15/19] ARM: tegra: Create a DT header defining SWGROUP ID Hiroshi Doyu
     [not found]     ` <1382092020-13170-16-git-send-email-hdoyu-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>
2013-10-30 22:48       ` Stephen Warren
     [not found]         ` <52718CC6.5-3lzwWm7+Weoh9ZMKESR00Q@public.gmane.org>
2013-10-31  8:19           ` Hiroshi Doyu
     [not found]             ` <20131031.101942.530833331841957251.hdoyu-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>
2013-10-31 17:46               ` Mark Rutland
2013-10-31 19:18                 ` Stephen Warren
2013-11-01  8:06                 ` Hiroshi Doyu
     [not found]                   ` <20131101100605.2a29eac5b5ba8719a0beb276-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>
2013-11-01 16:05                     ` Stephen Warren
2013-10-18 10:26   ` [PATCHv3 16/19] iommu/tegra: smmu: Use dt-bindings MACRO Hiroshi Doyu
2013-10-18 10:26   ` [PATCHv3 17/19] ARM: dt: tegra30: iommu: Add "nvidia,memory-clients" Hiroshi Doyu
2013-10-18 10:26   ` [PATCHv3 18/19] ARM: dt: tegra114: iommu: Add "nvidia, memory-clients" Hiroshi Doyu
2013-10-18 10:27   ` [PATCHv3 19/19] iommu/tegra: smmu: Support Multiple ASID Hiroshi Doyu
2013-10-30 16:34   ` [PATCHv3 00/19] Unifying SMMU driver among Tegra SoCs Hiroshi Doyu
     [not found]     ` <20131030.183454.2089418674186724494.hdoyu-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>
2013-10-30 16:44       ` Stephen Warren
2013-10-30 22:19   ` Stephen Warren

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=52728754.60307@wwwdotorg.org \
    --to=swarren-3lzwwm7+weoh9zmkesr00q@public.gmane.org \
    --cc=devicetree-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
    --cc=grant.likely-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org \
    --cc=hdoyu-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org \
    --cc=iommu-cunTk1MwBs9QetFLy7KEm3xJsTq8ys+cHZ5vskTnxNA@public.gmane.org \
    --cc=linux-tegra-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
    --cc=rob.herring-bsGFqQB8/DxBDgjK7y7TUQ@public.gmane.org \
    --cc=swarren-DDmLM1+adcrQT0dZR+AlfA@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: 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