Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 0e4f4178 authored by Amit Daniel Kachhap's avatar Amit Daniel Kachhap Committed by Mark Brown
Browse files

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: default avatarKrzysztof Kozlowski <k.kozlowski@samsung.com>
Signed-off-by: default avatarAmit Daniel Kachhap <amit.daniel@samsung.com>
Acked-by: default avatarLee Jones <lee.jones@linaro.org>
Signed-off-by: default avatarMark Brown <broonie@linaro.org>
parent 7d1311b9
Loading
Loading
Loading
Loading
+16 −16
Original line number Diff line number Diff line
@@ -241,8 +241,8 @@ static struct regulator_ops s2mpa01_buck_ops = {
	.ops		= &s2mpa01_ldo_ops,		\
	.type		= REGULATOR_VOLTAGE,		\
	.owner		= THIS_MODULE,			\
	.min_uV		= S2MPA01_LDO_MIN,		\
	.uV_step	= S2MPA01_LDO_STEP1,		\
	.min_uV		= MIN_800_MV,			\
	.uV_step	= STEP_50_MV,			\
	.n_voltages	= S2MPA01_LDO_N_VOLTAGES,	\
	.vsel_reg	= S2MPA01_REG_L1CTRL + num - 1,	\
	.vsel_mask	= S2MPA01_LDO_VSEL_MASK,	\
@@ -255,8 +255,8 @@ static struct regulator_ops s2mpa01_buck_ops = {
	.ops		= &s2mpa01_ldo_ops,		\
	.type		= REGULATOR_VOLTAGE,		\
	.owner		= THIS_MODULE,			\
	.min_uV		= S2MPA01_LDO_MIN,		\
	.uV_step	= S2MPA01_LDO_STEP2,		\
	.min_uV		= MIN_800_MV,			\
	.uV_step	= STEP_25_MV,			\
	.n_voltages	= S2MPA01_LDO_N_VOLTAGES,	\
	.vsel_reg	= S2MPA01_REG_L1CTRL + num - 1,	\
	.vsel_mask	= S2MPA01_LDO_VSEL_MASK,	\
@@ -270,8 +270,8 @@ static struct regulator_ops s2mpa01_buck_ops = {
	.ops		= &s2mpa01_buck_ops,			\
	.type		= REGULATOR_VOLTAGE,			\
	.owner		= THIS_MODULE,				\
	.min_uV		= S2MPA01_BUCK_MIN1,			\
	.uV_step	= S2MPA01_BUCK_STEP1,			\
	.min_uV		= MIN_600_MV,				\
	.uV_step	= STEP_6_25_MV,				\
	.n_voltages	= S2MPA01_BUCK_N_VOLTAGES,		\
	.ramp_delay	= S2MPA01_RAMP_DELAY,			\
	.vsel_reg	= S2MPA01_REG_B1CTRL2 + (num - 1) * 2,	\
@@ -286,8 +286,8 @@ static struct regulator_ops s2mpa01_buck_ops = {
	.ops		= &s2mpa01_buck_ops,			\
	.type		= REGULATOR_VOLTAGE,			\
	.owner		= THIS_MODULE,				\
	.min_uV		= S2MPA01_BUCK_MIN2,			\
	.uV_step	= S2MPA01_BUCK_STEP1,			\
	.min_uV		= MIN_800_MV,				\
	.uV_step	= STEP_6_25_MV,				\
	.n_voltages	= S2MPA01_BUCK_N_VOLTAGES,		\
	.ramp_delay	= S2MPA01_RAMP_DELAY,			\
	.vsel_reg	= S2MPA01_REG_B5CTRL2,			\
@@ -302,8 +302,8 @@ static struct regulator_ops s2mpa01_buck_ops = {
	.ops		= &s2mpa01_buck_ops,			\
	.type		= REGULATOR_VOLTAGE,			\
	.owner		= THIS_MODULE,				\
	.min_uV		= S2MPA01_BUCK_MIN1,			\
	.uV_step	= S2MPA01_BUCK_STEP1,			\
	.min_uV		= MIN_600_MV,				\
	.uV_step	= STEP_6_25_MV,				\
	.n_voltages	= S2MPA01_BUCK_N_VOLTAGES,		\
	.ramp_delay	= S2MPA01_RAMP_DELAY,			\
	.vsel_reg	= S2MPA01_REG_B6CTRL2 + (num - 6) * 2,	\
@@ -318,8 +318,8 @@ static struct regulator_ops s2mpa01_buck_ops = {
	.ops		= &s2mpa01_buck_ops,			\
	.type		= REGULATOR_VOLTAGE,			\
	.owner		= THIS_MODULE,				\
	.min_uV		= S2MPA01_BUCK_MIN2,			\
	.uV_step	= S2MPA01_BUCK_STEP2,			\
	.min_uV		= MIN_800_MV,				\
	.uV_step	= STEP_12_5_MV,				\
	.n_voltages	= S2MPA01_BUCK_N_VOLTAGES,		\
	.ramp_delay	= S2MPA01_RAMP_DELAY,			\
	.vsel_reg	= S2MPA01_REG_B8CTRL2,			\
@@ -334,8 +334,8 @@ static struct regulator_ops s2mpa01_buck_ops = {
	.ops		= &s2mpa01_buck_ops,			\
	.type		= REGULATOR_VOLTAGE,			\
	.owner		= THIS_MODULE,				\
	.min_uV		= S2MPA01_BUCK_MIN4,			\
	.uV_step	= S2MPA01_BUCK_STEP2,			\
	.min_uV		= MIN_1500_MV,				\
	.uV_step	= STEP_12_5_MV,				\
	.n_voltages	= S2MPA01_BUCK_N_VOLTAGES,		\
	.ramp_delay	= S2MPA01_RAMP_DELAY,			\
	.vsel_reg	= S2MPA01_REG_B9CTRL2,			\
@@ -350,8 +350,8 @@ static struct regulator_ops s2mpa01_buck_ops = {
	.ops		= &s2mpa01_buck_ops,			\
	.type		= REGULATOR_VOLTAGE,			\
	.owner		= THIS_MODULE,				\
	.min_uV		= S2MPA01_BUCK_MIN3,			\
	.uV_step	= S2MPA01_BUCK_STEP2,			\
	.min_uV		= MIN_1000_MV,				\
	.uV_step	= STEP_12_5_MV,				\
	.n_voltages	= S2MPA01_BUCK_N_VOLTAGES,		\
	.ramp_delay	= S2MPA01_RAMP_DELAY,			\
	.vsel_reg	= S2MPA01_REG_B10CTRL2,			\
+25 −25
Original line number Diff line number Diff line
@@ -261,8 +261,8 @@ static struct regulator_ops s2mps11_buck_ops = {
	.ops		= &s2mps11_ldo_ops,		\
	.type		= REGULATOR_VOLTAGE,		\
	.owner		= THIS_MODULE,			\
	.min_uV		= S2MPS11_LDO_MIN,		\
	.uV_step	= S2MPS11_LDO_STEP1,		\
	.min_uV		= MIN_800_MV,			\
	.uV_step	= STEP_50_MV,			\
	.n_voltages	= S2MPS11_LDO_N_VOLTAGES,	\
	.vsel_reg	= S2MPS11_REG_L1CTRL + num - 1,	\
	.vsel_mask	= S2MPS11_LDO_VSEL_MASK,	\
@@ -275,8 +275,8 @@ static struct regulator_ops s2mps11_buck_ops = {
	.ops		= &s2mps11_ldo_ops,		\
	.type		= REGULATOR_VOLTAGE,		\
	.owner		= THIS_MODULE,			\
	.min_uV		= S2MPS11_LDO_MIN,		\
	.uV_step	= S2MPS11_LDO_STEP2,		\
	.min_uV		= MIN_800_MV,			\
	.uV_step	= STEP_25_MV,			\
	.n_voltages	= S2MPS11_LDO_N_VOLTAGES,	\
	.vsel_reg	= S2MPS11_REG_L1CTRL + num - 1,	\
	.vsel_mask	= S2MPS11_LDO_VSEL_MASK,	\
@@ -290,8 +290,8 @@ static struct regulator_ops s2mps11_buck_ops = {
	.ops		= &s2mps11_buck_ops,			\
	.type		= REGULATOR_VOLTAGE,			\
	.owner		= THIS_MODULE,				\
	.min_uV		= S2MPS11_BUCK_MIN1,			\
	.uV_step	= S2MPS11_BUCK_STEP1,			\
	.min_uV		= MIN_600_MV,				\
	.uV_step	= STEP_6_25_MV,				\
	.n_voltages	= S2MPS11_BUCK_N_VOLTAGES,		\
	.ramp_delay	= S2MPS11_RAMP_DELAY,			\
	.vsel_reg	= S2MPS11_REG_B1CTRL2 + (num - 1) * 2,	\
@@ -306,8 +306,8 @@ static struct regulator_ops s2mps11_buck_ops = {
	.ops		= &s2mps11_buck_ops,			\
	.type		= REGULATOR_VOLTAGE,			\
	.owner		= THIS_MODULE,				\
	.min_uV		= S2MPS11_BUCK_MIN1,			\
	.uV_step	= S2MPS11_BUCK_STEP1,			\
	.min_uV		= MIN_600_MV,				\
	.uV_step	= STEP_6_25_MV,				\
	.n_voltages	= S2MPS11_BUCK_N_VOLTAGES,		\
	.ramp_delay	= S2MPS11_RAMP_DELAY,			\
	.vsel_reg	= S2MPS11_REG_B5CTRL2,			\
@@ -322,8 +322,8 @@ static struct regulator_ops s2mps11_buck_ops = {
	.ops		= &s2mps11_buck_ops,			\
	.type		= REGULATOR_VOLTAGE,			\
	.owner		= THIS_MODULE,				\
	.min_uV		= S2MPS11_BUCK_MIN1,			\
	.uV_step	= S2MPS11_BUCK_STEP1,			\
	.min_uV		= MIN_600_MV,				\
	.uV_step	= STEP_6_25_MV,				\
	.n_voltages	= S2MPS11_BUCK_N_VOLTAGES,		\
	.ramp_delay	= S2MPS11_RAMP_DELAY,			\
	.vsel_reg	= S2MPS11_REG_B6CTRL2 + (num - 6) * 2,	\
@@ -338,8 +338,8 @@ static struct regulator_ops s2mps11_buck_ops = {
	.ops		= &s2mps11_buck_ops,			\
	.type		= REGULATOR_VOLTAGE,			\
	.owner		= THIS_MODULE,				\
	.min_uV		= S2MPS11_BUCK_MIN3,			\
	.uV_step	= S2MPS11_BUCK_STEP3,			\
	.min_uV		= MIN_3000_MV,				\
	.uV_step	= STEP_25_MV,				\
	.n_voltages	= S2MPS11_BUCK_N_VOLTAGES,		\
	.ramp_delay	= S2MPS11_RAMP_DELAY,			\
	.vsel_reg	= S2MPS11_REG_B9CTRL2,			\
@@ -354,8 +354,8 @@ static struct regulator_ops s2mps11_buck_ops = {
	.ops		= &s2mps11_buck_ops,			\
	.type		= REGULATOR_VOLTAGE,			\
	.owner		= THIS_MODULE,				\
	.min_uV		= S2MPS11_BUCK_MIN2,			\
	.uV_step	= S2MPS11_BUCK_STEP2,			\
	.min_uV		= MIN_750_MV,				\
	.uV_step	= STEP_12_5_MV,				\
	.n_voltages	= S2MPS11_BUCK_N_VOLTAGES,		\
	.ramp_delay	= S2MPS11_RAMP_DELAY,			\
	.vsel_reg	= S2MPS11_REG_B10CTRL2,			\
@@ -516,8 +516,8 @@ static struct regulator_ops s2mps14_reg_ops = {
	.ops		= &s2mps14_reg_ops,		\
	.type		= REGULATOR_VOLTAGE,		\
	.owner		= THIS_MODULE,			\
	.min_uV		= S2MPS14_LDO_MIN_800MV,	\
	.uV_step	= S2MPS14_LDO_STEP_25MV,	\
	.min_uV		= MIN_800_MV,			\
	.uV_step	= STEP_25_MV,			\
	.n_voltages	= S2MPS14_LDO_N_VOLTAGES,	\
	.vsel_reg	= S2MPS14_REG_L1CTRL + num - 1,	\
	.vsel_mask	= S2MPS14_LDO_VSEL_MASK,	\
@@ -530,8 +530,8 @@ static struct regulator_ops s2mps14_reg_ops = {
	.ops		= &s2mps14_reg_ops,		\
	.type		= REGULATOR_VOLTAGE,		\
	.owner		= THIS_MODULE,			\
	.min_uV		= S2MPS14_LDO_MIN_1800MV,	\
	.uV_step	= S2MPS14_LDO_STEP_25MV,	\
	.min_uV		= MIN_1800_MV,			\
	.uV_step	= STEP_25_MV,			\
	.n_voltages	= S2MPS14_LDO_N_VOLTAGES,	\
	.vsel_reg	= S2MPS14_REG_L1CTRL + num - 1,	\
	.vsel_mask	= S2MPS14_LDO_VSEL_MASK,	\
@@ -544,8 +544,8 @@ static struct regulator_ops s2mps14_reg_ops = {
	.ops		= &s2mps14_reg_ops,		\
	.type		= REGULATOR_VOLTAGE,		\
	.owner		= THIS_MODULE,			\
	.min_uV		= S2MPS14_LDO_MIN_800MV,	\
	.uV_step	= S2MPS14_LDO_STEP_12_5MV,	\
	.min_uV		= MIN_800_MV,			\
	.uV_step	= STEP_12_5_MV,			\
	.n_voltages	= S2MPS14_LDO_N_VOLTAGES,	\
	.vsel_reg	= S2MPS14_REG_L1CTRL + num - 1,	\
	.vsel_mask	= S2MPS14_LDO_VSEL_MASK,	\
@@ -558,8 +558,8 @@ static struct regulator_ops s2mps14_reg_ops = {
	.ops		= &s2mps14_reg_ops,			\
	.type		= REGULATOR_VOLTAGE,			\
	.owner		= THIS_MODULE,				\
	.min_uV		= S2MPS14_BUCK1235_MIN_600MV,		\
	.uV_step	= S2MPS14_BUCK1235_STEP_6_25MV,		\
	.min_uV		= MIN_600_MV,				\
	.uV_step	= STEP_6_25_MV,				\
	.n_voltages	= S2MPS14_BUCK_N_VOLTAGES,		\
	.linear_min_sel = S2MPS14_BUCK1235_START_SEL,		\
	.ramp_delay	= S2MPS14_BUCK_RAMP_DELAY,		\
@@ -574,8 +574,8 @@ static struct regulator_ops s2mps14_reg_ops = {
	.ops		= &s2mps14_reg_ops,			\
	.type		= REGULATOR_VOLTAGE,			\
	.owner		= THIS_MODULE,				\
	.min_uV		= S2MPS14_BUCK4_MIN_1400MV,		\
	.uV_step	= S2MPS14_BUCK4_STEP_12_5MV,		\
	.min_uV		= MIN_1400_MV,				\
	.uV_step	= STEP_12_5_MV,				\
	.n_voltages	= S2MPS14_BUCK_N_VOLTAGES,		\
	.linear_min_sel = S2MPS14_BUCK4_START_SEL,		\
	.ramp_delay	= S2MPS14_BUCK_RAMP_DELAY,		\
+21 −0
Original line number Diff line number Diff line
@@ -14,6 +14,27 @@
#ifndef __LINUX_MFD_SEC_CORE_H
#define __LINUX_MFD_SEC_CORE_H

/* Macros to represent minimum voltages for LDO/BUCK */
#define MIN_3000_MV		3000000
#define MIN_2500_MV		2500000
#define MIN_2000_MV		2000000
#define MIN_1800_MV		1800000
#define MIN_1500_MV		1500000
#define MIN_1400_MV		1400000
#define MIN_1000_MV		1000000

#define MIN_900_MV		900000
#define MIN_850_MV		850000
#define MIN_800_MV		800000
#define MIN_750_MV		750000
#define MIN_600_MV		600000

/* Macros to represent steps for LDO/BUCK */
#define STEP_50_MV		50000
#define STEP_25_MV		25000
#define STEP_12_5_MV		12500
#define STEP_6_25_MV		6250

enum sec_device_type {
	S5M8751X,
	S5M8763X,
+0 −12
Original line number Diff line number Diff line
@@ -155,18 +155,6 @@ enum s2mpa01_regulators {
	S2MPA01_REGULATOR_MAX,
};

#define S2MPA01_BUCK_MIN1	600000
#define S2MPA01_BUCK_MIN2	800000
#define S2MPA01_BUCK_MIN3	1000000
#define S2MPA01_BUCK_MIN4	1500000
#define S2MPA01_LDO_MIN		800000

#define S2MPA01_BUCK_STEP1	6250
#define S2MPA01_BUCK_STEP2	12500

#define S2MPA01_LDO_STEP1	50000
#define S2MPA01_LDO_STEP2	25000

#define S2MPA01_LDO_VSEL_MASK	0x3F
#define S2MPA01_BUCK_VSEL_MASK	0xFF
#define S2MPA01_ENABLE_MASK	(0x03 << S2MPA01_ENABLE_SHIFT)
+0 −9
Original line number Diff line number Diff line
@@ -171,15 +171,6 @@ enum s2mps11_regulators {
	S2MPS11_REGULATOR_MAX,
};

#define S2MPS11_BUCK_MIN1	600000
#define S2MPS11_BUCK_MIN2	750000
#define S2MPS11_BUCK_MIN3	3000000
#define S2MPS11_LDO_MIN	800000
#define S2MPS11_BUCK_STEP1	6250
#define S2MPS11_BUCK_STEP2	12500
#define S2MPS11_BUCK_STEP3	25000
#define S2MPS11_LDO_STEP1	50000
#define S2MPS11_LDO_STEP2	25000
#define S2MPS11_LDO_VSEL_MASK	0x3F
#define S2MPS11_BUCK_VSEL_MASK	0xFF
#define S2MPS11_ENABLE_MASK	(0x03 << S2MPS11_ENABLE_SHIFT)
Loading