Messages in this thread |  | | | From | Axel Lin <> | | Date | Sat, 14 Jan 2012 17:22:20 +0800 | | Subject | Re: [PATCH] backlight: Fix the logic to set bits in adp8860_bl and adp8870_bl drivers |
| |
>> diff --git a/drivers/video/backlight/adp8860_bl.c b/drivers/video/backlight/adp8860_bl.c >> index 66bc74d..378276c 100644 >> --- a/drivers/video/backlight/adp8860_bl.c >> +++ b/drivers/video/backlight/adp8860_bl.c >> @@ -146,7 +146,7 @@ static int adp8860_set_bits(struct i2c_client *client, int reg, uint8_t bit_mask >> >> ret = adp8860_read(client, reg, ®_val); >> >> - if (!ret && ((reg_val & bit_mask) == 0)) { >> + if (!ret && ((reg_val & bit_mask) != bit_mask)) { >> reg_val |= bit_mask; >> ret = adp8860_write(client, reg, reg_val); >> } >> diff --git a/drivers/video/backlight/adp8870_bl.c b/drivers/video/backlight/adp8870_bl.c >> index 6c68a68..6735059 100644 >> --- a/drivers/video/backlight/adp8870_bl.c >> +++ b/drivers/video/backlight/adp8870_bl.c >> @@ -160,7 +160,7 @@ static int adp8870_set_bits(struct i2c_client *client, int reg, uint8_t bit_mask >> >> ret = adp8870_read(client, reg, ®_val); >> >> - if (!ret && ((reg_val & bit_mask) == 0)) { >> + if (!ret && ((reg_val & bit_mask) != bit_mask)) { >> reg_val |= bit_mask; >> ret = adp8870_write(client, reg, reg_val); >> } > > This patch is applicable to 3.2.x, but I don't know whether to route it > to -stable becasue you didn't tell me what effect the patch has :( >
It's because I don't have this hardware. I just found the bug while reading the code.
I was thinking I should CC stable, but since the code is there for a long time and I don't know any complains of the bug. So I didn't CC stable.
Michael, do you see any user-visible effects of the bug?
Thanks, Axel -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
|  |