On Friday, January 03, 2014 12:18:13 PM Russell King - ARM Linux wrote: > On Fri, Jan 03, 2014 at 12:58:16PM +0100, Rafael J. Wysocki wrote: > > On Friday, January 03, 2014 11:00:30 AM Russell King - ARM Linux wrote: > > > On Thu, Jan 02, 2014 at 07:10:55PM -0800, Greg Kroah-Hartman wrote: > > > > On Thu, Jan 02, 2014 at 09:27:58PM +0000, Russell King wrote: > > > > > Subsystems such as ALSA, DRM and others require a single card-level > > > > > device structure to represent a subsystem. However, firmware tends to > > > > > describe the individual devices and the connections between them. > > > > > > > > > > Therefore, we need a way to gather up the individual component devices > > > > > together, and indicate when we have all the component devices. > > > > > > > > > > We do this in DT by providing a "superdevice" node which specifies > > > > > the components, eg: > > > > > > > > > > imx-drm { > > > > > compatible = "fsl,drm"; > > > > > crtcs = <&ipu1>; > > > > > connectors = <&hdmi>; > > > > > }; > > > > > > > > > > The superdevice is declared into the component support, along with the > > > > > subcomponents. The superdevice receives callbacks to locate the > > > > > subcomponents, and identify when all components are present. At this > > > > > point, we bind the superdevice, which causes the appropriate subsystem > > > > > to be initialised in the conventional way. > > > > > > > > > > When any of the components or superdevice are removed from the system, > > > > > we unbind the superdevice, thereby taking the subsystem down. > > > > > > > > This sounds a lot like the "containers" code that Rafael just submitted > > > > and I acked for 3.14. Look at the lkml post: > > > > Subject: [PATCH 2/2] ACPI / hotplug / driver core: Handle containers in a special way > > > > Message-ID: <1991202.gilW172FBV@xxxxxxxxxxxxxx> > > > > > > > > And see if that could possibly be used instead? > > > > > > That's really disappointing bcause I've put a hell of a lot of work into > > > this over the last few months, and if that's true it's all just been a > > > total waste of my time. Okay, lesson learned - don't spend any time > > > trying to fix other people's problems after discussing them at > > > kernel-summit. > > > > Well, I didn't know that you were doing this work and my patch is to address > > a specific problem that people are seeing in testing. Also, the generic > > containers part in it is very simple and it might be possible to integrate it > > with your code, this way or another. In fact, the only only thing I need from > > containers at the moment is the online/offline functionality. > > We had a session at kernel summit chaired by David Airlie to discuss > various issues associated with DRM which included the problems of > componentised devices registering into card-based subsystems. There > were quite a number of attendees to that session. Yeah, I was there too. > It is in that session that I said I would work on this, specifically > with the aim of getting imx-drm out of drivers/staging. OK, but that's not directly related to what I did with containers. > > > In any case, the above message ID doesn't give me access to this containers > > > code to look at to even evaluate whether it can be used for this - it just > > > gives two patches for ACPI specific patches but not the core stuff. > > > > > > http://www.spinics.net/lists/linux-acpi/msg48101.html > > > http://www.spinics.net/lists/linux-acpi/msg48102.html > > > > > > Please provide a better reference to the code you're referring to. > > > > You can use the linux-next branch of the linux-pm.git tree at the moment or I > > can set up a separate branch for that if that helps. The two patches above > > depend on some earlier material I've gueued up for 3.14, but it's mostly > > ACPI hotplug code. > > I'm not sure what I'm looking for. I've tried looking at the results of > searching your linux-next branch for "container" but I don't see > anything implementing similar functionality to the patch I've sent. > > https://git.kernel.org/cgit/linux/kernel/git/rafael/linux-pm.git/log/?h=linux-next&qt=grep&q=container I've just set up the acpi-hotplug branch in linux-pm.git (because I often rebase the linux-next one). The only commit in that branch you need to look at is this one: http://git.kernel.org/cgit/linux/kernel/git/rafael/linux-pm.git/commit/?h=acpi-hotplug&id=caa73ea158de9419f08e456f2716c71d1f06012a but quite frankly I'm not sure how it is related to your work. :-) Thanks, Rafael _______________________________________________ devel mailing list devel@xxxxxxxxxxxxxxxxxxxxxx http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel