]> git.sur5r.net Git - u-boot/blobdiff - include/usbdescriptors.h
pm9g45: init serial console before relocation
[u-boot] / include / usbdescriptors.h
index a752097e5bcc6cdc1aef7ef6521ea2591196680b..392fcf53780162fc87f6fbb58fdcb8496009111f 100644 (file)
@@ -199,7 +199,7 @@ struct usb_endpoint_descriptor {
        u8 bmAttributes;
        u16 wMaxPacketSize;
        u8 bInterval;
-} __attribute__ ((packed));
+} __attribute__ ((packed)) __attribute__ ((aligned(2)));
 
 struct usb_interface_descriptor {
        u8 bLength;
@@ -504,4 +504,30 @@ struct usb_class_descriptor {
 
 } __attribute__ ((packed));
 
+#ifdef DEBUG
+static inline void print_device_descriptor(struct usb_device_descriptor *d)
+{
+       serial_printf("usb device descriptor \n");
+       serial_printf("\tbLength %2.2x\n", d->bLength);
+       serial_printf("\tbDescriptorType %2.2x\n", d->bDescriptorType);
+       serial_printf("\tbcdUSB %4.4x\n", d->bcdUSB);
+       serial_printf("\tbDeviceClass %2.2x\n", d->bDeviceClass);
+       serial_printf("\tbDeviceSubClass %2.2x\n", d->bDeviceSubClass);
+       serial_printf("\tbDeviceProtocol %2.2x\n", d->bDeviceProtocol);
+       serial_printf("\tbMaxPacketSize0 %2.2x\n", d->bMaxPacketSize0);
+       serial_printf("\tidVendor %4.4x\n", d->idVendor);
+       serial_printf("\tidProduct %4.4x\n", d->idProduct);
+       serial_printf("\tbcdDevice %4.4x\n", d->bcdDevice);
+       serial_printf("\tiManufacturer %2.2x\n", d->iManufacturer);
+       serial_printf("\tiProduct %2.2x\n", d->iProduct);
+       serial_printf("\tiSerialNumber %2.2x\n", d->iSerialNumber);
+       serial_printf("\tbNumConfigurations %2.2x\n", d->bNumConfigurations);
+}
+
+#else
+
+/* stubs */
+#define print_device_descriptor(d)
+
+#endif /* DEBUG */
 #endif