Hi Zenghu, > Thanks for the change, especially IBI features in other threads. > From my understanding, ASPEED AST2600 is a SoC which uses Synopsys' > I3C IP core, and several different registers, especially the pull-up > resistor. > If so, I am wondering if this is the right place to add > ast2600-i3c-master.c, given that all current three xxx-i3c-master.c > drivers in this directory are from IP providers directly. > What about moving it under ~/driver/soc/? It's my understanding that drivers/soc/ is for smaller parts of SoC-specific functions, rather than implementing SoC driver instances for existing subsystems. I'd prefer to keep it with the i3c controller drivers; this means we can keep the dw platform API as contained as possible (ie., within drivers/i3c/master/). I expect that we will need some coordination of changes until we have the platform-specific behaviour mostly described (see the IBI series for another hook), and so coordinating changes between drivers/soc/ and drivers/i3c/ may make things more complicated than necessary. There's certainly precedence for this pattern: * the aspeed ethernet mac is provided by the ftgmac100 driver plus some SoC-specific behaviour; that's entirely within drivers/net/ * the aspeed VUART device is essentially a 16550 plus extra registers; that's entirely within drivers/tty/ Cheers, Jeremy