Commit c033a718 authored by Linus Walleij's avatar Linus Walleij

pinctrl: stricten up generic group code

Rename the symbol PINCTRL_GENERIC to PINCTRL_GENERIC_GROUPS since
it all pertains to groups. Replace everywhere.

ifdef out the radix tree and the struct when not using the
generic groups.

Cc: Tony Lindgren <tony@atomide.com>
Signed-off-by: default avatarLinus Walleij <linus.walleij@linaro.org>
parent c7059c5a
...@@ -8,7 +8,7 @@ config PINCTRL ...@@ -8,7 +8,7 @@ config PINCTRL
menu "Pin controllers" menu "Pin controllers"
depends on PINCTRL depends on PINCTRL
config GENERIC_PINCTRL config GENERIC_PINCTRL_GROUPS
bool bool
config PINMUX config PINMUX
......
...@@ -540,7 +540,7 @@ void pinctrl_remove_gpio_range(struct pinctrl_dev *pctldev, ...@@ -540,7 +540,7 @@ void pinctrl_remove_gpio_range(struct pinctrl_dev *pctldev,
} }
EXPORT_SYMBOL_GPL(pinctrl_remove_gpio_range); EXPORT_SYMBOL_GPL(pinctrl_remove_gpio_range);
#ifdef CONFIG_GENERIC_PINCTRL #ifdef CONFIG_GENERIC_PINCTRL_GROUPS
/** /**
* pinctrl_generic_get_group_count() - returns the number of pin groups * pinctrl_generic_get_group_count() - returns the number of pin groups
...@@ -714,7 +714,7 @@ static void pinctrl_generic_free_groups(struct pinctrl_dev *pctldev) ...@@ -714,7 +714,7 @@ static void pinctrl_generic_free_groups(struct pinctrl_dev *pctldev)
static inline void pinctrl_generic_free_groups(struct pinctrl_dev *pctldev) static inline void pinctrl_generic_free_groups(struct pinctrl_dev *pctldev)
{ {
} }
#endif /* CONFIG_GENERIC_PINCTRL */ #endif /* CONFIG_GENERIC_PINCTRL_GROUPS */
/** /**
* pinctrl_get_group_selector() - returns the group selector for a group * pinctrl_get_group_selector() - returns the group selector for a group
...@@ -1993,7 +1993,9 @@ struct pinctrl_dev *pinctrl_register(struct pinctrl_desc *pctldesc, ...@@ -1993,7 +1993,9 @@ struct pinctrl_dev *pinctrl_register(struct pinctrl_desc *pctldesc,
pctldev->desc = pctldesc; pctldev->desc = pctldesc;
pctldev->driver_data = driver_data; pctldev->driver_data = driver_data;
INIT_RADIX_TREE(&pctldev->pin_desc_tree, GFP_KERNEL); INIT_RADIX_TREE(&pctldev->pin_desc_tree, GFP_KERNEL);
#ifdef CONFIG_GENERIC_PINCTRL_GROUPS
INIT_RADIX_TREE(&pctldev->pin_group_tree, GFP_KERNEL); INIT_RADIX_TREE(&pctldev->pin_group_tree, GFP_KERNEL);
#endif
INIT_LIST_HEAD(&pctldev->gpio_ranges); INIT_LIST_HEAD(&pctldev->gpio_ranges);
INIT_DELAYED_WORK(&pctldev->late_init, pinctrl_late_init); INIT_DELAYED_WORK(&pctldev->late_init, pinctrl_late_init);
pctldev->dev = dev; pctldev->dev = dev;
......
...@@ -43,8 +43,10 @@ struct pinctrl_dev { ...@@ -43,8 +43,10 @@ struct pinctrl_dev {
struct list_head node; struct list_head node;
struct pinctrl_desc *desc; struct pinctrl_desc *desc;
struct radix_tree_root pin_desc_tree; struct radix_tree_root pin_desc_tree;
#ifdef CONFIG_GENERIC_PINCTRL_GROUPS
struct radix_tree_root pin_group_tree; struct radix_tree_root pin_group_tree;
unsigned int num_groups; unsigned int num_groups;
#endif
struct list_head gpio_ranges; struct list_head gpio_ranges;
struct device *dev; struct device *dev;
struct module *owner; struct module *owner;
...@@ -165,6 +167,20 @@ struct pin_desc { ...@@ -165,6 +167,20 @@ struct pin_desc {
#endif #endif
}; };
/**
* struct pinctrl_maps - a list item containing part of the mapping table
* @node: mapping table list node
* @maps: array of mapping table entries
* @num_maps: the number of entries in @maps
*/
struct pinctrl_maps {
struct list_head node;
struct pinctrl_map const *maps;
unsigned num_maps;
};
#ifdef CONFIG_GENERIC_PINCTRL_GROUPS
/** /**
* struct group_desc - generic pin group descriptor * struct group_desc - generic pin group descriptor
* @name: name of the pin group * @name: name of the pin group
...@@ -179,20 +195,6 @@ struct group_desc { ...@@ -179,20 +195,6 @@ struct group_desc {
void *data; void *data;
}; };
/**
* struct pinctrl_maps - a list item containing part of the mapping table
* @node: mapping table list node
* @maps: array of mapping table entries
* @num_maps: the number of entries in @maps
*/
struct pinctrl_maps {
struct list_head node;
struct pinctrl_map const *maps;
unsigned num_maps;
};
#ifdef CONFIG_GENERIC_PINCTRL
int pinctrl_generic_get_group_count(struct pinctrl_dev *pctldev); int pinctrl_generic_get_group_count(struct pinctrl_dev *pctldev);
const char *pinctrl_generic_get_group_name(struct pinctrl_dev *pctldev, const char *pinctrl_generic_get_group_name(struct pinctrl_dev *pctldev,
...@@ -218,7 +220,7 @@ pinctrl_generic_remove_last_group(struct pinctrl_dev *pctldev) ...@@ -218,7 +220,7 @@ pinctrl_generic_remove_last_group(struct pinctrl_dev *pctldev)
return pinctrl_generic_remove_group(pctldev, pctldev->num_groups - 1); return pinctrl_generic_remove_group(pctldev, pctldev->num_groups - 1);
} }
#endif /* CONFIG_GENERIC_PINCTRL */ #endif /* CONFIG_GENERIC_PINCTRL_GROUPS */
struct pinctrl_dev *get_pinctrl_dev_from_devname(const char *dev_name); struct pinctrl_dev *get_pinctrl_dev_from_devname(const char *dev_name);
struct pinctrl_dev *get_pinctrl_dev_from_of_node(struct device_node *np); struct pinctrl_dev *get_pinctrl_dev_from_of_node(struct device_node *np);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment