aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/regulator/s5m8767.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/regulator/s5m8767.c')
-rw-r--r--drivers/regulator/s5m8767.c78
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
25struct s5m8767_info { 25struct 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
47struct s5m_voltage_desc { 47struct 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
53static const struct s5m_voltage_desc buck_voltage_val1 = { 53static 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
59static const struct s5m_voltage_desc buck_voltage_val2 = { 59static 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
65static const struct s5m_voltage_desc buck_voltage_val3 = { 65static 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
71static const struct s5m_voltage_desc ldo_voltage_val1 = { 71static 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
77static const struct s5m_voltage_desc ldo_voltage_val2 = { 77static 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
83static const struct s5m_voltage_desc *reg_voltage_map[] = { 83static 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[] = {
123static int s5m8767_list_voltage(struct regulator_dev *rdev, 123static 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
256static int s5m8767_reg_disable(struct regulator_dev *rdev) 256static 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
269static int s5m8767_get_voltage_register(struct regulator_dev *rdev, int *_reg) 269static 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
337static int s5m8767_convert_voltage_to_sel( 337static 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
518static __devinit int s5m8767_pmic_probe(struct platform_device *pdev) 518static __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];