[PATCH RESEND 2/5] pinctrl: berlin: add a pinctrl driver for Marvell Berlin SoCs

Jisheng Zhang jszhang at marvell.com
Thu Apr 10 23:44:31 PDT 2014


Hi Antoine,

On Thu, 10 Apr 2014 06:07:51 -0700
Antoine Ténart <antoine.tenart at free-electrons.com> wrote:

...
> +static int berlin_pinmux_enable(struct pinctrl_dev *pctrl_dev,
> +                               unsigned function,
> +                               unsigned group)
> +{
> +       struct berlin_pinctrl *pctrl = pinctrl_dev_get_drvdata(pctrl_dev);
> +       struct berlin_pinctrl_group *group_desc = pctrl->groups + group;
> +       struct berlin_pinctrl_function *function_desc =
> +               pctrl->functions + function;
> +       unsigned long flags;
> +       u32 regval;
> +
> +       spin_lock_irqsave(&pctrl->lock, flags);
> +
> +       regval = readl(group_desc->reg);
> +       regval &= group_desc->mask;
> +       regval |= function_desc->muxval << group_desc->lsb;
> +       writel(regval, group_desc->reg);

Could we use relaxed version instead?

Thanks,
Jisheng



More information about the linux-arm-kernel mailing list