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) 15enum usb_dr_mode of_usb_get_dr_mode(struct device_node *np); 16enum usb_device_speed of_usb_get_maximum_speed(struct device_node *np); 17bool of_usb_host_tpl_support(struct device_node *np); 18int of_usb_update_otg_caps(struct device_node *np, 19 struct usb_otg_caps *otg_caps); 20#else 21static inline enum usb_dr_mode of_usb_get_dr_mode(struct device_node *np) 22{ 23 return USB_DR_MODE_UNKNOWN; 24} 25 26static inline enum usb_device_speed 27of_usb_get_maximum_speed(struct device_node *np) 28{ 29 return USB_SPEED_UNKNOWN; 30} 31static inline bool of_usb_host_tpl_support(struct device_node *np) 32{ 33 return false; 34} 35static 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) 43enum usb_phy_interface of_usb_get_phy_mode(struct device_node *np); 44#else 45static 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 */ 53