mfd: arizona: Factor out read of device tree GPIOs
This patch factors out the reading of GPIOs for the Arizona devices into a helper function. Signed-off-by: Charles Keepax <ckeepax@opensource.wolfsonmicro.com> Acked-by: Lee Jones <lee.jones@linaro.org> Signed-off-by: Mark Brown <broonie@linaro.org>
This commit is contained in:
parent
c9eaa447e7
commit
e4fcb1d614
|
@ -508,19 +508,32 @@ int arizona_of_get_type(struct device *dev)
|
||||||
}
|
}
|
||||||
EXPORT_SYMBOL_GPL(arizona_of_get_type);
|
EXPORT_SYMBOL_GPL(arizona_of_get_type);
|
||||||
|
|
||||||
|
int arizona_of_get_named_gpio(struct arizona *arizona, const char *prop,
|
||||||
|
bool mandatory)
|
||||||
|
{
|
||||||
|
int gpio;
|
||||||
|
|
||||||
|
gpio = of_get_named_gpio(arizona->dev->of_node, prop, 0);
|
||||||
|
if (gpio < 0) {
|
||||||
|
if (mandatory)
|
||||||
|
dev_err(arizona->dev,
|
||||||
|
"Mandatory DT gpio %s missing/malformed: %d\n",
|
||||||
|
prop, gpio);
|
||||||
|
|
||||||
|
gpio = 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
return gpio;
|
||||||
|
}
|
||||||
|
EXPORT_SYMBOL_GPL(arizona_of_get_named_gpio);
|
||||||
|
|
||||||
static int arizona_of_get_core_pdata(struct arizona *arizona)
|
static int arizona_of_get_core_pdata(struct arizona *arizona)
|
||||||
{
|
{
|
||||||
|
struct arizona_pdata *pdata = &arizona->pdata;
|
||||||
int ret, i;
|
int ret, i;
|
||||||
|
|
||||||
arizona->pdata.reset = of_get_named_gpio(arizona->dev->of_node,
|
pdata->reset = arizona_of_get_named_gpio(arizona, "wlf,reset", true);
|
||||||
"wlf,reset", 0);
|
pdata->ldoena = arizona_of_get_named_gpio(arizona, "wlf,ldoena", true);
|
||||||
if (arizona->pdata.reset < 0)
|
|
||||||
arizona->pdata.reset = 0;
|
|
||||||
|
|
||||||
arizona->pdata.ldoena = of_get_named_gpio(arizona->dev->of_node,
|
|
||||||
"wlf,ldoena", 0);
|
|
||||||
if (arizona->pdata.ldoena < 0)
|
|
||||||
arizona->pdata.ldoena = 0;
|
|
||||||
|
|
||||||
ret = of_property_read_u32_array(arizona->dev->of_node,
|
ret = of_property_read_u32_array(arizona->dev->of_node,
|
||||||
"wlf,gpio-defaults",
|
"wlf,gpio-defaults",
|
||||||
|
|
|
@ -124,4 +124,7 @@ int wm5102_patch(struct arizona *arizona);
|
||||||
int wm5110_patch(struct arizona *arizona);
|
int wm5110_patch(struct arizona *arizona);
|
||||||
int wm8997_patch(struct arizona *arizona);
|
int wm8997_patch(struct arizona *arizona);
|
||||||
|
|
||||||
|
extern int arizona_of_get_named_gpio(struct arizona *arizona, const char *prop,
|
||||||
|
bool mandatory);
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|
Loading…
Reference in New Issue