Felipe Balbi | 78c289f | 2012-07-19 13:32:15 +0300 | [diff] [blame] | 1 | #ifndef __LINUX_USB_NOP_XCEIV_H |
| 2 | #define __LINUX_USB_NOP_XCEIV_H |
| 3 | |
Felipe Balbi | c84d364 | 2012-07-19 13:38:06 +0300 | [diff] [blame] | 4 | #include <linux/usb/otg.h> |
Robert Jarzmik | 7acc997 | 2014-12-06 22:05:15 +0100 | [diff] [blame] | 5 | #include <linux/gpio/consumer.h> |
Felipe Balbi | c84d364 | 2012-07-19 13:38:06 +0300 | [diff] [blame] | 6 | |
Felipe Balbi | 4525bee | 2014-04-16 15:20:44 -0500 | [diff] [blame] | 7 | struct usb_phy_generic_platform_data { |
Felipe Balbi | c84d364 | 2012-07-19 13:38:06 +0300 | [diff] [blame] | 8 | enum usb_phy_type type; |
Roger Quadros | 1f0972f | 2013-03-12 13:24:19 +0200 | [diff] [blame] | 9 | unsigned long clk_rate; |
| 10 | |
| 11 | /* if set fails with -EPROBE_DEFER if can't get regulator */ |
| 12 | unsigned int needs_vcc:1; |
Roger Quadros | 8e93335 | 2013-09-24 11:53:47 +0300 | [diff] [blame] | 13 | unsigned int needs_reset:1; /* deprecated */ |
| 14 | int gpio_reset; |
Robert Jarzmik | 7acc997 | 2014-12-06 22:05:15 +0100 | [diff] [blame] | 15 | struct gpio_desc *gpiod_vbus; |
Felipe Balbi | c84d364 | 2012-07-19 13:38:06 +0300 | [diff] [blame] | 16 | }; |
| 17 | |
Felipe Balbi | dca769b | 2014-04-21 10:50:35 -0500 | [diff] [blame] | 18 | #if IS_ENABLED(CONFIG_NOP_USB_XCEIV) |
Felipe Balbi | 78c289f | 2012-07-19 13:32:15 +0300 | [diff] [blame] | 19 | /* sometimes transceivers are accessed only through e.g. ULPI */ |
Felipe Balbi | 2f36ff6 | 2014-04-16 16:16:33 -0500 | [diff] [blame] | 20 | extern struct platform_device *usb_phy_generic_register(void); |
| 21 | extern void usb_phy_generic_unregister(struct platform_device *); |
Felipe Balbi | 78c289f | 2012-07-19 13:32:15 +0300 | [diff] [blame] | 22 | #else |
Felipe Balbi | 2f36ff6 | 2014-04-16 16:16:33 -0500 | [diff] [blame] | 23 | static inline struct platform_device *usb_phy_generic_register(void) |
Felipe Balbi | 78c289f | 2012-07-19 13:32:15 +0300 | [diff] [blame] | 24 | { |
Felipe Balbi | 2f36ff6 | 2014-04-16 16:16:33 -0500 | [diff] [blame] | 25 | return NULL; |
Felipe Balbi | 78c289f | 2012-07-19 13:32:15 +0300 | [diff] [blame] | 26 | } |
| 27 | |
Felipe Balbi | 2f36ff6 | 2014-04-16 16:16:33 -0500 | [diff] [blame] | 28 | static inline void usb_phy_generic_unregister(struct platform_device *pdev) |
Felipe Balbi | 78c289f | 2012-07-19 13:32:15 +0300 | [diff] [blame] | 29 | { |
| 30 | } |
| 31 | #endif |
| 32 | |
| 33 | #endif /* __LINUX_USB_NOP_XCEIV_H */ |