aboutsummaryrefslogtreecommitdiffstats
path: root/include/linux/pinctrl
diff options
context:
space:
mode:
authorBenjamin Gaignard <benjamin.gaignard@st.com>2019-05-22 17:29:24 +0200
committerLinus Walleij <linus.walleij@linaro.org>2019-05-23 09:34:54 +0200
commit036f394dd77f8117346874151793ec38967d843f (patch)
tree53fdb17254789615469b2df6c2f869c29e53c8fd /include/linux/pinctrl
parentpinctrl: bcm: Allow PINCTRL_BCM2835 for ARCH_BRCMSTB (diff)
downloadlinux-dev-036f394dd77f8117346874151793ec38967d843f.tar.xz
linux-dev-036f394dd77f8117346874151793ec38967d843f.zip
pinctrl: Enable device link creation for pin control
A pin controller may want to create a link between itself and its clients to be sure of suspend/resume call ordering. Introduce link_consumers field in pinctrl_desc structure to let pinctrl core knows that controller expect to create a link. Signed-off-by: Benjamin Gaignard <benjamin.gaignard@st.com> [Renamed create_link to link_consumers] Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
Diffstat (limited to 'include/linux/pinctrl')
-rw-r--r--include/linux/pinctrl/pinctrl.h5
1 files changed, 5 insertions, 0 deletions
diff --git a/include/linux/pinctrl/pinctrl.h b/include/linux/pinctrl/pinctrl.h
index 8f5dbb84547a..2744113f1024 100644
--- a/include/linux/pinctrl/pinctrl.h
+++ b/include/linux/pinctrl/pinctrl.h
@@ -125,6 +125,10 @@ struct pinctrl_ops {
* the hardware description
* @custom_conf_items: Information how to print @params in debugfs, must be
* the same size as the @custom_params, i.e. @num_custom_params
+ * @link_consumers: If true create a device link between pinctrl and its
+ * consumers (i.e. the devices requesting pin control states). This is
+ * sometimes necessary to ascertain the right suspend/resume order for
+ * example.
*/
struct pinctrl_desc {
const char *name;
@@ -139,6 +143,7 @@ struct pinctrl_desc {
const struct pinconf_generic_params *custom_params;
const struct pin_config_item *custom_conf_items;
#endif
+ bool link_consumers;
};
/* External interface to pin controller */