On 01/07/2024 15:50, Maxime Ripard wrote: > The i2c register access (and the whole behaviour of the device) is > constrained on the I2C_EN pin status, and you can't read it from the > device, so it's also something we need to have in the DT. I think the purpose of the I2C_EN pin might have been misunderstood. I2C_EN is not meant to be toggled, ever, by anyone from this planet. I2C_EN is a layout-time setting, decided by a board manufacturer: - If the TDP158 is fully configured once-and-for-all at layout-time, then no I2C bus is required, and I2C_EN is pulled down forever. - If the board manufacturer wants to keep open the possibility to adjust some parameters at run-time, then they must connect the device to an I2C bus, and I2C_EN is pulled up forever. The only reason I see to expose I2C_EN in a binding is: if we want to support the fully static setup, AND it is not acceptable to support it from an i2c_driver, then there might need to be a way to say "you are not an i2c client, you must fail in probe". Or I don't understand anything about device tree bindings (which is entirely possible). Regards