Le Wed, 23 Feb 2022 16:23:46 +0100, Andrew Lunn <andrew@xxxxxxx> a écrit : > > As Russell asked, I'm also really interested if someone has a solution > > to reuse device-tree description (overlays ?) to describe such > > hardware. However, the fact that CONFIG_OF isn't enabled on x86 config > > seems a bit complicated on this side. > > It does work, intel even used it for one of there tiny x86 SoCs. Maybe > it was Newton? If you search around you can find maybe a Linux > Plumbers presentation about DT and x86. Oh yes, I know it works and I tried loading an overlay using CONFIG_OF on a x86. Currently it does not works and generate a oops due to the fact that the lack of "/" node is not handled and that the error path has probably not been thoroughly tested. Adress remapping for PCI and lack of PCI bus description might also be a bit cumbersome but maybe this is the way to go. I was saying a "bit complicated" as it is not often used and it would require enabling CONFIG_OF to support this feature as well as allowing loading overlays without any root node. But this is probably something that is also achievable. > > You can probably use a udev rule, triggered by the PCIe device ID to > load the DT overlay. Or maybe load the overlay from the PCIe driver ? This would also allow to introduce some remapping of addresses (see below) inside the driver maybe. > > Do you actually need anything from the host other than PCIe? It sounds > like this card is pretty self contained, so you won't need phandles > pointing to the host i2c bus, or the hosts GPIOs? You only need > phandles to your own i2c bus, your own GPIOs? That will make the > overlay much simpler. Yes, the device is almost self contained, only the IRQ needs to be chained with the MSI. > > Andrew -- Clément Léger, Embedded Linux and Kernel engineer at Bootlin https://bootlin.com