diff options
author | Linus Walleij <linus.walleij@linaro.org> | 2017-02-05 17:14:23 -0500 |
---|---|---|
committer | Linus Walleij <linus.walleij@linaro.org> | 2017-02-05 17:14:23 -0500 |
commit | e4df1ebdfeb4c68523046667b2d8ef8ab20ae066 (patch) | |
tree | 9a518146b64289e304412279b59466fad3799ed6 /drivers/gpio/devres.c | |
parent | e8e1a5b5679b1ae1ff03a3883b011b84e7226171 (diff) | |
parent | 537b94dafce29af6a3e923d216472cfc2f3659af (diff) |
Merge branch 'ib-gpiod-flags' into devel
Diffstat (limited to 'drivers/gpio/devres.c')
-rw-r--r-- | drivers/gpio/devres.c | 19 |
1 files changed, 11 insertions, 8 deletions
diff --git a/drivers/gpio/devres.c b/drivers/gpio/devres.c index d196be7ac352..7031eea165c9 100644 --- a/drivers/gpio/devres.c +++ b/drivers/gpio/devres.c | |||
@@ -125,9 +125,11 @@ struct gpio_desc *__must_check devm_gpiod_get_index(struct device *dev, | |||
125 | EXPORT_SYMBOL(devm_gpiod_get_index); | 125 | EXPORT_SYMBOL(devm_gpiod_get_index); |
126 | 126 | ||
127 | /** | 127 | /** |
128 | * devm_get_gpiod_from_child - get a GPIO descriptor from a device's child node | 128 | * devm_fwnode_get_index_gpiod_from_child - get a GPIO descriptor from a |
129 | * device's child node | ||
129 | * @dev: GPIO consumer | 130 | * @dev: GPIO consumer |
130 | * @con_id: function within the GPIO consumer | 131 | * @con_id: function within the GPIO consumer |
132 | * @index: index of the GPIO to obtain in the consumer | ||
131 | * @child: firmware node (child of @dev) | 133 | * @child: firmware node (child of @dev) |
132 | * @flags: GPIO initialization flags | 134 | * @flags: GPIO initialization flags |
133 | * | 135 | * |
@@ -137,11 +139,11 @@ EXPORT_SYMBOL(devm_gpiod_get_index); | |||
137 | * On successfull request the GPIO pin is configured in accordance with | 139 | * On successfull request the GPIO pin is configured in accordance with |
138 | * provided @flags. | 140 | * provided @flags. |
139 | */ | 141 | */ |
140 | struct gpio_desc *devm_get_gpiod_from_child(struct device *dev, | 142 | struct gpio_desc *devm_fwnode_get_index_gpiod_from_child(struct device *dev, |
141 | const char *con_id, | 143 | const char *con_id, int index, |
142 | struct fwnode_handle *child, | 144 | struct fwnode_handle *child, |
143 | enum gpiod_flags flags, | 145 | enum gpiod_flags flags, |
144 | const char *label) | 146 | const char *label) |
145 | { | 147 | { |
146 | char prop_name[32]; /* 32 is max size of property name */ | 148 | char prop_name[32]; /* 32 is max size of property name */ |
147 | struct gpio_desc **dr; | 149 | struct gpio_desc **dr; |
@@ -161,7 +163,8 @@ struct gpio_desc *devm_get_gpiod_from_child(struct device *dev, | |||
161 | snprintf(prop_name, sizeof(prop_name), "%s", | 163 | snprintf(prop_name, sizeof(prop_name), "%s", |
162 | gpio_suffixes[i]); | 164 | gpio_suffixes[i]); |
163 | 165 | ||
164 | desc = fwnode_get_named_gpiod(child, prop_name, flags, label); | 166 | desc = fwnode_get_named_gpiod(child, prop_name, index, flags, |
167 | label); | ||
165 | if (!IS_ERR(desc) || (PTR_ERR(desc) != -ENOENT)) | 168 | if (!IS_ERR(desc) || (PTR_ERR(desc) != -ENOENT)) |
166 | break; | 169 | break; |
167 | } | 170 | } |
@@ -175,7 +178,7 @@ struct gpio_desc *devm_get_gpiod_from_child(struct device *dev, | |||
175 | 178 | ||
176 | return desc; | 179 | return desc; |
177 | } | 180 | } |
178 | EXPORT_SYMBOL(devm_get_gpiod_from_child); | 181 | EXPORT_SYMBOL(devm_fwnode_get_index_gpiod_from_child); |
179 | 182 | ||
180 | /** | 183 | /** |
181 | * devm_gpiod_get_index_optional - Resource-managed gpiod_get_index_optional() | 184 | * devm_gpiod_get_index_optional - Resource-managed gpiod_get_index_optional() |