devicetree.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Tony Lindgren <tony-4v6yS6AI5VpBDgjK7y7TUQ@public.gmane.org>
To: Russell King - ARM Linux <linux-lFZ/pmaqli7XmaaqVzeoHQ@public.gmane.org>
Cc: Rob Herring <robherring2-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>,
	"devicetree-u79uwXL29TY76Z2rM5mHXA@public.gmane.org"
	<devicetree-u79uwXL29TY76Z2rM5mHXA@public.gmane.org>,
	Jean-Jacques Hiblot
	<jjhiblot-dLKeG7h1OhBDOHtkgc7UlQ@public.gmane.org>,
	Greg Kroah-Hartman
	<gregkh-hQyY1W1yCW8ekmWlsbkhG0B+6BGkLq7r@public.gmane.org>,
	"linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org"
	<linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org>,
	Grant Likely
	<grant.likely-s3s/WqlpOiPyB63q8FvJNQ@public.gmane.org>,
	Rob Herring <robh+dt-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org>,
	Gregory Clement
	<gregory.clement-wi1+55ScJUtKEb57/3fJTNBPR1lH4CV8@public.gmane.org>,
	"linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org"
	<linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org>
Subject: Re: [PATCH v3 2/2] dt: platform driver: Fill the resources before probe and defer if needed
Date: Fri, 18 Apr 2014 16:24:07 -0700	[thread overview]
Message-ID: <20140418232407.GQ21823@atomide.com> (raw)
In-Reply-To: <20140418230335.GI24070-l+eeeJia6m9vn6HldHNs0ANdhmdF6hFW@public.gmane.org>

* Russell King - ARM Linux <linux-lFZ/pmaqli7XmaaqVzeoHQ@public.gmane.org> [140418 16:04]:
> On Fri, Apr 18, 2014 at 02:58:48PM -0700, Tony Lindgren wrote:
> > Oh come on, let's stop pretending it's not broken. And it's way worse with
> > device tree as there's nothing making sure the resources for a driver
> > are set up before the driver probes. And we've been unable to fix just
> > this issue alone for about six months now. It's also broken beyond that.
> > It's called of_platform_bus yet it won't even pass the platform_data
> > as auxdata to the devices on a sub-bus instantatiated like I2C.
> 
> Isn't there a much simpler solution to the platform device IRQ problem?
> 
> Rather than trying to fix it at the point where the resources are
> created, why not just *not* have DT create the IRQ resources in the
> first place, and instead have platform_get_irq() (which is the function
> which should be used to get an IRQ) be the actor to do whatever is
> necessary to return the IRQ(s) ?

Yeah why not. I don't see why we would need to do all this of_* special
trickery for much anything beyond parsing the binding.
 
> Yes, I know we have some drivers which use platform_get_resources() with
> IORESOURCE_IRQ, but they should really use the right accessor.  And those
> who just dereference the resource array directly... get what's coming
> (though of course they have to be fixed.)

$ git grep IORESOURCE_IRQ drivers/ | grep platform_get_resource | wc -l
179

But might be scriptable to some extent..
 
> It has the benefit that you're in a path where you /can/ return
> -EPROBE_DEFER too and not have to mess around with notifiers or other
> silly stuff like that.

And then maybe we can make of_platform_probe() or some bus function
do the most of the -EPROBE_DEFER ping pong before the driver even
probes?

Regards,

Tony
--
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

  parent reply	other threads:[~2014-04-18 23:24 UTC|newest]

Thread overview: 35+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-02-13  9:57 [PATCH] dt: platform driver: Fill the resources before probe and defer if needed Jean-Jacques Hiblot
2014-02-13 10:06 ` Jean-Jacques Hiblot
2014-02-18 20:22 ` Greg KH
2014-02-18 22:34   ` Grant Likely
2014-02-20 15:30 ` Grant Likely
2014-02-21 13:18   ` [PATCH v2] " Jean-Jacques Hiblot
     [not found]     ` <1392988720-20976-1-git-send-email-jjhiblot-dLKeG7h1OhBDOHtkgc7UlQ@public.gmane.org>
2014-02-21 15:37       ` Strashko, Grygorii
2014-02-21 16:22         ` Jean-Jacques Hiblot
2014-02-27 16:43           ` Jean-Jacques Hiblot
2014-03-08  7:32             ` Grant Likely
2014-02-27 15:01       ` Ludovic Desroches
2014-03-08  7:37       ` Grant Likely
     [not found]         ` <20140308073758.DA63FC408EC-WNowdnHR2B42iJbIjFUEsiwD8/FfD2ys@public.gmane.org>
2014-03-08 11:59           ` Russell King - ARM Linux
2014-03-17 11:07         ` Jean-Jacques Hiblot
     [not found]   ` < 1392988720-20976-1-git-send-email-jjhiblot@traphandler.com>
     [not found]     ` < 902E09E6452B0E43903E4F2D568737AB0B9D2959@DFRE01.ent.ti.com>
     [not found]       ` < CACh+v5MPTx6nwVj1s3krntJqQ6DMTQ2hQ93Hc+rRNAuFa9+qPw@mail.gmail.com>
     [not found]     ` <20140308073758 .DA63FC408EC@trevor.secretlab.ca>
     [not found]       ` < CACh+v5P=tcc-h_9r7Btwyu+jWjwH2ocmW4VCgDYqY7VMWsHuOA@mail.gmail.com>
     [not found]         ` <CACh+v5P=tcc-h_9r7Btwyu+jWjwH2ocmW4VCgDYqY7VMWsHuOA-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2014-03-17 14:24           ` Grant Likely
2014-03-17 15:20             ` Jean-Jacques Hiblot
     [not found]         ` < 20140317142443.A2447C40A85@trevor.secretlab.ca>
     [not found]           ` < CACh+v5M+0+C2JJwLqcp6erWa81kt=j1HucHiE52ufj1SO9F75w@mail.gmail.com>
     [not found]             ` <CACh+v5M+0+C2JJwLqcp6erWa81kt=j1HucHiE52ufj1SO9F75w-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2014-03-20 16:11               ` Grant Likely
     [not found]                 ` <20140320161118.B7075C4067A-WNowdnHR2B42iJbIjFUEsiwD8/FfD2ys@public.gmane.org>
2014-03-21 14:46                   ` [PATCH v3 0/2] " Jean-Jacques Hiblot
     [not found]                     ` <1395413185-29763-1-git-send-email-jjhiblot-dLKeG7h1OhBDOHtkgc7UlQ@public.gmane.org>
2014-03-21 14:46                       ` [PATCH v3 1/2] of: irq: Added of_find_irq_domain() to get the domain of an irq Jean-Jacques Hiblot
2014-03-21 14:46                     ` [PATCH v3 2/2] dt: platform driver: Fill the resources before probe and defer if needed Jean-Jacques Hiblot
2014-04-11 17:28                       ` Rob Herring
     [not found]                         ` <CAL_Jsq+aU+rs28gV=Gesb_-Dy6Ht7zuKrRA6_hmqp94Uun23Yg-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2014-04-18 20:52                           ` Tony Lindgren
     [not found]                             ` <20140418205213.GA21823-4v6yS6AI5VpBDgjK7y7TUQ@public.gmane.org>
2014-04-18 21:39                               ` Rob Herring
     [not found]                                 ` <CAL_JsqJvVvo6R-qNXxur7wiZERKbi52xyKoWnmzJTfKS2iKK7A-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2014-04-18 21:58                                   ` Tony Lindgren
     [not found]                                     ` <20140418215848.GD21823-4v6yS6AI5VpBDgjK7y7TUQ@public.gmane.org>
2014-04-18 23:03                                       ` Russell King - ARM Linux
     [not found]                                         ` <20140418230335.GI24070-l+eeeJia6m9vn6HldHNs0ANdhmdF6hFW@public.gmane.org>
2014-04-18 23:24                                           ` Tony Lindgren [this message]
2014-04-21 13:47                                             ` Rob Herring
     [not found]                                               ` <CAL_JsqLvLTJwgsB-m0W72WxSUoTV4ubMdvM_a784J4k2eiK9AQ-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2014-04-21 15:54                                                 ` Tony Lindgren
     [not found]                                                   ` <20140421155424.GD23945-4v6yS6AI5VpBDgjK7y7TUQ@public.gmane.org>
2014-04-21 19:01                                                     ` Rob Herring
     [not found]                                                       ` <53556AF1.2030608-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2014-04-21 20:25                                                         ` Tony Lindgren
     [not found]                                                           ` <20140421202546.GA26554-4v6yS6AI5VpBDgjK7y7TUQ@public.gmane.org>
2014-04-22  3:05                                                             ` Tony Lindgren
2014-04-22  4:57                                                               ` Tony Lindgren
     [not found]                                                                 ` <20140422045730.GC26554-4v6yS6AI5VpBDgjK7y7TUQ@public.gmane.org>
2014-04-23 22:03                                                                   ` Rob Herring
2014-04-23 17:38                                                         ` Russell King - ARM Linux
2014-04-23 15:02                                               ` Grant Likely

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=20140418232407.GQ21823@atomide.com \
    --to=tony-4v6ys6ai5vpbdgjk7y7tuq@public.gmane.org \
    --cc=devicetree-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
    --cc=grant.likely-s3s/WqlpOiPyB63q8FvJNQ@public.gmane.org \
    --cc=gregkh-hQyY1W1yCW8ekmWlsbkhG0B+6BGkLq7r@public.gmane.org \
    --cc=gregory.clement-wi1+55ScJUtKEb57/3fJTNBPR1lH4CV8@public.gmane.org \
    --cc=jjhiblot-dLKeG7h1OhBDOHtkgc7UlQ@public.gmane.org \
    --cc=linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org \
    --cc=linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
    --cc=linux-lFZ/pmaqli7XmaaqVzeoHQ@public.gmane.org \
    --cc=robh+dt-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org \
    --cc=robherring2-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;
as well as URLs for NNTP newsgroup(s).