diff options
Diffstat (limited to 'drivers/regulator/s5m8767.c')
| -rw-r--r-- | drivers/regulator/s5m8767.c | 78 |
1 files changed, 39 insertions, 39 deletions
diff --git a/drivers/regulator/s5m8767.c b/drivers/regulator/s5m8767.c index a77895889f3a..0049e3413964 100644 --- a/drivers/regulator/s5m8767.c +++ b/drivers/regulator/s5m8767.c | |||
| @@ -24,10 +24,10 @@ | |||
| 24 | 24 | ||
| 25 | struct s5m8767_info { | 25 | struct s5m8767_info { |
| 26 | struct device *dev; | 26 | struct device *dev; |
| 27 | struct s5m87xx_dev *iodev; | 27 | struct sec_pmic_dev *iodev; |
| 28 | int num_regulators; | 28 | int num_regulators; |
| 29 | struct regulator_dev **rdev; | 29 | struct regulator_dev **rdev; |
| 30 | struct s5m_opmode_data *opmode; | 30 | struct sec_opmode_data *opmode; |
| 31 | 31 | ||
| 32 | int ramp_delay; | 32 | int ramp_delay; |
| 33 | bool buck2_ramp; | 33 | bool buck2_ramp; |
| @@ -44,43 +44,43 @@ struct s5m8767_info { | |||
| 44 | int buck_gpioindex; | 44 | int buck_gpioindex; |
| 45 | }; | 45 | }; |
| 46 | 46 | ||
| 47 | struct s5m_voltage_desc { | 47 | struct sec_voltage_desc { |
| 48 | int max; | 48 | int max; |
| 49 | int min; | 49 | int min; |
| 50 | int step; | 50 | int step; |
| 51 | }; | 51 | }; |
| 52 | 52 | ||
| 53 | static const struct s5m_voltage_desc buck_voltage_val1 = { | 53 | static const struct sec_voltage_desc buck_voltage_val1 = { |
| 54 | .max = 2225000, | 54 | .max = 2225000, |
| 55 | .min = 650000, | 55 | .min = 650000, |
| 56 | .step = 6250, | 56 | .step = 6250, |
| 57 | }; | 57 | }; |
| 58 | 58 | ||
| 59 | static const struct s5m_voltage_desc buck_voltage_val2 = { | 59 | static const struct sec_voltage_desc buck_voltage_val2 = { |
| 60 | .max = 1600000, | 60 | .max = 1600000, |
| 61 | .min = 600000, | 61 | .min = 600000, |
| 62 | .step = 6250, | 62 | .step = 6250, |
| 63 | }; | 63 | }; |
| 64 | 64 | ||
| 65 | static const struct s5m_voltage_desc buck_voltage_val3 = { | 65 | static const struct sec_voltage_desc buck_voltage_val3 = { |
| 66 | .max = 3000000, | 66 | .max = 3000000, |
| 67 | .min = 750000, | 67 | .min = 750000, |
| 68 | .step = 12500, | 68 | .step = 12500, |
| 69 | }; | 69 | }; |
| 70 | 70 | ||
| 71 | static const struct s5m_voltage_desc ldo_voltage_val1 = { | 71 | static const struct sec_voltage_desc ldo_voltage_val1 = { |
| 72 | .max = 3950000, | 72 | .max = 3950000, |
| 73 | .min = 800000, | 73 | .min = 800000, |
| 74 | .step = 50000, | 74 | .step = 50000, |
| 75 | }; | 75 | }; |
| 76 | 76 | ||
| 77 | static const struct s5m_voltage_desc ldo_voltage_val2 = { | 77 | static const struct sec_voltage_desc ldo_voltage_val2 = { |
| 78 | .max = 2375000, | 78 | .max = 2375000, |
| 79 | .min = 800000, | 79 | .min = 800000, |
| 80 | .step = 25000, | 80 | .step = 25000, |
| 81 | }; | 81 | }; |
| 82 | 82 | ||
| 83 | static const struct s5m_voltage_desc *reg_voltage_map[] = { | 83 | static const struct sec_voltage_desc *reg_voltage_map[] = { |
| 84 | [S5M8767_LDO1] = &ldo_voltage_val2, | 84 | [S5M8767_LDO1] = &ldo_voltage_val2, |
| 85 | [S5M8767_LDO2] = &ldo_voltage_val2, | 85 | [S5M8767_LDO2] = &ldo_voltage_val2, |
| 86 | [S5M8767_LDO3] = &ldo_voltage_val1, | 86 | [S5M8767_LDO3] = &ldo_voltage_val1, |
| @@ -123,7 +123,7 @@ static const struct s5m_voltage_desc *reg_voltage_map[] = { | |||
| 123 | static int s5m8767_list_voltage(struct regulator_dev *rdev, | 123 | static int s5m8767_list_voltage(struct regulator_dev *rdev, |
| 124 | unsigned int selector) | 124 | unsigned int selector) |
| 125 | { | 125 | { |
| 126 | const struct s5m_voltage_desc *desc; | 126 | const struct sec_voltage_desc *desc; |
| 127 | int reg_id = rdev_get_id(rdev); | 127 | int reg_id = rdev_get_id(rdev); |
| 128 | int val; | 128 | int val; |
| 129 | 129 | ||
| @@ -233,7 +233,7 @@ static int s5m8767_reg_is_enabled(struct regulator_dev *rdev) | |||
| 233 | else if (ret) | 233 | else if (ret) |
| 234 | return ret; | 234 | return ret; |
| 235 | 235 | ||
| 236 | ret = s5m_reg_read(s5m8767->iodev, reg, &val); | 236 | ret = sec_reg_read(s5m8767->iodev, reg, &val); |
| 237 | if (ret) | 237 | if (ret) |
| 238 | return ret; | 238 | return ret; |
| 239 | 239 | ||
| @@ -250,7 +250,7 @@ static int s5m8767_reg_enable(struct regulator_dev *rdev) | |||
| 250 | if (ret) | 250 | if (ret) |
| 251 | return ret; | 251 | return ret; |
| 252 | 252 | ||
| 253 | return s5m_reg_update(s5m8767->iodev, reg, enable_ctrl, mask); | 253 | return sec_reg_update(s5m8767->iodev, reg, enable_ctrl, mask); |
| 254 | } | 254 | } |
| 255 | 255 | ||
| 256 | static int s5m8767_reg_disable(struct regulator_dev *rdev) | 256 | static int s5m8767_reg_disable(struct regulator_dev *rdev) |
| @@ -263,7 +263,7 @@ static int s5m8767_reg_disable(struct regulator_dev *rdev) | |||
| 263 | if (ret) | 263 | if (ret) |
| 264 | return ret; | 264 | return ret; |
| 265 | 265 | ||
| 266 | return s5m_reg_update(s5m8767->iodev, reg, ~mask, mask); | 266 | return sec_reg_update(s5m8767->iodev, reg, ~mask, mask); |
| 267 | } | 267 | } |
| 268 | 268 | ||
| 269 | static int s5m8767_get_voltage_register(struct regulator_dev *rdev, int *_reg) | 269 | static int s5m8767_get_voltage_register(struct regulator_dev *rdev, int *_reg) |
| @@ -325,7 +325,7 @@ static int s5m8767_get_voltage_sel(struct regulator_dev *rdev) | |||
| 325 | 325 | ||
| 326 | mask = (reg_id < S5M8767_BUCK1) ? 0x3f : 0xff; | 326 | mask = (reg_id < S5M8767_BUCK1) ? 0x3f : 0xff; |
| 327 | 327 | ||
| 328 | ret = s5m_reg_read(s5m8767->iodev, reg, &val); | 328 | ret = sec_reg_read(s5m8767->iodev, reg, &val); |
| 329 | if (ret) | 329 | if (ret) |
| 330 | return ret; | 330 | return ret; |
| 331 | 331 | ||
| @@ -335,7 +335,7 @@ static int s5m8767_get_voltage_sel(struct regulator_dev *rdev) | |||
| 335 | } | 335 | } |
| 336 | 336 | ||
| 337 | static int s5m8767_convert_voltage_to_sel( | 337 | static int s5m8767_convert_voltage_to_sel( |
| 338 | const struct s5m_voltage_desc *desc, | 338 | const struct sec_voltage_desc *desc, |
| 339 | int min_vol, int max_vol) | 339 | int min_vol, int max_vol) |
| 340 | { | 340 | { |
| 341 | int selector = 0; | 341 | int selector = 0; |
| @@ -379,7 +379,7 @@ static int s5m8767_set_voltage(struct regulator_dev *rdev, | |||
| 379 | int min_uV, int max_uV, unsigned *selector) | 379 | int min_uV, int max_uV, unsigned *selector) |
| 380 | { | 380 | { |
| 381 | struct s5m8767_info *s5m8767 = rdev_get_drvdata(rdev); | 381 | struct s5m8767_info *s5m8767 = rdev_get_drvdata(rdev); |
| 382 | const struct s5m_voltage_desc *desc; | 382 | const struct sec_voltage_desc *desc; |
| 383 | int reg_id = rdev_get_id(rdev); | 383 | int reg_id = rdev_get_id(rdev); |
| 384 | int sel, reg, mask, ret = 0, old_index, index = 0; | 384 | int sel, reg, mask, ret = 0, old_index, index = 0; |
| 385 | u8 val; | 385 | u8 val; |
| @@ -431,10 +431,10 @@ static int s5m8767_set_voltage(struct regulator_dev *rdev, | |||
| 431 | if (ret) | 431 | if (ret) |
| 432 | return ret; | 432 | return ret; |
| 433 | 433 | ||
| 434 | s5m_reg_read(s5m8767->iodev, reg, &val); | 434 | sec_reg_read(s5m8767->iodev, reg, &val); |
| 435 | val = (val & ~mask) | sel; | 435 | val = (val & ~mask) | sel; |
| 436 | 436 | ||
| 437 | ret = s5m_reg_write(s5m8767->iodev, reg, val); | 437 | ret = sec_reg_write(s5m8767->iodev, reg, val); |
| 438 | } | 438 | } |
| 439 | 439 | ||
| 440 | *selector = sel; | 440 | *selector = sel; |
| @@ -446,7 +446,7 @@ static int s5m8767_set_voltage_time_sel(struct regulator_dev *rdev, | |||
| 446 | unsigned int new_sel) | 446 | unsigned int new_sel) |
| 447 | { | 447 | { |
| 448 | struct s5m8767_info *s5m8767 = rdev_get_drvdata(rdev); | 448 | struct s5m8767_info *s5m8767 = rdev_get_drvdata(rdev); |
| 449 | const struct s5m_voltage_desc *desc; | 449 | const struct sec_voltage_desc *desc; |
| 450 | int reg_id = rdev_get_id(rdev); | 450 | int reg_id = rdev_get_id(rdev); |
| 451 | 451 | ||
| 452 | desc = reg_voltage_map[reg_id]; | 452 | desc = reg_voltage_map[reg_id]; |
| @@ -517,8 +517,8 @@ static struct regulator_desc regulators[] = { | |||
| 517 | 517 | ||
| 518 | static __devinit int s5m8767_pmic_probe(struct platform_device *pdev) | 518 | static __devinit int s5m8767_pmic_probe(struct platform_device *pdev) |
| 519 | { | 519 | { |
| 520 | struct s5m87xx_dev *iodev = dev_get_drvdata(pdev->dev.parent); | 520 | struct sec_pmic_dev *iodev = dev_get_drvdata(pdev->dev.parent); |
| 521 | struct s5m_platform_data *pdata = dev_get_platdata(iodev->dev); | 521 | struct sec_platform_data *pdata = dev_get_platdata(iodev->dev); |
| 522 | struct regulator_config config = { }; | 522 | struct regulator_config config = { }; |
| 523 | struct regulator_dev **rdev; | 523 | struct regulator_dev **rdev; |
| 524 | struct s5m8767_info *s5m8767; | 524 | struct s5m8767_info *s5m8767; |
| @@ -644,70 +644,70 @@ static __devinit int s5m8767_pmic_probe(struct platform_device *pdev) | |||
| 644 | } | 644 | } |
| 645 | } | 645 | } |
| 646 | 646 | ||
| 647 | s5m_reg_update(s5m8767->iodev, S5M8767_REG_BUCK2CTRL, | 647 | sec_reg_update(s5m8767->iodev, S5M8767_REG_BUCK2CTRL, |
| 648 | (pdata->buck2_gpiodvs) ? (1 << 1) : (0 << 1), 1 << 1); | 648 | (pdata->buck2_gpiodvs) ? (1 << 1) : (0 << 1), 1 << 1); |
| 649 | s5m_reg_update(s5m8767->iodev, S5M8767_REG_BUCK3CTRL, | 649 | sec_reg_update(s5m8767->iodev, S5M8767_REG_BUCK3CTRL, |
| 650 | (pdata->buck3_gpiodvs) ? (1 << 1) : (0 << 1), 1 << 1); | 650 | (pdata->buck3_gpiodvs) ? (1 << 1) : (0 << 1), 1 << 1); |
| 651 | s5m_reg_update(s5m8767->iodev, S5M8767_REG_BUCK4CTRL, | 651 | sec_reg_update(s5m8767->iodev, S5M8767_REG_BUCK4CTRL, |
| 652 | (pdata->buck4_gpiodvs) ? (1 << 1) : (0 << 1), 1 << 1); | 652 | (pdata->buck4_gpiodvs) ? (1 << 1) : (0 << 1), 1 << 1); |
| 653 | 653 | ||
| 654 | /* Initialize GPIO DVS registers */ | 654 | /* Initialize GPIO DVS registers */ |
| 655 | for (i = 0; i < 8; i++) { | 655 | for (i = 0; i < 8; i++) { |
| 656 | if (s5m8767->buck2_gpiodvs) { | 656 | if (s5m8767->buck2_gpiodvs) { |
| 657 | s5m_reg_write(s5m8767->iodev, S5M8767_REG_BUCK2DVS1 + i, | 657 | sec_reg_write(s5m8767->iodev, S5M8767_REG_BUCK2DVS1 + i, |
| 658 | s5m8767->buck2_vol[i]); | 658 | s5m8767->buck2_vol[i]); |
| 659 | } | 659 | } |
| 660 | 660 | ||
| 661 | if (s5m8767->buck3_gpiodvs) { | 661 | if (s5m8767->buck3_gpiodvs) { |
| 662 | s5m_reg_write(s5m8767->iodev, S5M8767_REG_BUCK3DVS1 + i, | 662 | sec_reg_write(s5m8767->iodev, S5M8767_REG_BUCK3DVS1 + i, |
| 663 | s5m8767->buck3_vol[i]); | 663 | s5m8767->buck3_vol[i]); |
| 664 | } | 664 | } |
| 665 | 665 | ||
| 666 | if (s5m8767->buck4_gpiodvs) { | 666 | if (s5m8767->buck4_gpiodvs) { |
| 667 | s5m_reg_write(s5m8767->iodev, S5M8767_REG_BUCK4DVS1 + i, | 667 | sec_reg_write(s5m8767->iodev, S5M8767_REG_BUCK4DVS1 + i, |
| 668 | s5m8767->buck4_vol[i]); | 668 | s5m8767->buck4_vol[i]); |
| 669 | } | 669 | } |
| 670 | } | 670 | } |
| 671 | s5m_reg_update(s5m8767->iodev, S5M8767_REG_BUCK2CTRL, 0x78, 0xff); | 671 | sec_reg_update(s5m8767->iodev, S5M8767_REG_BUCK2CTRL, 0x78, 0xff); |
| 672 | s5m_reg_update(s5m8767->iodev, S5M8767_REG_BUCK3CTRL, 0x58, 0xff); | 672 | sec_reg_update(s5m8767->iodev, S5M8767_REG_BUCK3CTRL, 0x58, 0xff); |
| 673 | s5m_reg_update(s5m8767->iodev, S5M8767_REG_BUCK4CTRL, 0x78, 0xff); | 673 | sec_reg_update(s5m8767->iodev, S5M8767_REG_BUCK4CTRL, 0x78, 0xff); |
| 674 | 674 | ||
| 675 | if (s5m8767->buck2_ramp) | 675 | if (s5m8767->buck2_ramp) |
| 676 | s5m_reg_update(s5m8767->iodev, S5M8767_REG_DVSRAMP, 0x08, 0x08); | 676 | sec_reg_update(s5m8767->iodev, S5M8767_REG_DVSRAMP, 0x08, 0x08); |
| 677 | 677 | ||
| 678 | if (s5m8767->buck3_ramp) | 678 | if (s5m8767->buck3_ramp) |
| 679 | s5m_reg_update(s5m8767->iodev, S5M8767_REG_DVSRAMP, 0x04, 0x04); | 679 | sec_reg_update(s5m8767->iodev, S5M8767_REG_DVSRAMP, 0x04, 0x04); |
| 680 | 680 | ||
| 681 | if (s5m8767->buck4_ramp) | 681 | if (s5m8767->buck4_ramp) |
| 682 | s5m_reg_update(s5m8767->iodev, S5M8767_REG_DVSRAMP, 0x02, 0x02); | 682 | sec_reg_update(s5m8767->iodev, S5M8767_REG_DVSRAMP, 0x02, 0x02); |
| 683 | 683 | ||
| 684 | if (s5m8767->buck2_ramp || s5m8767->buck3_ramp | 684 | if (s5m8767->buck2_ramp || s5m8767->buck3_ramp |
| 685 | || s5m8767->buck4_ramp) { | 685 | || s5m8767->buck4_ramp) { |
| 686 | switch (s5m8767->ramp_delay) { | 686 | switch (s5m8767->ramp_delay) { |
| 687 | case 15: | 687 | case 15: |
| 688 | s5m_reg_update(s5m8767->iodev, S5M8767_REG_DVSRAMP, | 688 | sec_reg_update(s5m8767->iodev, S5M8767_REG_DVSRAMP, |
| 689 | 0xc0, 0xf0); | 689 | 0xc0, 0xf0); |
| 690 | break; | 690 | break; |
| 691 | case 25: | 691 | case 25: |
| 692 | s5m_reg_update(s5m8767->iodev, S5M8767_REG_DVSRAMP, | 692 | sec_reg_update(s5m8767->iodev, S5M8767_REG_DVSRAMP, |
| 693 | 0xd0, 0xf0); | 693 | 0xd0, 0xf0); |
| 694 | break; | 694 | break; |
| 695 | case 50: | 695 | case 50: |
| 696 | s5m_reg_update(s5m8767->iodev, S5M8767_REG_DVSRAMP, | 696 | sec_reg_update(s5m8767->iodev, S5M8767_REG_DVSRAMP, |
| 697 | 0xe0, 0xf0); | 697 | 0xe0, 0xf0); |
| 698 | break; | 698 | break; |
| 699 | case 100: | 699 | case 100: |
| 700 | s5m_reg_update(s5m8767->iodev, S5M8767_REG_DVSRAMP, | 700 | sec_reg_update(s5m8767->iodev, S5M8767_REG_DVSRAMP, |
| 701 | 0xf0, 0xf0); | 701 | 0xf0, 0xf0); |
| 702 | break; | 702 | break; |
| 703 | default: | 703 | default: |
| 704 | s5m_reg_update(s5m8767->iodev, S5M8767_REG_DVSRAMP, | 704 | sec_reg_update(s5m8767->iodev, S5M8767_REG_DVSRAMP, |
| 705 | 0x90, 0xf0); | 705 | 0x90, 0xf0); |
| 706 | } | 706 | } |
| 707 | } | 707 | } |
| 708 | 708 | ||
| 709 | for (i = 0; i < pdata->num_regulators; i++) { | 709 | for (i = 0; i < pdata->num_regulators; i++) { |
| 710 | const struct s5m_voltage_desc *desc; | 710 | const struct sec_voltage_desc *desc; |
| 711 | int id = pdata->regulators[i].id; | 711 | int id = pdata->regulators[i].id; |
| 712 | 712 | ||
| 713 | desc = reg_voltage_map[id]; | 713 | desc = reg_voltage_map[id]; |
