[PATCH v4 02/10] pinctrl: mvebu: dove pinctrl driver
Linus Walleij
linus.walleij at linaro.org
Tue Jun 18 11:23:00 EDT 2013
On Tue, Jun 18, 2013 at 5:11 PM, Russell King - ARM Linux
<linux at arm.linux.org.uk> wrote:
> On Tue, Jun 18, 2013 at 05:02:49PM +0200, Linus Walleij wrote:
>> Nowadays I would do the above with regmap_update_bits().
>>
>> Mutual exclusion for read-modify-write of individual bits in a
>> register is one of those cases where doing a regmap over
>> a memory-mapped register range makes a lot of sense.
>> (drivers/mfd/syscon.c being a nice example)
>
> So, for that solution we need to have some kind of global regmap per
> register or somesuch. Then you run into regmap needing a struct
> device - well, with a shared register, which struct device do you
> use, or do you have to invent one?
Usually, like for syscon, you create an MFD hub which
carry the regmap.
> That sounds more heavy-weight than is really necessary.
May be so, especially if there is just one register to protect.
The usefulness of MM-regmap increase with the set of registers
needing to be protected.
Yours,
Linus Walleij
More information about the linux-arm-kernel
mailing list