Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

regulator: s2mpxxx: Move regulator min/step voltages in common place

This is a cleanup patch and moves min/step voltages in a common samsung
header file so that they can be used by other s2mpxxx PMIC drivers. Only
few required macros are added currently and others can be added if needed.

Reviewed-by: Krzysztof Kozlowski <k.kozlowski@samsung.com>
Signed-off-by: Amit Daniel Kachhap <amit.daniel@samsung.com>
Acked-by: Lee Jones <lee.jones@linaro.org>
Signed-off-by: Mark Brown <broonie@linaro.org>

authored by

Amit Daniel Kachhap and committed by
Mark Brown
0e4f4178 7d1311b9

+62 -72
+16 -16
drivers/regulator/s2mpa01.c
··· 241 241 .ops = &s2mpa01_ldo_ops, \ 242 242 .type = REGULATOR_VOLTAGE, \ 243 243 .owner = THIS_MODULE, \ 244 - .min_uV = S2MPA01_LDO_MIN, \ 245 - .uV_step = S2MPA01_LDO_STEP1, \ 244 + .min_uV = MIN_800_MV, \ 245 + .uV_step = STEP_50_MV, \ 246 246 .n_voltages = S2MPA01_LDO_N_VOLTAGES, \ 247 247 .vsel_reg = S2MPA01_REG_L1CTRL + num - 1, \ 248 248 .vsel_mask = S2MPA01_LDO_VSEL_MASK, \ ··· 255 255 .ops = &s2mpa01_ldo_ops, \ 256 256 .type = REGULATOR_VOLTAGE, \ 257 257 .owner = THIS_MODULE, \ 258 - .min_uV = S2MPA01_LDO_MIN, \ 259 - .uV_step = S2MPA01_LDO_STEP2, \ 258 + .min_uV = MIN_800_MV, \ 259 + .uV_step = STEP_25_MV, \ 260 260 .n_voltages = S2MPA01_LDO_N_VOLTAGES, \ 261 261 .vsel_reg = S2MPA01_REG_L1CTRL + num - 1, \ 262 262 .vsel_mask = S2MPA01_LDO_VSEL_MASK, \ ··· 270 270 .ops = &s2mpa01_buck_ops, \ 271 271 .type = REGULATOR_VOLTAGE, \ 272 272 .owner = THIS_MODULE, \ 273 - .min_uV = S2MPA01_BUCK_MIN1, \ 274 - .uV_step = S2MPA01_BUCK_STEP1, \ 273 + .min_uV = MIN_600_MV, \ 274 + .uV_step = STEP_6_25_MV, \ 275 275 .n_voltages = S2MPA01_BUCK_N_VOLTAGES, \ 276 276 .ramp_delay = S2MPA01_RAMP_DELAY, \ 277 277 .vsel_reg = S2MPA01_REG_B1CTRL2 + (num - 1) * 2, \ ··· 286 286 .ops = &s2mpa01_buck_ops, \ 287 287 .type = REGULATOR_VOLTAGE, \ 288 288 .owner = THIS_MODULE, \ 289 - .min_uV = S2MPA01_BUCK_MIN2, \ 290 - .uV_step = S2MPA01_BUCK_STEP1, \ 289 + .min_uV = MIN_800_MV, \ 290 + .uV_step = STEP_6_25_MV, \ 291 291 .n_voltages = S2MPA01_BUCK_N_VOLTAGES, \ 292 292 .ramp_delay = S2MPA01_RAMP_DELAY, \ 293 293 .vsel_reg = S2MPA01_REG_B5CTRL2, \ ··· 302 302 .ops = &s2mpa01_buck_ops, \ 303 303 .type = REGULATOR_VOLTAGE, \ 304 304 .owner = THIS_MODULE, \ 305 - .min_uV = S2MPA01_BUCK_MIN1, \ 306 - .uV_step = S2MPA01_BUCK_STEP1, \ 305 + .min_uV = MIN_600_MV, \ 306 + .uV_step = STEP_6_25_MV, \ 307 307 .n_voltages = S2MPA01_BUCK_N_VOLTAGES, \ 308 308 .ramp_delay = S2MPA01_RAMP_DELAY, \ 309 309 .vsel_reg = S2MPA01_REG_B6CTRL2 + (num - 6) * 2, \ ··· 318 318 .ops = &s2mpa01_buck_ops, \ 319 319 .type = REGULATOR_VOLTAGE, \ 320 320 .owner = THIS_MODULE, \ 321 - .min_uV = S2MPA01_BUCK_MIN2, \ 322 - .uV_step = S2MPA01_BUCK_STEP2, \ 321 + .min_uV = MIN_800_MV, \ 322 + .uV_step = STEP_12_5_MV, \ 323 323 .n_voltages = S2MPA01_BUCK_N_VOLTAGES, \ 324 324 .ramp_delay = S2MPA01_RAMP_DELAY, \ 325 325 .vsel_reg = S2MPA01_REG_B8CTRL2, \ ··· 334 334 .ops = &s2mpa01_buck_ops, \ 335 335 .type = REGULATOR_VOLTAGE, \ 336 336 .owner = THIS_MODULE, \ 337 - .min_uV = S2MPA01_BUCK_MIN4, \ 338 - .uV_step = S2MPA01_BUCK_STEP2, \ 337 + .min_uV = MIN_1500_MV, \ 338 + .uV_step = STEP_12_5_MV, \ 339 339 .n_voltages = S2MPA01_BUCK_N_VOLTAGES, \ 340 340 .ramp_delay = S2MPA01_RAMP_DELAY, \ 341 341 .vsel_reg = S2MPA01_REG_B9CTRL2, \ ··· 350 350 .ops = &s2mpa01_buck_ops, \ 351 351 .type = REGULATOR_VOLTAGE, \ 352 352 .owner = THIS_MODULE, \ 353 - .min_uV = S2MPA01_BUCK_MIN3, \ 354 - .uV_step = S2MPA01_BUCK_STEP2, \ 353 + .min_uV = MIN_1000_MV, \ 354 + .uV_step = STEP_12_5_MV, \ 355 355 .n_voltages = S2MPA01_BUCK_N_VOLTAGES, \ 356 356 .ramp_delay = S2MPA01_RAMP_DELAY, \ 357 357 .vsel_reg = S2MPA01_REG_B10CTRL2, \
+25 -25
drivers/regulator/s2mps11.c
··· 255 255 .set_ramp_delay = s2mps11_set_ramp_delay, 256 256 }; 257 257 258 - #define regulator_desc_s2mps11_ldo1(num) { \ 258 + #define regulator_desc_s2mps11_ldo1(num) { \ 259 259 .name = "LDO"#num, \ 260 260 .id = S2MPS11_LDO##num, \ 261 261 .ops = &s2mps11_ldo_ops, \ 262 262 .type = REGULATOR_VOLTAGE, \ 263 263 .owner = THIS_MODULE, \ 264 - .min_uV = S2MPS11_LDO_MIN, \ 265 - .uV_step = S2MPS11_LDO_STEP1, \ 264 + .min_uV = MIN_800_MV, \ 265 + .uV_step = STEP_50_MV, \ 266 266 .n_voltages = S2MPS11_LDO_N_VOLTAGES, \ 267 267 .vsel_reg = S2MPS11_REG_L1CTRL + num - 1, \ 268 268 .vsel_mask = S2MPS11_LDO_VSEL_MASK, \ ··· 275 275 .ops = &s2mps11_ldo_ops, \ 276 276 .type = REGULATOR_VOLTAGE, \ 277 277 .owner = THIS_MODULE, \ 278 - .min_uV = S2MPS11_LDO_MIN, \ 279 - .uV_step = S2MPS11_LDO_STEP2, \ 278 + .min_uV = MIN_800_MV, \ 279 + .uV_step = STEP_25_MV, \ 280 280 .n_voltages = S2MPS11_LDO_N_VOLTAGES, \ 281 281 .vsel_reg = S2MPS11_REG_L1CTRL + num - 1, \ 282 282 .vsel_mask = S2MPS11_LDO_VSEL_MASK, \ ··· 290 290 .ops = &s2mps11_buck_ops, \ 291 291 .type = REGULATOR_VOLTAGE, \ 292 292 .owner = THIS_MODULE, \ 293 - .min_uV = S2MPS11_BUCK_MIN1, \ 294 - .uV_step = S2MPS11_BUCK_STEP1, \ 293 + .min_uV = MIN_600_MV, \ 294 + .uV_step = STEP_6_25_MV, \ 295 295 .n_voltages = S2MPS11_BUCK_N_VOLTAGES, \ 296 296 .ramp_delay = S2MPS11_RAMP_DELAY, \ 297 297 .vsel_reg = S2MPS11_REG_B1CTRL2 + (num - 1) * 2, \ ··· 306 306 .ops = &s2mps11_buck_ops, \ 307 307 .type = REGULATOR_VOLTAGE, \ 308 308 .owner = THIS_MODULE, \ 309 - .min_uV = S2MPS11_BUCK_MIN1, \ 310 - .uV_step = S2MPS11_BUCK_STEP1, \ 309 + .min_uV = MIN_600_MV, \ 310 + .uV_step = STEP_6_25_MV, \ 311 311 .n_voltages = S2MPS11_BUCK_N_VOLTAGES, \ 312 312 .ramp_delay = S2MPS11_RAMP_DELAY, \ 313 313 .vsel_reg = S2MPS11_REG_B5CTRL2, \ ··· 322 322 .ops = &s2mps11_buck_ops, \ 323 323 .type = REGULATOR_VOLTAGE, \ 324 324 .owner = THIS_MODULE, \ 325 - .min_uV = S2MPS11_BUCK_MIN1, \ 326 - .uV_step = S2MPS11_BUCK_STEP1, \ 325 + .min_uV = MIN_600_MV, \ 326 + .uV_step = STEP_6_25_MV, \ 327 327 .n_voltages = S2MPS11_BUCK_N_VOLTAGES, \ 328 328 .ramp_delay = S2MPS11_RAMP_DELAY, \ 329 329 .vsel_reg = S2MPS11_REG_B6CTRL2 + (num - 6) * 2, \ ··· 338 338 .ops = &s2mps11_buck_ops, \ 339 339 .type = REGULATOR_VOLTAGE, \ 340 340 .owner = THIS_MODULE, \ 341 - .min_uV = S2MPS11_BUCK_MIN3, \ 342 - .uV_step = S2MPS11_BUCK_STEP3, \ 341 + .min_uV = MIN_3000_MV, \ 342 + .uV_step = STEP_25_MV, \ 343 343 .n_voltages = S2MPS11_BUCK_N_VOLTAGES, \ 344 344 .ramp_delay = S2MPS11_RAMP_DELAY, \ 345 345 .vsel_reg = S2MPS11_REG_B9CTRL2, \ ··· 354 354 .ops = &s2mps11_buck_ops, \ 355 355 .type = REGULATOR_VOLTAGE, \ 356 356 .owner = THIS_MODULE, \ 357 - .min_uV = S2MPS11_BUCK_MIN2, \ 358 - .uV_step = S2MPS11_BUCK_STEP2, \ 357 + .min_uV = MIN_750_MV, \ 358 + .uV_step = STEP_12_5_MV, \ 359 359 .n_voltages = S2MPS11_BUCK_N_VOLTAGES, \ 360 360 .ramp_delay = S2MPS11_RAMP_DELAY, \ 361 361 .vsel_reg = S2MPS11_REG_B10CTRL2, \ ··· 516 516 .ops = &s2mps14_reg_ops, \ 517 517 .type = REGULATOR_VOLTAGE, \ 518 518 .owner = THIS_MODULE, \ 519 - .min_uV = S2MPS14_LDO_MIN_800MV, \ 520 - .uV_step = S2MPS14_LDO_STEP_25MV, \ 519 + .min_uV = MIN_800_MV, \ 520 + .uV_step = STEP_25_MV, \ 521 521 .n_voltages = S2MPS14_LDO_N_VOLTAGES, \ 522 522 .vsel_reg = S2MPS14_REG_L1CTRL + num - 1, \ 523 523 .vsel_mask = S2MPS14_LDO_VSEL_MASK, \ ··· 530 530 .ops = &s2mps14_reg_ops, \ 531 531 .type = REGULATOR_VOLTAGE, \ 532 532 .owner = THIS_MODULE, \ 533 - .min_uV = S2MPS14_LDO_MIN_1800MV, \ 534 - .uV_step = S2MPS14_LDO_STEP_25MV, \ 533 + .min_uV = MIN_1800_MV, \ 534 + .uV_step = STEP_25_MV, \ 535 535 .n_voltages = S2MPS14_LDO_N_VOLTAGES, \ 536 536 .vsel_reg = S2MPS14_REG_L1CTRL + num - 1, \ 537 537 .vsel_mask = S2MPS14_LDO_VSEL_MASK, \ ··· 544 544 .ops = &s2mps14_reg_ops, \ 545 545 .type = REGULATOR_VOLTAGE, \ 546 546 .owner = THIS_MODULE, \ 547 - .min_uV = S2MPS14_LDO_MIN_800MV, \ 548 - .uV_step = S2MPS14_LDO_STEP_12_5MV, \ 547 + .min_uV = MIN_800_MV, \ 548 + .uV_step = STEP_12_5_MV, \ 549 549 .n_voltages = S2MPS14_LDO_N_VOLTAGES, \ 550 550 .vsel_reg = S2MPS14_REG_L1CTRL + num - 1, \ 551 551 .vsel_mask = S2MPS14_LDO_VSEL_MASK, \ ··· 558 558 .ops = &s2mps14_reg_ops, \ 559 559 .type = REGULATOR_VOLTAGE, \ 560 560 .owner = THIS_MODULE, \ 561 - .min_uV = S2MPS14_BUCK1235_MIN_600MV, \ 562 - .uV_step = S2MPS14_BUCK1235_STEP_6_25MV, \ 561 + .min_uV = MIN_600_MV, \ 562 + .uV_step = STEP_6_25_MV, \ 563 563 .n_voltages = S2MPS14_BUCK_N_VOLTAGES, \ 564 564 .linear_min_sel = S2MPS14_BUCK1235_START_SEL, \ 565 565 .ramp_delay = S2MPS14_BUCK_RAMP_DELAY, \ ··· 574 574 .ops = &s2mps14_reg_ops, \ 575 575 .type = REGULATOR_VOLTAGE, \ 576 576 .owner = THIS_MODULE, \ 577 - .min_uV = S2MPS14_BUCK4_MIN_1400MV, \ 578 - .uV_step = S2MPS14_BUCK4_STEP_12_5MV, \ 577 + .min_uV = MIN_1400_MV, \ 578 + .uV_step = STEP_12_5_MV, \ 579 579 .n_voltages = S2MPS14_BUCK_N_VOLTAGES, \ 580 580 .linear_min_sel = S2MPS14_BUCK4_START_SEL, \ 581 581 .ramp_delay = S2MPS14_BUCK_RAMP_DELAY, \
+21
include/linux/mfd/samsung/core.h
··· 14 14 #ifndef __LINUX_MFD_SEC_CORE_H 15 15 #define __LINUX_MFD_SEC_CORE_H 16 16 17 + /* Macros to represent minimum voltages for LDO/BUCK */ 18 + #define MIN_3000_MV 3000000 19 + #define MIN_2500_MV 2500000 20 + #define MIN_2000_MV 2000000 21 + #define MIN_1800_MV 1800000 22 + #define MIN_1500_MV 1500000 23 + #define MIN_1400_MV 1400000 24 + #define MIN_1000_MV 1000000 25 + 26 + #define MIN_900_MV 900000 27 + #define MIN_850_MV 850000 28 + #define MIN_800_MV 800000 29 + #define MIN_750_MV 750000 30 + #define MIN_600_MV 600000 31 + 32 + /* Macros to represent steps for LDO/BUCK */ 33 + #define STEP_50_MV 50000 34 + #define STEP_25_MV 25000 35 + #define STEP_12_5_MV 12500 36 + #define STEP_6_25_MV 6250 37 + 17 38 enum sec_device_type { 18 39 S5M8751X, 19 40 S5M8763X,
-12
include/linux/mfd/samsung/s2mpa01.h
··· 155 155 S2MPA01_REGULATOR_MAX, 156 156 }; 157 157 158 - #define S2MPA01_BUCK_MIN1 600000 159 - #define S2MPA01_BUCK_MIN2 800000 160 - #define S2MPA01_BUCK_MIN3 1000000 161 - #define S2MPA01_BUCK_MIN4 1500000 162 - #define S2MPA01_LDO_MIN 800000 163 - 164 - #define S2MPA01_BUCK_STEP1 6250 165 - #define S2MPA01_BUCK_STEP2 12500 166 - 167 - #define S2MPA01_LDO_STEP1 50000 168 - #define S2MPA01_LDO_STEP2 25000 169 - 170 158 #define S2MPA01_LDO_VSEL_MASK 0x3F 171 159 #define S2MPA01_BUCK_VSEL_MASK 0xFF 172 160 #define S2MPA01_ENABLE_MASK (0x03 << S2MPA01_ENABLE_SHIFT)
-9
include/linux/mfd/samsung/s2mps11.h
··· 171 171 S2MPS11_REGULATOR_MAX, 172 172 }; 173 173 174 - #define S2MPS11_BUCK_MIN1 600000 175 - #define S2MPS11_BUCK_MIN2 750000 176 - #define S2MPS11_BUCK_MIN3 3000000 177 - #define S2MPS11_LDO_MIN 800000 178 - #define S2MPS11_BUCK_STEP1 6250 179 - #define S2MPS11_BUCK_STEP2 12500 180 - #define S2MPS11_BUCK_STEP3 25000 181 - #define S2MPS11_LDO_STEP1 50000 182 - #define S2MPS11_LDO_STEP2 25000 183 174 #define S2MPS11_LDO_VSEL_MASK 0x3F 184 175 #define S2MPS11_BUCK_VSEL_MASK 0xFF 185 176 #define S2MPS11_ENABLE_MASK (0x03 << S2MPS11_ENABLE_SHIFT)
-10
include/linux/mfd/samsung/s2mps14.h
··· 123 123 }; 124 124 125 125 /* Regulator constraints for BUCKx */ 126 - #define S2MPS14_BUCK1235_MIN_600MV 600000 127 - #define S2MPS14_BUCK4_MIN_1400MV 1400000 128 - #define S2MPS14_BUCK1235_STEP_6_25MV 6250 129 - #define S2MPS14_BUCK4_STEP_12_5MV 12500 130 126 #define S2MPS14_BUCK1235_START_SEL 0x20 131 127 #define S2MPS14_BUCK4_START_SEL 0x40 132 128 /* ··· 131 135 * Let's assume that default value will be set. 132 136 */ 133 137 #define S2MPS14_BUCK_RAMP_DELAY 12500 134 - 135 - /* Regulator constraints for different types of LDOx */ 136 - #define S2MPS14_LDO_MIN_800MV 800000 137 - #define S2MPS14_LDO_MIN_1800MV 1800000 138 - #define S2MPS14_LDO_STEP_12_5MV 12500 139 - #define S2MPS14_LDO_STEP_25MV 25000 140 138 141 139 #define S2MPS14_LDO_VSEL_MASK 0x3F 142 140 #define S2MPS14_BUCK_VSEL_MASK 0xFF