2 * Copyright (C) 2005-2007 Takahiro Hirofuchi
10 #define USBIP_VHCI_BUS_TYPE "platform"
14 struct usbip_class_device
{
15 char class_path
[SYSFS_PATH_MAX
];
16 char dev_path
[SYSFS_PATH_MAX
];
19 struct usbip_imported_device
{
28 /* usbip_class_device list */
29 struct dlist
*cdev_list
;
30 struct usbip_usb_device udev
;
33 struct usbip_vhci_driver
{
34 char sysfs_mntpath
[SYSFS_PATH_MAX
];
36 /* /sys/devices/platform/vhci_hcd */
37 struct sysfs_device
*hc_device
;
39 /* usbip_class_device list */
40 struct dlist
*cdev_list
;
43 struct usbip_imported_device idev
[MAXNPORT
];
47 extern struct usbip_vhci_driver
*vhci_driver
;
49 int usbip_vhci_driver_open(void);
50 void usbip_vhci_driver_close(void);
52 int usbip_vhci_refresh_device_list(void);
55 int usbip_vhci_get_free_port(void);
56 int usbip_vhci_attach_device2(uint8_t port
, int sockfd
, uint32_t devid
,
60 int usbip_vhci_attach_device(uint8_t port
, int sockfd
, uint8_t busnum
,
61 uint8_t devnum
, uint32_t speed
);
63 int usbip_vhci_detach_device(uint8_t port
);