usb: provide typedefs for all the function callbacks.
This makes it easier to read for most people, and makes it substantially easier to review changes in the function signatures themselves at a later date.
This commit is contained in:
parent
b1e495f51a
commit
4b892724cf
|
@ -75,10 +75,19 @@ extern void usbd_register_resume_callback(usbd_device *usbd_dev,
|
|||
extern void usbd_register_sof_callback(usbd_device *usbd_dev,
|
||||
void (*callback)(void));
|
||||
|
||||
typedef int (*usbd_control_complete_callback)(usbd_device *usbd_dev,
|
||||
struct usb_setup_data *req);
|
||||
|
||||
typedef int (*usbd_control_callback)(usbd_device *usbd_dev,
|
||||
struct usb_setup_data *req, uint8_t **buf, uint16_t *len,
|
||||
void (**complete)(usbd_device *usbd_dev,
|
||||
struct usb_setup_data *req));
|
||||
usbd_control_complete_callback *complete);
|
||||
|
||||
typedef void (*usbd_set_config_callback)(usbd_device *usbd_dev, uint16_t wValue);
|
||||
|
||||
typedef void (*usbd_set_altsetting_callback)(usbd_device *usbd_dev,
|
||||
uint16_t wIndex, uint16_t wValue);
|
||||
|
||||
typedef void (*usbd_endpoint_callback)(usbd_device *usbd_dev, uint8_t ep);
|
||||
|
||||
/* <usb_control.c> */
|
||||
extern int usbd_register_control_callback(usbd_device *usbd_dev, uint8_t type,
|
||||
|
@ -87,18 +96,17 @@ extern int usbd_register_control_callback(usbd_device *usbd_dev, uint8_t type,
|
|||
|
||||
/* <usb_standard.c> */
|
||||
extern int usbd_register_set_config_callback(usbd_device *usbd_dev,
|
||||
void (*callback)(usbd_device *usbd_dev, uint16_t wValue));
|
||||
usbd_set_config_callback callback);
|
||||
|
||||
extern void usbd_register_set_altsetting_callback(usbd_device *usbd_dev,
|
||||
void (*callback)(usbd_device *usbd_dev, uint16_t wIndex, uint16_t wValue));
|
||||
usbd_set_altsetting_callback callback);
|
||||
|
||||
/* Functions to be provided by the hardware abstraction layer */
|
||||
extern void usbd_poll(usbd_device *usbd_dev);
|
||||
extern void usbd_disconnect(usbd_device *usbd_dev, bool disconnected);
|
||||
|
||||
extern void usbd_ep_setup(usbd_device *usbd_dev, uint8_t addr, uint8_t type,
|
||||
uint16_t max_size,
|
||||
void (*callback)(usbd_device *usbd_dev, uint8_t ep));
|
||||
uint16_t max_size, usbd_endpoint_callback callback);
|
||||
|
||||
extern uint16_t usbd_ep_write_packet(usbd_device *usbd_dev, uint8_t addr,
|
||||
const void *buf, uint16_t len);
|
||||
|
|
|
@ -143,8 +143,7 @@ void usbd_disconnect(usbd_device *usbd_dev, bool disconnected)
|
|||
}
|
||||
|
||||
void usbd_ep_setup(usbd_device *usbd_dev, uint8_t addr, uint8_t type,
|
||||
uint16_t max_size,
|
||||
void (*callback)(usbd_device *usbd_dev, uint8_t ep))
|
||||
uint16_t max_size, usbd_endpoint_callback callback)
|
||||
{
|
||||
usbd_dev->driver->ep_setup(usbd_dev, addr, type, max_size, callback);
|
||||
}
|
||||
|
|
|
@ -708,7 +708,7 @@ static void msc_data_tx_cb(usbd_device *usbd_dev, uint8_t ep)
|
|||
*/
|
||||
static int msc_control_request(usbd_device *usbd_dev,
|
||||
struct usb_setup_data *req, uint8_t **buf, uint16_t *len,
|
||||
void (**complete)(usbd_device *usbd_dev, struct usb_setup_data *req))
|
||||
usbd_control_complete_callback *complete)
|
||||
{
|
||||
(void)complete;
|
||||
(void)usbd_dev;
|
||||
|
|
|
@ -73,8 +73,7 @@ struct _usbd_device {
|
|||
struct usb_setup_data req __attribute__((aligned(4)));
|
||||
uint8_t *ctrl_buf;
|
||||
uint16_t ctrl_len;
|
||||
void (*complete)(usbd_device *usbd_dev,
|
||||
struct usb_setup_data *req);
|
||||
usbd_control_complete_callback complete;
|
||||
} control_state;
|
||||
|
||||
struct user_control_callback {
|
||||
|
@ -83,14 +82,12 @@ struct _usbd_device {
|
|||
uint8_t type_mask;
|
||||
} user_control_callback[MAX_USER_CONTROL_CALLBACK];
|
||||
|
||||
void (*user_callback_ctr[8][3])(usbd_device *usbd_dev, uint8_t ea);
|
||||
usbd_endpoint_callback user_callback_ctr[8][3];
|
||||
|
||||
/* User callback function for some standard USB function hooks */
|
||||
void (*user_callback_set_config[MAX_USER_SET_CONFIG_CALLBACK])
|
||||
(usbd_device *usbd_dev, uint16_t wValue);
|
||||
usbd_set_config_callback user_callback_set_config[MAX_USER_SET_CONFIG_CALLBACK];
|
||||
|
||||
void (*user_callback_set_altsetting)(usbd_device *usbd_dev,
|
||||
uint16_t wIndex, uint16_t wValue);
|
||||
usbd_set_altsetting_callback user_callback_set_altsetting;
|
||||
|
||||
const struct _usbd_driver *driver;
|
||||
|
||||
|
@ -144,8 +141,7 @@ struct _usbd_driver {
|
|||
usbd_device *(*init)(void);
|
||||
void (*set_address)(usbd_device *usbd_dev, uint8_t addr);
|
||||
void (*ep_setup)(usbd_device *usbd_dev, uint8_t addr, uint8_t type,
|
||||
uint16_t max_size,
|
||||
void (*cb)(usbd_device *usbd_dev, uint8_t ep));
|
||||
uint16_t max_size, usbd_endpoint_callback cb);
|
||||
void (*ep_reset)(usbd_device *usbd_dev);
|
||||
void (*ep_stall_set)(usbd_device *usbd_dev, uint8_t addr,
|
||||
uint8_t stall);
|
||||
|
|
|
@ -40,8 +40,7 @@ LGPL License Terms @ref lgpl_license
|
|||
#include "usb_private.h"
|
||||
|
||||
int usbd_register_set_config_callback(usbd_device *usbd_dev,
|
||||
void (*callback)(usbd_device *usbd_dev,
|
||||
uint16_t wValue))
|
||||
usbd_set_config_callback callback)
|
||||
{
|
||||
int i;
|
||||
|
||||
|
@ -57,8 +56,7 @@ int usbd_register_set_config_callback(usbd_device *usbd_dev,
|
|||
}
|
||||
|
||||
void usbd_register_set_altsetting_callback(usbd_device *usbd_dev,
|
||||
void (*callback)(usbd_device *usbd_dev,
|
||||
uint16_t wIndex, uint16_t wValue))
|
||||
usbd_set_altsetting_callback callback)
|
||||
{
|
||||
usbd_dev->user_callback_set_altsetting = callback;
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue