Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 2 Dec 2024 13:43:34 -0800
From:      Mark Millard <marklmi@yahoo.com>
To:        "Bjoern A. Zeeb" <bzeeb-lists@lists.zabbadoz.net>
Cc:        freebsd-arm@freebsd.org
Subject:   Re: Raspbery Pi support (release notes/wiki page) update?
Message-ID:  <68B36F4A-76AD-4CEC-ACBA-3EEF6863BB04@yahoo.com>
In-Reply-To: <7sp0np90-0rnn-n327-qps0-358493p411rs@yvfgf.mnoonqbm.arg>
References:  <668r286o-584q-616o-5nq3-0233r3259qsr@yvfgf.mnoonqbm.arg> <E4887386-91C4-4B59-A119-D11C14F4991B@yahoo.com> <7sp0np90-0rnn-n327-qps0-358493p411rs@yvfgf.mnoonqbm.arg>

next in thread | previous in thread | raw e-mail | index | archive | help
On Dec 2, 2024, at 12:43, Bjoern A. Zeeb =
<bzeeb-lists@lists.zabbadoz.net> wrote:

> On Wed, 27 Nov 2024, Mark Millard wrote:
>=20
> I assume that all also means there's no way on FreeBSD to update the
> eeprom contents on the RPi4/5[1] (contents replaced the bootcode.bin =
on
> older PIs.)

I update the EEPROM's via booting a standard RaspiOS64 (my =
abbreviation).
That includes updating some defaults/definitions that can be stored in
the EEPROM. (For example, I enable more debug output than is the
default. That includes enabling BOOT_UART .)

There are commands like: sudo -E rpi-eeprom-config --edit

I'm  not aware of FreeBSD having any such software, even via the ports
tree.

However, the description of the command is:

QUOTE
Editing the current bootloader configuration
The following command loads the current bootloader configuration into a =
text editor. When the editor is closed, rpi-eeprom-configapplies the =
updated configuration to latest available bootloader release and uses =
rpi-eeprom-update to schedule an update when the system is rebooted:
END QUOTE

In essence doing a (after the edit): sudo rpi-eeprom-update -a

I do not have the references handy, but as I remember, this puts a
file in the msdosfs that, if found at (re)boot, is automatically
used to do the EEPROM update, well before U-boot is involved.

So: putting a correctly formed file in the right place with the
right name for a reboot to pick up is basic to the EEPROM update
operation.

The EEPROM contains the bootloader. The RPi5B has less that goes
in the msdosfs (on the microsd card I use to boot the RPi5 via
a separate USB3 drive):

# find /RPi5-edk2/ -print
/RPi5-edk2/
/RPi5-edk2/RPI_EFI.fd
/RPi5-edk2/config.txt
/RPi5-edk2/bcm2712-rpi-5-b.dtb

Nothing analogous to start4*.elf or fixup4*.dat is involved.

# more /RPi5-edk2/config.txt
armstub=3DRPI_EFI.fd
device_tree_address=3D0x1f0000
device_tree_end=3D0x210000

# Force 32 bpp framebuffer allocation.
framebuffer_depth=3D32

# Disable compensation for displays with overscan.
disable_overscan=3D1

# Force maximum USB power regardless of the power supply.
usb_max_current_enable=3D1

# Force maximum CPU speed.
force_turbo=3D1

#
# Local additions:
enable_uart=3D1
uart_2ndstage=3D1
dtdebug=3D1
disable_commandline_tags=3D1
#
[pi5]
over_voltage_delta=3D100000
arm_freq=3D2600
[all]

> /bz
>=20
>=20
> [1] https://github.com/raspberrypi/rpi-eeprom/tree/master/

Releases: https://github.com/raspberrypi/rpi-eeprom/releases

Tagged: https://github.com/raspberrypi/rpi-eeprom/tags

(More is tagged than is eventually declared to also be a
release.)

=3D=3D=3D
Mark Millard
marklmi at yahoo.com




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?68B36F4A-76AD-4CEC-ACBA-3EEF6863BB04>