linux/include/linux/platform_data/pxa2xx_udc.h
<<
>>
Prefs
   1/*
   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 */
   9#ifndef PXA2XX_UDC_H
  10#define PXA2XX_UDC_H
  11
  12struct 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,
  19         * with on-chip GPIOs not Lubbock's weird hardware, can have a sane
  20         * VBUS IRQ and omit the methods above.  Store the GPIO number
  21         * here.  Note that sometimes the signals go through inverters...
  22         */
  23        bool    gpio_pullup_inverted;
  24        int     gpio_pullup;                    /* high == pullup activated */
  25};
  26
  27#endif
  28