Re: [PATCH v3 1/2] MFD: MAX77693: add MAX77693 MFD driver

From: Chanwoo Choi
Date: Mon May 14 2012 - 06:08:05 EST


Hi Mark,

On 05/14/2012 06:19 PM, Mark Brown wrote:

> On Mon, May 14, 2012 at 02:20:30PM +0900, Chanwoo Choi wrote:
>
>> Signef-off-by: Chanwoo Choi <cw00.choi@xxxxxxxxxxx>
>
> Typo :)
>
>> +int max77693_read_reg(struct regmap *map, u8 reg, u8 *dest)
>> +{
>> + unsigned int val;
>> + int ret;
>> +
>> + ret = regmap_read(map, reg, &val);
>> + val &= 0xff;
>> + *dest = val;
>
> Should be no need for the val &= 0xff - if there is there's a bug we
> ought to fix in regmap.
>
>> +int max77693_update_reg(struct regmap *map, u8 reg, u8 val, u8 mask)
>> +{
>> + unsigned int old_val, new_val;
>> + int ret;
>> +
>> + ret = regmap_read(map, reg, &old_val);
>> + old_val &= 0xff;
>> + new_val = (val & mask) | (old_val & (~mask));
>> + ret = regmap_write(map, reg, new_val);
>
> This should be using regmap_update_bits(), the current code is buggy as
> it does not lock which means that multiple simultaneous updaters could
> conflict with each other.
>
>> +static struct regmap_config max77693_regmap_config = {
>> + .reg_bits = 8,
>> + .val_bits = 8,
>
> Defining max_register would let you see the register map in debugfs but
> this is optional.
>
>> + max77693->regmap = regmap_init_i2c(i2c, &max77693_regmap_config);
>> + if (IS_ERR(max77693->regmap)) {
>
> devm_regmap_init_i2c().


I modify all of it according of your comment.

Thank you for your comment.

Best Regards,
Chanwoo Choi
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/