// SPDX-License-Identifier: GPL-2.0 /* * OF helpers for usb devices. * * This file is released under the GPLv2 */ #ifndef __LINUX_USB_OF_H #define __LINUX_USB_OF_H #include <linux/usb/ch9.h> #include <linux/usb/otg.h> #include <linux/usb/phy.h> struct usb_device; #if IS_ENABLED([31mCONFIG_OF[0m) enum usb_dr_mode of_usb_get_dr_mode_by_phy(struct device_node *np, int arg0); bool of_usb_host_tpl_support(struct device_node *np); int of_usb_update_otg_caps(struct device_node *np, struct usb_otg_caps *otg_caps); struct device_node *usb_of_get_device_node(struct usb_device *hub, int port1); bool usb_of_has_combined_node(struct usb_device *udev); struct device_node *usb_of_get_interface_node(struct usb_device *udev, u8 config, u8 ifnum); struct device *usb_of_get_companion_dev(struct device *dev); #else static inline enum usb_dr_mode of_usb_get_dr_mode_by_phy(struct device_node *np, int arg0) { return USB_DR_MODE_UNKNOWN; } static inline bool of_usb_host_tpl_support(struct device_node *np) { return false; } static inline int of_usb_update_otg_caps(struct device_node *np, struct usb_otg_caps *otg_caps) { return 0; } static inline struct device_node * usb_of_get_device_node(struct usb_device *hub, int port1) { return NULL; } static inline bool usb_of_has_combined_node(struct usb_device *udev) { return false; } static inline struct device_node * usb_of_get_interface_node(struct usb_device *udev, u8 config, u8 ifnum) { return NULL; } static inline struct device *usb_of_get_companion_dev(struct device *dev) { return NULL; } #endif #if IS_ENABLED([31mCONFIG_OF[0m) && IS_ENABLED([31mCONFIG_USB_SUPPORT[0m) enum usb_phy_interface of_usb_get_phy_mode(struct device_node *np); #else static inline enum usb_phy_interface of_usb_get_phy_mode(struct device_node *np) { return USBPHY_INTERFACE_MODE_UNKNOWN; } #endif #endif /* __LINUX_USB_OF_H */ |