Messages in this thread | | | From | Tomeu Vizoso <> | Date | Fri, 8 Jan 2016 08:28:15 +0100 | Subject | Re: [RFD] Functional dependencies between devices |
| |
On 7 January 2016 at 22:29, Greg Kroah-Hartman <gregkh@linuxfoundation.org> wrote: > On Thu, Jan 07, 2016 at 03:55:43PM +0100, Tomeu Vizoso wrote: >> On 30 October 2015 at 23:52, Greg Kroah-Hartman >> <gregkh@linuxfoundation.org> wrote: >> > On Tue, Oct 27, 2015 at 04:24:14PM +0100, Rafael J. Wysocki wrote: >> >> My idea is to represent a supplier-consumer dependency between devices (or >> >> more precisely between device+driver combos) as a "link" object containing >> >> pointers to the devices in question, a list node for each of them and some >> >> additional information related to the management of those objects, ie. >> >> something like: >> >> >> >> struct device_link { >> >> struct device *supplier; >> >> struct list_head supplier_node; >> >> struct device *consumer; >> >> struct list_head consumer_node; >> >> <flags, status etc> >> >> }; >> >> >> >> In general, there will be two lists of those things per device, one list >> >> of links to consumers and one list of links to suppliers. >> >> >> >> In that picture, links will be created by calling, say: >> >> >> >> int device_add_link(struct device *me, struct device *my_supplier, unsigned int flags); >> > >> > At first glance, I like this, nice. Now to see how well it can be >> > implemented :) >> >> Hi Greg, >> >> what's your opinion on using this to order device probes so we don't >> try to probe a device that we know it has unfulfilled dependencies? > > Why would that matter, unless you can prove it's faster, I wouldn't > bother.
I gave you the bootlog you asked in the post below, could you please comment there?
https://lkml.kernel.org/g/562A280A.3040002@collabora.com
Thanks,
Tomeu
| |