1 /* SPDX-License-Identifier: GPL-2.0 */ 2 /* 3 * USB PHY defines 4 * 5 * These APIs may be used between USB controllers. USB device drivers 6 * (for either host or peripheral roles) don't use these calls; they 7 * continue to use just usb_device and usb_gadget. 8 */ 9 10 #ifndef __LINUX_USB_PHY_H 11 #define __LINUX_USB_PHY_H 12 13 #include <dm/ofnode.h> 14 15 enum usb_phy_interface { 16 USBPHY_INTERFACE_MODE_UNKNOWN, 17 USBPHY_INTERFACE_MODE_UTMI, 18 USBPHY_INTERFACE_MODE_UTMIW, 19 USBPHY_INTERFACE_MODE_ULPI, 20 USBPHY_INTERFACE_MODE_SERIAL, 21 USBPHY_INTERFACE_MODE_HSIC, 22 }; 23 24 #if CONFIG_IS_ENABLED(DM_USB) 25 /** 26 * usb_get_phy_mode - Get phy mode for given device_node 27 * @np: Pointer to the given device_node 28 * 29 * The function gets phy interface string from property 'phy_type', 30 * and returns the corresponding enum usb_phy_interface 31 */ 32 enum usb_phy_interface usb_get_phy_mode(ofnode node); 33 #else usb_get_phy_mode(ofnode node)34static inline enum usb_phy_interface usb_get_phy_mode(ofnode node) 35 { 36 return USBPHY_INTERFACE_MODE_UNKNOWN; 37 } 38 #endif 39 40 #endif /* __LINUX_USB_PHY_H */ 41