diff options
author | Dmitry Torokhov <dmitry.torokhov@gmail.com> | 2012-04-22 02:28:35 -0400 |
---|---|---|
committer | Dmitry Torokhov <dmitry.torokhov@gmail.com> | 2012-04-22 02:28:35 -0400 |
commit | 57b8628bb0ac4e47c806e45c5bbd89282e93869b (patch) | |
tree | ee9289f0898054474b7e5054abdb3ffb78666436 /include/linux/pinctrl/pinconf.h | |
parent | 486c8aba39e5f194519cd5c0e85e5d1de8b74b03 (diff) | |
parent | 66f75a5d028beaf67c931435fdc3e7823125730c (diff) |
Merge commit 'v3.4-rc4' into next
Diffstat (limited to 'include/linux/pinctrl/pinconf.h')
-rw-r--r-- | include/linux/pinctrl/pinconf.h | 44 |
1 files changed, 5 insertions, 39 deletions
diff --git a/include/linux/pinctrl/pinconf.h b/include/linux/pinctrl/pinconf.h index 477922cf043a..ec431f03362d 100644 --- a/include/linux/pinctrl/pinconf.h +++ b/include/linux/pinctrl/pinconf.h | |||
@@ -20,6 +20,8 @@ struct seq_file; | |||
20 | /** | 20 | /** |
21 | * struct pinconf_ops - pin config operations, to be implemented by | 21 | * struct pinconf_ops - pin config operations, to be implemented by |
22 | * pin configuration capable drivers. | 22 | * pin configuration capable drivers. |
23 | * @is_generic: for pin controllers that want to use the generic interface, | ||
24 | * this flag tells the framework that it's generic. | ||
23 | * @pin_config_get: get the config of a certain pin, if the requested config | 25 | * @pin_config_get: get the config of a certain pin, if the requested config |
24 | * is not available on this controller this should return -ENOTSUPP | 26 | * is not available on this controller this should return -ENOTSUPP |
25 | * and if it is available but disabled it should return -EINVAL | 27 | * and if it is available but disabled it should return -EINVAL |
@@ -33,6 +35,9 @@ struct seq_file; | |||
33 | * per-device info for a certain group in debugfs | 35 | * per-device info for a certain group in debugfs |
34 | */ | 36 | */ |
35 | struct pinconf_ops { | 37 | struct pinconf_ops { |
38 | #ifdef CONFIG_GENERIC_PINCONF | ||
39 | bool is_generic; | ||
40 | #endif | ||
36 | int (*pin_config_get) (struct pinctrl_dev *pctldev, | 41 | int (*pin_config_get) (struct pinctrl_dev *pctldev, |
37 | unsigned pin, | 42 | unsigned pin, |
38 | unsigned long *config); | 43 | unsigned long *config); |
@@ -53,45 +58,6 @@ struct pinconf_ops { | |||
53 | unsigned selector); | 58 | unsigned selector); |
54 | }; | 59 | }; |
55 | 60 | ||
56 | extern int pin_config_get(const char *dev_name, const char *name, | ||
57 | unsigned long *config); | ||
58 | extern int pin_config_set(const char *dev_name, const char *name, | ||
59 | unsigned long config); | ||
60 | extern int pin_config_group_get(const char *dev_name, | ||
61 | const char *pin_group, | ||
62 | unsigned long *config); | ||
63 | extern int pin_config_group_set(const char *dev_name, | ||
64 | const char *pin_group, | ||
65 | unsigned long config); | ||
66 | |||
67 | #else | ||
68 | |||
69 | static inline int pin_config_get(const char *dev_name, const char *name, | ||
70 | unsigned long *config) | ||
71 | { | ||
72 | return 0; | ||
73 | } | ||
74 | |||
75 | static inline int pin_config_set(const char *dev_name, const char *name, | ||
76 | unsigned long config) | ||
77 | { | ||
78 | return 0; | ||
79 | } | ||
80 | |||
81 | static inline int pin_config_group_get(const char *dev_name, | ||
82 | const char *pin_group, | ||
83 | unsigned long *config) | ||
84 | { | ||
85 | return 0; | ||
86 | } | ||
87 | |||
88 | static inline int pin_config_group_set(const char *dev_name, | ||
89 | const char *pin_group, | ||
90 | unsigned long config) | ||
91 | { | ||
92 | return 0; | ||
93 | } | ||
94 | |||
95 | #endif | 61 | #endif |
96 | 62 | ||
97 | #endif /* __LINUX_PINCTRL_PINCONF_H */ | 63 | #endif /* __LINUX_PINCTRL_PINCONF_H */ |