On 12/14/2022 6:09 PM, Andy Shevchenko wrote:
...should be located here.
...
Ack - will move them.
+ if (dev->dev->pins && dev->dev->pins->p)
+ rinfo->pinctrl = dev->dev->pins->p;
Hmm... I don't see how this field is being used.
Can you elaborate?
This field is used in i2c_generic_scl_recovery(), if it's not NULL then
the flow will set the state to GPIO before running the recovery mechanism.
if (bri->pinctrl)
pinctrl_select_state(bri->pinctrl, bri->pins_gpio);
.
.
I saw that that the change failed in complication for SPARC
architecture, as the pins field is wraparound with CONFIG_PINCTRL in
device struct. I though on two options to solve the compilation error,
first by adding wraparound of CONFIG_PINCTRL when accessing the pins
field. And the second option is to add get function in pinctrl/devinfo.h
file, which return the pins field, or NULL in case the PINCTRL is not
defined. Which option you think we can go with?