diff options
| -rw-r--r-- | drivers/usb/common/usb-common.c | 15 | ||||
| -rw-r--r-- | include/linux/usb/of.h | 5 |
2 files changed, 20 insertions, 0 deletions
diff --git a/drivers/usb/common/usb-common.c b/drivers/usb/common/usb-common.c index 6dfd30a863c7..b530fd403ffb 100644 --- a/drivers/usb/common/usb-common.c +++ b/drivers/usb/common/usb-common.c | |||
| @@ -139,6 +139,21 @@ enum usb_device_speed of_usb_get_maximum_speed(struct device_node *np) | |||
| 139 | } | 139 | } |
| 140 | EXPORT_SYMBOL_GPL(of_usb_get_maximum_speed); | 140 | EXPORT_SYMBOL_GPL(of_usb_get_maximum_speed); |
| 141 | 141 | ||
| 142 | /** | ||
| 143 | * of_usb_host_tpl_support - to get if Targeted Peripheral List is supported | ||
| 144 | * for given targeted hosts (non-PC hosts) | ||
| 145 | * @np: Pointer to the given device_node | ||
| 146 | * | ||
| 147 | * The function gets if the targeted hosts support TPL or not | ||
| 148 | */ | ||
| 149 | bool of_usb_host_tpl_support(struct device_node *np) | ||
| 150 | { | ||
| 151 | if (of_find_property(np, "tpl-support", NULL)) | ||
| 152 | return true; | ||
| 153 | |||
| 154 | return false; | ||
| 155 | } | ||
| 156 | EXPORT_SYMBOL_GPL(of_usb_host_tpl_support); | ||
| 142 | #endif | 157 | #endif |
| 143 | 158 | ||
| 144 | MODULE_LICENSE("GPL"); | 159 | MODULE_LICENSE("GPL"); |
diff --git a/include/linux/usb/of.h b/include/linux/usb/of.h index 8c38aa26b3bb..cfe0528cdbb1 100644 --- a/include/linux/usb/of.h +++ b/include/linux/usb/of.h | |||
| @@ -14,6 +14,7 @@ | |||
| 14 | #if IS_ENABLED(CONFIG_OF) | 14 | #if IS_ENABLED(CONFIG_OF) |
| 15 | enum usb_dr_mode of_usb_get_dr_mode(struct device_node *np); | 15 | enum usb_dr_mode of_usb_get_dr_mode(struct device_node *np); |
| 16 | enum usb_device_speed of_usb_get_maximum_speed(struct device_node *np); | 16 | enum usb_device_speed of_usb_get_maximum_speed(struct device_node *np); |
| 17 | bool of_usb_host_tpl_support(struct device_node *np); | ||
| 17 | #else | 18 | #else |
| 18 | static inline enum usb_dr_mode of_usb_get_dr_mode(struct device_node *np) | 19 | static inline enum usb_dr_mode of_usb_get_dr_mode(struct device_node *np) |
| 19 | { | 20 | { |
| @@ -25,6 +26,10 @@ of_usb_get_maximum_speed(struct device_node *np) | |||
| 25 | { | 26 | { |
| 26 | return USB_SPEED_UNKNOWN; | 27 | return USB_SPEED_UNKNOWN; |
| 27 | } | 28 | } |
| 29 | static inline bool of_usb_host_tpl_support(struct device_node *np) | ||
| 30 | { | ||
| 31 | return false; | ||
| 32 | } | ||
| 28 | #endif | 33 | #endif |
| 29 | 34 | ||
| 30 | #if IS_ENABLED(CONFIG_OF) && IS_ENABLED(CONFIG_USB_SUPPORT) | 35 | #if IS_ENABLED(CONFIG_OF) && IS_ENABLED(CONFIG_USB_SUPPORT) |
