Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
L
linux
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
Analytics
Analytics
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Commits
Issue Boards
Open sidebar
Kirill Smelkov
linux
Commits
5bf2a9e7
Commit
5bf2a9e7
authored
Oct 08, 2019
by
Mark Brown
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'regulator-5.4' into regulator-5.5
parents
9306a733
77fd66c9
Changes
8
Show whitespace changes
Inline
Side-by-side
Showing
8 changed files
with
98 additions
and
104 deletions
+98
-104
drivers/regulator/core.c
drivers/regulator/core.c
+13
-0
drivers/regulator/da9062-regulator.c
drivers/regulator/da9062-regulator.c
+47
-71
drivers/regulator/fixed.c
drivers/regulator/fixed.c
+2
-3
drivers/regulator/lochnagar-regulator.c
drivers/regulator/lochnagar-regulator.c
+1
-0
drivers/regulator/of_regulator.c
drivers/regulator/of_regulator.c
+18
-9
drivers/regulator/pfuze100-regulator.c
drivers/regulator/pfuze100-regulator.c
+7
-1
drivers/regulator/qcom-rpmh-regulator.c
drivers/regulator/qcom-rpmh-regulator.c
+2
-2
drivers/regulator/ti-abb-regulator.c
drivers/regulator/ti-abb-regulator.c
+8
-18
No files found.
drivers/regulator/core.c
View file @
5bf2a9e7
...
@@ -5053,6 +5053,19 @@ regulator_register(const struct regulator_desc *regulator_desc,
...
@@ -5053,6 +5053,19 @@ regulator_register(const struct regulator_desc *regulator_desc,
init_data
=
regulator_of_get_init_data
(
dev
,
regulator_desc
,
config
,
init_data
=
regulator_of_get_init_data
(
dev
,
regulator_desc
,
config
,
&
rdev
->
dev
.
of_node
);
&
rdev
->
dev
.
of_node
);
/*
* Sometimes not all resources are probed already so we need to take
* that into account. This happens most the time if the ena_gpiod comes
* from a gpio extender or something else.
*/
if
(
PTR_ERR
(
init_data
)
==
-
EPROBE_DEFER
)
{
kfree
(
config
);
kfree
(
rdev
);
ret
=
-
EPROBE_DEFER
;
goto
rinse
;
}
/*
/*
* We need to keep track of any GPIO descriptor coming from the
* We need to keep track of any GPIO descriptor coming from the
* device tree until we have handled it over to the core. If the
* device tree until we have handled it over to the core. If the
...
...
drivers/regulator/da9062-regulator.c
View file @
5bf2a9e7
...
@@ -136,7 +136,6 @@ static int da9062_buck_set_mode(struct regulator_dev *rdev, unsigned mode)
...
@@ -136,7 +136,6 @@ static int da9062_buck_set_mode(struct regulator_dev *rdev, unsigned mode)
static
unsigned
da9062_buck_get_mode
(
struct
regulator_dev
*
rdev
)
static
unsigned
da9062_buck_get_mode
(
struct
regulator_dev
*
rdev
)
{
{
struct
da9062_regulator
*
regl
=
rdev_get_drvdata
(
rdev
);
struct
da9062_regulator
*
regl
=
rdev_get_drvdata
(
rdev
);
struct
regmap_field
*
field
;
unsigned
int
val
,
mode
=
0
;
unsigned
int
val
,
mode
=
0
;
int
ret
;
int
ret
;
...
@@ -158,18 +157,7 @@ static unsigned da9062_buck_get_mode(struct regulator_dev *rdev)
...
@@ -158,18 +157,7 @@ static unsigned da9062_buck_get_mode(struct regulator_dev *rdev)
return
REGULATOR_MODE_NORMAL
;
return
REGULATOR_MODE_NORMAL
;
}
}
/* Detect current regulator state */
ret
=
regmap_field_read
(
regl
->
sleep
,
&
val
);
ret
=
regmap_field_read
(
regl
->
suspend
,
&
val
);
if
(
ret
<
0
)
return
0
;
/* Read regulator mode from proper register, depending on state */
if
(
val
)
field
=
regl
->
suspend_sleep
;
else
field
=
regl
->
sleep
;
ret
=
regmap_field_read
(
field
,
&
val
);
if
(
ret
<
0
)
if
(
ret
<
0
)
return
0
;
return
0
;
...
@@ -208,21 +196,9 @@ static int da9062_ldo_set_mode(struct regulator_dev *rdev, unsigned mode)
...
@@ -208,21 +196,9 @@ static int da9062_ldo_set_mode(struct regulator_dev *rdev, unsigned mode)
static
unsigned
da9062_ldo_get_mode
(
struct
regulator_dev
*
rdev
)
static
unsigned
da9062_ldo_get_mode
(
struct
regulator_dev
*
rdev
)
{
{
struct
da9062_regulator
*
regl
=
rdev_get_drvdata
(
rdev
);
struct
da9062_regulator
*
regl
=
rdev_get_drvdata
(
rdev
);
struct
regmap_field
*
field
;
int
ret
,
val
;
int
ret
,
val
;
/* Detect current regulator state */
ret
=
regmap_field_read
(
regl
->
sleep
,
&
val
);
ret
=
regmap_field_read
(
regl
->
suspend
,
&
val
);
if
(
ret
<
0
)
return
0
;
/* Read regulator mode from proper register, depending on state */
if
(
val
)
field
=
regl
->
suspend_sleep
;
else
field
=
regl
->
sleep
;
ret
=
regmap_field_read
(
field
,
&
val
);
if
(
ret
<
0
)
if
(
ret
<
0
)
return
0
;
return
0
;
...
@@ -408,10 +384,10 @@ static const struct da9062_regulator_info local_da9061_regulator_info[] = {
...
@@ -408,10 +384,10 @@ static const struct da9062_regulator_info local_da9061_regulator_info[] = {
__builtin_ffs
((
int
)
DA9062AA_BUCK1_MODE_MASK
)
-
1
,
__builtin_ffs
((
int
)
DA9062AA_BUCK1_MODE_MASK
)
-
1
,
sizeof
(
unsigned
int
)
*
8
-
sizeof
(
unsigned
int
)
*
8
-
__builtin_clz
((
DA9062AA_BUCK1_MODE_MASK
))
-
1
),
__builtin_clz
((
DA9062AA_BUCK1_MODE_MASK
))
-
1
),
.
suspend
=
REG_FIELD
(
DA9062AA_
DVC_1
,
.
suspend
=
REG_FIELD
(
DA9062AA_
BUCK1_CONT
,
__builtin_ffs
((
int
)
DA9062AA_
VBUCK1_SEL
_MASK
)
-
1
,
__builtin_ffs
((
int
)
DA9062AA_
BUCK1_CONF
_MASK
)
-
1
,
sizeof
(
unsigned
int
)
*
8
-
sizeof
(
unsigned
int
)
*
8
-
__builtin_clz
(
(
DA9062AA_VBUCK1_SEL_MASK
)
)
-
1
),
__builtin_clz
(
DA9062AA_BUCK1_CONF_MASK
)
-
1
),
},
},
{
{
.
desc
.
id
=
DA9061_ID_BUCK2
,
.
desc
.
id
=
DA9061_ID_BUCK2
,
...
@@ -444,10 +420,10 @@ static const struct da9062_regulator_info local_da9061_regulator_info[] = {
...
@@ -444,10 +420,10 @@ static const struct da9062_regulator_info local_da9061_regulator_info[] = {
__builtin_ffs
((
int
)
DA9062AA_BUCK3_MODE_MASK
)
-
1
,
__builtin_ffs
((
int
)
DA9062AA_BUCK3_MODE_MASK
)
-
1
,
sizeof
(
unsigned
int
)
*
8
-
sizeof
(
unsigned
int
)
*
8
-
__builtin_clz
((
DA9062AA_BUCK3_MODE_MASK
))
-
1
),
__builtin_clz
((
DA9062AA_BUCK3_MODE_MASK
))
-
1
),
.
suspend
=
REG_FIELD
(
DA9062AA_
DVC_1
,
.
suspend
=
REG_FIELD
(
DA9062AA_
BUCK3_CONT
,
__builtin_ffs
((
int
)
DA9062AA_
VBUCK3_SEL
_MASK
)
-
1
,
__builtin_ffs
((
int
)
DA9062AA_
BUCK3_CONF
_MASK
)
-
1
,
sizeof
(
unsigned
int
)
*
8
-
sizeof
(
unsigned
int
)
*
8
-
__builtin_clz
(
(
DA9062AA_VBUCK3_SEL_MASK
)
)
-
1
),
__builtin_clz
(
DA9062AA_BUCK3_CONF_MASK
)
-
1
),
},
},
{
{
.
desc
.
id
=
DA9061_ID_BUCK3
,
.
desc
.
id
=
DA9061_ID_BUCK3
,
...
@@ -480,10 +456,10 @@ static const struct da9062_regulator_info local_da9061_regulator_info[] = {
...
@@ -480,10 +456,10 @@ static const struct da9062_regulator_info local_da9061_regulator_info[] = {
__builtin_ffs
((
int
)
DA9062AA_BUCK4_MODE_MASK
)
-
1
,
__builtin_ffs
((
int
)
DA9062AA_BUCK4_MODE_MASK
)
-
1
,
sizeof
(
unsigned
int
)
*
8
-
sizeof
(
unsigned
int
)
*
8
-
__builtin_clz
((
DA9062AA_BUCK4_MODE_MASK
))
-
1
),
__builtin_clz
((
DA9062AA_BUCK4_MODE_MASK
))
-
1
),
.
suspend
=
REG_FIELD
(
DA9062AA_
DVC_1
,
.
suspend
=
REG_FIELD
(
DA9062AA_
BUCK4_CONT
,
__builtin_ffs
((
int
)
DA9062AA_
VBUCK4_SEL
_MASK
)
-
1
,
__builtin_ffs
((
int
)
DA9062AA_
BUCK4_CONF
_MASK
)
-
1
,
sizeof
(
unsigned
int
)
*
8
-
sizeof
(
unsigned
int
)
*
8
-
__builtin_clz
(
(
DA9062AA_VBUCK4_SEL_MASK
)
)
-
1
),
__builtin_clz
(
DA9062AA_BUCK4_CONF_MASK
)
-
1
),
},
},
{
{
.
desc
.
id
=
DA9061_ID_LDO1
,
.
desc
.
id
=
DA9061_ID_LDO1
,
...
@@ -509,10 +485,10 @@ static const struct da9062_regulator_info local_da9061_regulator_info[] = {
...
@@ -509,10 +485,10 @@ static const struct da9062_regulator_info local_da9061_regulator_info[] = {
sizeof
(
unsigned
int
)
*
8
-
sizeof
(
unsigned
int
)
*
8
-
__builtin_clz
((
DA9062AA_LDO1_SL_B_MASK
))
-
1
),
__builtin_clz
((
DA9062AA_LDO1_SL_B_MASK
))
-
1
),
.
suspend_vsel_reg
=
DA9062AA_VLDO1_B
,
.
suspend_vsel_reg
=
DA9062AA_VLDO1_B
,
.
suspend
=
REG_FIELD
(
DA9062AA_
DVC_1
,
.
suspend
=
REG_FIELD
(
DA9062AA_
LDO1_CONT
,
__builtin_ffs
((
int
)
DA9062AA_
VLDO1_SEL
_MASK
)
-
1
,
__builtin_ffs
((
int
)
DA9062AA_
LDO1_CONF
_MASK
)
-
1
,
sizeof
(
unsigned
int
)
*
8
-
sizeof
(
unsigned
int
)
*
8
-
__builtin_clz
(
(
DA9062AA_VLDO1_SEL_MASK
)
)
-
1
),
__builtin_clz
(
DA9062AA_LDO1_CONF_MASK
)
-
1
),
.
oc_event
=
REG_FIELD
(
DA9062AA_STATUS_D
,
.
oc_event
=
REG_FIELD
(
DA9062AA_STATUS_D
,
__builtin_ffs
((
int
)
DA9062AA_LDO1_ILIM_MASK
)
-
1
,
__builtin_ffs
((
int
)
DA9062AA_LDO1_ILIM_MASK
)
-
1
,
sizeof
(
unsigned
int
)
*
8
-
sizeof
(
unsigned
int
)
*
8
-
...
@@ -542,10 +518,10 @@ static const struct da9062_regulator_info local_da9061_regulator_info[] = {
...
@@ -542,10 +518,10 @@ static const struct da9062_regulator_info local_da9061_regulator_info[] = {
sizeof
(
unsigned
int
)
*
8
-
sizeof
(
unsigned
int
)
*
8
-
__builtin_clz
((
DA9062AA_LDO2_SL_B_MASK
))
-
1
),
__builtin_clz
((
DA9062AA_LDO2_SL_B_MASK
))
-
1
),
.
suspend_vsel_reg
=
DA9062AA_VLDO2_B
,
.
suspend_vsel_reg
=
DA9062AA_VLDO2_B
,
.
suspend
=
REG_FIELD
(
DA9062AA_
DVC_1
,
.
suspend
=
REG_FIELD
(
DA9062AA_
LDO2_CONT
,
__builtin_ffs
((
int
)
DA9062AA_
VLDO2_SEL
_MASK
)
-
1
,
__builtin_ffs
((
int
)
DA9062AA_
LDO2_CONF
_MASK
)
-
1
,
sizeof
(
unsigned
int
)
*
8
-
sizeof
(
unsigned
int
)
*
8
-
__builtin_clz
(
(
DA9062AA_VLDO2_SEL_MASK
)
)
-
1
),
__builtin_clz
(
DA9062AA_LDO2_CONF_MASK
)
-
1
),
.
oc_event
=
REG_FIELD
(
DA9062AA_STATUS_D
,
.
oc_event
=
REG_FIELD
(
DA9062AA_STATUS_D
,
__builtin_ffs
((
int
)
DA9062AA_LDO2_ILIM_MASK
)
-
1
,
__builtin_ffs
((
int
)
DA9062AA_LDO2_ILIM_MASK
)
-
1
,
sizeof
(
unsigned
int
)
*
8
-
sizeof
(
unsigned
int
)
*
8
-
...
@@ -575,10 +551,10 @@ static const struct da9062_regulator_info local_da9061_regulator_info[] = {
...
@@ -575,10 +551,10 @@ static const struct da9062_regulator_info local_da9061_regulator_info[] = {
sizeof
(
unsigned
int
)
*
8
-
sizeof
(
unsigned
int
)
*
8
-
__builtin_clz
((
DA9062AA_LDO3_SL_B_MASK
))
-
1
),
__builtin_clz
((
DA9062AA_LDO3_SL_B_MASK
))
-
1
),
.
suspend_vsel_reg
=
DA9062AA_VLDO3_B
,
.
suspend_vsel_reg
=
DA9062AA_VLDO3_B
,
.
suspend
=
REG_FIELD
(
DA9062AA_
DVC_1
,
.
suspend
=
REG_FIELD
(
DA9062AA_
LDO3_CONT
,
__builtin_ffs
((
int
)
DA9062AA_
VLDO3_SEL
_MASK
)
-
1
,
__builtin_ffs
((
int
)
DA9062AA_
LDO3_CONF
_MASK
)
-
1
,
sizeof
(
unsigned
int
)
*
8
-
sizeof
(
unsigned
int
)
*
8
-
__builtin_clz
(
(
DA9062AA_VLDO3_SEL_MASK
)
)
-
1
),
__builtin_clz
(
DA9062AA_LDO3_CONF_MASK
)
-
1
),
.
oc_event
=
REG_FIELD
(
DA9062AA_STATUS_D
,
.
oc_event
=
REG_FIELD
(
DA9062AA_STATUS_D
,
__builtin_ffs
((
int
)
DA9062AA_LDO3_ILIM_MASK
)
-
1
,
__builtin_ffs
((
int
)
DA9062AA_LDO3_ILIM_MASK
)
-
1
,
sizeof
(
unsigned
int
)
*
8
-
sizeof
(
unsigned
int
)
*
8
-
...
@@ -608,10 +584,10 @@ static const struct da9062_regulator_info local_da9061_regulator_info[] = {
...
@@ -608,10 +584,10 @@ static const struct da9062_regulator_info local_da9061_regulator_info[] = {
sizeof
(
unsigned
int
)
*
8
-
sizeof
(
unsigned
int
)
*
8
-
__builtin_clz
((
DA9062AA_LDO4_SL_B_MASK
))
-
1
),
__builtin_clz
((
DA9062AA_LDO4_SL_B_MASK
))
-
1
),
.
suspend_vsel_reg
=
DA9062AA_VLDO4_B
,
.
suspend_vsel_reg
=
DA9062AA_VLDO4_B
,
.
suspend
=
REG_FIELD
(
DA9062AA_
DVC_1
,
.
suspend
=
REG_FIELD
(
DA9062AA_
LDO4_CONT
,
__builtin_ffs
((
int
)
DA9062AA_
VLDO4_SEL
_MASK
)
-
1
,
__builtin_ffs
((
int
)
DA9062AA_
LDO4_CONF
_MASK
)
-
1
,
sizeof
(
unsigned
int
)
*
8
-
sizeof
(
unsigned
int
)
*
8
-
__builtin_clz
(
(
DA9062AA_VLDO4_SEL_MASK
)
)
-
1
),
__builtin_clz
(
DA9062AA_LDO4_CONF_MASK
)
-
1
),
.
oc_event
=
REG_FIELD
(
DA9062AA_STATUS_D
,
.
oc_event
=
REG_FIELD
(
DA9062AA_STATUS_D
,
__builtin_ffs
((
int
)
DA9062AA_LDO4_ILIM_MASK
)
-
1
,
__builtin_ffs
((
int
)
DA9062AA_LDO4_ILIM_MASK
)
-
1
,
sizeof
(
unsigned
int
)
*
8
-
sizeof
(
unsigned
int
)
*
8
-
...
@@ -652,10 +628,10 @@ static const struct da9062_regulator_info local_da9062_regulator_info[] = {
...
@@ -652,10 +628,10 @@ static const struct da9062_regulator_info local_da9062_regulator_info[] = {
__builtin_ffs
((
int
)
DA9062AA_BUCK1_MODE_MASK
)
-
1
,
__builtin_ffs
((
int
)
DA9062AA_BUCK1_MODE_MASK
)
-
1
,
sizeof
(
unsigned
int
)
*
8
-
sizeof
(
unsigned
int
)
*
8
-
__builtin_clz
((
DA9062AA_BUCK1_MODE_MASK
))
-
1
),
__builtin_clz
((
DA9062AA_BUCK1_MODE_MASK
))
-
1
),
.
suspend
=
REG_FIELD
(
DA9062AA_
DVC_1
,
.
suspend
=
REG_FIELD
(
DA9062AA_
BUCK1_CONT
,
__builtin_ffs
((
int
)
DA9062AA_
VBUCK1_SEL
_MASK
)
-
1
,
__builtin_ffs
((
int
)
DA9062AA_
BUCK1_CONF
_MASK
)
-
1
,
sizeof
(
unsigned
int
)
*
8
-
sizeof
(
unsigned
int
)
*
8
-
__builtin_clz
(
(
DA9062AA_VBUCK1_SEL_MASK
)
)
-
1
),
__builtin_clz
(
DA9062AA_BUCK1_CONF_MASK
)
-
1
),
},
},
{
{
.
desc
.
id
=
DA9062_ID_BUCK2
,
.
desc
.
id
=
DA9062_ID_BUCK2
,
...
@@ -688,10 +664,10 @@ static const struct da9062_regulator_info local_da9062_regulator_info[] = {
...
@@ -688,10 +664,10 @@ static const struct da9062_regulator_info local_da9062_regulator_info[] = {
__builtin_ffs
((
int
)
DA9062AA_BUCK2_MODE_MASK
)
-
1
,
__builtin_ffs
((
int
)
DA9062AA_BUCK2_MODE_MASK
)
-
1
,
sizeof
(
unsigned
int
)
*
8
-
sizeof
(
unsigned
int
)
*
8
-
__builtin_clz
((
DA9062AA_BUCK2_MODE_MASK
))
-
1
),
__builtin_clz
((
DA9062AA_BUCK2_MODE_MASK
))
-
1
),
.
suspend
=
REG_FIELD
(
DA9062AA_
DVC_1
,
.
suspend
=
REG_FIELD
(
DA9062AA_
BUCK2_CONT
,
__builtin_ffs
((
int
)
DA9062AA_
VBUCK2_SEL
_MASK
)
-
1
,
__builtin_ffs
((
int
)
DA9062AA_
BUCK2_CONF
_MASK
)
-
1
,
sizeof
(
unsigned
int
)
*
8
-
sizeof
(
unsigned
int
)
*
8
-
__builtin_clz
(
(
DA9062AA_VBUCK2_SEL_MASK
)
)
-
1
),
__builtin_clz
(
DA9062AA_BUCK2_CONF_MASK
)
-
1
),
},
},
{
{
.
desc
.
id
=
DA9062_ID_BUCK3
,
.
desc
.
id
=
DA9062_ID_BUCK3
,
...
@@ -724,10 +700,10 @@ static const struct da9062_regulator_info local_da9062_regulator_info[] = {
...
@@ -724,10 +700,10 @@ static const struct da9062_regulator_info local_da9062_regulator_info[] = {
__builtin_ffs
((
int
)
DA9062AA_BUCK3_MODE_MASK
)
-
1
,
__builtin_ffs
((
int
)
DA9062AA_BUCK3_MODE_MASK
)
-
1
,
sizeof
(
unsigned
int
)
*
8
-
sizeof
(
unsigned
int
)
*
8
-
__builtin_clz
((
DA9062AA_BUCK3_MODE_MASK
))
-
1
),
__builtin_clz
((
DA9062AA_BUCK3_MODE_MASK
))
-
1
),
.
suspend
=
REG_FIELD
(
DA9062AA_
DVC_1
,
.
suspend
=
REG_FIELD
(
DA9062AA_
BUCK3_CONT
,
__builtin_ffs
((
int
)
DA9062AA_
VBUCK3_SEL
_MASK
)
-
1
,
__builtin_ffs
((
int
)
DA9062AA_
BUCK3_CONF
_MASK
)
-
1
,
sizeof
(
unsigned
int
)
*
8
-
sizeof
(
unsigned
int
)
*
8
-
__builtin_clz
(
(
DA9062AA_VBUCK3_SEL_MASK
)
)
-
1
),
__builtin_clz
(
DA9062AA_BUCK3_CONF_MASK
)
-
1
),
},
},
{
{
.
desc
.
id
=
DA9062_ID_BUCK4
,
.
desc
.
id
=
DA9062_ID_BUCK4
,
...
@@ -760,10 +736,10 @@ static const struct da9062_regulator_info local_da9062_regulator_info[] = {
...
@@ -760,10 +736,10 @@ static const struct da9062_regulator_info local_da9062_regulator_info[] = {
__builtin_ffs
((
int
)
DA9062AA_BUCK4_MODE_MASK
)
-
1
,
__builtin_ffs
((
int
)
DA9062AA_BUCK4_MODE_MASK
)
-
1
,
sizeof
(
unsigned
int
)
*
8
-
sizeof
(
unsigned
int
)
*
8
-
__builtin_clz
((
DA9062AA_BUCK4_MODE_MASK
))
-
1
),
__builtin_clz
((
DA9062AA_BUCK4_MODE_MASK
))
-
1
),
.
suspend
=
REG_FIELD
(
DA9062AA_
DVC_1
,
.
suspend
=
REG_FIELD
(
DA9062AA_
BUCK4_CONT
,
__builtin_ffs
((
int
)
DA9062AA_
VBUCK4_SEL
_MASK
)
-
1
,
__builtin_ffs
((
int
)
DA9062AA_
BUCK4_CONF
_MASK
)
-
1
,
sizeof
(
unsigned
int
)
*
8
-
sizeof
(
unsigned
int
)
*
8
-
__builtin_clz
(
(
DA9062AA_VBUCK4_SEL_MASK
)
)
-
1
),
__builtin_clz
(
DA9062AA_BUCK4_CONF_MASK
)
-
1
),
},
},
{
{
.
desc
.
id
=
DA9062_ID_LDO1
,
.
desc
.
id
=
DA9062_ID_LDO1
,
...
@@ -789,10 +765,10 @@ static const struct da9062_regulator_info local_da9062_regulator_info[] = {
...
@@ -789,10 +765,10 @@ static const struct da9062_regulator_info local_da9062_regulator_info[] = {
sizeof
(
unsigned
int
)
*
8
-
sizeof
(
unsigned
int
)
*
8
-
__builtin_clz
((
DA9062AA_LDO1_SL_B_MASK
))
-
1
),
__builtin_clz
((
DA9062AA_LDO1_SL_B_MASK
))
-
1
),
.
suspend_vsel_reg
=
DA9062AA_VLDO1_B
,
.
suspend_vsel_reg
=
DA9062AA_VLDO1_B
,
.
suspend
=
REG_FIELD
(
DA9062AA_
DVC_1
,
.
suspend
=
REG_FIELD
(
DA9062AA_
LDO1_CONT
,
__builtin_ffs
((
int
)
DA9062AA_
VLDO1_SEL
_MASK
)
-
1
,
__builtin_ffs
((
int
)
DA9062AA_
LDO1_CONF
_MASK
)
-
1
,
sizeof
(
unsigned
int
)
*
8
-
sizeof
(
unsigned
int
)
*
8
-
__builtin_clz
(
(
DA9062AA_VLDO1_SEL_MASK
)
)
-
1
),
__builtin_clz
(
DA9062AA_LDO1_CONF_MASK
)
-
1
),
.
oc_event
=
REG_FIELD
(
DA9062AA_STATUS_D
,
.
oc_event
=
REG_FIELD
(
DA9062AA_STATUS_D
,
__builtin_ffs
((
int
)
DA9062AA_LDO1_ILIM_MASK
)
-
1
,
__builtin_ffs
((
int
)
DA9062AA_LDO1_ILIM_MASK
)
-
1
,
sizeof
(
unsigned
int
)
*
8
-
sizeof
(
unsigned
int
)
*
8
-
...
@@ -822,10 +798,10 @@ static const struct da9062_regulator_info local_da9062_regulator_info[] = {
...
@@ -822,10 +798,10 @@ static const struct da9062_regulator_info local_da9062_regulator_info[] = {
sizeof
(
unsigned
int
)
*
8
-
sizeof
(
unsigned
int
)
*
8
-
__builtin_clz
((
DA9062AA_LDO2_SL_B_MASK
))
-
1
),
__builtin_clz
((
DA9062AA_LDO2_SL_B_MASK
))
-
1
),
.
suspend_vsel_reg
=
DA9062AA_VLDO2_B
,
.
suspend_vsel_reg
=
DA9062AA_VLDO2_B
,
.
suspend
=
REG_FIELD
(
DA9062AA_
DVC_1
,
.
suspend
=
REG_FIELD
(
DA9062AA_
LDO2_CONT
,
__builtin_ffs
((
int
)
DA9062AA_
VLDO2_SEL
_MASK
)
-
1
,
__builtin_ffs
((
int
)
DA9062AA_
LDO2_CONF
_MASK
)
-
1
,
sizeof
(
unsigned
int
)
*
8
-
sizeof
(
unsigned
int
)
*
8
-
__builtin_clz
(
(
DA9062AA_VLDO2_SEL_MASK
)
)
-
1
),
__builtin_clz
(
DA9062AA_LDO2_CONF_MASK
)
-
1
),
.
oc_event
=
REG_FIELD
(
DA9062AA_STATUS_D
,
.
oc_event
=
REG_FIELD
(
DA9062AA_STATUS_D
,
__builtin_ffs
((
int
)
DA9062AA_LDO2_ILIM_MASK
)
-
1
,
__builtin_ffs
((
int
)
DA9062AA_LDO2_ILIM_MASK
)
-
1
,
sizeof
(
unsigned
int
)
*
8
-
sizeof
(
unsigned
int
)
*
8
-
...
@@ -855,10 +831,10 @@ static const struct da9062_regulator_info local_da9062_regulator_info[] = {
...
@@ -855,10 +831,10 @@ static const struct da9062_regulator_info local_da9062_regulator_info[] = {
sizeof
(
unsigned
int
)
*
8
-
sizeof
(
unsigned
int
)
*
8
-
__builtin_clz
((
DA9062AA_LDO3_SL_B_MASK
))
-
1
),
__builtin_clz
((
DA9062AA_LDO3_SL_B_MASK
))
-
1
),
.
suspend_vsel_reg
=
DA9062AA_VLDO3_B
,
.
suspend_vsel_reg
=
DA9062AA_VLDO3_B
,
.
suspend
=
REG_FIELD
(
DA9062AA_
DVC_1
,
.
suspend
=
REG_FIELD
(
DA9062AA_
LDO3_CONT
,
__builtin_ffs
((
int
)
DA9062AA_
VLDO3_SEL
_MASK
)
-
1
,
__builtin_ffs
((
int
)
DA9062AA_
LDO3_CONF
_MASK
)
-
1
,
sizeof
(
unsigned
int
)
*
8
-
sizeof
(
unsigned
int
)
*
8
-
__builtin_clz
(
(
DA9062AA_VLDO3_SEL_MASK
)
)
-
1
),
__builtin_clz
(
DA9062AA_LDO3_CONF_MASK
)
-
1
),
.
oc_event
=
REG_FIELD
(
DA9062AA_STATUS_D
,
.
oc_event
=
REG_FIELD
(
DA9062AA_STATUS_D
,
__builtin_ffs
((
int
)
DA9062AA_LDO3_ILIM_MASK
)
-
1
,
__builtin_ffs
((
int
)
DA9062AA_LDO3_ILIM_MASK
)
-
1
,
sizeof
(
unsigned
int
)
*
8
-
sizeof
(
unsigned
int
)
*
8
-
...
@@ -888,10 +864,10 @@ static const struct da9062_regulator_info local_da9062_regulator_info[] = {
...
@@ -888,10 +864,10 @@ static const struct da9062_regulator_info local_da9062_regulator_info[] = {
sizeof
(
unsigned
int
)
*
8
-
sizeof
(
unsigned
int
)
*
8
-
__builtin_clz
((
DA9062AA_LDO4_SL_B_MASK
))
-
1
),
__builtin_clz
((
DA9062AA_LDO4_SL_B_MASK
))
-
1
),
.
suspend_vsel_reg
=
DA9062AA_VLDO4_B
,
.
suspend_vsel_reg
=
DA9062AA_VLDO4_B
,
.
suspend
=
REG_FIELD
(
DA9062AA_
DVC_1
,
.
suspend
=
REG_FIELD
(
DA9062AA_
LDO4_CONT
,
__builtin_ffs
((
int
)
DA9062AA_
VLDO4_SEL
_MASK
)
-
1
,
__builtin_ffs
((
int
)
DA9062AA_
LDO4_CONF
_MASK
)
-
1
,
sizeof
(
unsigned
int
)
*
8
-
sizeof
(
unsigned
int
)
*
8
-
__builtin_clz
(
(
DA9062AA_VLDO4_SEL_MASK
)
)
-
1
),
__builtin_clz
(
DA9062AA_LDO4_CONF_MASK
)
-
1
),
.
oc_event
=
REG_FIELD
(
DA9062AA_STATUS_D
,
.
oc_event
=
REG_FIELD
(
DA9062AA_STATUS_D
,
__builtin_ffs
((
int
)
DA9062AA_LDO4_ILIM_MASK
)
-
1
,
__builtin_ffs
((
int
)
DA9062AA_LDO4_ILIM_MASK
)
-
1
,
sizeof
(
unsigned
int
)
*
8
-
sizeof
(
unsigned
int
)
*
8
-
...
...
drivers/regulator/fixed.c
View file @
5bf2a9e7
...
@@ -144,8 +144,7 @@ static int reg_fixed_voltage_probe(struct platform_device *pdev)
...
@@ -144,8 +144,7 @@ static int reg_fixed_voltage_probe(struct platform_device *pdev)
struct
device
*
dev
=
&
pdev
->
dev
;
struct
device
*
dev
=
&
pdev
->
dev
;
struct
fixed_voltage_config
*
config
;
struct
fixed_voltage_config
*
config
;
struct
fixed_voltage_data
*
drvdata
;
struct
fixed_voltage_data
*
drvdata
;
const
struct
fixed_dev_type
*
drvtype
=
const
struct
fixed_dev_type
*
drvtype
=
of_device_get_match_data
(
dev
);
of_match_device
(
dev
->
driver
->
of_match_table
,
dev
)
->
data
;
struct
regulator_config
cfg
=
{
};
struct
regulator_config
cfg
=
{
};
enum
gpiod_flags
gflags
;
enum
gpiod_flags
gflags
;
int
ret
;
int
ret
;
...
@@ -177,7 +176,7 @@ static int reg_fixed_voltage_probe(struct platform_device *pdev)
...
@@ -177,7 +176,7 @@ static int reg_fixed_voltage_probe(struct platform_device *pdev)
drvdata
->
desc
.
type
=
REGULATOR_VOLTAGE
;
drvdata
->
desc
.
type
=
REGULATOR_VOLTAGE
;
drvdata
->
desc
.
owner
=
THIS_MODULE
;
drvdata
->
desc
.
owner
=
THIS_MODULE
;
if
(
drvtype
->
has_enable_clock
)
{
if
(
drvtype
&&
drvtype
->
has_enable_clock
)
{
drvdata
->
desc
.
ops
=
&
fixed_voltage_clkenabled_ops
;
drvdata
->
desc
.
ops
=
&
fixed_voltage_clkenabled_ops
;
drvdata
->
enable_clock
=
devm_clk_get
(
dev
,
NULL
);
drvdata
->
enable_clock
=
devm_clk_get
(
dev
,
NULL
);
...
...
drivers/regulator/lochnagar-regulator.c
View file @
5bf2a9e7
...
@@ -210,6 +210,7 @@ static const struct regulator_desc lochnagar_regulators[] = {
...
@@ -210,6 +210,7 @@ static const struct regulator_desc lochnagar_regulators[] = {
.
enable_time
=
3000
,
.
enable_time
=
3000
,
.
ramp_delay
=
1000
,
.
ramp_delay
=
1000
,
.
off_on_delay
=
15000
,
.
owner
=
THIS_MODULE
,
.
owner
=
THIS_MODULE
,
},
},
...
...
drivers/regulator/of_regulator.c
View file @
5bf2a9e7
...
@@ -231,12 +231,12 @@ static int of_get_regulation_constraints(struct device *dev,
...
@@ -231,12 +231,12 @@ static int of_get_regulation_constraints(struct device *dev,
"regulator-off-in-suspend"
))
"regulator-off-in-suspend"
))
suspend_state
->
enabled
=
DISABLE_IN_SUSPEND
;
suspend_state
->
enabled
=
DISABLE_IN_SUSPEND
;
if
(
!
of_property_read_u32
(
np
,
"regulator-suspend-min-microvolt"
,
if
(
!
of_property_read_u32
(
suspend_np
,
&
pval
))
"regulator-suspend-min-microvolt"
,
&
pval
))
suspend_state
->
min_uV
=
pval
;
suspend_state
->
min_uV
=
pval
;
if
(
!
of_property_read_u32
(
np
,
"regulator-suspend-max-microvolt"
,
if
(
!
of_property_read_u32
(
suspend_np
,
&
pval
))
"regulator-suspend-max-microvolt"
,
&
pval
))
suspend_state
->
max_uV
=
pval
;
suspend_state
->
max_uV
=
pval
;
if
(
!
of_property_read_u32
(
suspend_np
,
if
(
!
of_property_read_u32
(
suspend_np
,
...
@@ -445,12 +445,21 @@ struct regulator_init_data *regulator_of_get_init_data(struct device *dev,
...
@@ -445,12 +445,21 @@ struct regulator_init_data *regulator_of_get_init_data(struct device *dev,
goto
error
;
goto
error
;
}
}
if
(
desc
->
of_parse_cb
&&
desc
->
of_parse_cb
(
child
,
desc
,
config
))
{
if
(
desc
->
of_parse_cb
)
{
int
ret
;
ret
=
desc
->
of_parse_cb
(
child
,
desc
,
config
);
if
(
ret
)
{
if
(
ret
==
-
EPROBE_DEFER
)
{
of_node_put
(
child
);
return
ERR_PTR
(
-
EPROBE_DEFER
);
}
dev_err
(
dev
,
dev_err
(
dev
,
"driver callback failed to parse DT for regulator %pOFn
\n
"
,
"driver callback failed to parse DT for regulator %pOFn
\n
"
,
child
);
child
);
goto
error
;
goto
error
;
}
}
}
*
node
=
child
;
*
node
=
child
;
...
...
drivers/regulator/pfuze100-regulator.c
View file @
5bf2a9e7
...
@@ -788,7 +788,13 @@ static int pfuze100_regulator_probe(struct i2c_client *client,
...
@@ -788,7 +788,13 @@ static int pfuze100_regulator_probe(struct i2c_client *client,
/* SW2~SW4 high bit check and modify the voltage value table */
/* SW2~SW4 high bit check and modify the voltage value table */
if
(
i
>=
sw_check_start
&&
i
<=
sw_check_end
)
{
if
(
i
>=
sw_check_start
&&
i
<=
sw_check_end
)
{
regmap_read
(
pfuze_chip
->
regmap
,
desc
->
vsel_reg
,
&
val
);
ret
=
regmap_read
(
pfuze_chip
->
regmap
,
desc
->
vsel_reg
,
&
val
);
if
(
ret
)
{
dev_err
(
&
client
->
dev
,
"Fails to read from the register.
\n
"
);
return
ret
;
}
if
(
val
&
sw_hi
)
{
if
(
val
&
sw_hi
)
{
if
(
pfuze_chip
->
chip_id
==
PFUZE3000
||
if
(
pfuze_chip
->
chip_id
==
PFUZE3000
||
pfuze_chip
->
chip_id
==
PFUZE3001
)
{
pfuze_chip
->
chip_id
==
PFUZE3001
)
{
...
...
drivers/regulator/qcom-rpmh-regulator.c
View file @
5bf2a9e7
...
@@ -735,8 +735,8 @@ static const struct rpmh_vreg_hw_data pmic5_hfsmps515 = {
...
@@ -735,8 +735,8 @@ static const struct rpmh_vreg_hw_data pmic5_hfsmps515 = {
static
const
struct
rpmh_vreg_hw_data
pmic5_bob
=
{
static
const
struct
rpmh_vreg_hw_data
pmic5_bob
=
{
.
regulator_type
=
VRM
,
.
regulator_type
=
VRM
,
.
ops
=
&
rpmh_regulator_vrm_bypass_ops
,
.
ops
=
&
rpmh_regulator_vrm_bypass_ops
,
.
voltage_range
=
REGULATOR_LINEAR_RANGE
(
300000
,
0
,
135
,
32000
),
.
voltage_range
=
REGULATOR_LINEAR_RANGE
(
300000
0
,
0
,
31
,
32000
),
.
n_voltages
=
136
,
.
n_voltages
=
32
,
.
pmic_mode_map
=
pmic_mode_map_pmic5_bob
,
.
pmic_mode_map
=
pmic_mode_map_pmic5_bob
,
.
of_map_mode
=
rpmh_regulator_pmic4_bob_of_map_mode
,
.
of_map_mode
=
rpmh_regulator_pmic4_bob_of_map_mode
,
};
};
...
...
drivers/regulator/ti-abb-regulator.c
View file @
5bf2a9e7
...
@@ -173,19 +173,14 @@ static int ti_abb_wait_txdone(struct device *dev, struct ti_abb *abb)
...
@@ -173,19 +173,14 @@ static int ti_abb_wait_txdone(struct device *dev, struct ti_abb *abb)
while
(
timeout
++
<=
abb
->
settling_time
)
{
while
(
timeout
++
<=
abb
->
settling_time
)
{
status
=
ti_abb_check_txdone
(
abb
);
status
=
ti_abb_check_txdone
(
abb
);
if
(
status
)
if
(
status
)
break
;
return
0
;
udelay
(
1
);
udelay
(
1
);
}
}
if
(
timeout
>
abb
->
settling_time
)
{
dev_warn_ratelimited
(
dev
,
"%s:TRANXDONE timeout(%duS) int=0x%08x
\n
"
,
dev_warn_ratelimited
(
dev
,
"%s:TRANXDONE timeout(%duS) int=0x%08x
\n
"
,
__func__
,
timeout
,
readl
(
abb
->
int_base
));
__func__
,
timeout
,
readl
(
abb
->
int_base
));
return
-
ETIMEDOUT
;
return
-
ETIMEDOUT
;
}
return
0
;
}
}
/**
/**
...
@@ -205,19 +200,14 @@ static int ti_abb_clear_all_txdone(struct device *dev, const struct ti_abb *abb)
...
@@ -205,19 +200,14 @@ static int ti_abb_clear_all_txdone(struct device *dev, const struct ti_abb *abb)
status
=
ti_abb_check_txdone
(
abb
);
status
=
ti_abb_check_txdone
(
abb
);
if
(
!
status
)
if
(
!
status
)
break
;
return
0
;
udelay
(
1
);
udelay
(
1
);
}
}
if
(
timeout
>
abb
->
settling_time
)
{
dev_warn_ratelimited
(
dev
,
"%s:TRANXDONE timeout(%duS) int=0x%08x
\n
"
,
dev_warn_ratelimited
(
dev
,
"%s:TRANXDONE timeout(%duS) int=0x%08x
\n
"
,
__func__
,
timeout
,
readl
(
abb
->
int_base
));
__func__
,
timeout
,
readl
(
abb
->
int_base
));
return
-
ETIMEDOUT
;
return
-
ETIMEDOUT
;
}
return
0
;
}
}
/**
/**
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment