[rtc-linux] [PATCHv3 8/9] arm: vt8500: gpio: Devicetree support for arch-vt8500
Tony Prisk
linux at prisktech.co.nz
Wed Aug 22 23:33:52 EST 2012
>> Converted the existing arch-vt8500 gpio to a platform_device.
>> Added support for WM8505 and WM8650 GPIO controllers.
>(...)
>> + unsigned val;
>I asked about the datatype for this "val", it sure isn't "unsigned".
>I suspected the registers were only 8bit and so it should be u8.
>But atleast use u32 if you must use all these bits.
Sorry - missed adding this to my list of fixes. I've used u32 as the
datasheet advises these are 32-bit registers and must be
read/written as such.
Changes included in v4.
>(...)
>> + val = readl(vt8500_chip->base + vt8500_chip->regs->en);
>> + val |= BIT(offset);
>> + writel(val, vt8500_chip->base + vt8500_chip->regs->en);
>BTW: have you considered [readl|writel]_relaxed?
I haven't - and to be honest I didn't know what difference it would
make until I read up on it.
Most of this code already existed in mainline in
arch/arm/mach-vt8500/gpio.c and I simply moved it across to
drivers/gpio and made some changes/additions. Having looked,
I don't see any reason why it can't use the _relaxed variants.
Changes included in v4.
I'll post up v4 for review when I get home in about 7 hours.
Work always gets in the way of being productive :)
Regards
Tony Prisk
More information about the devicetree-discuss
mailing list