On Thu, 2014-12-04 at 11:30AM +0200, Ivan T. Ivanov wrote: > > On Wed, 2014-12-03 at 09:38 -0800, S?ren Brinkmann wrote: > > On Wed, 2014-12-03 at 03:03PM +0200, Ivan T. Ivanov wrote: > > > On Thu, 2014-11-27 at 17:26 -0800, Soren Brinkmann wrote: > > > > Instead of the driver caring about implementation details like device > > > > tree, just provide information about driver specific pinconf parameters > > > > to pinconf-generic which takes care of parsing the DT. > > > > > > > > Signed-off-by: Soren Brinkmann brinkmann at xilinx.com> > > > > --- > > > > This is compile tested only. So, it's likely that it needs more tweaking > > > > to make it actually work on HW. But it illustrates the potential > > > > benefits of the pinconf-generic changes in this series. > > > > --- > > > > drivers/pinctrl/qcom/pinctrl-spmi-gpio.c | 125 +++---------------------------- > > > > 1 file changed, 11 insertions(+), 114 deletions(-) > > > > > > > > diff --git a/drivers/pinctrl/qcom/pinctrl-spmi-gpio.c b/drivers/pinctrl/qcom/pinctrl-spmi- > > > > gpio.c > > > > index b863b5080890..2db85e53ef73 100644 > > > > --- a/drivers/pinctrl/qcom/pinctrl-spmi-gpio.c > > > > +++ b/drivers/pinctrl/qcom/pinctrl-spmi-gpio.c > > > > @@ -131,14 +131,14 @@ struct pmic_gpio_state { > > > > struct gpio_chip chip; > > > > }; > > > > > > > > -struct pmic_gpio_bindings { > > > > - const char*property; > > > > - unsigned param; > > > > +static const struct pinconf_generic_dt_params pmic_gpio_bindings[] = { > > > > + {"qcom,pull-up-strength",PMIC_GPIO_CONF_PULL_UP,0}, > > > > + {"qcom,drive-strength",PMIC_GPIO_CONF_STRENGTH,0}, > > > > }; > > > > > > > > -static struct pmic_gpio_bindings pmic_gpio_bindings[] = { > > > > - {"qcom,pull-up-strength",PMIC_GPIO_CONF_PULL_UP}, > > > > - {"qcom,drive-strength",PMIC_GPIO_CONF_STRENGTH}, > > > > +static const struct pin_config_item pmic_conf_items[] = { > > > > + PCONFDUMP(PMIC_GPIO_CONF_PULL_UP, "pull-up-strength", NULL, true), > > > > > > s/pull-up-strength/qcom,pull-up-strength/ > > > > This is used for the debugfs output. I don't think you want the qcom > > prefix here, do you? > > Then at lest lets make it "pull up strength". Ok. Will change it. > > > > > > > + PCONFDUMP(PMIC_GPIO_CONF_STRENGTH, "drive-strength", NULL, true), > > > > }; > > > > > > > > > > > > > > > > I am not happy that we have to define the same think two times. > > > > It's not really the same thing. One is the actual DT binding the other > > how the property is displayed in debugfs. Two different things. It's how > > the core does it. That's not new. > > This didn't make me more happy :-). Could both be merged? That's definitely beyond the scope of this series. Soren