]> git.kernelconcepts.de Git - karo-tx-linux.git/blob - include/linux/usb/of.h
Merge remote-tracking branch 'file-locks/linux-next'
[karo-tx-linux.git] / include / linux / usb / of.h
1 /*
2  * OF helpers for usb devices.
3  *
4  * This file is released under the GPLv2
5  */
6
7 #ifndef __LINUX_USB_OF_H
8 #define __LINUX_USB_OF_H
9
10 #include <linux/usb/ch9.h>
11 #include <linux/usb/otg.h>
12 #include <linux/usb/phy.h>
13
14 #if IS_ENABLED(CONFIG_OF)
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);
17 bool of_usb_host_tpl_support(struct device_node *np);
18 int of_usb_update_otg_caps(struct device_node *np,
19                         struct usb_otg_caps *otg_caps);
20 #else
21 static inline enum usb_dr_mode of_usb_get_dr_mode(struct device_node *np)
22 {
23         return USB_DR_MODE_UNKNOWN;
24 }
25
26 static inline enum usb_device_speed
27 of_usb_get_maximum_speed(struct device_node *np)
28 {
29         return USB_SPEED_UNKNOWN;
30 }
31 static inline bool of_usb_host_tpl_support(struct device_node *np)
32 {
33         return false;
34 }
35 static inline int of_usb_update_otg_caps(struct device_node *np,
36                                 struct usb_otg_caps *otg_caps)
37 {
38         return 0;
39 }
40 #endif
41
42 #if IS_ENABLED(CONFIG_OF) && IS_ENABLED(CONFIG_USB_SUPPORT)
43 enum usb_phy_interface of_usb_get_phy_mode(struct device_node *np);
44 #else
45 static inline enum usb_phy_interface of_usb_get_phy_mode(struct device_node *np)
46 {
47         return USBPHY_INTERFACE_MODE_UNKNOWN;
48 }
49
50 #endif
51
52 #endif /* __LINUX_USB_OF_H */