public inbox for development@lists.ipfire.org
 help / color / mirror / Atom feed
From: Craig Setera <craigjunk@setera.org>
To: development@lists.ipfire.org
Subject: Re: [PATCH] Updates to u-boot script for Raspberry Pi 4b devices
Date: Tue, 04 Jun 2024 07:40:03 -0500	[thread overview]
Message-ID: <5bcde842-d2f4-471d-a641-ef7faa0f401c@setera.org> (raw)
In-Reply-To: <E5782F19-2884-4B43-8A61-033AFD6FFC77@ipfire.org>

[-- Attachment #1: Type: text/plain, Size: 3944 bytes --]

Thanks Michael,

Is there anything more you need me to do?  I assume most of the current 
effort is currently focused on the test release.

Thanks,
Craig

On 5/23/24 12:01 PM, Michael Tremer wrote:
> Hello Craig,
>
> Thank you very much for this patch. This is perfectly readable :)
>
> It looks logical to me, however I am not an expert when it comes to SBCs, so I will leave this for Arne to review and merge.
>
> Best,
> -Michael
>
>> On 20 May 2024, at 13:17, Craig Setera <craigjunk(a)setera.org> wrote:
>>
>> Updates to u-boot script for Raspberry Pi 4b devices to
>> properly configure the serial console and to choose the proper boot address
>> to be used on newer board revisions.  With these changes in place, I'm able
>> to fully boot into a serial console in u-boot.
>>
>> The serial console configuration was derived from the Grub configuration,
>> while the boot address changes were taken from the IPFire Raspberry 4b
>> documentation page: https://www.ipfire.org/docs/hardware/arm/rpi/four
>>
>> Per the conversation in the forums, I don't know why the boot
>> address changes are required.  I was simply trying to automate those
>> changes such that downloaded builds will work out of the box.
>> https://community.ipfire.org/t/hang-with-kernel-starting-on-raspberry-pi/11558/37
>>
>> NOTE: The use of the different parameter options to the test
>> command to minimize the need for deeply nested conditionals.  I did
>> try more bash-shell like syntax, but u-boot didn't seem to like that.
>> The operators used here were found in the u-boot source.
>>
>> Tested-by: Craig Setera <craigjunk(a)setera.org>
>> Signed-off-by: Craig Setera <craigjunk(a)setera.org>
>> ---
>>   config/u-boot/boot.cmd | 27 ++++++++++++++++++++++++---
>>   1 file changed, 24 insertions(+), 3 deletions(-)
>>
>> diff --git a/config/u-boot/boot.cmd b/config/u-boot/boot.cmd
>> index a27996780..eedd5776d 100644
>> --- a/config/u-boot/boot.cmd
>> +++ b/config/u-boot/boot.cmd
>> @@ -51,7 +51,11 @@ if test "${SERIAL-CONSOLE}" = "ON"; then
>>                       if test "${fdtfile}" = "broadcom/bcm2837-rpi-3-b.dtb"; then
>>                           setenv console ttyS1,115200n8;
>>                       else
>> -                        setenv console ttyAMA0,115200n8;
>> +                        if test "${fdtfile}" = "broadcom/bcm2711-rpi-4-b.dtb"; then
>> +                            setenv console ttyS0,115200n8;
>> +                        else
>> +                            setenv console ttyAMA0,115200n8;
>> +                        fi;
>>                       fi;
>>                   fi;
>>               else
>> @@ -95,11 +99,28 @@ else
>>       setenv ramdisk_addr -;
>>   fi;
>>
>> +#
>> +# Handle Raspberry Pi 4 address differences
>> +# https://www.ipfire.org/docs/hardware/arm/rpi/four
>> +#
>> +setenv booti_fdt_addr ${fdt_addr_r};
>> +if test "${board}" -eq "rpi" -a ${cpu} -eq "armv8" -a "${fdtfile}" -eq "broadcom/bcm2711-rpi-4-b.dtb"; then
>> +    # Hardware revision 1.4
>> +    if test ${board_revision} -eq 0xB03114 -o ${board_revision} -eq 0xC03114 -o ${board_revision} -eq 0xD03114; then
>> +        setenv booti_fdt_addr ${fdt_addr};
>> +    fi
>> +
>> +    # Hardware revision 1.5
>> +    if test ${board_revision} -eq 0xB03115 -o ${board_revision} -eq 0xC03115 -o ${board_revision} -eq 0xD03115; then
>> +        setenv booti_fdt_addr ${fdt_addr};
>> +    fi
>> +fi;
>> +
>>   bootz ${kernel_addr_r} ${ramdisk_addr} ${fdt_addr_r};
>> -booti ${kernel_addr_r} ${ramdisk_addr} ${fdt_addr_r};
>> +booti ${kernel_addr_r} ${ramdisk_addr} ${booti_fdt_addr};
>>
>>   bootz ${kernel_addr_r} - ${fdt_addr_r};
>> -booti ${kernel_addr_r} - ${fdt_addr_r};
>> +booti ${kernel_addr_r} - ${booti_fdt_addr};
>>
>>   # Recompile with:
>>   # mkimage -C none -A arm -T script -d /boot/boot.cmd /boot/boot.scr
>> -- 
>> 2.40.1
>>
>>

  reply	other threads:[~2024-06-04 12:40 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-05-20 12:17 Craig Setera
2024-05-23 17:01 ` Michael Tremer
2024-06-04 12:40   ` Craig Setera [this message]
2024-06-10 16:42     ` Michael Tremer
2024-06-11  0:10       ` Craig Setera
2024-06-16 15:28         ` Craig Setera
2024-09-22 20:01           ` Craig Setera

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=5bcde842-d2f4-471d-a641-ef7faa0f401c@setera.org \
    --to=craigjunk@setera.org \
    --cc=development@lists.ipfire.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox