[PATCH] usb: fix unaligned access

Fabian van der Werf fvanderwerf at gmail.com
Mon Oct 24 14:37:52 EDT 2011


On Mon, Oct 24, 2011 at 7:07 PM, Sascha Hauer <s.hauer at pengutronix.de> wrote:
> On Mon, Oct 24, 2011 at 07:14:04PM +0400, Antony Pavlov wrote:
>> On 23 October 2011 13:29, Fabian van der Werf <fvanderwerf at gmail.com> wrote:
>> >>
>> >> Looks like a valid patch, I wonder that this never was a problem before.
>> >> ARM should break here aswell I think. What architecture are you using?
>> >>
>> >
>> > I am working with a pandaboard (arm cortex a9). The pandaboard has a
>> > usb ethernet controller, so I need usb to boot over tftp. I guess that
>> > most arm configurations don't need usb for booting, and in that case
>> > you won't run into this problem.
>>
>> I have DUB-E100 USB Ethernet (ID 2001:3c05) connected to Toshiba AC100
>> (NVidia Tegra2 --- Cortex A9); tftp works fine without usb unaligned
>> access patch.
>
> Works for me aswell, though the access definitely is unaligned.
>

Okay, I think it may be a compiler problem. The latest code sourcery
compiler builds a barebox that breaks on usb. 2009q1-203 builds fine,
however.

In the usb code the compiler should be able to figure out that the
access is unaligned from the packed structure. So I guess it should
split up the access in multiple loads/stores. I will look into the
binaries to confirm this. The latest compiler may be broken or maybe
the default behaviour has changed because armv7 actually supports
unaligned access.

Fabian


> Sascha
>
>
> --
> Pengutronix e.K.                           |                             |
> Industrial Linux Solutions                 | http://www.pengutronix.de/  |
> Peiner Str. 6-8, 31137 Hildesheim, Germany | Phone: +49-5121-206917-0    |
> Amtsgericht Hildesheim, HRA 2686           | Fax:   +49-5121-206917-5555 |
>



More information about the barebox mailing list