usb-control.h
上传用户:szlgq88
上传日期:2009-04-28
资源大小:48287k
文件大小:1k
源码类别:

嵌入式Linux

开发平台:

Unix_Linux

  1. /* linux/include/asm-arm/arch-s3c2410/usb-control.h
  2.  *
  3.  * (c) 2004 Simtec Electronics
  4.  *  Ben Dooks <ben@simtec.co.uk>
  5.  *
  6.  * S3C2410 - usb port information
  7.  *
  8.  * This program is free software; you can redistribute it and/or modify
  9.  * it under the terms of the GNU General Public License version 2 as
  10.  * published by the Free Software Foundation.
  11.  *
  12.  * Changelog:
  13.  *  11-Sep-2004 BJD  Created file
  14.  *  21-Sep-2004 BJD  Updated port info
  15.  *  09-Aug-2005 BJD  Renamed s3c2410_report_oc s3c2410_usb_report_oc
  16. */
  17. #ifndef __ASM_ARCH_USBCONTROL_H
  18. #define __ASM_ARCH_USBCONTROL_H "include/asm-arm/arch-s3c2410/usb-control.h"
  19. #define S3C_HCDFLG_USED (1)
  20. struct s3c2410_hcd_port {
  21. unsigned char flags;
  22. unsigned char power;
  23. unsigned char oc_status;
  24. unsigned char oc_changed;
  25. };
  26. struct s3c2410_hcd_info {
  27. struct usb_hcd *hcd;
  28. struct s3c2410_hcd_port port[2];
  29. void (*power_control)(int port, int to);
  30. void (*enable_oc)(struct s3c2410_hcd_info *, int on);
  31. void (*report_oc)(struct s3c2410_hcd_info *, int ports);
  32. };
  33. static void inline s3c2410_usb_report_oc(struct s3c2410_hcd_info *info, int ports)
  34. {
  35. if (info->report_oc != NULL) {
  36. (info->report_oc)(info, ports);
  37. }
  38. }
  39. #endif /*__ASM_ARCH_USBCONTROL_H */