mirror of
https://github.com/raspberrypi/rpi-eeprom.git
synced 2026-01-20 21:13:36 +08:00
Compare commits
494 Commits
v2025.05.0
...
pios/bookw
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
e5ff794cb3 | ||
|
|
879e0fe4e1 | ||
|
|
c6a755543e | ||
|
|
291e4c2f36 | ||
|
|
e7504bafda | ||
|
|
32f795a171 | ||
|
|
8cf60ddf72 | ||
|
|
474c5161a8 | ||
|
|
11403637b1 | ||
|
|
14b22f02bc | ||
|
|
229347e811 | ||
|
|
182cdabfe0 | ||
|
|
24a4ec1a23 | ||
|
|
2164519657 | ||
|
|
b818b44bd5 | ||
|
|
430834f34b | ||
|
|
dc781dbbf1 | ||
|
|
8fb396f650 | ||
|
|
bf2cf02a75 | ||
|
|
d3e5fd6088 | ||
|
|
360324a17e | ||
|
|
f45ed23714 | ||
|
|
581437bcee | ||
|
|
1793f5c4ba | ||
|
|
f60fde9ef0 | ||
|
|
f55714097c | ||
|
|
7afa893027 | ||
|
|
796f883413 | ||
|
|
513ab6e11c | ||
|
|
4ee3f273eb | ||
|
|
6f692d1d7b | ||
|
|
a9ad05065b | ||
|
|
c1f7a442fb | ||
|
|
8b706a433e | ||
|
|
2349daafac | ||
|
|
0b8a0229df | ||
|
|
98b77d5fdd | ||
|
|
fb562ab467 | ||
|
|
37ee92a8b6 | ||
|
|
dd984a26db | ||
|
|
0f9da57ffe | ||
|
|
ab4c1994f3 | ||
|
|
54f04c2209 | ||
|
|
20deeae5ea | ||
|
|
1721eb42b7 | ||
|
|
78eeb6dd9c | ||
|
|
0acbade983 | ||
|
|
df532a02dc | ||
|
|
cced8070ae | ||
|
|
e0e5d306cc | ||
|
|
fd7c832383 | ||
|
|
fac42a0d86 | ||
|
|
0f6920518f | ||
|
|
d3cf658934 | ||
|
|
6cf695fe4a | ||
|
|
e5a60491d0 | ||
|
|
378757f65f | ||
|
|
066d4aaa55 | ||
|
|
b08dff7e46 | ||
|
|
47a53c5da0 | ||
|
|
be49816e0d | ||
|
|
b8145be1e8 | ||
|
|
6632e03362 | ||
|
|
0a2a66e7ef | ||
|
|
93db7656ed | ||
|
|
bf38a865db | ||
|
|
71f8ccf492 | ||
|
|
58d416aa5e | ||
|
|
7d0ad4ce30 | ||
|
|
66eff91147 | ||
|
|
3fb1c0c0e9 | ||
|
|
6e6e43beee | ||
|
|
31536e5e69 | ||
|
|
e47a6d0f39 | ||
|
|
3e3a300112 | ||
|
|
d56e7df8fd | ||
|
|
c24baba79b | ||
|
|
9fa4f3a305 | ||
|
|
50d7bfcf82 | ||
|
|
edaf573aa7 | ||
|
|
0d01853f0c | ||
|
|
4d5509905d | ||
|
|
e96dc2959e | ||
|
|
dec53254f7 | ||
|
|
fe957abe8b | ||
|
|
1d4643c524 | ||
|
|
78f8722a84 | ||
|
|
6a2e95fefa | ||
|
|
b888a5b047 | ||
|
|
011f8fb4bb | ||
|
|
170c73efd9 | ||
|
|
d8c0c6b42b | ||
|
|
c3e0e577f6 | ||
|
|
d6894c6d00 | ||
|
|
bf14996005 | ||
|
|
99d17bb351 | ||
|
|
df2563e1e5 | ||
|
|
e5a1ee09c7 | ||
|
|
c59d44d0a3 | ||
|
|
51d856b350 | ||
|
|
844855640b | ||
|
|
6b1c4bb978 | ||
|
|
c34a9c0828 | ||
|
|
75a45aa4fc | ||
|
|
f3c1988c7a | ||
|
|
de5e984a77 | ||
|
|
01300506bf | ||
|
|
02c0428e7b | ||
|
|
76573089b7 | ||
|
|
710580bbaa | ||
|
|
94975aafb5 | ||
|
|
5d41175800 | ||
|
|
3a8b80ee0b | ||
|
|
c7658a19f2 | ||
|
|
4585ebdc0a | ||
|
|
7e908109a3 | ||
|
|
c4b029089f | ||
|
|
c4d503b88c | ||
|
|
632e65e134 | ||
|
|
42d288c257 | ||
|
|
8739ef96e4 | ||
|
|
2f7030ee22 | ||
|
|
0046d3941c | ||
|
|
a09b35c870 | ||
|
|
992f3fb0b3 | ||
|
|
8cd9896ba8 | ||
|
|
f122827d6c | ||
|
|
96258785a1 | ||
|
|
e7cee69bb6 | ||
|
|
085e75b694 | ||
|
|
4f5510dc73 | ||
|
|
2fac89abe8 | ||
|
|
63ede72e59 | ||
|
|
92a2450668 | ||
|
|
fd6df81db8 | ||
|
|
6f48dadbb4 | ||
|
|
a11e669b69 | ||
|
|
bf2ab1e871 | ||
|
|
49c6b2e25e | ||
|
|
8017139175 | ||
|
|
14e163492a | ||
|
|
511be7d634 | ||
|
|
cfac3b1c05 | ||
|
|
f7ae2b74c6 | ||
|
|
d8a906b2ec | ||
|
|
004eff1c6c | ||
|
|
b772afdcc0 | ||
|
|
92c0d6a8d2 | ||
|
|
9c846c644e | ||
|
|
28c6d7a4ed | ||
|
|
747a305500 | ||
|
|
c0d6e72c9f | ||
|
|
76e81fe75e | ||
|
|
f085216c6f | ||
|
|
facc1d3445 | ||
|
|
acbc140dc6 | ||
|
|
90c3493b59 | ||
|
|
d31cbd4cf0 | ||
|
|
3956274f7e | ||
|
|
599c46610c | ||
|
|
b458901cc3 | ||
|
|
42fb39f195 | ||
|
|
c1c47595ec | ||
|
|
0a3279d9e3 | ||
|
|
35dc9029c8 | ||
|
|
1b2c5bc78d | ||
|
|
08f78e2212 | ||
|
|
3837885743 | ||
|
|
69745e358f | ||
|
|
d9a701a0e9 | ||
|
|
e1407d0aef | ||
|
|
4724650481 | ||
|
|
30cd0ee211 | ||
|
|
3711f1dc68 | ||
|
|
b188db754d | ||
|
|
cce05ef164 | ||
|
|
0081ab61f6 | ||
|
|
8e1556ced0 | ||
|
|
1ed15f6a6b | ||
|
|
01fbee207f | ||
|
|
c4aed73f9b | ||
|
|
0aa28e2188 | ||
|
|
622f1a874f | ||
|
|
3e0e3f1cce | ||
|
|
bb78e2b97a | ||
|
|
0824709e1f | ||
|
|
5cec593ab6 | ||
|
|
bcdc1d8c7f | ||
|
|
5712be7916 | ||
|
|
84bb34fc6d | ||
|
|
d707bce7e1 | ||
|
|
01d04bb5e2 | ||
|
|
0631069e2c | ||
|
|
1011a20689 | ||
|
|
1d04bec2f4 | ||
|
|
2e09fe3a5f | ||
|
|
f47eb80617 | ||
|
|
13dde9ea1d | ||
|
|
b478ef5c9a | ||
|
|
61165d8849 | ||
|
|
9b378d7eba | ||
|
|
cdab4c140f | ||
|
|
29f6aea57b | ||
|
|
e20802b44d | ||
|
|
b3c9c3ea99 | ||
|
|
7d2003e597 | ||
|
|
54d28a11b8 | ||
|
|
648573029d | ||
|
|
c4785dadd1 | ||
|
|
de1e3e5158 | ||
|
|
5bc881f63f | ||
|
|
c56276de07 | ||
|
|
4cba55dd72 | ||
|
|
a38bfebda8 | ||
|
|
869e6da628 | ||
|
|
3e6a26eec5 | ||
|
|
c79f91ea87 | ||
|
|
03d7ffa27f | ||
|
|
89753a22bf | ||
|
|
bc986b4f6f | ||
|
|
26df1d3b80 | ||
|
|
8127e1a19d | ||
|
|
3ec0475f06 | ||
|
|
1615bb3539 | ||
|
|
628269f1ba | ||
|
|
0d90daa5d0 | ||
|
|
5aac12f320 | ||
|
|
28a6ba5964 | ||
|
|
fcd1348e2b | ||
|
|
2f036ff2ce | ||
|
|
84d10d0f7c | ||
|
|
9208bcec22 | ||
|
|
4a029c0a6b | ||
|
|
e24a71a602 | ||
|
|
b0811f2ac1 | ||
|
|
f4554d8901 | ||
|
|
d768201cf6 | ||
|
|
6abd576d1c | ||
|
|
75f227e0a9 | ||
|
|
c5f158ac89 | ||
|
|
b000718d50 | ||
|
|
727d2d13c6 | ||
|
|
cc2180171e | ||
|
|
513571ac0e | ||
|
|
bd4f0f3244 | ||
|
|
2d86d154d9 | ||
|
|
046f0cebab | ||
|
|
85d6495912 | ||
|
|
79f6a0707d | ||
|
|
398b162dbd | ||
|
|
9154ed5b7d | ||
|
|
c6295d6c1c | ||
|
|
5494946485 | ||
|
|
13d5505338 | ||
|
|
7e78a1f35b | ||
|
|
9808e5597e | ||
|
|
468a43d0d8 | ||
|
|
919e18a74b | ||
|
|
766486cd97 | ||
|
|
b01aa93118 | ||
|
|
dd5dc9d21a | ||
|
|
52c95ae7df | ||
|
|
dc16c83ff9 | ||
|
|
6c34d6d090 | ||
|
|
b42d5e4d6d | ||
|
|
d39640714b | ||
|
|
230a4b19f8 | ||
|
|
3f6ed502cf | ||
|
|
ada1bfacca | ||
|
|
4bdea13a50 | ||
|
|
701268b6b1 | ||
|
|
e44626199a | ||
|
|
753d0f67f7 | ||
|
|
41cec6a12c | ||
|
|
cb46a4fb04 | ||
|
|
11f64b78a1 | ||
|
|
cad484f162 | ||
|
|
1982e92e03 | ||
|
|
1c08eef4b4 | ||
|
|
2682b1761e | ||
|
|
d10159340a | ||
|
|
a1a83158c8 | ||
|
|
7d51450d32 | ||
|
|
75ee452cf1 | ||
|
|
9ddb00b283 | ||
|
|
e942031a37 | ||
|
|
0e9c19c16d | ||
|
|
1b5892f343 | ||
|
|
7e9a43e85d | ||
|
|
4a57ec4367 | ||
|
|
4ff112ab50 | ||
|
|
b02180d3fc | ||
|
|
19835ec357 | ||
|
|
61bd307964 | ||
|
|
bb358e9c16 | ||
|
|
9bf449db68 | ||
|
|
d31e83585c | ||
|
|
d20f92a8d3 | ||
|
|
ddcc24a8c7 | ||
|
|
eec75aa62d | ||
|
|
c60fbe6252 | ||
|
|
66f7d19543 | ||
|
|
6ec3d283d5 | ||
|
|
3b91c0d31b | ||
|
|
d0a5b9d841 | ||
|
|
ebf3885910 | ||
|
|
7752e11dac | ||
|
|
3b34f6a6e5 | ||
|
|
483d5e2c13 | ||
|
|
c26edeeb78 | ||
|
|
56cacb9868 | ||
|
|
08f6b038f0 | ||
|
|
798ceb42fe | ||
|
|
92c92e47d7 | ||
|
|
7422c6e08f | ||
|
|
5cefd12f37 | ||
|
|
d051be77c3 | ||
|
|
3189cd232a | ||
|
|
fdb646098f | ||
|
|
32bf528afb | ||
|
|
34fd9816ee | ||
|
|
42b040fbf7 | ||
|
|
561811a6bd | ||
|
|
d998047a20 | ||
|
|
fa580406b0 | ||
|
|
efe40b9d0a | ||
|
|
2ceb6c6864 | ||
|
|
6dce143fd5 | ||
|
|
1149e87cb2 | ||
|
|
dc47b0324e | ||
|
|
a580a0eb53 | ||
|
|
5fb3433ab8 | ||
|
|
7dbceba4cb | ||
|
|
1624d3d16a | ||
|
|
e165f3f064 | ||
|
|
baae3de8bd | ||
|
|
db5a38bc40 | ||
|
|
263471ad1e | ||
|
|
8b1d2f1a43 | ||
|
|
ad6dbb7bfa | ||
|
|
443bb7d07d | ||
|
|
9e929e4389 | ||
|
|
1c6e9ab50a | ||
|
|
2a7312a916 | ||
|
|
4f6587ce48 | ||
|
|
63abda5f02 | ||
|
|
603c49604f | ||
|
|
57a93ebc29 | ||
|
|
e94a33b2a4 | ||
|
|
f1c703fd2a | ||
|
|
03a2ca1077 | ||
|
|
3b9c1727b0 | ||
|
|
285c347c74 | ||
|
|
c8d36c50e9 | ||
|
|
42a5012d61 | ||
|
|
b1841526e1 | ||
|
|
c3996d6bfa | ||
|
|
067a4b8509 | ||
|
|
12a34c03ad | ||
|
|
3012c95b5d | ||
|
|
8e1978da8a | ||
|
|
e7006e0405 | ||
|
|
6c5c406370 | ||
|
|
384143b035 | ||
|
|
0732ea9932 | ||
|
|
3cd4b49653 | ||
|
|
503281424e | ||
|
|
df247a83da | ||
|
|
4330c5a48d | ||
|
|
d9b9162d9e | ||
|
|
f192c2dbb9 | ||
|
|
8b43c37328 | ||
|
|
81655ac6fb | ||
|
|
7eb51b9e2a | ||
|
|
92fa4238d2 | ||
|
|
3bef91bcc6 | ||
|
|
c9dd9417fb | ||
|
|
ef0663db3f | ||
|
|
21c424b530 | ||
|
|
e0278c597b | ||
|
|
10b01cf8cf | ||
|
|
e377c1663c | ||
|
|
9829d2a24b | ||
|
|
90361b07a3 | ||
|
|
26d2b501f9 | ||
|
|
c076693a95 | ||
|
|
23aeb554d7 | ||
|
|
99980543ad | ||
|
|
21b7cbb99e | ||
|
|
0d4f3c6fac | ||
|
|
c4d2c622aa | ||
|
|
705cb0b304 | ||
|
|
9e25cf8655 | ||
|
|
f9161a6650 | ||
|
|
ef26c360f8 | ||
|
|
7d86f6d620 | ||
|
|
eac62ea9ad | ||
|
|
31e6871004 | ||
|
|
65438435ae | ||
|
|
ea5dff5a3b | ||
|
|
05aaf56e47 | ||
|
|
ee0bce14b8 | ||
|
|
2321aa5d9f | ||
|
|
ff8fe8d221 | ||
|
|
52b4142fd7 | ||
|
|
89362319c7 | ||
|
|
ea1b69d350 | ||
|
|
18650c2af9 | ||
|
|
d78fcd8da6 | ||
|
|
d6abc5742f | ||
|
|
b8254d04a4 | ||
|
|
f43f02687e | ||
|
|
3f6ef59385 | ||
|
|
399e9b3f56 | ||
|
|
781490e7aa | ||
|
|
cc7cc894ea | ||
|
|
4a82077519 | ||
|
|
35f3fa4d37 | ||
|
|
8ed4d192d4 | ||
|
|
e4213b443d | ||
|
|
52273c8c38 | ||
|
|
c004d688b6 | ||
|
|
5ef2488f1a | ||
|
|
c1d167fb8a | ||
|
|
08bd400696 | ||
|
|
fd3b2622c9 | ||
|
|
f7cc67dab2 | ||
|
|
c33475c586 | ||
|
|
601f478340 | ||
|
|
035876b28b | ||
|
|
0037b56bc2 | ||
|
|
fca5c63a40 | ||
|
|
0ea79a647b | ||
|
|
ce4939cbda | ||
|
|
7caf9b880b | ||
|
|
c53d68ced0 | ||
|
|
c7fcf86cf2 | ||
|
|
e04b5722fe | ||
|
|
c551c9f098 | ||
|
|
eb77ac9432 | ||
|
|
03c6bb2ab9 | ||
|
|
0dcba721e8 | ||
|
|
37c29eb046 | ||
|
|
d285e48996 | ||
|
|
9262772059 | ||
|
|
9bf0332fee | ||
|
|
4d7663d2fc | ||
|
|
bc933877bd | ||
|
|
69f89ac00f | ||
|
|
e31833a78a | ||
|
|
84fc868161 | ||
|
|
f34b155153 | ||
|
|
7c5619a011 | ||
|
|
dabc9da0c3 | ||
|
|
6da443b5db | ||
|
|
fa6bbda372 | ||
|
|
685e2e0012 | ||
|
|
bd0b1e90d1 | ||
|
|
d17236c074 | ||
|
|
9df7ba2e3a | ||
|
|
c8c94f90ef | ||
|
|
ef13e63056 | ||
|
|
bd1340351e | ||
|
|
837a62d314 | ||
|
|
d186fdd1fe | ||
|
|
d653efa74f | ||
|
|
2a6e2c0bf8 | ||
|
|
b3d30efa59 | ||
|
|
acf47682db | ||
|
|
46f07e84d1 | ||
|
|
645b09e730 | ||
|
|
439192768c | ||
|
|
34e9183a26 | ||
|
|
549589f692 | ||
|
|
ef35796474 | ||
|
|
f7c2b2fb50 | ||
|
|
9aea989324 | ||
|
|
f5fa493b8c | ||
|
|
4c5cf761a6 | ||
|
|
46473bd4a7 | ||
|
|
6a085f7bcc | ||
|
|
8c3981e7cd | ||
|
|
d2ce054968 | ||
|
|
52f02d17de | ||
|
|
20e068b8a7 | ||
|
|
5b35f0d214 | ||
|
|
c5da8807c1 | ||
|
|
66b7149d86 | ||
|
|
570c1626dc | ||
|
|
55ec087893 | ||
|
|
7e1fd070ff | ||
|
|
a528e7a360 | ||
|
|
05f056c682 | ||
|
|
c7fbd48d1f |
9
debian/.gitignore
vendored
Normal file
9
debian/.gitignore
vendored
Normal file
@@ -0,0 +1,9 @@
|
||||
.debhelper/
|
||||
debhelper-build-stamp
|
||||
files
|
||||
rpi-eeprom/
|
||||
rpi-eeprom-images/
|
||||
*.debhelper.log
|
||||
*.debhelper
|
||||
*.substvars
|
||||
*.1
|
||||
28
debian/LICENCE.bootloader
vendored
Normal file
28
debian/LICENCE.bootloader
vendored
Normal file
@@ -0,0 +1,28 @@
|
||||
Copyright (c) 2019, Raspberry Pi (Trading) Ltd.
|
||||
All rights reserved.
|
||||
|
||||
Redistribution. Redistribution and use in binary form, without
|
||||
modification, are permitted provided that the following conditions are
|
||||
met:
|
||||
|
||||
* This software may only be used for the purposes of developing for,
|
||||
running or using a Raspberry Pi device.
|
||||
* Redistributions must reproduce the above copyright notice and the
|
||||
following disclaimer in the documentation and/or other materials
|
||||
provided with the distribution.
|
||||
* Neither the name of the copyright holder nor the names of its
|
||||
contributors may be used to endorse or promote products derived
|
||||
from this software without specific prior written permission.
|
||||
|
||||
DISCLAIMER. THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND
|
||||
CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING,
|
||||
BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND
|
||||
FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
|
||||
COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
|
||||
INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
|
||||
BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
|
||||
OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
|
||||
ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR
|
||||
TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE
|
||||
USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
|
||||
DAMAGE.
|
||||
1831
debian/changelog
vendored
Normal file
1831
debian/changelog
vendored
Normal file
File diff suppressed because it is too large
Load Diff
29
debian/control
vendored
Normal file
29
debian/control
vendored
Normal file
@@ -0,0 +1,29 @@
|
||||
Source: rpi-eeprom
|
||||
Section: misc
|
||||
Priority: optional
|
||||
Maintainer: Tim Gover <tim.gover@raspberrypi.com>
|
||||
Build-Depends: debhelper-compat (= 12), help2man, python3-minimal
|
||||
Standards-Version: 4.6.2
|
||||
Homepage: https://github.com/raspberrypi/rpi-eeprom/
|
||||
Vcs-Browser: https://github.com/raspberrypi/rpi-eeprom/
|
||||
Vcs-Git: https://github.com/raspberrypi/rpi-eeprom.git
|
||||
|
||||
Package: rpi-eeprom
|
||||
Architecture: all
|
||||
Depends: ${shlibs:Depends}, ${misc:Depends}, raspi-utils, python3,
|
||||
binutils, pciutils, python3-pycryptodome
|
||||
Breaks: rpi-eeprom-images (<<7.2)
|
||||
Replaces: rpi-eeprom-images (<<7.2)
|
||||
Recommends: flashrom
|
||||
Provides: rpi-eeprom-images
|
||||
Description: Raspberry Pi 4/5 boot EEPROM updater
|
||||
Checks whether the Raspberry Pi bootloader EEPROM is up-to-date and updates
|
||||
the EEPROM.
|
||||
|
||||
Package: rpi-eeprom-images
|
||||
Architecture: all
|
||||
Depends: ${misc:Depends}, rpi-eeprom (>=7.2)
|
||||
Priority: optional
|
||||
Section: oldlibs
|
||||
Description: transitional package
|
||||
This is a transitional package. It can safely be removed.
|
||||
1
debian/copyright
vendored
Symbolic link
1
debian/copyright
vendored
Symbolic link
@@ -0,0 +1 @@
|
||||
../LICENSE
|
||||
1
debian/default/rpi-eeprom-update
vendored
Normal file
1
debian/default/rpi-eeprom-update
vendored
Normal file
@@ -0,0 +1 @@
|
||||
FIRMWARE_RELEASE_STATUS="default"
|
||||
3
debian/gbp.conf
vendored
Normal file
3
debian/gbp.conf
vendored
Normal file
@@ -0,0 +1,3 @@
|
||||
[DEFAULT]
|
||||
upstream-tree = master
|
||||
debian-branch = pios/bookworm
|
||||
1
debian/rpi-eeprom.docs
vendored
Normal file
1
debian/rpi-eeprom.docs
vendored
Normal file
@@ -0,0 +1 @@
|
||||
debian/LICENCE.bootloader
|
||||
26
debian/rpi-eeprom.install
vendored
Normal file
26
debian/rpi-eeprom.install
vendored
Normal file
@@ -0,0 +1,26 @@
|
||||
rpi-eeprom-config usr/bin/
|
||||
rpi-eeprom-update usr/bin/
|
||||
rpi-eeprom-digest usr/bin/
|
||||
tools/rpi-bootloader-key-convert usr/bin/
|
||||
tools/rpi-otp-private-key usr/bin/
|
||||
tools/rpi-sign-bootcode usr/bin/
|
||||
|
||||
debian/default/ etc/
|
||||
|
||||
firmware-2711/default usr/lib/firmware/raspberrypi/bootloader-2711/
|
||||
firmware-2711/latest usr/lib/firmware/raspberrypi/bootloader-2711/
|
||||
|
||||
firmware-2711/critical usr/lib/firmware/raspberrypi/bootloader-2711/
|
||||
firmware-2711/stable usr/lib/firmware/raspberrypi/bootloader-2711/
|
||||
firmware-2711/beta usr/lib/firmware/raspberrypi/bootloader-2711/
|
||||
|
||||
firmware-2711/release-notes.md usr/lib/firmware/raspberrypi/bootloader-2711/
|
||||
|
||||
firmware-2712/default usr/lib/firmware/raspberrypi/bootloader-2712/
|
||||
firmware-2712/latest usr/lib/firmware/raspberrypi/bootloader-2712/
|
||||
|
||||
firmware-2712/critical usr/lib/firmware/raspberrypi/bootloader-2712/
|
||||
firmware-2712/stable usr/lib/firmware/raspberrypi/bootloader-2712/
|
||||
firmware-2712/beta usr/lib/firmware/raspberrypi/bootloader-2712/
|
||||
|
||||
firmware-2712/release-notes.md usr/lib/firmware/raspberrypi/bootloader-2712/
|
||||
2
debian/rpi-eeprom.maintscript
vendored
Normal file
2
debian/rpi-eeprom.maintscript
vendored
Normal file
@@ -0,0 +1,2 @@
|
||||
dir_to_symlink /lib/firmware/raspberrypi/bootloader-2711/beta latest 17.0+pi5+1-1
|
||||
dir_to_symlink /lib/firmware/raspberrypi/bootloader-2712/beta latest 17.0+pi5+1-1
|
||||
2
debian/rpi-eeprom.manpages
vendored
Normal file
2
debian/rpi-eeprom.manpages
vendored
Normal file
@@ -0,0 +1,2 @@
|
||||
debian/rpi-eeprom-update.1
|
||||
debian/rpi-eeprom-config.1
|
||||
39
debian/rpi-eeprom.postinst
vendored
Normal file
39
debian/rpi-eeprom.postinst
vendored
Normal file
@@ -0,0 +1,39 @@
|
||||
#!/bin/sh
|
||||
# postinst script for rpi-eeprom
|
||||
#
|
||||
# see: dh_installdeb(1)
|
||||
|
||||
set -e
|
||||
|
||||
# summary of how this script can be called:
|
||||
# * <postinst> `configure' <most-recently-configured-version>
|
||||
# * <old-postinst> `abort-upgrade' <new version>
|
||||
# * <conflictor's-postinst> `abort-remove' `in-favour' <package>
|
||||
# <new-version>
|
||||
# * <postinst> `abort-remove'
|
||||
# * <deconfigured's-postinst> `abort-deconfigure' `in-favour'
|
||||
# <failed-install-package> <version> `removing'
|
||||
# <conflicting-package> <version>
|
||||
# for details, see https://www.debian.org/doc/debian-policy/ or
|
||||
# the debian-policy package
|
||||
|
||||
|
||||
case "$1" in
|
||||
configure)
|
||||
;;
|
||||
|
||||
abort-upgrade|abort-remove|abort-deconfigure)
|
||||
;;
|
||||
|
||||
*)
|
||||
echo "postinst called with unknown argument \`$1'" >&2
|
||||
exit 1
|
||||
;;
|
||||
esac
|
||||
|
||||
# dh_installdeb will replace this with shell code automatically
|
||||
# generated by other debhelper scripts.
|
||||
|
||||
#DEBHELPER#
|
||||
|
||||
exit 0
|
||||
40
debian/rpi-eeprom.postrm
vendored
Normal file
40
debian/rpi-eeprom.postrm
vendored
Normal file
@@ -0,0 +1,40 @@
|
||||
#!/bin/sh
|
||||
# postrm script for rpi-eeprom
|
||||
#
|
||||
# see: dh_installdeb(1)
|
||||
|
||||
set -e
|
||||
|
||||
# summary of how this script can be called:
|
||||
# * <postrm> `remove'
|
||||
# * <postrm> `purge'
|
||||
# * <old-postrm> `upgrade' <new-version>
|
||||
# * <new-postrm> `failed-upgrade' <old-version>
|
||||
# * <new-postrm> `abort-install'
|
||||
# * <new-postrm> `abort-install' <old-version>
|
||||
# * <new-postrm> `abort-upgrade' <old-version>
|
||||
# * <disappearer's-postrm> `disappear' <overwriter>
|
||||
# <overwriter-version>
|
||||
# for details, see https://www.debian.org/doc/debian-policy/ or
|
||||
# the debian-policy package
|
||||
|
||||
|
||||
case "$1" in
|
||||
purge)
|
||||
rm -rf /var/lib/raspberrypi/bootloader/backup/
|
||||
;;
|
||||
remove|upgrade|failed-upgrade|abort-install|abort-upgrade|disappear)
|
||||
;;
|
||||
|
||||
*)
|
||||
echo "postrm called with unknown argument \`$1'" >&2
|
||||
exit 1
|
||||
;;
|
||||
esac
|
||||
|
||||
# dh_installdeb will replace this with shell code automatically
|
||||
# generated by other debhelper scripts.
|
||||
|
||||
#DEBHELPER#
|
||||
|
||||
exit 0
|
||||
38
debian/rpi-eeprom.prerm
vendored
Normal file
38
debian/rpi-eeprom.prerm
vendored
Normal file
@@ -0,0 +1,38 @@
|
||||
#!/bin/sh
|
||||
# prerm script for rpi-eeprom
|
||||
#
|
||||
# see: dh_installdeb(1)
|
||||
|
||||
set -e
|
||||
|
||||
# summary of how this script can be called:
|
||||
# * <prerm> `remove'
|
||||
# * <old-prerm> `upgrade' <new-version>
|
||||
# * <new-prerm> `failed-upgrade' <old-version>
|
||||
# * <conflictor's-prerm> `remove' `in-favour' <package> <new-version>
|
||||
# * <deconfigured's-prerm> `deconfigure' `in-favour'
|
||||
# <package-being-installed> <version> `removing'
|
||||
# <conflicting-package> <version>
|
||||
# for details, see https://www.debian.org/doc/debian-policy/ or
|
||||
# the debian-policy package
|
||||
|
||||
|
||||
case "$1" in
|
||||
remove|upgrade|deconfigure)
|
||||
;;
|
||||
|
||||
failed-upgrade)
|
||||
;;
|
||||
|
||||
*)
|
||||
echo "prerm called with unknown argument \`$1'" >&2
|
||||
exit 1
|
||||
;;
|
||||
esac
|
||||
|
||||
# dh_installdeb will replace this with shell code automatically
|
||||
# generated by other debhelper scripts.
|
||||
|
||||
#DEBHELPER#
|
||||
|
||||
exit 0
|
||||
11
debian/rpi-eeprom.rpi-eeprom-update.service
vendored
Normal file
11
debian/rpi-eeprom.rpi-eeprom-update.service
vendored
Normal file
@@ -0,0 +1,11 @@
|
||||
[Unit]
|
||||
Description=Check for Raspberry Pi EEPROM updates
|
||||
After=boot-firmware.mount
|
||||
|
||||
[Service]
|
||||
Type=oneshot
|
||||
RemainAfterExit=true
|
||||
ExecStart=/usr/bin/rpi-eeprom-update -s -a
|
||||
|
||||
[Install]
|
||||
WantedBy=multi-user.target
|
||||
27
debian/rules
vendored
Executable file
27
debian/rules
vendored
Executable file
@@ -0,0 +1,27 @@
|
||||
#!/usr/bin/make -f
|
||||
#export DH_VERBOSE = 1
|
||||
|
||||
include /usr/share/dpkg/pkg-info.mk
|
||||
|
||||
%:
|
||||
dh $@
|
||||
|
||||
override_dh_installsystemd:
|
||||
dh_installsystemd --name=rpi-eeprom-update
|
||||
|
||||
override_dh_auto_build: debian/rpi-eeprom-update.1 debian/rpi-eeprom-config.1
|
||||
|
||||
override_dh_install:
|
||||
mkdir -p debian/rpi-eeprom/var/lib/raspberrypi/bootloader/backup/
|
||||
dh_install
|
||||
|
||||
debian/rpi-eeprom-update.1:
|
||||
help2man -N --version-string="${DEB_VERSION_UPSTREAM}" --help-option="-h" \
|
||||
--name="Checks whether the Raspberry Pi bootloader EEPROM is \
|
||||
up-to-date and updates the EEPROM" \
|
||||
--output=$@ ./rpi-eeprom-update
|
||||
|
||||
debian/rpi-eeprom-config.1:
|
||||
help2man -N --version-string="${DEB_VERSION_UPSTREAM}" --help-option="-h" \
|
||||
--name="Bootloader EEPROM configuration tool for the Raspberry Pi 4/5" \
|
||||
--output=$@ ./rpi-eeprom-config
|
||||
9
debian/salsa-ci.yml
vendored
Normal file
9
debian/salsa-ci.yml
vendored
Normal file
@@ -0,0 +1,9 @@
|
||||
include:
|
||||
- $CI_SERVER_URL/apt/salsa-ci/raw/pios/recipes/pios.yml
|
||||
|
||||
extract-source:
|
||||
variables:
|
||||
GIT_DEPTH: 0
|
||||
GIT_STRATEGY: clone
|
||||
before_script:
|
||||
- git fetch origin master:master
|
||||
1
debian/source/format
vendored
Normal file
1
debian/source/format
vendored
Normal file
@@ -0,0 +1 @@
|
||||
3.0 (quilt)
|
||||
2
debian/source/lintian-overrides
vendored
Normal file
2
debian/source/lintian-overrides
vendored
Normal file
@@ -0,0 +1,2 @@
|
||||
debian-copyright-is-symlink
|
||||
source-is-missing [tools/vl805]
|
||||
BIN
firmware-2711/default/pieeprom-2025-11-05.bin
Normal file
BIN
firmware-2711/default/pieeprom-2025-11-05.bin
Normal file
Binary file not shown.
Binary file not shown.
BIN
firmware-2711/latest/pieeprom-2025-05-16.bin
Normal file
BIN
firmware-2711/latest/pieeprom-2025-05-16.bin
Normal file
Binary file not shown.
BIN
firmware-2711/latest/pieeprom-2025-07-03.bin
Normal file
BIN
firmware-2711/latest/pieeprom-2025-07-03.bin
Normal file
Binary file not shown.
BIN
firmware-2711/latest/pieeprom-2025-07-17.bin
Normal file
BIN
firmware-2711/latest/pieeprom-2025-07-17.bin
Normal file
Binary file not shown.
BIN
firmware-2711/latest/pieeprom-2025-08-13.bin
Normal file
BIN
firmware-2711/latest/pieeprom-2025-08-13.bin
Normal file
Binary file not shown.
BIN
firmware-2711/latest/pieeprom-2025-08-20.bin
Normal file
BIN
firmware-2711/latest/pieeprom-2025-08-20.bin
Normal file
Binary file not shown.
BIN
firmware-2711/latest/pieeprom-2025-08-27.bin
Normal file
BIN
firmware-2711/latest/pieeprom-2025-08-27.bin
Normal file
Binary file not shown.
BIN
firmware-2711/latest/pieeprom-2025-09-22.bin
Normal file
BIN
firmware-2711/latest/pieeprom-2025-09-22.bin
Normal file
Binary file not shown.
BIN
firmware-2711/latest/pieeprom-2025-09-23.bin
Normal file
BIN
firmware-2711/latest/pieeprom-2025-09-23.bin
Normal file
Binary file not shown.
BIN
firmware-2711/latest/pieeprom-2025-10-03.bin
Normal file
BIN
firmware-2711/latest/pieeprom-2025-10-03.bin
Normal file
Binary file not shown.
BIN
firmware-2711/latest/pieeprom-2025-10-08.bin
Normal file
BIN
firmware-2711/latest/pieeprom-2025-10-08.bin
Normal file
Binary file not shown.
BIN
firmware-2711/latest/pieeprom-2025-10-14.bin
Normal file
BIN
firmware-2711/latest/pieeprom-2025-10-14.bin
Normal file
Binary file not shown.
BIN
firmware-2711/latest/pieeprom-2025-11-05.bin
Normal file
BIN
firmware-2711/latest/pieeprom-2025-11-05.bin
Normal file
Binary file not shown.
Binary file not shown.
BIN
firmware-2711/old/critical/pieeprom-2025-05-08.bin
Normal file
BIN
firmware-2711/old/critical/pieeprom-2025-05-08.bin
Normal file
Binary file not shown.
BIN
firmware-2711/old/stable/pieeprom-2025-05-08.bin
Normal file
BIN
firmware-2711/old/stable/pieeprom-2025-05-08.bin
Normal file
Binary file not shown.
BIN
firmware-2711/old/stable/pieeprom-2025-05-16.bin
Normal file
BIN
firmware-2711/old/stable/pieeprom-2025-05-16.bin
Normal file
Binary file not shown.
BIN
firmware-2711/old/stable/pieeprom-2025-07-03.bin
Normal file
BIN
firmware-2711/old/stable/pieeprom-2025-07-03.bin
Normal file
Binary file not shown.
@@ -1,6 +1,195 @@
|
||||
# Raspberry Pi4 bootloader EEPROM release notes
|
||||
|
||||
## 2025-05-13: Promote 2025-05-08 to the default release (default)
|
||||
## 2025-11-09: Promote 2025-11-05 to the default release (default)
|
||||
|
||||
## 2025-11-05: Add iommu_dma_numa_policy=interleave when needed (latest)
|
||||
|
||||
* arm_loader: Add iommu_dma_numa_policy=interleave when needed
|
||||
This applies a similar numa interleave for iommu dma kernel allocations.
|
||||
This includes buffers allocated for hevc and v3d.
|
||||
See: https://forums.raspberrypi.com/viewtopic.php?t=392666
|
||||
|
||||
## 2025-10-14: recovery: Use ROM boot-mode to detect rpiboot (latest)
|
||||
|
||||
* recovery: Use ROM boot-mode flag to detect rpiboot mode
|
||||
In recovery-mode use the bootrom register flag to detect the
|
||||
original boot-mode rather than looking at whether the rpiboot
|
||||
usb-device boot driver is initialised.
|
||||
* Manufacturing test updates.
|
||||
|
||||
## 2025-10-08: Fix accidental set of PM_RSTS bit 5 when stopping watchdog (latest)
|
||||
|
||||
* Fix accidental set of PM_RSTS bit 5 when stopping watchdog
|
||||
Fix an issue in the watchdog code where the raw PM_RSTS value
|
||||
was used as partition number. If HADWRF (bit 5) was set (on reboot)
|
||||
this could cause bit 10 to be set. If an OS didn't clear the partition
|
||||
flags on reboot then this could end up being treated as request to
|
||||
boot from partition 32.
|
||||
|
||||
## 2025-10-03: arm_dt: Report OTP SDRAM size via device-tree (latest)
|
||||
|
||||
* arm_dt: Report OTP SDRAM size via device-tree
|
||||
Report the SDRAM in gigabits via device-tree as
|
||||
/proc/device-tree/chosen/rpi-sdram-size-gbit. Scripts reporting the
|
||||
device-capabilities should use this value (if defined) instead of the
|
||||
memory-size field in the boardrev row.
|
||||
* Apply UART_BAUD in early bootsys UART init
|
||||
Update bootsys and fatal error handlers to use the user
|
||||
defined UART_BAUD rate.
|
||||
* rpifwcrypto: Add support for ECDSA P-256 key generation
|
||||
Also, slightly improve the entropy by passing the system
|
||||
timer value as the personality string.
|
||||
|
||||
## 2025-09-23: Fix network install regression on Pi4 (latest)
|
||||
|
||||
* Fix network install regression on Pi4
|
||||
Fix an issue with the ECDSA signature code which caused network
|
||||
install to fail to load on Pi4.
|
||||
* Fix TFTP to allow larger files
|
||||
Allow TFTP block counter to rollover to 0.
|
||||
See: https://github.com/raspberrypi/rpi-eeprom/issues/720
|
||||
|
||||
## 2025-09-22: Add LZ4 decompressor (latest)
|
||||
|
||||
* Add LZ4 decompressor
|
||||
LZ4 gives a better compression ratio than the previously used CK compress. The bootloader can now decompress both LZ4 compressed files and CK compressed files.
|
||||
* rpifwcrypto: Add GET_CRYPTO_PRIVATE_KEY mailbox API
|
||||
For provisioning, add a new mailbox API which returns the private key
|
||||
in DER format. The API will return an error if the key-status for
|
||||
the specified key is LOCKED.
|
||||
* config: Add support for board_attributes in conditional expressions
|
||||
Add support for the board-attributes row in config.txt conditional
|
||||
expressions. This can be used to change boot behavior for
|
||||
Compute Module Lite / No-WiFi etc.
|
||||
* board_info: Log the OTP board revision at startup
|
||||
Log the board revision plus the raw OTP value at startup.
|
||||
|
||||
## 2025-08-27: Fix PARTITION property to allow default (0) partition to be overridden (latest)
|
||||
|
||||
* Fix PARTITION property to allow default (0) partition to be overridden
|
||||
Fix the partition selection to allow the bootloader PARTITION
|
||||
property to override the reboot partition number if the reboot
|
||||
argument is 0 or > 31. Previously, it was only allowing
|
||||
partition numbers > 31 to be overridden.
|
||||
See: https://github.com/raspberrypi/rpi-eeprom/issues/743
|
||||
* Enable RPIBOOT in BOOT_ORDER / set-reboot-order
|
||||
Previously, rpiboot required the bootrom to have initialised
|
||||
rpiboot before running the firmware. Update the rpiboot
|
||||
initialisation so that rpiboot to be enabled after booting from
|
||||
SPI flash.
|
||||
This could be selectively enabled by setting BOOT_ORDER property
|
||||
(0x3) behind a GPIO conditional in the EEPROM config. On Pi5, the
|
||||
set_reboot_order config.txt option or mailbox property can be
|
||||
used to set a one-time boot-order on
|
||||
N.B. There is no timeout for RPIBOOT so this should only be set
|
||||
as the last boot mode OR used with a boot_watchdog.
|
||||
|
||||
## 2025-08-20: Fix PARTITION_WALK for missing start.elf files (latest)
|
||||
|
||||
* Fix PARTITION_WALK for missing start.elf files
|
||||
Fix a missing call to bootloader_reset_state so that PARTITION_WALK
|
||||
will work if the boot-partition is FAT, contains config.txt etc
|
||||
but does not have valid firmware.
|
||||
See: https://github.com/raspberrypi/rpi-eeprom/issues/738
|
||||
* force_eeprom_read=0 disables HAT I2C
|
||||
Although setting force_eeprom_read=0 has always prevented the HAT EEPROM
|
||||
from being read, with the recent changes to support Power HAT+s it does
|
||||
not prevent an early scan to see if such an EEPROM exists. This can be
|
||||
problematic for applications where the I2C0 pins have been repurposed.
|
||||
Change the inhibit logic to cut all HAT I2C probing off at the knees,
|
||||
including any automatic settings of usb_max_current_enable, as it should
|
||||
always have done.
|
||||
See: https://github.com/raspberrypi/firmware/issues/1985
|
||||
* bootcode.bin: Add support for boot.img ramdisk on Pi3 and earlier
|
||||
Add support for boot.img ramdisk support, enable by adding boot_ramdisk=1
|
||||
in config.txt
|
||||
* rpifwcrypto: Preliminary firmware support for rpifwcrypto API
|
||||
* Add config.txt to block GET_CUSTOMER_PRIVATE_KEY mailbox API
|
||||
lock_device_private_key=1
|
||||
|
||||
## 2025-08-13: Enable PARTITION_WALK property by default (latest)
|
||||
|
||||
* Enable the PARTITION_WALK property by default
|
||||
Previously, the new PARTITION_WALK which searches for bootable
|
||||
partitions after a failure had to be explicitly enabled. Change
|
||||
the default to be enabled by default. It can be switched off by
|
||||
setting PARTITION_WALK=0 in the EEPROM config.
|
||||
* Optimise bootmain for size on Pi4
|
||||
Pi4 only has a 512KB SPI flash EEPROM and the addition of features
|
||||
plus fixes is now causing contention for space between the code and
|
||||
the EEPROM config. Since bootmain is only responsible for loading
|
||||
start.elf revert to the original configuration which is optimised
|
||||
for size rather than speed. Pi5 continues to be optimised for speed.
|
||||
|
||||
## 2025-07-17: arm_loader: Also require the early-watchdog property (latest)
|
||||
|
||||
* arm_loader: Also require the early-watchdog property
|
||||
The change correcting the implementation of dtoverlay_is_enabled had the
|
||||
unintended consequence of causing the firmware to enable the watchdog
|
||||
even though the user had not explicitly requested it. This is harmless
|
||||
on Linux because the watchdog driver takes over and disarms it, but on
|
||||
other operating systems this can lead to a reboot. Avoid this problem
|
||||
by also requiring the presence of a new property, "early-watchdog".
|
||||
See: https://github.com/raspberrypi/firmware/issues/1980
|
||||
* helpers/config_loader: Add bootvar0 eeprom config that can be used in config.txt section expressions
|
||||
This allows an eeprom config setting (e.g. BOOTVAR0=0x10) to be set on a board
|
||||
which config.txt can use as a conditional expression (e.g. [bootvar0&0x10]).
|
||||
* arm_loader: Fix boot-watchdog stop on Pi4
|
||||
Fix a problem where the boot_watchdog heartbeat timer was not
|
||||
stopped correctly which could cause it to clash with the kernel
|
||||
watchdog driver.
|
||||
|
||||
## 2025-07-03: Check for SD card overcurrent (latest)
|
||||
|
||||
* board_info: Use the Ethernet PHY address probed by the bootloader
|
||||
Use the Ethernet PHY address supplied by the bootloader in
|
||||
preference to the static configurations defined in start4.elf
|
||||
* Check for SD card overcurrent on Pi5, Pi500 and Pi4
|
||||
Before booting, the bootloader now checks the SD power switch
|
||||
overcurrent signal. The overcurrent signal occurs if the SD
|
||||
card is damaged and has a short circuit which will cause it to
|
||||
get hot.
|
||||
If an over-current condition is detected the bootloader switches
|
||||
switches off power to the SD card and waits five seconds before
|
||||
probing the SD card again. This error is displayed on the
|
||||
diagnostic screen, the UART and the activity LED (1 long, 2 short)
|
||||
flashes.
|
||||
The check can be switched to a non-blocking warning by setting
|
||||
SD_OVERCURRENT_CHECK=0 in the bootloader config.
|
||||
* Add a new error code pattern for SD overcurrent
|
||||
Add a new error pattern (1 long, 2 short) to signal SD card
|
||||
overcurrent.
|
||||
* Add support for a bootloader watchdog
|
||||
Add support for a boot watchdog (using PM_RSTC hw wdog) which will
|
||||
trigger if the OS is not started within the specified amount of time. The
|
||||
watchdog is enabled by setting the BOOT_WATCHDOG_TIMEOUT=N (seconds)
|
||||
property in the bootlaoder config.
|
||||
The BOOT_WATCHDOG_PARTITION=P property can be set to pass a different
|
||||
partition number to the bootloader on reset if the watchdog
|
||||
is triggered.
|
||||
The boot watchdog is automatically cleared just before starting
|
||||
the OS and (optionally) enabling the kernel watchdog.
|
||||
* Skip first SD boot if no card detected
|
||||
On platforms with an SD Card detect signal, skip the first attempt to
|
||||
boot from SD if the card appears to be absent. This can save over a
|
||||
second on a cold boot, and a little under a second for a reboot.
|
||||
|
||||
## 2025-05-16: 2711: Automatically set revoke_devkey if program_pubkey=1 (latest)
|
||||
|
||||
* 2711: (recovery) Automatically set revoke_devkey if program_pubkey=1
|
||||
Previously, on BCM2711 products it was possible to program the key
|
||||
hash without revoking the development key. This can be useful for
|
||||
testing but should never be used in production because it is possible
|
||||
to an install an older version of the bootloader which doesn't
|
||||
support secure-boot. Since the secure-boot tools are stable and
|
||||
have improved usability (RPi secure-boot provisioner) this test
|
||||
feature not necessary and is just a security risk so the behaviour
|
||||
is changed to always revoke the development key if program_pubkey=1.
|
||||
This change is not relevant on BCM2712 because secure-boot requires
|
||||
that the second stage bootloader is counter-signed with the customer's
|
||||
private key.
|
||||
|
||||
## 2025-05-13: Promote 2025-05-08 to the default release (default) (automatic)
|
||||
|
||||
## 2025-05-08: Implement TCP window for net boot (latest)
|
||||
* Signed boot and HTTP boot mode
|
||||
|
||||
BIN
firmware-2712/default/pieeprom-2025-11-05.bin
Normal file
BIN
firmware-2712/default/pieeprom-2025-11-05.bin
Normal file
Binary file not shown.
Binary file not shown.
BIN
firmware-2712/latest/pieeprom-2025-02-12.bin → firmware-2712/latest/pieeprom-2025-06-13.bin
Normal file → Executable file
BIN
firmware-2712/latest/pieeprom-2025-02-12.bin → firmware-2712/latest/pieeprom-2025-06-13.bin
Normal file → Executable file
Binary file not shown.
Binary file not shown.
BIN
firmware-2712/latest/pieeprom-2025-06-29.bin
Normal file
BIN
firmware-2712/latest/pieeprom-2025-06-29.bin
Normal file
Binary file not shown.
BIN
firmware-2712/latest/pieeprom-2025-07-03.bin
Normal file
BIN
firmware-2712/latest/pieeprom-2025-07-03.bin
Normal file
Binary file not shown.
BIN
firmware-2712/latest/pieeprom-2025-07-17.bin
Normal file
BIN
firmware-2712/latest/pieeprom-2025-07-17.bin
Normal file
Binary file not shown.
BIN
firmware-2712/latest/pieeprom-2025-08-13.bin
Normal file
BIN
firmware-2712/latest/pieeprom-2025-08-13.bin
Normal file
Binary file not shown.
Binary file not shown.
BIN
firmware-2712/latest/pieeprom-2025-08-27.bin
Normal file
BIN
firmware-2712/latest/pieeprom-2025-08-27.bin
Normal file
Binary file not shown.
BIN
firmware-2712/latest/pieeprom-2025-09-22.bin
Normal file
BIN
firmware-2712/latest/pieeprom-2025-09-22.bin
Normal file
Binary file not shown.
BIN
firmware-2712/latest/pieeprom-2025-09-23.bin
Normal file
BIN
firmware-2712/latest/pieeprom-2025-09-23.bin
Normal file
Binary file not shown.
BIN
firmware-2712/latest/pieeprom-2025-09-25.bin
Normal file
BIN
firmware-2712/latest/pieeprom-2025-09-25.bin
Normal file
Binary file not shown.
BIN
firmware-2712/latest/pieeprom-2025-10-08.bin
Normal file
BIN
firmware-2712/latest/pieeprom-2025-10-08.bin
Normal file
Binary file not shown.
BIN
firmware-2712/latest/pieeprom-2025-10-17.bin
Normal file
BIN
firmware-2712/latest/pieeprom-2025-10-17.bin
Normal file
Binary file not shown.
BIN
firmware-2712/latest/pieeprom-2025-11-05.bin
Normal file
BIN
firmware-2712/latest/pieeprom-2025-11-05.bin
Normal file
Binary file not shown.
Binary file not shown.
BIN
firmware-2712/old/default/pieeprom-2025-05-08.bin
Normal file
BIN
firmware-2712/old/default/pieeprom-2025-05-08.bin
Normal file
Binary file not shown.
BIN
firmware-2712/old/latest/pieeprom-2025-05-08.bin
Normal file
BIN
firmware-2712/old/latest/pieeprom-2025-05-08.bin
Normal file
Binary file not shown.
BIN
firmware-2712/old/latest/pieeprom-2025-06-09.bin
Normal file
BIN
firmware-2712/old/latest/pieeprom-2025-06-09.bin
Normal file
Binary file not shown.
BIN
firmware-2712/latest/pieeprom-2025-03-10.bin → firmware-2712/old/latest/pieeprom-2025-06-13.bin
Normal file → Executable file
BIN
firmware-2712/latest/pieeprom-2025-03-10.bin → firmware-2712/old/latest/pieeprom-2025-06-13.bin
Normal file → Executable file
Binary file not shown.
BIN
firmware-2712/old/latest/pieeprom-2025-06-20.bin
Normal file
BIN
firmware-2712/old/latest/pieeprom-2025-06-20.bin
Normal file
Binary file not shown.
BIN
firmware-2712/old/latest/pieeprom-2025-06-29.bin
Normal file
BIN
firmware-2712/old/latest/pieeprom-2025-06-29.bin
Normal file
Binary file not shown.
BIN
firmware-2712/old/latest/pieeprom-2025-07-03.bin
Normal file
BIN
firmware-2712/old/latest/pieeprom-2025-07-03.bin
Normal file
Binary file not shown.
Binary file not shown.
@@ -1,5 +1,233 @@
|
||||
# Raspberry Pi5 bootloader EEPROM release notes
|
||||
|
||||
## 2025-11-09: Promote 2025-11-05 to the default release (default)
|
||||
|
||||
## 2025-11-05: arm_loader: Add iommu_dma_numa_policy=interleave when needed (latest)
|
||||
|
||||
* arm_loader: Add iommu_dma_numa_policy=interleave when needed
|
||||
This applies a similar numa interleave for iommu dma kernel allocations.
|
||||
This includes buffers allocated for hevc and v3d.
|
||||
See: https://forums.raspberrypi.com/viewtopic.php?t=392666
|
||||
* Rebuild RP1 firmware to reduce size.
|
||||
|
||||
## 2025-10-17: Enable background refresh on 2712d0 for all SDRAM sizes (latest)
|
||||
|
||||
* 2712d0: Enable background refresh on 2712d0 for all SDRAM sizes
|
||||
This provides a minor performance benefit.
|
||||
* Update GPT to support 4K native sectors
|
||||
Bootloader logic updated to correctly interpret the GPT layout format specific to 4K native sector drives.
|
||||
* recovery: Use ROM boot-mode flag to detect rpiboot mode
|
||||
In recovery-mode use the bootrom register flag to detect the
|
||||
original boot-mode rather than looking at whether the rpiboot
|
||||
usb-device boot driver is initialised.
|
||||
|
||||
## 2025-10-08: Fix accidental set of PM_RSTS bit 5 when stopping watchdog (latest)
|
||||
|
||||
* Fix accidental set of PM_RSTS bit 5 when stopping watchdog
|
||||
Fix an issue in the watchdog code where the raw PM_RSTS value
|
||||
was used as partition number. If HADWRF (bit 5) was set (on reboot)
|
||||
this could cause bit 10 to be set. If an OS didn't clear the partition
|
||||
flags on reboot then this could end up being treated as request to
|
||||
boot from partition 32.
|
||||
* pi5: Preliminary support for 4K native sectors with NVMe drives
|
||||
Pi5 now supports 4K native sector NVMe drives.
|
||||
This allows booting from drives with logical block size 4096,
|
||||
while 512B drives remain compatible. With 4K sectors, storage density
|
||||
increases along with improved reliability and efficiency.
|
||||
N.B. USB boot still requires a 512 byte sector size and there are
|
||||
no RPi OS disk images with a 4K sector format.
|
||||
See: https://github.com/raspberrypi/rpi-eeprom/issues/577
|
||||
* arm_dt: Report OTP SDRAM size via device-tree
|
||||
Report the SDRAM in gigabits via device-tree as
|
||||
/proc/device-tree/chosen/rpi-sdram-size-gbit. Scripts reporting the
|
||||
device-capabilities should use this value (if defined) instead of the
|
||||
memory-size field in the boardrev row.
|
||||
|
||||
## 2025-09-25: Apply UART_BAUD in early bootsys UART init (latest)
|
||||
|
||||
* Apply UART_BAUD in early bootsys UART init
|
||||
Update bootsys and fatal error handlers to use the user
|
||||
defined UART_BAUD rate.
|
||||
* rpifwcrypto: Add support for ECDSA P-256 key generation
|
||||
|
||||
## 2025-09-23: Fix TFTP to allow larger files (latest)
|
||||
|
||||
* Fix TFTP to allow larger files
|
||||
Allow TFTP block counter to rollover to 0.
|
||||
See: https://github.com/raspberrypi/rpi-eeprom/issues/720
|
||||
|
||||
## 2025-09-22: Add LZ4 decompressor (latest)
|
||||
|
||||
* Add LZ4 decompressor
|
||||
LZ4 gives a better compression ratio than the previously used CK compress. The bootloader can now decompress both LZ4 compressed files and CK compressed files.
|
||||
* rpifwcrypto: Add GET_CRYPTO_PRIVATE_KEY mailbox API
|
||||
For provisioning, add a new mailbox API which returns the private key
|
||||
in DER format. The API will return an error if the key-status for
|
||||
the specified key is LOCKED.
|
||||
* config: Add support for board_attributes in conditional expressions
|
||||
Add support for the board-attributes row in config.txt conditional
|
||||
expressions. This can be used to change boot behavior for
|
||||
Compute Module Lite / No-WiFi etc.
|
||||
* board_info: Log the OTP board revision at startup
|
||||
Log the board revision plus the raw OTP value at startup.
|
||||
|
||||
## 2025-08-27: Fix PARTITION property to allow default (0) partition to be overridden (latest)
|
||||
|
||||
* Fix PARTITION property to allow default (0) partition to be overridden
|
||||
Fix the partition selection to allow the bootloader PARTITION
|
||||
property to override the reboot partition number if the reboot
|
||||
argument is 0 or > 31. Previously, it was only allowing
|
||||
partition numbers > 31 to be overridden.
|
||||
See: https://github.com/raspberrypi/rpi-eeprom/issues/743
|
||||
* Enable RPIBOOT in BOOT_ORDER / set-reboot-order
|
||||
Previously, rpiboot required the bootrom to have initialised
|
||||
rpiboot before running the firmware. Update the rpiboot
|
||||
initialisation so that rpiboot to be enabled after booting from
|
||||
SPI flash.
|
||||
This could be selectively enabled by setting BOOT_ORDER property
|
||||
(0x3) behind a GPIO conditional in the EEPROM config. On Pi5, the
|
||||
set_reboot_order config.txt option or mailbox property can be
|
||||
used to set a one-time boot-order on
|
||||
N.B. There is no timeout for RPIBOOT so this should only be set
|
||||
as the last boot mode OR used with a boot_watchdog.
|
||||
|
||||
## 2025-08-20: force_eeprom_read=0 disables HAT I2C (latest)
|
||||
|
||||
* force_eeprom_read=0 disables HAT I2C
|
||||
Although setting force_eeprom_read=0 has always prevented the HAT EEPROM
|
||||
from being read, with the recent changes to support Power HAT+s it does
|
||||
not prevent an early scan to see if such an EEPROM exists. This can be
|
||||
problematic for applications where the I2C0 pins have been repurposed.
|
||||
Change the inhibit logic to cut all HAT I2C probing off at the knees,
|
||||
including any automatic settings of usb_max_current_enable, as it should
|
||||
always have done.
|
||||
See: https://github.com/raspberrypi/firmware/issues/1985
|
||||
* rpifwcrypto: Preliminary firmware support for rpifwcrypto API
|
||||
* Add config.txt to block GET_CUSTOMER_PRIVATE_KEY mailbox API lock_device_private_key=1
|
||||
|
||||
## 2025-08-13: Enable the PARTITION_WALK property by default (latest)
|
||||
|
||||
* Enable the PARTITION_WALK property by default
|
||||
Previously, the new PARTITION_WALK which searches for bootable
|
||||
partitions after a failure had to be explicitly enabled. Change
|
||||
the default to be enabled by default. It can be switched off by
|
||||
setting PARTITION_WALK=0 in the EEPROM config.
|
||||
* pi5: Fix read for cached copy of PMIC sequencer status
|
||||
Previously, this was overwritten by the RTC event status.
|
||||
|
||||
## 2025-07-17: Fix config key search which could cause camera_autodetect to fail (latest)
|
||||
|
||||
* Fix config key search which could cause camera_autodetect to fail
|
||||
The bootvar0 config property was added in the wrong section which
|
||||
could cause the config property search for some other properties
|
||||
to fail.
|
||||
|
||||
## 2025-07-17: arm_loader: Also require the early-watchdog property (latest)
|
||||
|
||||
* arm_loader: Also require the early-watchdog property
|
||||
The change correcting the implementation of dtoverlay_is_enabled had the
|
||||
unintended consequence of causing the firmware to enable the watchdog
|
||||
even though the user had not explicitly requested it. This is harmless
|
||||
on Linux because the watchdog driver takes over and disarms it, but on
|
||||
other operating systems this can lead to a reboot. Avoid this problem
|
||||
by also requiring the presence of a new property, "early-watchdog".
|
||||
See: https://github.com/raspberrypi/firmware/issues/1980
|
||||
* helpers/config_loader: Add bootvar0 eeprom config that can be used in config.txt section expressions
|
||||
This allows an eeprom config setting (e.g. BOOTVAR0=0x10) to be set on a board
|
||||
which config.txt can use as a conditional expression (e.g. [bootvar0&0x10]).
|
||||
* arm_loader: Fix boot-watchdog stop on Pi4
|
||||
Fix a problem where the boot_watchdog heartbeat timer was not
|
||||
stopped correctly which could cause it to clash with the kernel
|
||||
watchdog driver.
|
||||
|
||||
## 2025-07-03: Enable firmware UART output on the 40-pin header (latest)
|
||||
|
||||
* rp1_uart: Allow rp1_uart to be started earlier
|
||||
If enabled (with enable_rp1_uart) then the existing boot uart
|
||||
messages are redirected to the rp1 uart.
|
||||
|
||||
## 2025-06-29: Check for SD card overcurrent on Pi5 and Pi500 (latest)
|
||||
|
||||
* board_info: Use the Ethernet PHY address probed by the bootloader
|
||||
Use the Ethernet PHY address supplied by the bootloader in
|
||||
preference to the static configurations defined in start4.elf
|
||||
* pi5: Fix overwrite of cache EEPROM config in secure-boot mode
|
||||
See: https://github.com/raspberrypi/rpi-eeprom/issues/719
|
||||
* Check for SD card overcurrent on Pi5, Pi500 and Pi4
|
||||
Before booting, the bootloader now checks the SD power switch
|
||||
overcurrent signal. The overcurrent signal occurs if the SD
|
||||
card is damaged and has a short circuit which will cause it to
|
||||
get hot.
|
||||
If an over-current condition is detected the bootloader
|
||||
switches off power to the SD card and waits five seconds before
|
||||
probing the SD card again. This error is displayed on the
|
||||
diagnostic screen, the UART and the activity LED (1 long, 2 short)
|
||||
flashes.
|
||||
The check can be switched to a non-blocking warning by setting
|
||||
SD_OVERCURRENT_CHECK=0 in the bootloader config.
|
||||
* Add a new error code pattern for SD overcurrent
|
||||
Add a new error pattern (1 long, 2 short) to signal SD card
|
||||
overcurrent.
|
||||
* Enable RTC wakeup from POWER_OFF_ON_HALT=0
|
||||
* Improve HAT+ current handling
|
||||
In shipping firmware, the current_supply value is only being used in the
|
||||
case of a normal (non-stacked) HAT+, but that is unnecessarily
|
||||
restrictive. Also, the presence of MODE0 and MODE1 power HATs is not
|
||||
reflected in the value of max_current.
|
||||
See: https://github.com/raspberrypi/linux/pull/6678
|
||||
|
||||
## 2025-06-20: Add support for a bootloader watchdog (latest)
|
||||
|
||||
* Add support for a bootloader watchdog
|
||||
Add support for a boot watchdog (using PM_RSTC hw wdog) which will
|
||||
trigger if the OS is not started within the specified amount of time. The
|
||||
watchdog is enabled by setting the BOOT_WATCHDOG_TIMEOUT=N (seconds)
|
||||
property in the bootlaoder config.
|
||||
The BOOT_WATCHDOG_PARTITION=P property can be set to pass a different
|
||||
partition number to the bootloader on reset if the watchdog
|
||||
is triggered.
|
||||
The boot watchdog is automatically cleared just before starting
|
||||
the OS and (optionally) enabling the kernel watchdog.
|
||||
* pi5: Add a temperature monitor
|
||||
In early releases of the bootloader the fan would always be on
|
||||
during boot which can be distracting. Later releases switch off the
|
||||
fan until the OS has booted.
|
||||
This change adds some basic fan control from the bootloader to
|
||||
enable the fan if the temperature is above 85C.
|
||||
This may be useful if the Pi was shutdown by the OS because the
|
||||
temperature limit was exceeded.
|
||||
Since the Linux hwmon is not active at this stage the bootloader
|
||||
now implements the same logic to power off the Pi if the chips
|
||||
is more than 110C.
|
||||
The PMIC hardware automatically cuts power if the temperature
|
||||
is more than 125C.
|
||||
* Skip first SD boot if no card detected
|
||||
On platforms with an SD Card detect signal, skip the first attempt to
|
||||
boot from SD if the card appears to be absent. This can save over a
|
||||
second on a cold boot, and a little under a second for a reboot.
|
||||
|
||||
## 2025-06-13: Update to include production test changes (latest)
|
||||
* Update to include production test changes.
|
||||
|
||||
## 2025-06-09: NVMe: Fix loading of files > 32MB (latest)
|
||||
|
||||
* NVMe: Fix loading of files > 32MB
|
||||
Fix an NVMe boot bug which caused large contiguous reads >= 32MB to fail.
|
||||
* Update setting alpha for 2712D0
|
||||
D0 moved the alpha blend mode from CTL2 to CTL0.
|
||||
Update the bootloader code to follow suit for those using
|
||||
the simple framebuffer
|
||||
* dtoverlay: Fix node_is_enabled for implicit status
|
||||
The absence of a status property implies that a node is enabled. Update
|
||||
dtoverlay_node_is_enabled to match that behaviour.
|
||||
See: https://github.com/raspberrypi/firmware/issues/1970
|
||||
* arm_loader: GET_CLOCKS: Set useful response length
|
||||
The kernel's firmware mailbox API does not make the actual length of the
|
||||
response available to clients, but other implementations may care.
|
||||
Continue to pad the GET_CLOCKS buffer with zeroes, but set the response
|
||||
length to minimally contain the useful content.
|
||||
See: https://github.com/raspberrypi/firmware/issues/1969
|
||||
|
||||
## 2025-05-13: Promote 2025-05-08 to the default release (default)
|
||||
|
||||
## 2025-05-08: Implement TCP window for net boot (latest)
|
||||
|
||||
@@ -5,7 +5,7 @@ set -e
|
||||
script_dir=$(cd "$(dirname "$0")" && pwd)
|
||||
|
||||
# Pi4, Pi400, CM4, CM4-S
|
||||
${script_dir}/make-release critical 2025-02-11 000138c0 "${script_dir}/2711-config" release-2711 rpi-boot-eeprom-recovery 2711
|
||||
${script_dir}/make-release critical 2025-11-05 000138c0 "${script_dir}/2711-config" release-2711 rpi-boot-eeprom-recovery 2711
|
||||
|
||||
# Pi5
|
||||
${script_dir}/make-release critical 2025-02-12 "" "${script_dir}/2712-config" release-2712 rpi-boot-eeprom-recovery 2712
|
||||
${script_dir}/make-release critical 2025-11-05 "" "${script_dir}/2712-config" release-2712 rpi-boot-eeprom-recovery 2712
|
||||
|
||||
9
imager/net_install_pubkey.pem
Normal file
9
imager/net_install_pubkey.pem
Normal file
@@ -0,0 +1,9 @@
|
||||
-----BEGIN PUBLIC KEY-----
|
||||
MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAno9f6RGBaf2yaWTwf8+y
|
||||
MO4snzEgLOr8L3S28PZBdyx2qqNrzZ+xUOfLNYI5CwvBgOyKtm5L+wJIR8NUqgBl
|
||||
tvtBMAy2Auh0Qe679vN6UnsWE/o3pCgFPdmH+EcKfPqNBYODgfL+eumGM9Lo2dnl
|
||||
6P3JBR4Uy2E171k4D9Pj5rhO2K4jySYwbTuFR/drB2nDBrrsUW+SArnkTLvEGLY1
|
||||
nONW+AIBaqBxb+wjD/TMvVdsCWNXabcRqYM9DDgVzGePKuQdX5aBdgDnlbtDodyq
|
||||
FnLcRjqGE7nSQBQILwmGl5EvHMGa8d3/aLE6eXmMCakXyF1HPRv2lOecxNMO3xTF
|
||||
zwIDAQAB
|
||||
-----END PUBLIC KEY-----
|
||||
@@ -14,5 +14,6 @@ For support or hardware interoperability discussions please use the Raspberry Pi
|
||||
## Old EEPROM images
|
||||
Old bootloader images are periodically removed from the APT package to reduce the disk space but are still available via Github
|
||||
* Old [BCM2711 releases](https://github.com/raspberrypi/rpi-eeprom/tree/master/firmware-2711/old).
|
||||
* Old [BCM2712 releases](https://github.com/raspberrypi/rpi-eeprom/tree/master/firmware-2712/old).
|
||||
|
||||
**Old releases may fail to boot on newer hardware revisions.**
|
||||
|
||||
@@ -346,7 +346,7 @@ class BootloaderImage(object):
|
||||
update_len = len(src_bytes) + FILE_HDR_LEN
|
||||
|
||||
if hdr_offset + update_len > self._image_size - ERASE_ALIGN_SIZE:
|
||||
raise Exception('No space available - image past EOF.')
|
||||
raise Exception('No space available. %s size %d available space %d' % (dst_filename, update_len, self._image_size - ERASE_ALIGN_SIZE - hdr_offset))
|
||||
|
||||
if hdr_offset < 0:
|
||||
raise Exception('Update target %s not found' % dst_filename)
|
||||
|
||||
@@ -424,13 +424,13 @@ checkDependencies() {
|
||||
if [ $(((0x$BOARD_INFO >> 12) & 15)) = 3 ]; then
|
||||
BCM_CHIP=2711
|
||||
EEPROM_SIZE=524288
|
||||
BOOTLOADER_AUTO_UPDATE_MIN_VERSION="${BOOTLOADER_AUTO_UPDATE_MIN_VERSION:-1599135103}"
|
||||
BOOTLOADER_AUTO_UPDATE_MIN_VERSION="${BOOTLOADER_AUTO_UPDATE_MIN_VERSION:-1746717695}"
|
||||
|
||||
SPIDEV=/dev/spidev0.0
|
||||
elif [ $(((0x$BOARD_INFO >> 12) & 15)) = 4 ]; then
|
||||
BCM_CHIP=2712
|
||||
EEPROM_SIZE=2097152
|
||||
BOOTLOADER_AUTO_UPDATE_MIN_VERSION="${BOOTLOADER_AUTO_UPDATE_MIN_VERSION:-1725975630}"
|
||||
BOOTLOADER_AUTO_UPDATE_MIN_VERSION="${BOOTLOADER_AUTO_UPDATE_MIN_VERSION:-1746713597}"
|
||||
SPIDEV=/dev/spidev10.0
|
||||
# Default is to use flashrom if availableon BCM2712
|
||||
RPI_EEPROM_USE_FLASHROM=${RPI_EEPROM_USE_FLASHROM:-1}
|
||||
|
||||
@@ -18,7 +18,8 @@ usage() {
|
||||
cat <<EOF
|
||||
$(basename "$0") [-cfwy] <key>
|
||||
|
||||
No args - reads the current private key from OTP. These values are NOT visible via 'vcgencmd otp_dump'.
|
||||
No args - reads the current device unique private key from OTP.
|
||||
*These values are NOT visible via 'vcgencmd otp_dump'*
|
||||
|
||||
-b Output the key in binary format.
|
||||
-c Reads key and exits with 1 if it is all zeros i.e. not set.
|
||||
@@ -30,11 +31,31 @@ usage() {
|
||||
-l Specify key length in words. Defaults to 8 words (32 bytes). Pi 5 supports up to 16 words (64 bytes).
|
||||
-o word Offset into the keystore to use, e.g. 0-7 for Pi 4, 0-15 for Pi 5. Defaults to zero.
|
||||
|
||||
<key> is usually a 64 digit hex number (256 bit) e.g. to generate a 256 random number run 'openssl rand -hex 32'
|
||||
<key> is usually a 64 digit hex number (256 bit)
|
||||
|
||||
IMPORTANT: Raspberry Pi 5 and earlier revisions do not have a hardware secure key store. These OTP rows are visible
|
||||
to any user in the 'video' group via vcmailbox. Therefore this functionality is only suitable for key
|
||||
storage if the OS has already been restricted using the signed boot functionality.
|
||||
Key generation:
|
||||
The Raspberry Pi firmware cryptography services requires that the device unique private key is
|
||||
a valid ECDSA with P-256 curve key. Due to limited OTP space only the raw private key component (d)
|
||||
is stored in OTP.
|
||||
|
||||
Example key generation and provisioning:
|
||||
|
||||
# Generate the new private-key - remember to save this to a secure, off-device location!
|
||||
openssl ecparam -name prime256v1 -genkey -noout -out private_key.pem
|
||||
|
||||
# Extract raw the private key component
|
||||
openssl ec -in private_key.pem -text -noout | awk '/priv:/{flag=1; next} /pub:/{flag=0} flag' | tr -d ' \n:' | head -n1 > d.hex
|
||||
|
||||
# Write the key to OTP
|
||||
rpi-otp-private-key -w \$(cat d.hex)
|
||||
|
||||
IMPORTANT: Raspberry Pi 5 and earlier revisions do not have a hardware secure key store
|
||||
so the raw OTP values are potentially readable by processes with root-privileges.
|
||||
|
||||
In newer firmware releases, the mailbox APIs used by this script to read the OTP can
|
||||
be disabled by setting lock_device_private_key=1 in config.txt.
|
||||
On Pi4 or newer, if secure-boot is enabled, then this parameter cannot be
|
||||
tampered with because config.txt is stored within the signed boot.img.
|
||||
|
||||
WARNING: Changes to OTP memory are permanent and cannot be undone.
|
||||
EOF
|
||||
@@ -134,7 +155,8 @@ if [ $(((0x$BOARD_INFO >> 12) & 15)) = 3 ]; then
|
||||
elif [ $(((0x$BOARD_INFO >> 12) & 15)) = 4 ]; then
|
||||
MAX_ROW_COUNT=16
|
||||
else
|
||||
die "Chip not supported"
|
||||
echo "WARNING: Secure-boot is only supported on Pi4 and newer models"
|
||||
MAX_ROW_COUNT=8
|
||||
fi
|
||||
if [ -z "$ROW_COUNT" ] || [ "$ROW_COUNT" -ne "$ROW_COUNT" ] 2>/dev/null; then
|
||||
die "Key length not a number"
|
||||
|
||||
Reference in New Issue
Block a user