Milan Svoboda | aed6fad | 2006-11-29 12:09:52 +0100 | [diff] [blame] | 1 | /* |
Milan Svoboda | aed6fad | 2006-11-29 12:09:52 +0100 | [diff] [blame] | 2 | * This supports machine-specific differences in how the PXA2xx |
| 3 | * USB Device Controller (UDC) is wired. |
| 4 | * |
| 5 | * It is set in linux/arch/arm/mach-pxa/<machine>.c or in |
| 6 | * linux/arch/mach-ixp4xx/<machine>.c and used in |
| 7 | * the probe routine of linux/drivers/usb/gadget/pxa2xx_udc.c |
| 8 | */ |
Russell King | 4600006 | 2012-09-21 10:23:44 +0100 | [diff] [blame] | 9 | #ifndef PXA2XX_UDC_H |
| 10 | #define PXA2XX_UDC_H |
Milan Svoboda | aed6fad | 2006-11-29 12:09:52 +0100 | [diff] [blame] | 11 | |
| 12 | struct pxa2xx_udc_mach_info { |
| 13 | int (*udc_is_connected)(void); /* do we see host? */ |
| 14 | void (*udc_command)(int cmd); |
| 15 | #define PXA2XX_UDC_CMD_CONNECT 0 /* let host see us */ |
| 16 | #define PXA2XX_UDC_CMD_DISCONNECT 1 /* so host won't see us */ |
| 17 | |
| 18 | /* Boards following the design guidelines in the developer's manual, |
Joe Perches | 84c0792 | 2008-02-03 16:50:59 +0200 | [diff] [blame] | 19 | * with on-chip GPIOs not Lubbock's weird hardware, can have a sane |
Milan Svoboda | aed6fad | 2006-11-29 12:09:52 +0100 | [diff] [blame] | 20 | * VBUS IRQ and omit the methods above. Store the GPIO number |
Russell King | 73b610a | 2008-09-25 13:35:27 +0100 | [diff] [blame] | 21 | * here. Note that sometimes the signals go through inverters... |
Milan Svoboda | aed6fad | 2006-11-29 12:09:52 +0100 | [diff] [blame] | 22 | */ |
Ian Molton | 8fb105f | 2008-06-25 22:34:51 +0100 | [diff] [blame] | 23 | bool gpio_pullup_inverted; |
Steve Bennett | 390daa0 | 2010-04-21 16:30:33 +1000 | [diff] [blame] | 24 | int gpio_pullup; /* high == pullup activated */ |
Milan Svoboda | aed6fad | 2006-11-29 12:09:52 +0100 | [diff] [blame] | 25 | }; |
| 26 | |
Russell King | 4600006 | 2012-09-21 10:23:44 +0100 | [diff] [blame] | 27 | #endif |