summaryrefslogtreecommitdiff
path: root/scripts/jobserver-exec
diff options
context:
space:
mode:
authorMatthijs Kooijman <matthijs@stdin.nl>2024-03-19 14:06:34 +0300
committerLinus Walleij <linus.walleij@linaro.org>2024-04-04 22:03:25 +0300
commitb5fe46efc147516a908d2d31bf40eb858ab76d51 (patch)
treebf29d6bb07e01c06b8a4060b643fb9698f8aaaef /scripts/jobserver-exec
parenta95e2bc817feac96f229910c6822c682da887fa1 (diff)
downloadlinux-b5fe46efc147516a908d2d31bf40eb858ab76d51.tar.xz
pinctrl: single: Fix PIN_CONFIG_BIAS_DISABLE handling
The pinctrl-single driver handles pin_config_set by looking up the requested setting in a DT-defined lookup table, which defines what bits correspond to each setting. There is no way to add PIN_CONFIG_BIAS_DISABLE entries to the table, since there is instead code to disable the bias by applying the disable values of both the pullup and pulldown entries in the table. However, this code is inside the table-lookup loop, so it would only execute if there is an entry for PIN_CONFIG_BIAS_DISABLE in the table, which can never exist, so this code never runs. This commit lifts the offending code out of the loop, so it just executes directly whenever PIN_CONFIG_BIAS_DISABLE is requested, skippipng the table lookup loop. This also introduces a new `param` variable to make the code slightly more readable. This bug seems to have existed when this code was first merged in commit 9dddb4df90d13 ("pinctrl: single: support generic pinconf"). Earlier versions of this patch did have an entry for PIN_CONFIG_BIAS_DISABLE in the lookup table, but that was removed, which is probably how this bug was introduced. Signed-off-by: Matthijs Kooijman <matthijs@stdin.nl> Reviewed-by: Haojian Zhuang <haojian.zhuang@linaro.org> Reviewed-by: Tony Lindgren <tony@atomide.com> Message-ID: <20240319110633.230329-1-matthijs@stdin.nl> Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
Diffstat (limited to 'scripts/jobserver-exec')
0 files changed, 0 insertions, 0 deletions