linux/include/linux/platform_data/usb-s3c2410_udc.h
<<
>>
Prefs
   1/* arch/arm/plat-samsung/include/plat/udc.h
   2 *
   3 * Copyright (c) 2005 Arnaud Patard <arnaud.patard@rtp-net.org>
   4 *
   5 *
   6 * This program is free software; you can redistribute it and/or modify
   7 * it under the terms of the GNU General Public License version 2 as
   8 * published by the Free Software Foundation.
   9 *
  10 *
  11 *  Changelog:
  12 *      14-Mar-2005     RTP     Created file
  13 *      02-Aug-2005     RTP     File rename
  14 *      07-Sep-2005     BJD     Minor cleanups, changed cmd to enum
  15 *      18-Jan-2007     HMW     Add per-platform vbus_draw function
  16*/
  17
  18#ifndef __ASM_ARM_ARCH_UDC_H
  19#define __ASM_ARM_ARCH_UDC_H
  20
  21enum s3c2410_udc_cmd_e {
  22        S3C2410_UDC_P_ENABLE    = 1,    /* Pull-up enable        */
  23        S3C2410_UDC_P_DISABLE   = 2,    /* Pull-up disable       */
  24        S3C2410_UDC_P_RESET     = 3,    /* UDC reset, in case of */
  25};
  26
  27struct s3c2410_udc_mach_info {
  28        void    (*udc_command)(enum s3c2410_udc_cmd_e);
  29        void    (*vbus_draw)(unsigned int ma);
  30
  31        unsigned int pullup_pin;
  32        unsigned int pullup_pin_inverted;
  33
  34        unsigned int vbus_pin;
  35        unsigned char vbus_pin_inverted;
  36};
  37
  38extern void __init s3c24xx_udc_set_platdata(struct s3c2410_udc_mach_info *);
  39
  40struct s3c24xx_hsudc_platdata;
  41
  42extern void __init s3c24xx_hsudc_set_platdata(struct s3c24xx_hsudc_platdata *pd);
  43
  44#endif /* __ASM_ARM_ARCH_UDC_H */
  45