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