Re: Device tree representation of (hotplug) connectors: discussion at ELCE
Herve Codina <[email protected]> Tue, 16 Sep 2025 16:25:34 +0200
| Newsgroups | org.kernel.vger.devicetree-compiler,org.kernel.vger.linux-devicetree,org.kernel.vger.linux-kernel |
|---|---|
| Organization | Bootlin |
| Message-ID | <[email protected]> |
Hi Geert, On Tue, 16 Sep 2025 15:34:52 +0200 Geert Uytterhoeven <[email protected]> wrote: > Hi Ayush, > > On Tue, 16 Sept 2025 at 14:22, Ayush Singh <[email protected]> wrote: > > On 9/16/25 15:44, Geert Uytterhoeven wrote: > > > On Tue, 16 Sept 2025 at 08:46, Herve Codina <[email protected]> wrote: > > >> On Mon, 15 Sep 2025 14:51:41 +1000 > > >> David Gibson <[email protected]> wrote: > > >>> On Thu, Sep 11, 2025 at 10:48:28AM +0200, Herve Codina wrote: > > >>>> From the addon board point of view, the only think we can > > >>>> say is "me, as an addon board, I need a connector of type 'foo' and a > > >>>> connector of type 'bar'". > > >>> Agreed. > > >>> > > >>>> Also, at base board level, statically defined in the DT > > >>>> connA is described (type 'foo'), connB and connC are > > >>>> described (type 'bar'). > > >>>> > > >>>> The choice to map connA to the type 'foo' connector expected by the addon > > >>>> and the choice to map connB or connC to the type 'bar' connector expected by > > >>>> the addon can only be done at runtime and probably with the help of a driver > > >>>> that have the knowledge of the 3 connectors. > > >>> Agreed. > > >>> > > >>>> I have the feeling that the choice of physical connectors to which the addon > > >>>> board is connected to is a human choice when the board is connected. > > >>> Yes. Although if the addons have an EEPROM, or some other sort of ID > > >>> register, it may be possible for some connector drivers to probe this. > > >> Right, I think we agree that a driver is needed to help in the mapping at > > >> least when multiple connectors are involved. > > > > > I agree you need a driver to read an ID EEPROM. > > > But why would you need a driver if no ID EEPROM is involved? > > > If the connector types on base board and add-on match, it should work. > > > How would a connector be disabled in such a setup? I guess maybe status > > property can be used while applying overlay to check if the connector is > > enabled. But maybe that goes outside the scope of fdtoverlay? > > Why would you want to disable a connector? > > > Also, I would assume that most such connectors would want to provide > > some kind of configfs based API to add/remove addon boards. > > Yes, we need some way to configure add-on board add/remove, > and on which connector(s). > > Gr{oetje,eeting}s, > > Geert > Having drivers for connectors is an expectation from Rob: https://lore.kernel.org/all/CAL_JsqKg0NpDi1Zf1T+f2rYw5UuVfK7+kjWj1_edFWH8EStjXw@mail.gmail.com/ Maybe at the end we could find some kind of generic driver if no specific hotplug mecanism is involved and if we find a generic way (maybe configfs) to provide the addon DT. IMHO, before diving in a generic driver, basics need to be there and at least one "specific" driver should be present to validate concepts discussed here. Best regards, Hervé