On 2018-01-29 18:38, Adrian Fiergolski wrote: >>> On 22.01.2018 at 12:36, Peter Rosin wrote: >>>> This series tries to check the I2C device id, but instead of open >>>> coding the check in the pca954x driver, I have a new function in >>>> the core doing the work. >>>> >>>> The code is only compile-tested, hence the RFC, and I would really >>>> like a Tested-by: tag from Adrian who presumably have one of these >>>> chips. >>>> >>>> Also, I'm not sure if I should list all manufacturers that I know >>>> about in the header, or if I should settle for the one that is >>>> actually used and leave the others to be added by whomever needs >>>> them... >>>> >>>> Cheers, >>>> peda >>>> >>>> Peter Rosin (2): >>>> i2c: add i2c_get_device_id() to get the standard i2c device id >>>> i2c: mux: pca954x: verify the device id of the pca984x chips >>>> >>>> drivers/i2c/i2c-core-base.c | 33 ++++++++++++++++++++++++++++ >>>> drivers/i2c/muxes/i2c-mux-pca954x.c | 43 +++++++++++++++++++++++++++++++++++++ >>>> include/linux/i2c.h | 30 ++++++++++++++++++++++++++ >>>> 3 files changed, 106 insertions(+) >>>> > Hi Peter, > > I have tested your patch with the pca9846 device and I confirm it works. > Moreover, after short debugging, I can confirm that all read ids > (manufacture, part and die) seem to be correct. Moreover, in case of > misconfiguration, the probe function return a proper message and fails > as expected. Excellent, thanks! I'll ping Wolfram later on for any input on the core changes (if needed), but let's wait until the 4.16 merge-window closes and things settle down a bit. This will land in 4.17 at the earliest. Cheers, Peter