RPi4 Status and sysutils/rpi-firmware [BETA4 with *.dtb start4.elf fixup4.dat updates works in my context, no u-boot update]

Mark Millard marklmi at yahoo.com
Wed Mar 3 13:15:52 UTC 2021



On 2021-Mar-3, at 04:12, Emmanuel Vadot <manu at bidouilliste.com> wrote:

> On Wed, 3 Mar 2021 04:00:32 -0800
> Mark Millard <marklmi at yahoo.com> wrote:
> 
>> 
>> 
>> On 2021-Mar-3, at 00:05, Emmanuel Vadot <manu at bidouilliste.com> wrote:
>> 
>>> On Tue, 2 Mar 2021 12:33:29 -0800
>>> Mark Millard <marklmi at yahoo.com> wrote:
>>> 
>>>> 
>>>> 
>>>>> On 2021-Mar-2, at 10:50, Mark Millard <marklmi at yahoo.com> wrote:
>>>>> 
>>>> 
>>>> So I tried to start an approximate replicate-problems sequence,
>>>> documented below.
>>>> 
>>>> 
>>>>> On 2021-Mar-2, at 03:20, Emmanuel Vadot <manu at bidouilliste.com> wrote:
>>>>> 
>>>>> 
>>>>>> Over the past years I've handled the update of the
>>>>>> sysutils/rpi-firmware and sysutils/u-boot-rpi* ports.
>>>>>> For that I've bought a lot of different RPI to ensure that we could
>>>>>> boot on all different models that the RPI Foundation folks deliver to
>>>>>> us.
>>>>> 
>>>>> Thanks for the past effort of supporting the RPi*'s.
>>>>> I can easily understand the frustration.
>>>>> 
>>>>> Do not take the below as a request for any action on
>>>>> your part. They are just notes about the current
>>>>> context as seen from my somewhat different environment.
>>>>> 
>>>>>> . . .
>>>>>> 
>>>>>> 1/ Take the latest BETA4 image for RPI and burn on your sdcard
>>>>>> 2/ Boot with or without hdmi screen.
>>>>>> 3/ You will see that u-boot fails to init usb :
>>>>>> starting USB...
>>>>>> Bus xhci_pci: probe failed, error -110
>>>>>> No working controllers found
>>>> 
>>>> I made a FreeBSD-13.0-BETA4-arm64-aarch64-RPI.img on
>>>> a microsd card and replicated this.
>>>> 
>>>>>> If you drop to u-boot prompt and do 'usb list' it will say that the
>>>>>> usb system is stopped and you can of course not start it without having
>>>>>> the above error.
>>>>>> 4/ If you boot to FreeBSD everything that we support seems to work
>>>>>> except for usb (of course).
>>>>>> 5/ Take the two files proposed as a fix from upstream
>>>>>> (https://github.com/raspberrypi/firmware/issues/1518#issuecomment-779355320)
>>>>>> and copy them to the sdcard.
>>>> 
>>>> I did not try the issue 1518 files: Skipping (5) and (6).
>>>> 
>>>>>> 6/ Boot that and you will see that usb is working again in u-boot and
>>>>>> in FreeBSD, perfect.
>>>>>> 7/ Update the ports using [1] or download the files from
>>>>>> github.com/raspberrypi/firmware and copy them on the sdcard (The issue
>>>>>> should be fixed right ?)
>>>> 
>>>> Here I also included the *.dtb files relevant to
>>>> RPi4B's (and analogous), resulting in the following
>>>> files being updated on the otherwise BETA4 media:
>>> 
>>> I also did that, sorry if I wasn't clear.
>>> I've updated all the start* fixup* *dtb and bootcode.bin files on the
>>> sdcard as this is what would have been done if the ports was updated
>>> on the futur images that we provide.
>> 
>> I just looked at your patch and it specified the version
>> before the updates to the firmware were released, likely
>> explaining our differing results:
>> 
>> +TIMESTAMP = 1614679337
>> +SHA256 (raspberrypi-firmware-1.20210222.g20210222-cb8cbb2_GH0.tar.gz) = bb34b5d0cb04d4ec2161954af78310825ee7f6a580f313af523ff50ddd71fa52
>> +SIZE (raspberrypi-firmware-1.20210222.g20210222-cb8cbb2_GH0.tar.gz) = 192229572
>> 
>> 
>> https://github.com/raspberrypi/firmware/commits/master shows . . .
>> 
>> cb8cbb2 is:
>> 
>> Commits on Feb 22, 2021
>> kernel: Bump to 5.10.17
>> 
>> 
>> Then there are 2 more relevant updates . . .
>> 
>> 7872272 is:
>> 
>> Commits on Feb 24, 2021
>> firmware: platform: vl805: Get BAR2 address from PCIe BAR2 registers
>> 
>> (That is the one for fixing issue 1518 but it has another
>> issue that solidly needs a fix. See below.)
>> 
>> 
>> 5985247 is:
>> 
>> Commits on Feb 25, 2021
>> firmware: arm_loader: Return all borrowed DMA channels
>> 
>> (Specifically DMA channel 6 is known to have been messed
>> up by the firmware.)
>> 
>> 
>> I used materials originally taken from 5985247 so we did
>> not match in what we tested.
> 
> Crap, yes indeed, I first did this patch when I saw a commit with
> updated files but did not test at that time and didn't looked again
> later ...
> Well, I'll test this update and commit an update if that fixes things
> for me but this will still be my last update on this ports.
> 
> Thanks for looking deeper ;)

You are welcome.

I'll note that I did not use a U-boot update: that part of
13.0-BETA4 was left as-is in my testing. (This could end up
as another source of variations in behavior.)

>>>> # ls -Tldt /boot/msdos/*
>>>> -rwxr-xr-x  1 root  wheel    49090 Feb 27 03:24:30 2021 /boot/msdos/bcm2711-rpi-4-b.dtb
>>>> -rwxr-xr-x  1 root  wheel    48794 Feb 27 03:24:30 2021 /boot/msdos/bcm2711-rpi-400.dtb
>>>> -rwxr-xr-x  1 root  wheel    49202 Feb 27 03:24:30 2021 /boot/msdos/bcm2711-rpi-cm4.dtb
>>>> -rwxr-xr-x  1 root  wheel     5448 Feb 27 03:24:28 2021 /boot/msdos/fixup4.dat
>>>> -rwxr-xr-x  1 root  wheel  2228800 Feb 27 03:24:28 2021 /boot/msdos/start4.elf
>>>> . . . (others unchanged) . . .
>>>> 

===
Mark Millard
marklmi at yahoo.com
( dsl-only.net went
away in early 2018-Mar)



More information about the freebsd-arm mailing list