forked from len0rd/rockbox
Add a PACK_DESCRIPTOR macro to make the class drivers a bit more readable (FS#10145 by Tomer Shalev)
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20733 a1c6a512-1295-4272-9138-f99709370657
This commit is contained in:
parent
8b6b46f3c4
commit
ab09322b7a
4 changed files with 23 additions and 24 deletions
|
|
@ -22,6 +22,7 @@
|
|||
#include "system.h"
|
||||
#include "usb_core.h"
|
||||
#include "usb_drv.h"
|
||||
#include "usb_class_driver.h"
|
||||
//#define LOGF_ENABLE
|
||||
#include "logf.h"
|
||||
#include "storage.h"
|
||||
|
|
@ -371,24 +372,20 @@ int usb_storage_set_first_interface(int interface)
|
|||
|
||||
int usb_storage_get_config_descriptor(unsigned char *dest,int max_packet_size)
|
||||
{
|
||||
endpoint_descriptor.wMaxPacketSize=max_packet_size;
|
||||
interface_descriptor.bInterfaceNumber=usb_interface;
|
||||
unsigned char *orig_dest = dest;
|
||||
|
||||
memcpy(dest,&interface_descriptor,
|
||||
sizeof(struct usb_interface_descriptor));
|
||||
dest+=sizeof(struct usb_interface_descriptor);
|
||||
interface_descriptor.bInterfaceNumber = usb_interface;
|
||||
PACK_DESCRIPTOR(dest, interface_descriptor);
|
||||
|
||||
endpoint_descriptor.wMaxPacketSize = max_packet_size;
|
||||
|
||||
endpoint_descriptor.bEndpointAddress = ep_in;
|
||||
memcpy(dest,&endpoint_descriptor,
|
||||
sizeof(struct usb_endpoint_descriptor));
|
||||
dest+=sizeof(struct usb_endpoint_descriptor);
|
||||
PACK_DESCRIPTOR(dest, endpoint_descriptor);
|
||||
|
||||
endpoint_descriptor.bEndpointAddress = ep_out;
|
||||
memcpy(dest,&endpoint_descriptor,
|
||||
sizeof(struct usb_endpoint_descriptor));
|
||||
PACK_DESCRIPTOR(dest, endpoint_descriptor);
|
||||
|
||||
return sizeof(struct usb_interface_descriptor) +
|
||||
2*sizeof(struct usb_endpoint_descriptor);
|
||||
return (dest - orig_dest);
|
||||
}
|
||||
|
||||
void usb_storage_init_connection(void)
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue