On Wed, Feb 23, 2022 at 06:59:27PM +0100, Clément Léger wrote: > Mark Brown a écrit : > > This doesn't look like it's trying to use a DT on an ACPI system though? > Ideally no, but it is a possibility mentionned by Andrew, use DT > overlays on an ACPI system. This series did not took this way (yet). > Andrew mentionned that it could potentially be done but judging by your > comment, i'm not sure you agree with that. That seems like it's opening a can of worms that might be best left closed. > > There's been some discussion on how to handle loadable descriptions for > > things like FPGA but I don't recall it ever having got anywhere concrete > > - I could have missed something. Those are dynamic cases which are more > > trouble though. For something that's a PCI card it's not clear that we > > can't just statically instanitate the devices from kernel code, that was > > how the MFD subsystem started off although it's now primarily applied to > > other applications. That looks to be what's going on here? > Yes, in this series, I used the MFD susbsytems with mfd_cells. These > cells are attached with a swnode. Then, needed subsystems are > modified to use the fwnode API to be able to use them with > devices that have a swnode as a primary node. Note that not all subsystems are going to be a good fit for fwnode, it's concerning for the areas where ACPI and DT have substantially different models like regulators. > > There were separately some issues with people trying to create > > completely swnode based enumeration mechanisms for things that required > > totally independent code for handling swnodes which seemed very > > concerning but it's not clear to me if that's what's going on here. > The card is described entirely using swnode that in a MFD PCI > driver, everything is described statically. The "enumeration" is static > since all the devices are described in the driver and registered using > mfd_add_device() at probe time. Thus, I don't think it adds an > enumeration mechanism like you mention but I may be wrong. This was all on the side parsing the swnodes rather than injecting the data.