From ed09e6e753d9e6a5e31493d52c17bad4263144a5 Mon Sep 17 00:00:00 2001 From: Tim Gover Date: Tue, 26 Mar 2024 17:08:58 +0000 Subject: [PATCH 0990/1002] 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 --- 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(-) diff --git a/arch/arm/boot/dts/broadcom/bcm2712-rpi-5-b.dts b/arch/arm/boot/dts/broadcom/bcm2712-rpi-5-b.dts index 5bea1341471b..f0e752436b68 100644 --- 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 @@ usb_vbus_pins: usb_vbus_pins { / { aliases: aliases { blconfig = &blconfig; + blpubkey = &blpubkey; bluetooth = &bluetooth; console = &uart10; ethernet0 = &rp1_eth; diff --git a/arch/arm/boot/dts/broadcom/bcm2712-rpi-cm5.dtsi b/arch/arm/boot/dts/broadcom/bcm2712-rpi-cm5.dtsi index 35bb8733e83d..3ceb644ff9a4 100644 --- a/arch/arm/boot/dts/broadcom/bcm2712-rpi-cm5.dtsi +++ b/arch/arm/boot/dts/broadcom/bcm2712-rpi-cm5.dtsi @@ -745,6 +745,7 @@ usb_vbus_pins: usb_vbus_pins { / { aliases: aliases { blconfig = &blconfig; + blpubkey = &blpubkey; bluetooth = &bluetooth; console = &uart10; ethernet0 = &rp1_eth; diff --git a/arch/arm/boot/dts/broadcom/bcm2712-rpi.dtsi b/arch/arm/boot/dts/broadcom/bcm2712-rpi.dtsi index 1f5d2bb29bfb..0b7c0f0ffc31 100644 --- a/arch/arm/boot/dts/broadcom/bcm2712-rpi.dtsi +++ b/arch/arm/boot/dts/broadcom/bcm2712-rpi.dtsi @@ -102,7 +102,7 @@ &usb { &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. */ @@ -114,6 +114,18 @@ blconfig: nvram@0 { 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"; + }; }; &rp1_adc { -- 2.44.0