aboutsummaryrefslogtreecommitdiffstats
path: root/drivers
diff options
context:
space:
mode:
Diffstat (limited to 'drivers')
-rw-r--r--drivers/mfd/wm8350-core.c6
-rw-r--r--drivers/regulator/wm8350-regulator.c7
2 files changed, 13 insertions, 0 deletions
diff --git a/drivers/mfd/wm8350-core.c b/drivers/mfd/wm8350-core.c
index 03af3b12c02..56c363c240a 100644
--- a/drivers/mfd/wm8350-core.c
+++ b/drivers/mfd/wm8350-core.c
@@ -1301,6 +1301,9 @@ int wm8350_device_init(struct wm8350 *wm8350, int irq,
1301 1301
1302 switch (mask_rev) { 1302 switch (mask_rev) {
1303 case 0: 1303 case 0:
1304 wm8350->pmic.max_dcdc = WM8350_DCDC_6;
1305 wm8350->pmic.max_isink = WM8350_ISINK_B;
1306
1304 switch (chip_rev) { 1307 switch (chip_rev) {
1305 case WM8350_REV_E: 1308 case WM8350_REV_E:
1306 dev_info(wm8350->dev, "WM8350 Rev E\n"); 1309 dev_info(wm8350->dev, "WM8350 Rev E\n");
@@ -1325,6 +1328,9 @@ int wm8350_device_init(struct wm8350 *wm8350, int irq,
1325 break; 1328 break;
1326 1329
1327 case 2: 1330 case 2:
1331 wm8350->pmic.max_dcdc = WM8350_DCDC_6;
1332 wm8350->pmic.max_isink = WM8350_ISINK_B;
1333
1328 switch (chip_rev) { 1334 switch (chip_rev) {
1329 case 0: 1335 case 0:
1330 dev_info(wm8350->dev, "WM8352 Rev A\n"); 1336 dev_info(wm8350->dev, "WM8352 Rev A\n");
diff --git a/drivers/regulator/wm8350-regulator.c b/drivers/regulator/wm8350-regulator.c
index 1f44b17e23b..c68c496b2c4 100644
--- a/drivers/regulator/wm8350-regulator.c
+++ b/drivers/regulator/wm8350-regulator.c
@@ -1380,6 +1380,13 @@ int wm8350_register_regulator(struct wm8350 *wm8350, int reg,
1380 if (wm8350->pmic.pdev[reg]) 1380 if (wm8350->pmic.pdev[reg])
1381 return -EBUSY; 1381 return -EBUSY;
1382 1382
1383 if (reg >= WM8350_DCDC_1 && reg <= WM8350_DCDC_6 &&
1384 reg > wm8350->pmic.max_dcdc)
1385 return -ENODEV;
1386 if (reg >= WM8350_ISINK_A && reg <= WM8350_ISINK_B &&
1387 reg > wm8350->pmic.max_isink)
1388 return -ENODEV;
1389
1383 pdev = platform_device_alloc("wm8350-regulator", reg); 1390 pdev = platform_device_alloc("wm8350-regulator", reg);
1384 if (!pdev) 1391 if (!pdev)
1385 return -ENOMEM; 1392 return -ENOMEM;