[PATCH 2/3] pinctrl: aspeed: Use the right pinconf mask
joel at jms.id.au
Thu Sep 10 11:52:36 AEST 2020
On Wed, 9 Sep 2020 at 11:43, Andrew Jeffery <andrew at aj.id.au> wrote:
> The Aspeed pinconf data structures are split into 'conf' and 'map'
> types, where the 'conf' struct defines which register and bitfield to
> manipulate, while the 'map' struct defines what value to write to
> the register and bitfield.
> Both structs have a mask member, and the wrong mask was being used to
> tell the regmap which bits to update.
> A todo is to look at whether we can remove the mask from the 'map'
> Cc: Johnny Huang <johnny_huang at aspeedtech.com>
> Fixes: 5f52c853847f ("pinctrl: aspeed: Use masks to describe pinconf bitfields")
> Signed-off-by: Andrew Jeffery <andrew at aj.id.au>
Reviewed-by: Joel Stanley <joel at jms.id.au>
> drivers/pinctrl/aspeed/pinctrl-aspeed.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
> diff --git a/drivers/pinctrl/aspeed/pinctrl-aspeed.c b/drivers/pinctrl/aspeed/pinctrl-aspeed.c
> index d8972911d505..e03ee78b2434 100644
> --- a/drivers/pinctrl/aspeed/pinctrl-aspeed.c
> +++ b/drivers/pinctrl/aspeed/pinctrl-aspeed.c
> @@ -534,7 +534,7 @@ int aspeed_pin_config_set(struct pinctrl_dev *pctldev, unsigned int offset,
> val = pmap->val << __ffs(pconf->mask);
> rc = regmap_update_bits(pdata->scu, pconf->reg,
> - pmap->mask, val);
> + pconf->mask, val);
> if (rc < 0)
> return rc;
More information about the Linux-aspeed