On Thu, Sep 28, 2023 at 08:53:19AM +0200, Luca Ceresoli wrote: > Hello Linus, Prathamesh, > > On Wed, 27 Sep 2023 10:54:15 +0200 > Linus Walleij <linus.walleij@xxxxxxxxxx> wrote: > > > On Mon, Sep 25, 2023 at 6:30 PM Luca Ceresoli <luca.ceresoli@xxxxxxxxxxx> wrote: > > > > > The symptom is that i2c3 is not working anymore, the I2C lines being > > > always high. No other known issues at the moment. > > > > Hm.... > > > > >> + {"nvidia,function", TEGRA_PINCONF_PARAM_FUNCTION}, > > > > > > FYI, I reduced your patch to only this line plus the one in the > > > pinctrl-tegra.h and the problem appears as well. > > > > I think there is a conflict now, that the pinconf is "stealing" the function > > assignment from the pinmux call. > > > > It's just a debugprint, I will revert the patch, Luca can investigate and you > > Thanks for the quick revert Linus. > > > can test a new patch then we will merge that. > > Prathamesh, if you send a new patch it would be great if you can Cc: me so I > can test it. I was able to reproduce this on tegra20-trimslice, and it looks indeed that the "shortcut" of supporting this through the pinconf "framework" doesn't work. In addition to the pinmux now no longer getting applied (exactly why that is I don't think I understand), it also leads to weird things in other parts of the debugfs output. For example the code now ends up trying to read a u32 from the nvidia,function property, which is actually a string. That seems to be fine, but obviously it doesn't yield the value that is expected for a function and messes up the config param which will then later on fail to properly display. Anyway, turns out the correct implementation is even shorter. I've sent out a patch. Thierry
Attachment:
signature.asc
Description: PGP signature