Hi Arnd, Thanks for the review. On Thu, Mar 09, 2023 at 08:56:05AM +0100, Arnd Bergmann wrote: > On Thu, Mar 9, 2023, at 08:10, Ye Xiang wrote: > > > The minimum code in ASL that covers this board is > > Scope (\_SB.PCI0.DWC3.RHUB.HS01) > > { > > Device (GPIO) > > { > > Name (_ADR, Zero) > > Name (_STA, 0x0F) > > } > > > > Device (I2C) > > { > > Name (_ADR, One) > > Name (_STA, 0x0F) > > } > > > > Device (SPI) > > { > > Name (_ADR, 0x02) > > Name (_STA, 0x0F) > > } > > } > > I'm a bit confused by this bit, does that mean this only works > if the device is integrated on the mainboard and the BIOS is > aware of it? This won't work if you plug it into a random > USB port, or have no ACPI firmware, right? LJCA can work both when there is an ACPI firmware or not. When there is a config like "The minimum code in ASL" in DSDT, LJCA device and its sub-devices will bind to right ACPI devices. Our current use case needs the the ACPI binding. Because we have a camera sensor depending on this LJCA device, We use the ACPI binding to control the probe order, making sure the camera sensor probe after LJCA and LJCA-I2C. When there isn't a config in DSDT, the LJCA device also can works. But it won't have an acpi binding. So, If you plug into a random USB port or have no ACPI binding, It just does not have an ACPI binding. > > > Signed-off-by: Ye Xiang <xiang.ye@xxxxxxxxx> > > Reviewed-by: Sakari Ailus <sakari.ailus@xxxxxxxxxxxxxxx> > > --- > > drivers/usb/misc/Kconfig | 13 + > > drivers/usb/misc/Makefile | 1 + > > drivers/usb/misc/ljca.c | 969 ++++++++++++++++++++++++++++++++++++++ > > include/linux/mfd/ljca.h | 95 ++++ > > Why is this in driver/usb/misc? It looks like a normal > mfd driver to me, and it evenhas the header in include/linux/mfd/ It's a mistake. I just moved it from driver/mfd and forget to move the header to right place. It will be addressed on next version. > > Arnd -- Thanks Ye Xiang