On Thu, 20 Aug 2020, Boris Brezillon wrote: > On Thu, 20 Aug 2020 10:08:29 +0200 > Miquel Raynal <miquel.raynal@xxxxxxxxxxx> wrote: > > > > + /* > > > + * TODO: Extend the subsystem layer to allow for registering > > > + * new device and provide BCR/DCR/PID at the same time. > > > > Not sure this is needed if you don't use it directly as the core will > > anyway (in its current form) send the relevant CCC to read these > > registers. > > We considered optimizing that in the past but that means making the DAA > and SETDASA registration different. I'm not sure it's worth it to be > honest, PID/DCR/BCR only happens when initializing devices and I > suspect the overhead of querying those DATA twice in case of DAA is > negligible anyway. Wellllll... I know some people who do feel strongly about this particular issue for some reasons. So I'd prefer giving them some hope and leave the door open to some i3c_master_add_i3c_dev_and_info() interface. In the end, it's just a matter of pre-filling the info struct and skipping the PID retrieval in i3c_master_getpid_locked() if already available, etc. Nicolas