imx6: add pfuze100 regulator support
[openwrt/svn-archive/archive.git] / target / linux / imx6 / patches-3.10 / 0021-pfuze100-allow-misprogrammed-id.patch
1 --- a/drivers/regulator/pfuze100-regulator.c
2 +++ b/drivers/regulator/pfuze100-regulator.c
3 @@ -308,9 +308,14 @@ static int pfuze_identify(struct pfuze_c
4 if (ret)
5 return ret;
6
7 - if (value & 0x0f) {
8 - dev_warn(pfuze_chip->dev, "Illegal ID: %x\n", value);
9 - return -ENODEV;
10 + switch (value & 0xf) {
11 + case 0x0:
12 + /* Freescale misprogrammed 1-3% of parts prior to week 8 of 2013 as ID=8 */
13 + case 0x8:
14 + break;
15 + default:
16 + dev_warn(pfuze_chip->dev, "Illegal ID: %x\n", value);
17 + return -ENODEV;
18 }
19
20 ret = regmap_read(pfuze_chip->regmap, PFUZE100_REVID, &value);