pinctrl: renesas: checker: Fix bias checks on SoCs with pull-down only pins
authorGeert Uytterhoeven <geert+renesas@glider.be>
Thu, 7 Oct 2021 14:38:49 +0000 (16:38 +0200)
committerGeert Uytterhoeven <geert+renesas@glider.be>
Fri, 15 Oct 2021 07:48:00 +0000 (09:48 +0200)
commitf31a5ffbd11d9886093a6531e5a6d60e0605ce30
tree6a4a6e71d5cd604a15e11156f359bf3d5a73fcfa
parente212923e74076f423555947eff6f14355487cd21
pinctrl: renesas: checker: Fix bias checks on SoCs with pull-down only pins

If some bits in a pin Pull-Up control register (PUPR) control pin
pull-down instead of pin pull-up, there are two pinmux_bias_reg entries:
a first one with the puen field filled in, listing pins with pull-up
functionality, and a second one with the pud field filled in, listing
pins with pull-down functionality.  On encountering the second entry,
where puen is NULL, the for-loop terminates early, causing the remaining
bias registers not to be checked.  In addition, sh_pfc_check_bias_reg()
does not handle such entries.

Fix this by treating pinmux_bias_reg.puen and pinmux_bias_reg.pud the
same.

Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
Link: https://lore.kernel.org/r/29526d06fa223cffd785cdb264b756a202b11cea.1633615652.git.geert+renesas@glider.be
drivers/pinctrl/renesas/core.c