]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
pinctrl: bcm281xx: Fix incorrect regmap max_registers value
authorArtur Weber <aweber.kernel@gmail.com>
Fri, 7 Feb 2025 20:02:41 +0000 (21:02 +0100)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 10 Apr 2025 12:30:48 +0000 (14:30 +0200)
[ Upstream commit 68283c1cb573143c0b7515e93206f3503616bc10 ]

The max_registers value does not take into consideration the stride;
currently, it's set to the number of the last pin, but this does not
accurately represent the final register.

Fix this by multiplying the current value by 4.

Fixes: 54b1aa5a5b16 ("ARM: pinctrl: Add Broadcom Capri pinctrl driver")
Signed-off-by: Artur Weber <aweber.kernel@gmail.com>
Link: https://lore.kernel.org/20250207-bcm21664-pinctrl-v1-2-e7cfac9b2d3b@gmail.com
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/pinctrl/bcm/pinctrl-bcm281xx.c

index 9ab1f427286a7f75db9e3b3dd6d90c2dbd20bf4c..fbfddcc39d5ccb1ef7909d7bb4cfa7e52009487a 100644 (file)
@@ -981,7 +981,7 @@ static const struct regmap_config bcm281xx_pinctrl_regmap_config = {
        .reg_bits = 32,
        .reg_stride = 4,
        .val_bits = 32,
-       .max_register = BCM281XX_PIN_VC_CAM3_SDA,
+       .max_register = BCM281XX_PIN_VC_CAM3_SDA * 4,
 };
 
 static int bcm281xx_pinctrl_get_groups_count(struct pinctrl_dev *pctldev)