arm64: dts: apple: Add SPI NOR nvram partition to all devices

All known M1* and M2* devices use an identical SPI NOR flash
configuration with a partition containing a non-volatile key:value
storage. Use a .dtsi and include it for every device.
The nvram partition parameters itself depend on the version of the
installed Apple iboot boot loader. m1n1 will fill in the current values
provided by Apple's iboot.

Reviewed-by: Neal Gompa <neal@gompa.dev>
Signed-off-by: Janne Grunau <j@jannau.net>
Link: https://lore.kernel.org/r/20241203-asahi-spi-dt-v2-5-cd68bfaf0c84@jannau.net
Signed-off-by: Sven Peter <sven@svenpeter.dev>
This commit is contained in:
Janne Grunau 2024-12-03 08:58:01 +01:00 committed by Sven Peter
parent d08e455a86
commit 3febe9de5c
5 changed files with 47 additions and 0 deletions

View file

@ -0,0 +1,39 @@
// SPDX-License-Identifier: GPL-2.0+ OR MIT
//
// Devicetree include for common spi-nor nvram flash.
//
// Apple uses a consistent configiguration for the nvram on all known M1* and
// M2* devices.
//
// Copyright The Asahi Linux Contributors
/ {
aliases {
nvram = &nvram;
};
};
&spi1 {
status = "okay";
flash@0 {
compatible = "jedec,spi-nor";
reg = <0x0>;
spi-max-frequency = <25000000>;
#address-cells = <1>;
#size-cells = <1>;
partitions {
compatible = "fixed-partitions";
#address-cells = <1>;
#size-cells = <1>;
nvram: partition@700000 {
label = "nvram";
/* To be filled by the loader */
reg = <0x0 0x0>;
status = "disabled";
};
};
};
};

View file

@ -119,3 +119,5 @@
&fpwm0 {
status = "okay";
};
#include "spi1-nvram.dtsi"

View file

@ -126,3 +126,5 @@
&pcie0_dart_3 {
status = "okay";
};
#include "spi1-nvram.dtsi"

View file

@ -90,3 +90,5 @@
&nco_clkref {
clock-frequency = <900000000>;
};
#include "spi1-nvram.dtsi"

View file

@ -79,3 +79,5 @@
&nco_clkref {
clock-frequency = <900000000>;
};
#include "spi1-nvram.dtsi"