Linux kernel mirror (for testing)
git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel
os
linux
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 */