Back to home page

OSCL-LXR

 
 

    


0001 /* SPDX-License-Identifier: GPL-2.0 */
0002 #ifndef _PHY_GENERIC_H_
0003 #define _PHY_GENERIC_H_
0004 
0005 #include <linux/usb/usb_phy_generic.h>
0006 #include <linux/gpio/consumer.h>
0007 #include <linux/regulator/consumer.h>
0008 
0009 struct usb_phy_generic {
0010     struct usb_phy phy;
0011     struct device *dev;
0012     struct clk *clk;
0013     struct regulator *vcc;
0014     struct gpio_desc *gpiod_reset;
0015     struct gpio_desc *gpiod_vbus;
0016     struct regulator *vbus_draw;
0017     bool vbus_draw_enabled;
0018     unsigned long mA;
0019     unsigned int vbus;
0020 };
0021 
0022 int usb_gen_phy_init(struct usb_phy *phy);
0023 void usb_gen_phy_shutdown(struct usb_phy *phy);
0024 
0025 int usb_phy_gen_create_phy(struct device *dev, struct usb_phy_generic *nop);
0026 
0027 #endif