pinctrl: enhance mapping table to support pin config operations
The pinctrl mapping table can now contain entries to: * Set the mux function of a pin group * Apply a set of pin config options to a pin or a group This allows pinctrl_select_state() to apply pin configs settings as well as mux settings. v3: Fix find_pinctrl() to iterate over the correct list. s/_MUX_CONFIGS_/_CONFIGS_/ in mapping table macros. Fix documentation to use correct mapping table macro. v2: Added numerous extra PIN_MAP_*() special-case macros. Fixed kerneldoc typo. Delete pinctrl_get_pin_id() and replace it with pin_get_from_name(). Various minor fixes. Updates due to rebase. Signed-off-by: Stephen Warren <swarren@nvidia.com> Acked-by: Dong Aisheng <dong.aisheng@linaro.org> Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
This commit is contained in:
committed by
Linus Walleij
parent
6e5e959dde
commit
1e2082b520
@@ -15,6 +15,16 @@
|
||||
|
||||
int pinconf_check_ops(struct pinctrl_dev *pctldev);
|
||||
|
||||
int pinconf_validate_map(struct pinctrl_map const *map, int i);
|
||||
|
||||
int pinconf_map_to_setting(struct pinctrl_map const *map,
|
||||
struct pinctrl_setting *setting);
|
||||
void pinconf_free_setting(struct pinctrl_setting const *setting);
|
||||
int pinconf_apply_setting(struct pinctrl_setting const *setting);
|
||||
|
||||
void pinconf_show_map(struct seq_file *s, struct pinctrl_map const *map);
|
||||
void pinconf_show_setting(struct seq_file *s,
|
||||
struct pinctrl_setting const *setting);
|
||||
void pinconf_init_device_debugfs(struct dentry *devroot,
|
||||
struct pinctrl_dev *pctldev);
|
||||
|
||||
@@ -25,6 +35,36 @@ static inline int pinconf_check_ops(struct pinctrl_dev *pctldev)
|
||||
return 0;
|
||||
}
|
||||
|
||||
static inline int pinconf_validate_map(struct pinctrl_map const *map, int i)
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
|
||||
static inline int pinconf_map_to_setting(struct pinctrl_map const *map,
|
||||
struct pinctrl_setting *setting)
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
|
||||
static inline void pinconf_free_setting(struct pinctrl_setting const *setting)
|
||||
{
|
||||
}
|
||||
|
||||
static inline int pinconf_apply_setting(struct pinctrl_setting const *setting)
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
|
||||
static inline void pinconf_show_map(struct seq_file *s,
|
||||
struct pinctrl_map const *map)
|
||||
{
|
||||
}
|
||||
|
||||
static inline void pinconf_show_setting(struct seq_file *s,
|
||||
struct pinctrl_setting const *setting)
|
||||
{
|
||||
}
|
||||
|
||||
static inline void pinconf_init_device_debugfs(struct dentry *devroot,
|
||||
struct pinctrl_dev *pctldev)
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user