linux-user: Define ordinary usbfs ioctls.

Provide ioctl definitions for the generic thunk mechanism to
convert most usbfs calls.  Calculate arg size at runtime.

Signed-off-by: Cortland Tölva <cst@tolva.net>
Reviewed-by: Laurent Vivier <laurent@vivier.eu>
Message-Id: <20181008163521.17341-3-cst@tolva.net>
Signed-off-by: Laurent Vivier <laurent@vivier.eu>
This commit is contained in:
Cortland Tölva
2018-10-08 09:35:20 -07:00
committed by Laurent Vivier
parent 955727d29d
commit 6c753a63ed
4 changed files with 113 additions and 0 deletions

View File

@@ -266,3 +266,51 @@ STRUCT(blkpg_ioctl_arg,
TYPE_INT, /* flags */
TYPE_INT, /* datalen */
TYPE_PTRVOID) /* data */
#if defined(CONFIG_USBFS)
/* usb device ioctls */
STRUCT(usbdevfs_ctrltransfer,
TYPE_CHAR, /* bRequestType */
TYPE_CHAR, /* bRequest */
TYPE_SHORT, /* wValue */
TYPE_SHORT, /* wIndex */
TYPE_SHORT, /* wLength */
TYPE_INT, /* timeout */
TYPE_PTRVOID) /* data */
STRUCT(usbdevfs_bulktransfer,
TYPE_INT, /* ep */
TYPE_INT, /* len */
TYPE_INT, /* timeout */
TYPE_PTRVOID) /* data */
STRUCT(usbdevfs_setinterface,
TYPE_INT, /* interface */
TYPE_INT) /* altsetting */
STRUCT(usbdevfs_disconnectsignal,
TYPE_INT, /* signr */
TYPE_PTRVOID) /* context */
STRUCT(usbdevfs_getdriver,
TYPE_INT, /* interface */
MK_ARRAY(TYPE_CHAR, USBDEVFS_MAXDRIVERNAME + 1)) /* driver */
STRUCT(usbdevfs_connectinfo,
TYPE_INT, /* devnum */
TYPE_CHAR) /* slow */
STRUCT(usbdevfs_ioctl,
TYPE_INT, /* ifno */
TYPE_INT, /* ioctl_code */
TYPE_PTRVOID) /* data */
STRUCT(usbdevfs_hub_portinfo,
TYPE_CHAR, /* nports */
MK_ARRAY(TYPE_CHAR, 127)) /* port */
STRUCT(usbdevfs_disconnect_claim,
TYPE_INT, /* interface */
TYPE_INT, /* flags */
MK_ARRAY(TYPE_CHAR, USBDEVFS_MAXDRIVERNAME + 1)) /* driver */
#endif /* CONFIG_USBFS */