Extend the USB device/class interface: Add parameters to pass the EP0 OUT data that should accompany the OUT SETUP request

git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@4595 42af7a65-404d-4744-a932-0658087f49c3
This commit is contained in:
patacongo
2012-04-12 16:30:48 +00:00
parent 333bd7254a
commit a571bad413
15 changed files with 65 additions and 40 deletions
+3 -2
View File
@@ -168,7 +168,8 @@
/* Invoked for ep0 control requests */
#define CLASS_SETUP(drvr,dev,ctrl) (drvr)->ops->setup(drvr,dev,ctrl)
#define CLASS_SETUP(drvr,dev,ctrl,dataout,outlen) \
(drvr)->ops->setup(drvr,dev,ctrl,dataout,outlen)
/* Invoked on USB suspend. */
@@ -300,7 +301,7 @@ struct usbdevclass_driverops_s
int (*bind)(FAR struct usbdevclass_driver_s *driver, FAR struct usbdev_s *dev);
void (*unbind)(FAR struct usbdevclass_driver_s *driver, FAR struct usbdev_s *dev);
int (*setup)(FAR struct usbdevclass_driver_s *driver, FAR struct usbdev_s *dev,
FAR const struct usb_ctrlreq_s *ctrl);
FAR const struct usb_ctrlreq_s *ctrl, FAR uint8_t *dataout, size_t outlen);
void (*disconnect)(FAR struct usbdevclass_driver_s *driver,
FAR struct usbdev_s *dev);
void (*suspend)(FAR struct usbdevclass_driver_s *driver, FAR struct usbdev_s *dev);