On Tue, Mar 14, 2023 at 11:38:14PM +0800, Ye, Xiang wrote: > On Tue, Mar 14, 2023 at 10:36:57AM +0200, Heikki Krogerus wrote: > > On Tue, Mar 14, 2023 at 04:03:26PM +0800, Ye, Xiang wrote: ... > > You don't really seem to get any benefit from MFD. Perhaps it would be > > more appropriate and clear if you just registered auxiliary devices in > > this driver. Check drivers/base/auxiliary.c. > Yes, it should be a work. I have a question. > MFD provides the ACPI binding for sub-devices through > struct mfd_cell_acpi_match. But I didn't see this in drivers/base/auxiliary.c. > If using auxiliary bus to implement the LJCA sub-devices, we need to do > the sub-devices acpi binding manually in ljca.c. > > Something Like: > adr = LJCA_ACPI_MATCH_GPIO > adev = acpi_find_child_device(parent, adr, false); > ACPI_COMPANION_SET(&pdev->dev, adev ?: parent); > > Is that acceptable? Maybe you can implement this on the level of auxiliary bus. -- With Best Regards, Andy Shevchenko