On Tue, 8 Jan 2013 12:10:20 +0200, Pantelis Antoniou <pa...@antoniou-consulting.com> wrote: > Hi Lee, > > On Jan 8, 2013, at 12:00 PM, Lee Jones wrote: > > >>>>> At the end of the line, some kind of hardware glue is going to be > >>>>> needed. > >>>>> > >>>>> I just feel that drawing from a sample size of 1 (maybe 2 if I get to > >>>>> throw > >>>>> in the beagleboard), it is a bit premature to think about making it > >>>>> overly > >>>>> general, besides the part that are obviously part of the infrastructure > >>>>> (like the DT overlay stuff). > >>>>> > >>>>> What I'm getting at, is that we need some user experience about this, > >>>>> before > >>>>> going away and creating structure out of possible misconception about > >>>>> the uses. > >>>> > >>>> IMHO stuff like this will be needed by many SoCs. Some examples of > >>>> similar > >>>> things for omaps that have eventually become generic frameworks have been > >>>> the clock framework, USB OTG support, runtime PM, pinmux framework and > >>>> so on. > >>>> > >>>> So I suggest a minimal generic API from the start as that will make > >>>> things > >>>> a lot easier in the long run. > >>> > >>> I agree. The ux500 platform already has the concept of "user interface > >>> boards", > >>> which currently is not well integrated into devicetree. I believe Sascha > >>> mentioned that Pengutronix had been shipping some other systems with > >>> add-on > >>> boards and generating device tree binaries from source for each > >>> combination. > >>> > >>> Ideally, both of the above should be able to use the same DT overlay logic > >>> as BeagleBone, and I'm sure there are more of those. > >> > >> Hmm, I see. > >> > >> I will need some more information about the interface of the 'user > >> interface boards'. > >> I.e. how is the board identified, what is typically present on those > >> boards, etc. > > > > User Interface Boards are mearly removable PCBs which are interchangeable > > amongst various hardware platforms. They are connected via numerous > > connectors which carry all sorts of different data links; i2c, spi, rs232, > > etc. The UIB I'm looking at right now has a touchscreen, speakers, a key > > pad, leds, jumpers, switches and a bunch of sensors. > > > > You can find a small example of how we interface to these by viewing > > 'arch/arm/boot/dts/stuib.dtsi'. To add a UIB to a particular build, we > > currently include it as a *.dtsi from a platform's dts file. > > I see. What I'm asking about is whether there's a method where you can read > an EEPROM, or some GPIO code combination where I can find out what kind of > board > is plugged each time. > > If there is not, there is no way to automatically load the overlays; you can > always > use the kernel command line, or have the a user space application to request > the loading > of a specific board's overlay. >
In this case the best thing to do is announce the availability of the expansion via a request_firmware() call and let udev handle supplying the correct overlay file. g. -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/