xref: /linux/drivers/usb/phy/phy-generic.h (revision bd27fa44e13830d2baa278d5702e766380659cb3)
153b6fc28SSebastian Andrzej Siewior #ifndef _PHY_GENERIC_H_
253b6fc28SSebastian Andrzej Siewior #define _PHY_GENERIC_H_
353b6fc28SSebastian Andrzej Siewior 
453b6fc28SSebastian Andrzej Siewior struct usb_phy_gen_xceiv {
553b6fc28SSebastian Andrzej Siewior 	struct usb_phy phy;
653b6fc28SSebastian Andrzej Siewior 	struct device *dev;
753b6fc28SSebastian Andrzej Siewior 	struct clk *clk;
853b6fc28SSebastian Andrzej Siewior 	struct regulator *vcc;
9*bd27fa44SRoger Quadros 	int gpio_reset;
10*bd27fa44SRoger Quadros 	bool reset_active_low;
1153b6fc28SSebastian Andrzej Siewior };
1253b6fc28SSebastian Andrzej Siewior 
1353b6fc28SSebastian Andrzej Siewior int usb_gen_phy_init(struct usb_phy *phy);
1453b6fc28SSebastian Andrzej Siewior void usb_gen_phy_shutdown(struct usb_phy *phy);
1553b6fc28SSebastian Andrzej Siewior 
1653b6fc28SSebastian Andrzej Siewior int usb_phy_gen_create_phy(struct device *dev, struct usb_phy_gen_xceiv *nop,
17*bd27fa44SRoger Quadros 		enum usb_phy_type type, u32 clk_rate, bool needs_vcc);
1853b6fc28SSebastian Andrzej Siewior 
1953b6fc28SSebastian Andrzej Siewior #endif
20