[U-Boot] rpi2: u-boot misaligned operation

Matthias Brugger
2019-07-17T07:19:55Z

On 29/06/2019 04:00, Alexander von Gluck IV wrote:
> June 28, 2019 8:49 PM, "Alexander von Gluck IV" <kallisti5@unixzen.com> wrote:
>> June 26, 2019 3:22 AM, "Matthias Brugger" <matthias.bgg@gmail.com> wrote:
>>
>>> On 25/06/2019 02:42, Alexander von Gluck IV wrote:
>>>
>>>> Was rebuilding u-boot binary for the Raspberry Pi 2 (from master), and ran into the following
>>>> issue:
>>>> "
>>>> U-Boot 2019.07-rc4-00179-g77f6e2dd05 (Jun 24 2019 - 14:25:14 -0500)
>>>>
>>>> DRAM: 128 MiB
>>>> RPI 2 Model B (0xa21041)
>>>> MMC: sdhci at 7e300000: 0
>>>> Loading Environment from FAT... *** Warning - bad CRC, using default environment
>>>>
>>>> mbox: Header response code invalid
>>>> bcm2835: Could not configure display
>>>> In: serial
>>>> Out: vidconsole
>>>> Err: vidconsole
>>>> Net: CACHE: Misaligned operation at range [07fdb6e8, 07fdb700]
>>>> CACHE: Misaligned operation at range [07fdb6e8, 07fdb700]
>>>> CACHE: Misaligned operation at range [07fdb6e8, 07fdb700]
>>>> CACHE: Misaligned operation at range [07fdb6e8, 07fdb700]
>>>> CACHE: Misaligned operation at range [07fdb6e8, 07fdb700]
>>>> CACHE: Misaligned operation at range [07fdb6e8, 07fdb700]
>>>> .
>>>> .
>>>> .
>>>> "
>>>>
>>>> git commit: 77f6e2dd0551d8a825bab391a1bd6b838874bcd4
>>>> Anyone seen this before?
>>>>
>>>> Thanks!
>>>
>>> Can you try to git-bisect between:
>>> git bisect good e4afcb2876eeeddd2376c8b07808276b75862498
>>> git bisect bad 3950f0f8563acab248214df36053bb6c57b91940
>>>
>>> I suppose that the one I marked as good actually works. :)
>>
>> e4afcb2876eeeddd2376c8b07808276b75862498 is actually bad.
>> 7e2ae620e15ef578b8f2812ec21ec07fae6c1e2f is bad (3 months ago)
>> 91e1bc53c4b61cd7b871d485f4c136084245e9a2 is bad
>>
>> I can't build before 91e1bc53c4b61cd7b871d485f4c136084245e9a2 due to libfdt
>> incompatibilities :-|
>>
>> *however* I found an old u-boot for the rpi2 build in 2017
>> (which i'm pretty sure worked)
>> (ebca2083d3689c77c7d1365f1e6862b55abef8a2)
>>
>> U-Boot 2017.11-00023-gebca2083d3 (Nov 17 2017 - 09:00:41 -0600)
>>
>> DRAM: 128 MiB
>> RPI 2 Model B (0xa21041)
>> MMC: sdhci at 7e300000: 0
>> *** Warning - bad CRC, using default environment
>>
>> mbox: Header response code invalid
>> bcm2835: Could not configure display
>> In: serial
>> Out: vidconsole
>> Err: vidconsole
>> Net: CACHE: Misaligned operation at range [07fb3f64, 07fb3f80]
>> CACHE: Misaligned operation at range [07fb3f64, 07fb3f80]
>> CACHE: Misaligned operation at range [07fb3f64, 07fb3f80]
>> CACHE: Misaligned operation at range [07fb3f64, 07fb3f80]
>> CACHE: Misaligned operation at range [07fb3f64, 07fb3f80]
>> CACHE: Misaligned operation at range [07fb3f64, 07fb3f80]
>> CACHE: Misaligned operation at range [07fb3f64, 07fb3f80]
>>
>> This one was even built with our own toolchain before
>> we began to rely on host toolchains.
>>
>> The big difference in the room is the pre-u-boot loaders
>> from the pi foundation. We're using their latest:
>>
>> https://github.com/raspberrypi/firmware/tree/master/boot
>>
>> I reverted bootloader.bin and start.elf from 2017:
>> https://github.com/raspberrypi/firmware/blob/dc93c7922bb31f20759a94a6e000299da8e331e3/boot/start.elf
>> https://github.com/raspberrypi/firmware/blob/dc93c7922bb31f20759a94a6e000299da8e331e3/boot/bootcode.
>> in
>>
>> And it now works :-|
>
> Raised to the Raspberry Pi folks here:
> https://github.com/raspberrypi/firmware/issues/1164
>
> Maybe they'll have some insight.
>

That should be fixed in newer versions of the firmware. Another possibility is
to try this patch on top of your u-boot:
https://patchwork.ozlabs.org/patch/1130837/

Regards,
Matthias