hc
2024-03-22 f63cd4c03ea42695d5f9b0e1798edd196923aae6
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
/* SPDX-License-Identifier: GPL-2.0-only */
/* arch/arm/plat-samsung/include/plat/usb-control.h
 *
 * Copyright (c) 2004 Simtec Electronics
 *    Ben Dooks <ben@simtec.co.uk>
 *
 * S3C - USB host port information
*/
 
#ifndef __ASM_ARCH_USBCONTROL_H
#define __ASM_ARCH_USBCONTROL_H
 
#define S3C_HCDFLG_USED    (1)
 
struct s3c2410_hcd_port {
   unsigned char    flags;
   unsigned char    power;
   unsigned char    oc_status;
   unsigned char    oc_changed;
};
 
struct s3c2410_hcd_info {
   struct usb_hcd        *hcd;
   struct s3c2410_hcd_port    port[2];
 
   void        (*power_control)(int port, int to);
   void        (*enable_oc)(struct s3c2410_hcd_info *, int on);
   void        (*report_oc)(struct s3c2410_hcd_info *, int ports);
};
 
static inline void s3c2410_usb_report_oc(struct s3c2410_hcd_info *info, int ports)
{
   if (info->report_oc != NULL) {
       (info->report_oc)(info, ports);
   }
}
 
extern void s3c_ohci_set_platdata(struct s3c2410_hcd_info *info);
 
#endif /*__ASM_ARCH_USBCONTROL_H */