• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
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_by_phy(struct device_node *np, int arg0);
16 bool of_usb_host_tpl_support(struct device_node *np);
17 int of_usb_update_otg_caps(struct device_node *np,
18 			struct usb_otg_caps *otg_caps);
19 struct device_node *usb_of_get_child_node(struct device_node *parent,
20 			int portnum);
21 struct device *usb_of_get_companion_dev(struct device *dev);
22 #else
23 static inline enum usb_dr_mode
of_usb_get_dr_mode_by_phy(struct device_node * np,int arg0)24 of_usb_get_dr_mode_by_phy(struct device_node *np, int arg0)
25 {
26 	return USB_DR_MODE_UNKNOWN;
27 }
of_usb_host_tpl_support(struct device_node * np)28 static inline bool of_usb_host_tpl_support(struct device_node *np)
29 {
30 	return false;
31 }
of_usb_update_otg_caps(struct device_node * np,struct usb_otg_caps * otg_caps)32 static inline int of_usb_update_otg_caps(struct device_node *np,
33 				struct usb_otg_caps *otg_caps)
34 {
35 	return 0;
36 }
usb_of_get_child_node(struct device_node * parent,int portnum)37 static inline struct device_node *usb_of_get_child_node
38 		(struct device_node *parent, int portnum)
39 {
40 	return NULL;
41 }
usb_of_get_companion_dev(struct device * dev)42 static inline struct device *usb_of_get_companion_dev(struct device *dev)
43 {
44 	return NULL;
45 }
46 #endif
47 
48 #if IS_ENABLED(CONFIG_OF) && IS_ENABLED(CONFIG_USB_SUPPORT)
49 enum usb_phy_interface of_usb_get_phy_mode(struct device_node *np);
50 #else
of_usb_get_phy_mode(struct device_node * np)51 static inline enum usb_phy_interface of_usb_get_phy_mode(struct device_node *np)
52 {
53 	return USBPHY_INTERFACE_MODE_UNKNOWN;
54 }
55 
56 #endif
57 
58 #endif /* __LINUX_USB_OF_H */
59