summaryrefslogtreecommitdiffstats
path: root/sys/dev/usb/usbdi.h
diff options
context:
space:
mode:
authormglocker <mglocker@openbsd.org>2013-04-15 09:23:00 +0000
committermglocker <mglocker@openbsd.org>2013-04-15 09:23:00 +0000
commitab0b1be78a33b04be9f7ec4a3d24ce14843759cb (patch)
tree343ff963916dade5930d4d0d64b50d04d9a15f9d /sys/dev/usb/usbdi.h
parentRevert r1.37 now that we stop after the first matching protocol, tested (diff)
downloadwireguard-openbsd-ab0b1be78a33b04be9f7ec4a3d24ce14843759cb.tar.xz
wireguard-openbsd-ab0b1be78a33b04be9f7ec4a3d24ce14843759cb.zip
Get rid of various 'typedef struct' definitions and use plain structure
definitions instead. We don't change usb.h for now to stay compatible with userland. Tested by mpi@ on macppc and myself on i386. ok mpi@
Diffstat (limited to 'sys/dev/usb/usbdi.h')
-rw-r--r--sys/dev/usb/usbdi.h148
1 files changed, 73 insertions, 75 deletions
diff --git a/sys/dev/usb/usbdi.h b/sys/dev/usb/usbdi.h
index 86648b6bca4..414c0e00d4c 100644
--- a/sys/dev/usb/usbdi.h
+++ b/sys/dev/usb/usbdi.h
@@ -1,4 +1,4 @@
-/* $OpenBSD: usbdi.h,v 1.47 2013/04/12 12:58:39 mpi Exp $ */
+/* $OpenBSD: usbdi.h,v 1.48 2013/04/15 09:23:02 mglocker Exp $ */
/* $NetBSD: usbdi.h,v 1.62 2002/07/11 21:14:35 augustss Exp $ */
/* $FreeBSD: src/sys/dev/usb/usbdi.h,v 1.18 1999/11/17 22:33:49 n_hibma Exp $ */
@@ -32,12 +32,11 @@
* POSSIBILITY OF SUCH DAMAGE.
*/
-typedef struct usbd_bus *usbd_bus_handle;
-typedef struct usbd_device *usbd_device_handle;
-typedef struct usbd_interface *usbd_interface_handle;
-typedef struct usbd_pipe *usbd_pipe_handle;
-typedef struct usbd_xfer *usbd_xfer_handle;
-typedef void *usbd_private_handle;
+struct usbd_bus;
+struct usbd_device;
+struct usbd_interface;
+struct usbd_pipe;
+struct usbd_xfer;
typedef enum { /* keep in sync with usbd_status_msgs */
USBD_NORMAL_COMPLETION = 0, /* must be 0 */
@@ -64,8 +63,7 @@ typedef enum { /* keep in sync with usbd_status_msgs */
USBD_ERROR_MAX /* must be last */
} usbd_status;
-typedef void (*usbd_callback)(usbd_xfer_handle, usbd_private_handle,
- usbd_status);
+typedef void (*usbd_callback)(struct usbd_xfer *, void *, usbd_status);
/* Open flags */
#define USBD_EXCLUSIVE_USE 0x01
@@ -84,99 +82,99 @@ typedef void (*usbd_callback)(usbd_xfer_handle, usbd_private_handle,
#define DEVINFOSIZE 1024
-usbd_status usbd_open_pipe(usbd_interface_handle iface, u_int8_t address,
- u_int8_t flags, usbd_pipe_handle *pipe);
-usbd_status usbd_close_pipe(usbd_pipe_handle pipe);
-usbd_status usbd_transfer(usbd_xfer_handle req);
-usbd_xfer_handle usbd_alloc_xfer(usbd_device_handle);
-usbd_status usbd_free_xfer(usbd_xfer_handle xfer);
-void usbd_setup_xfer(usbd_xfer_handle xfer, usbd_pipe_handle pipe,
- usbd_private_handle priv, void *buffer, u_int32_t length, u_int16_t flags,
+usbd_status usbd_open_pipe(struct usbd_interface *iface, u_int8_t address,
+ u_int8_t flags, struct usbd_pipe **pipe);
+usbd_status usbd_close_pipe(struct usbd_pipe *pipe);
+usbd_status usbd_transfer(struct usbd_xfer *req);
+struct usbd_xfer *usbd_alloc_xfer(struct usbd_device *);
+usbd_status usbd_free_xfer(struct usbd_xfer *xfer);
+void usbd_setup_xfer(struct usbd_xfer *xfer, struct usbd_pipe *pipe,
+ void *priv, void *buffer, u_int32_t length, u_int16_t flags,
u_int32_t timeout, usbd_callback);
-void usbd_setup_default_xfer(usbd_xfer_handle xfer, usbd_device_handle dev,
- usbd_private_handle priv, u_int32_t timeout, usb_device_request_t *req,
+void usbd_setup_default_xfer(struct usbd_xfer *xfer, struct usbd_device *dev,
+ void *priv, u_int32_t timeout, usb_device_request_t *req,
void *buffer, u_int32_t length, u_int16_t flags, usbd_callback);
-void usbd_setup_isoc_xfer(usbd_xfer_handle xfer, usbd_pipe_handle pipe,
- usbd_private_handle priv, u_int16_t *frlengths, u_int32_t nframes,
+void usbd_setup_isoc_xfer(struct usbd_xfer *xfer, struct usbd_pipe *pipe,
+ void *priv, u_int16_t *frlengths, u_int32_t nframes,
u_int16_t flags, usbd_callback);
-void usbd_get_xfer_status(usbd_xfer_handle xfer, usbd_private_handle *priv,
+void usbd_get_xfer_status(struct usbd_xfer *xfer, void **priv,
void **buffer, u_int32_t *count, usbd_status *status);
usb_endpoint_descriptor_t *usbd_interface2endpoint_descriptor(
- usbd_interface_handle iface, u_int8_t address);
-usbd_status usbd_abort_pipe(usbd_pipe_handle pipe);
-usbd_status usbd_clear_endpoint_stall(usbd_pipe_handle pipe);
-usbd_status usbd_clear_endpoint_stall_async(usbd_pipe_handle pipe);
-void usbd_clear_endpoint_toggle(usbd_pipe_handle pipe);
-usbd_status usbd_endpoint_count(usbd_interface_handle dev, u_int8_t *count);
-usbd_status usbd_interface_count(usbd_device_handle dev, u_int8_t *count);
-void usbd_interface2device_handle(usbd_interface_handle iface,
- usbd_device_handle *dev);
-usbd_status usbd_device2interface_handle(usbd_device_handle dev,
- u_int8_t ifaceno, usbd_interface_handle *iface);
+ struct usbd_interface *iface, u_int8_t address);
+usbd_status usbd_abort_pipe(struct usbd_pipe *pipe);
+usbd_status usbd_clear_endpoint_stall(struct usbd_pipe *pipe);
+usbd_status usbd_clear_endpoint_stall_async(struct usbd_pipe *pipe);
+void usbd_clear_endpoint_toggle(struct usbd_pipe *pipe);
+usbd_status usbd_endpoint_count(struct usbd_interface *dev, u_int8_t *count);
+usbd_status usbd_interface_count(struct usbd_device *dev, u_int8_t *count);
+void usbd_interface2device_handle(struct usbd_interface *iface,
+ struct usbd_device **dev);
+usbd_status usbd_device2interface_handle(struct usbd_device *dev,
+ u_int8_t ifaceno, struct usbd_interface **iface);
-usbd_device_handle usbd_pipe2device_handle(usbd_pipe_handle);
-void *usbd_alloc_buffer(usbd_xfer_handle xfer, u_int32_t size);
-void usbd_free_buffer(usbd_xfer_handle xfer);
-void *usbd_get_buffer(usbd_xfer_handle xfer);
-usbd_status usbd_open_pipe_intr(usbd_interface_handle iface, u_int8_t address,
- u_int8_t flags, usbd_pipe_handle *pipe, usbd_private_handle priv,
+struct usbd_device *usbd_pipe2device_handle(struct usbd_pipe *);
+void *usbd_alloc_buffer(struct usbd_xfer *xfer, u_int32_t size);
+void usbd_free_buffer(struct usbd_xfer *xfer);
+void *usbd_get_buffer(struct usbd_xfer *xfer);
+usbd_status usbd_open_pipe_intr(struct usbd_interface *iface, u_int8_t address,
+ u_int8_t flags, struct usbd_pipe **pipe, void *priv,
void *buffer, u_int32_t length, usbd_callback, int);
-usbd_status usbd_do_request(usbd_device_handle pipe, usb_device_request_t *req,
+usbd_status usbd_do_request(struct usbd_device *pipe, usb_device_request_t *req,
void *data);
-usbd_status usbd_do_request_async(usbd_device_handle pipe,
+usbd_status usbd_do_request_async(struct usbd_device *pipe,
usb_device_request_t *req, void *data);
-usbd_status usbd_do_request_flags(usbd_device_handle pipe,
+usbd_status usbd_do_request_flags(struct usbd_device *pipe,
usb_device_request_t *req, void *data, u_int16_t flags, int*, u_int32_t);
usb_interface_descriptor_t *usbd_get_interface_descriptor(
- usbd_interface_handle iface);
-usb_config_descriptor_t *usbd_get_config_descriptor(usbd_device_handle dev);
-usb_device_descriptor_t *usbd_get_device_descriptor(usbd_device_handle dev);
-usbd_status usbd_set_interface(usbd_interface_handle, int);
+ struct usbd_interface *iface);
+usb_config_descriptor_t *usbd_get_config_descriptor(struct usbd_device *dev);
+usb_device_descriptor_t *usbd_get_device_descriptor(struct usbd_device *dev);
+usbd_status usbd_set_interface(struct usbd_interface *, int);
int usbd_get_no_alts(usb_config_descriptor_t *, int);
-usbd_status usbd_get_interface(usbd_interface_handle iface, u_int8_t *aiface);
-void usbd_fill_deviceinfo(usbd_device_handle, struct usb_device_info *, int);
+usbd_status usbd_get_interface(struct usbd_interface *iface, u_int8_t *aiface);
+void usbd_fill_deviceinfo(struct usbd_device *, struct usb_device_info *, int);
void usbd_fill_di_task(void *);
void usbd_fill_udc_task(void *);
void usbd_fill_udf_task(void *);
-usb_config_descriptor_t *usbd_get_cdesc(usbd_device_handle, int, int *);
-int usbd_get_interface_altindex(usbd_interface_handle iface);
+usb_config_descriptor_t *usbd_get_cdesc(struct usbd_device *, int, int *);
+int usbd_get_interface_altindex(struct usbd_interface *iface);
usb_interface_descriptor_t *usbd_find_idesc(usb_config_descriptor_t *cd,
int iindex, int ano);
usb_endpoint_descriptor_t *usbd_find_edesc(usb_config_descriptor_t *cd,
int ifaceidx, int altidx, int endptidx);
-void usbd_dopoll(usbd_interface_handle);
-void usbd_set_polling(usbd_device_handle iface, int on);
+void usbd_dopoll(struct usbd_interface *);
+void usbd_set_polling(struct usbd_device *iface, int on);
const char *usbd_errstr(usbd_status err);
-const struct usbd_quirks *usbd_get_quirks(usbd_device_handle);
+const struct usbd_quirks *usbd_get_quirks(struct usbd_device *);
usb_endpoint_descriptor_t *usbd_get_endpoint_descriptor(
- usbd_interface_handle iface, u_int8_t address);
+ struct usbd_interface *iface, u_int8_t address);
-usbd_status usbd_reload_device_desc(usbd_device_handle);
+usbd_status usbd_reload_device_desc(struct usbd_device *);
int usbd_ratecheck(struct timeval *last);
-int usbd_get_devcnt(usbd_device_handle);
-void usbd_claim_iface(usbd_device_handle, int);
-int usbd_iface_claimed(usbd_device_handle, int);
+int usbd_get_devcnt(struct usbd_device *);
+void usbd_claim_iface(struct usbd_device *, int);
+int usbd_iface_claimed(struct usbd_device *, int);
-int usbd_is_dying(usbd_device_handle);
-void usbd_deactivate(usbd_device_handle);
+int usbd_is_dying(struct usbd_device *);
+void usbd_deactivate(struct usbd_device *);
-void usbd_ref_incr(usbd_device_handle);
-void usbd_ref_decr(usbd_device_handle);
-void usbd_ref_wait(usbd_device_handle);
+void usbd_ref_incr(struct usbd_device *);
+void usbd_ref_decr(struct usbd_device *);
+void usbd_ref_wait(struct usbd_device *);
/* An iterator for descriptors. */
-typedef struct {
+struct usbd_desc_iter {
const uByte *cur;
const uByte *end;
-} usbd_desc_iter_t;
-void usb_desc_iter_init(usbd_device_handle, usbd_desc_iter_t *);
-const usb_descriptor_t *usb_desc_iter_next(usbd_desc_iter_t *);
+};
+void usb_desc_iter_init(struct usbd_device *, struct usbd_desc_iter *);
+const usb_descriptor_t *usb_desc_iter_next(struct usbd_desc_iter *);
/*
* The usb_task structs form a queue of things to run in the USB task
@@ -186,7 +184,7 @@ const usb_descriptor_t *usb_desc_iter_next(usbd_desc_iter_t *);
*/
struct usb_task {
TAILQ_ENTRY(usb_task) next;
- usbd_device_handle dev;
+ struct usbd_device *dev;
void (*fun)(void *);
void *arg;
char type;
@@ -200,10 +198,10 @@ struct usb_task {
};
-void usb_add_task(usbd_device_handle, struct usb_task *);
-void usb_rem_task(usbd_device_handle, struct usb_task *);
-void usb_wait_task(usbd_device_handle, struct usb_task *);
-void usb_rem_wait_task(usbd_device_handle, struct usb_task *);
+void usb_add_task(struct usbd_device *, struct usb_task *);
+void usb_rem_task(struct usbd_device *, struct usb_task *);
+void usb_wait_task(struct usbd_device *, struct usb_task *);
+void usb_rem_wait_task(struct usbd_device *, struct usb_task *);
#define usb_init_task(t, f, a, y) \
((t)->fun = (f), \
(t)->arg = (a), \
@@ -231,10 +229,10 @@ struct usb_attach_arg {
int product;
int release;
int matchlvl;
- usbd_device_handle device; /* current device */
- usbd_interface_handle iface; /* current interface */
+ struct usbd_device *device; /* current device */
+ struct usbd_interface *iface; /* current interface */
int usegeneric;
- usbd_interface_handle *ifaces; /* all interfaces */
+ struct usbd_interface **ifaces;/* all interfaces */
int nifaces; /* number of interfaces */
};