openwrt/target/linux/bcm27xx/patches-6.6/950-0990-dts-bcm2712-Add-blpubkey-nvram-node.patch

67 lines
2.1 KiB
Diff
Raw Normal View History

From ed09e6e753d9e6a5e31493d52c17bad4263144a5 Mon Sep 17 00:00:00 2001
From: Tim Gover <tim.gover@raspberrypi.com>
Date: Tue, 26 Mar 2024 17:08:58 +0000
Subject: [PATCH 0990/1085] dts: bcm2712: Add blpubkey nvram node
The RPi5 firmware also supports exporting the customer
public key stored in flash via device-tree. Define the
node so that the firmware can populate it.
Signed-off-by: Tim Gover <tim.gover@raspberrypi.com>
---
arch/arm/boot/dts/broadcom/bcm2712-rpi-5-b.dts | 1 +
arch/arm/boot/dts/broadcom/bcm2712-rpi-cm5.dtsi | 1 +
arch/arm/boot/dts/broadcom/bcm2712-rpi.dtsi | 14 +++++++++++++-
3 files changed, 15 insertions(+), 1 deletion(-)
--- a/arch/arm/boot/dts/broadcom/bcm2712-rpi-5-b.dts
+++ b/arch/arm/boot/dts/broadcom/bcm2712-rpi-5-b.dts
@@ -744,6 +744,7 @@ spi10_cs_pins: &spi10_cs_gpio1 {};
/ {
aliases: aliases {
blconfig = &blconfig;
+ blpubkey = &blpubkey;
bluetooth = &bluetooth;
console = &uart10;
ethernet0 = &rp1_eth;
--- a/arch/arm/boot/dts/broadcom/bcm2712-rpi-cm5.dtsi
+++ b/arch/arm/boot/dts/broadcom/bcm2712-rpi-cm5.dtsi
@@ -745,6 +745,7 @@ spi10_cs_pins: &spi10_cs_gpio1 {};
/ {
aliases: aliases {
blconfig = &blconfig;
+ blpubkey = &blpubkey;
bluetooth = &bluetooth;
console = &uart10;
ethernet0 = &rp1_eth;
--- a/arch/arm/boot/dts/broadcom/bcm2712-rpi.dtsi
+++ b/arch/arm/boot/dts/broadcom/bcm2712-rpi.dtsi
@@ -102,7 +102,7 @@ pciex4: &pcie2 { };
&rmem {
/*
- * RPi4's co-processor will copy the board's bootloader configuration
+ * RPi5's co-processor will copy the board's bootloader configuration
* into memory for the OS to consume. It'll also update this node with
* its placement information.
*/
@@ -111,6 +111,18 @@ pciex4: &pcie2 { };
#address-cells = <1>;
#size-cells = <1>;
reg = <0x0 0x0 0x0>;
+ no-map;
+ status = "disabled";
+ };
+ /*
+ * RPi5 will copy the binary public key blob (if present) from the bootloader
+ * into memory for use by the OS.
+ */
+ blpubkey: nvram@1 {
+ compatible = "raspberrypi,bootloader-public-key", "nvmem-rmem";
+ #address-cells = <1>;
+ #size-cells = <1>;
+ reg = <0x0 0x0 0x0>;
no-map;
status = "disabled";
};