On 10/22/2012 03:39 PM, Allen Martin wrote: > Change usb_kbd driver to obey alignment requirements for USB DMA on > the buffer used for data transfer. This is necessary for > architectures that enable dcache and enable USB DMA.
> diff --git a/common/usb_kbd.c b/common/usb_kbd.c > struct usb_kbd_pdata { > + uint8_t new[8]; > + uint8_t old[8]; > + > uint32_t repeat_delay; > > uint32_t usb_in_pointer; > uint32_t usb_out_pointer; > uint8_t usb_kbd_buffer[USB_KBD_BUFFER_LEN]; > > - uint8_t new[8]; > - uint8_t old[8]; > - > uint8_t flags; > -}; > +} __aligned(USB_DMA_MINALIGN); Surely you need to edit the malloc() call in usb_kbd_probe() instead of adding __aligned to the type; does the alignment on the type really get propagated into malloc(), or as custom code at the call-site somehow? _______________________________________________ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot