[PATCH v8 08/12] pinctrl: generic: dump pin configuration
Haojian Zhuang
haojian.zhuang at linaro.org
Mon Feb 4 20:09:16 EST 2013
On 5 February 2013 08:57, Tony Lindgren <tony at atomide.com> wrote:
> * Tony Lindgren <tony at atomide.com> [130204 16:42]:
>> * Haojian Zhuang <haojian.zhuang at linaro.org> [130202 09:30]:
>> > @@ -114,4 +116,10 @@ static inline void pinconf_generic_dump_group(struct pinctrl_dev *pctldev,
>> > return;
>> > }
>> >
>> > +static void pinconf_generic_dump_config(struct pinctrl_dev *pctldev,
>> > + struct seq_file *s,
>> > + unsigned long config)
>> > +{
>> > + return;
>> > +}
>> > #endif
>>
>> This needs to be static inline void to avoid the following warning:
>>
>> drivers/pinctrl/pinconf.h:122: warning: ‘pinconf_generic_dump_config’ defined but not used
>
> Actually this patch needs few other changes to export it and compile,
> here's the version that worked for me with pinctlr-single as a module:
>
Thanks. I'll follow your changes.
Regards
Haojian
> --- a/drivers/pinctrl/pinconf-generic.c
> +++ b/drivers/pinctrl/pinconf-generic.c
> @@ -16,6 +16,7 @@
> #include <linux/device.h>
> #include <linux/slab.h>
> #include <linux/debugfs.h>
> +#include <linux/module.h>
> #include <linux/seq_file.h>
> #include <linux/pinctrl/pinctrl.h>
> #include <linux/pinctrl/pinconf.h>
> @@ -120,4 +121,19 @@ void pinconf_generic_dump_group(struct pinctrl_dev *pctldev,
> }
> }
>
> +int pinconf_generic_dump_config(struct pinctrl_dev *pctldev,
> + struct seq_file *s, unsigned long config)
> +{
> + int i;
> +
> + for(i = 0; i < ARRAY_SIZE(conf_items); i++) {
> + if (pinconf_to_config_param(config) != conf_items[i].param)
> + continue;
> + seq_printf(s, "%s: 0x%x", conf_items[i].display,
> + pinconf_to_config_argument(config));
> + }
> +
> + return 0;
> +}
> +EXPORT_SYMBOL(pinconf_generic_dump_config);
> #endif
> diff --git a/drivers/pinctrl/pinconf.h b/drivers/pinctrl/pinconf.h
> index e3ed8cb..c91ea3e 100644
> --- a/drivers/pinctrl/pinconf.h
> +++ b/drivers/pinctrl/pinconf.h
> @@ -98,6 +98,8 @@ void pinconf_generic_dump_pin(struct pinctrl_dev *pctldev,
> void pinconf_generic_dump_group(struct pinctrl_dev *pctldev,
> struct seq_file *s, const char *gname);
>
> +int pinconf_generic_dump_config(struct pinctrl_dev *pctldev,
> + struct seq_file *s, unsigned long config);
> #else
>
> static inline void pinconf_generic_dump_pin(struct pinctrl_dev *pctldev,
> @@ -114,4 +116,10 @@ static inline void pinconf_generic_dump_group(struct pinctrl_dev *pctldev,
> return;
> }
>
> +static inline int pinconf_generic_dump_config(struct pinctrl_dev *pctldev,
> + struct seq_file *s,
> + unsigned long config)
> +{
> + return;
> +}
> #endif
More information about the linux-arm-kernel
mailing list