Messages in this thread | | | Date | Fri, 30 Oct 2015 15:52:42 -0700 | From | Greg Kroah-Hartman <> | Subject | Re: [RFD] Functional dependencies between devices |
| |
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 :)
Again, nice job.
greg k-h
| |