Skip to content
Merged
Show file tree
Hide file tree
Changes from 19 commits
Commits
Show all changes
20 commits
Select commit Hold shift + click to select a range
4130f7c
EEPROM config: Update POWER_OFF_ON_HALT defaults
timg236 Nov 25, 2024
c007ae3
eeprom config: Add documentation for NETWORK_INSTALL_AT_POWER_ON
timg236 Nov 25, 2024
df051e6
config.txt: Add documentation for enable_rp1_uart
timg236 Nov 25, 2024
53d7721
rpi-eeprom-update: Indicate that this is supported on CM5 / Pi500
timg236 Nov 25, 2024
4085a07
initial-turbo: Add a note indicating that the default is changing to …
timg236 Nov 25, 2024
4b5ecb5
overclocking: The SHIFT key override is going - remove this from over…
timg236 Nov 25, 2024
66d3608
Update documentation/asciidoc/computers/raspberry-pi/eeprom-bootloade…
nathan-contino Nov 25, 2024
ff80aa7
Update documentation/asciidoc/computers/raspberry-pi/eeprom-bootloade…
nathan-contino Nov 25, 2024
600f130
Update documentation/asciidoc/computers/config_txt/overclocking.adoc
nathan-contino Nov 25, 2024
91ce7b8
Update documentation/asciidoc/computers/config_txt/overclocking.adoc
nathan-contino Nov 25, 2024
71898df
Update documentation/asciidoc/computers/raspberry-pi/boot-eeprom.adoc
nathan-contino Nov 25, 2024
05e9220
Update documentation/asciidoc/computers/raspberry-pi/eeprom-bootloade…
nathan-contino Nov 25, 2024
8fb2964
Update documentation/asciidoc/computers/raspberry-pi/eeprom-bootloade…
nathan-contino Nov 25, 2024
af1e364
Update documentation/asciidoc/computers/raspberry-pi/eeprom-bootloade…
nathan-contino Nov 25, 2024
2b67806
Apply suggestions from code review
nathan-contino Nov 25, 2024
d96c178
Update documentation/asciidoc/computers/raspberry-pi/eeprom-bootloade…
nathan-contino Nov 26, 2024
a3a4b55
Apply suggestions from code review
nathan-contino Nov 26, 2024
6ca9f97
Update documentation/asciidoc/computers/raspberry-pi/eeprom-bootloade…
nathan-contino Nov 26, 2024
95603a7
Adopt consistent, terse, clear model references
nathan-contino Nov 26, 2024
b19a43e
Apply little birdie suggestions
nathan-contino Nov 26, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 8 additions & 0 deletions documentation/asciidoc/computers/config_txt/boot.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -154,6 +154,14 @@ Not relevant on Raspberry Pi 5 because there is no `start.elf` file.

Default: `0x0`

[[enable_rp1_uart]]
==== `enable_rp1_uart`

When set to `1`, firmware initialises RP1 UART0 to 115200bps and doesn't reset RP1 before starting the OS (separately configurable using `pciex4_reset=1`).
This makes it easier to get UART output on the 40-pin header in early boot-code, for instance during bare-metal debug.

Default: `0x0`

[[pciex4_reset]]
==== `pciex4_reset`

Expand Down
13 changes: 11 additions & 2 deletions documentation/asciidoc/computers/config_txt/overclocking.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -60,7 +60,11 @@ WARNING: Setting any overclocking parameters to values other than those used by
| Forces turbo mode frequencies even when the ARM cores are not busy. Enabling this may set the warranty bit if `over_voltage_*` is also set.

| initial_turbo
| Enables https://forums.raspberrypi.com/viewtopic.php?f=29&t=6201&start=425#p180099[turbo mode from boot] for the given value in seconds, or until cpufreq sets a frequency. The maximum value is `60`.
| Enables https://forums.raspberrypi.com/viewtopic.php?f=29&t=6201&start=425#p180099[turbo mode from boot] for the given value in seconds, or until `cpufreq` sets a frequency. The maximum value is `60`. The November 2024 firmware update made the following changes:

* changed the default from `0` to `60` to reduce boot time
* switched the kernel CPU performance governor from `powersave` to `ondemand`


| arm_freq_min
| Minimum value of `arm_freq` used for dynamic frequency clocking. Note that reducing this value below the default does not result in any significant power savings, and is not currently supported.
Expand Down Expand Up @@ -381,4 +385,9 @@ $ vcgencmd pmic_read_adc EXT5V_V

=== Overclocking problems

Most overclocking issues show up immediately with a failure to boot. If this occurs, hold down the `shift` key during the next boot. This will temporarily disable all overclocking, allowing you to boot successfully and then edit your settings.
Most overclocking issues show up immediately, when the device fails to boot. If your device fails to boot due to an overclocking configuration change, use the following steps to return your device to a bootable state:

. Remove any clock frequency overrides from `config.txt`.
. Increase the core voltage using `over_voltage_delta`.
. Re-apply overclocking parameters, taking care to avoid the previous known-bad overclocking parameters.

13 changes: 11 additions & 2 deletions documentation/asciidoc/computers/raspberry-pi/boot-eeprom.adoc
Original file line number Diff line number Diff line change
@@ -1,6 +1,12 @@
== Raspberry Pi boot EEPROM

Raspberry Pi 5, Raspberry Pi 4, 400, Compute Module 4, and Compute Module 4S computers use an EEPROM to boot the system. All other models of Raspberry Pi computer use the `bootcode.bin` file located in the boot filesystem.
The following Raspberry Pi models use an EEPROM to boot the system:

* Flagship models since 4
* Compute Module models since 4 (including Compute Module 4S)
* Keyboard models since 400

All other models of Raspberry Pi computer use the `bootcode.bin` file located in the boot filesystem.

NOTE: You can find the scripts and pre-compiled binaries used to create `rpi-eeprom` in the https://github.com/raspberrypi/rpi-eeprom/[rpi-eeprom GitHub repository].

Expand All @@ -13,10 +19,13 @@ If an error occurs during boot, then an xref:configuration.adoc#led-warning-flas

There are multiple ways to update the bootloader of your Raspberry Pi.

==== Raspberry Pi 5, Raspberry Pi 4 and Raspberry Pi 400
==== Flagship models since 4; Compute Modules since 5; Keyboard models since 400

Raspberry Pi OS automatically updates the bootloader for important bug fixes. To manually update the bootloader or change the boot order, use xref:configuration.adoc#raspi-config[raspi-config].

NOTE: Compute Module 4 and Compute Module 4S do not support automatic bootloader updates because the bootrom cannot load the `recovery.bin` file from eMMC.
The recommended update mechanism is `rpiboot` or via `flashrom` - see `rpi-eeprom-update -h` for more information.

[[imager]]
==== Use Raspberry Pi Imager to update the bootloader

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -47,7 +47,7 @@ Default: `115200`

If `1` then `sudo halt` will run in a lower power mode until either GPIO3 or GLOBAL_EN are shorted to ground.

This setting is not relevant on Raspberry Pi 5 because the xref:raspberry-pi.adoc#power-button[dedicated power button] may always be used to wakeup from `HALT` or `STANDBY`.
This setting is not relevant on Flagship models since 5, Compute Modules since 5, and Keyboard models since 500 because the xref:raspberry-pi.adoc#power-button[dedicated power button] may always be used to wake from `HALT` or `STANDBY`.

Default: `1`

Expand All @@ -60,7 +60,7 @@ Raspberry Pi 400 has a dedicated power button which operates even if the process

On Raspberry Pi 5 this places the PMIC in `STANDBY` mode where all outputs are switched off. There is no need to set `WAKE_ON_GPIO` and pressing the xref:raspberry-pi.adoc#power-button[dedicated power button] will boot the device.

Default: `0`
Default: `1` on Compute Modules since 5 and Keyboard models since 400; otherwise `0`

[[BOOT_ORDER]]
==== `BOOT_ORDER`
Expand Down Expand Up @@ -398,7 +398,22 @@ This setting is ignored and network install is disabled if `DISABLE_HDMI=1` is s

In order to detect the keyboard, network install must initialise the USB controller and enumerate devices. This increases boot time by approximately 1 second so it may be advantageous to disable network install in some embedded applications.

Default: `1` on Raspberry Pi 4 and Raspberry Pi 400, and `0` on Compute Module 4.
Default: `1` on Flagship models since 4 and Keyboard models since 400; `0` on Compute Modules since 4 (including Compute Module 4S).

[[NET_INSTALL_AT_POWER_ON]]
==== `NET_INSTALL_AT_POWER_ON`

When set to `1`, displays the network install UI briefly after a cold boot to make this feature more obvious to new users. Overrides `NET_INSTALL_ENABLED` if the settings conflict.

The default bootloader images set this value to `1` in the bootloader config. To disable the brief network install UI display, use the `Advanced Options` menu in `raspi-config` or manually delete this line in `rpi-eeprom-config`:

[source,console]
----
$ sudo rpi-eeprom-config --edit
----


Default: `0`

[[NET_INSTALL_KEYBOARD_WAIT]]
==== `NET_INSTALL_KEYBOARD_WAIT`
Expand Down