[PATCH RESEND 0/5] Add Apple SPI controller and spi-nor dt nodes

Janne Grunau via B4 Relay posted 5 patches 1 year, 2 months ago
There is a newer version of this series
arch/arm64/boot/dts/apple/spi1-nvram.dtsi      | 39 +++++++++++++++
arch/arm64/boot/dts/apple/t600x-common.dtsi    |  7 +++
arch/arm64/boot/dts/apple/t600x-die0.dtsi      | 28 +++++++++++
arch/arm64/boot/dts/apple/t600x-gpio-pins.dtsi | 14 ++++++
arch/arm64/boot/dts/apple/t600x-j314-j316.dtsi |  2 +
arch/arm64/boot/dts/apple/t600x-j375.dtsi      |  2 +
arch/arm64/boot/dts/apple/t8103-jxxx.dtsi      |  2 +
arch/arm64/boot/dts/apple/t8103-pmgr.dtsi      | 18 +++----
arch/arm64/boot/dts/apple/t8103.dtsi           | 68 ++++++++++++++++++++++++++
arch/arm64/boot/dts/apple/t8112-jxxx.dtsi      |  2 +
arch/arm64/boot/dts/apple/t8112.dtsi           | 44 ++++++++++++++++-
11 files changed, 216 insertions(+), 10 deletions(-)
[PATCH RESEND 0/5] Add Apple SPI controller and spi-nor dt nodes
Posted by Janne Grunau via B4 Relay 1 year, 2 months ago
This series adds SPI controller and SPI NOR flash device nodes to the
man Apple silicon SoC dts files. Only the subset of used SPI controllers
is added. Five SPI controllers exists according to pmgr ADT data but the
commits only add controllers found in use on any of the devices. The
parameters for the missing nodes are guessable but there's no point in
adding them since no further M1 or M2 devices are expected.
Together with controller nodes the first SPI device is added. All Apple
silicon devices connect a SPI NOR flash to spi1. This holds Apple's 1st
stage bootloader, firmwares, platform and machine specific config data
and a writeable key-value store (nvram). Expose only the nvram as mtd
partition since it has use beyond exploring the content. Tools from
asahi-nvram [1] can modify the (default) boot configuration
(asahi-bless), read Bluetooth sync keys (asahi-btsync) and read and
write arbitrary keys (asahi-nvram).

Devicetree bindings are included in the driver series. Last version at
https://lore.kernel.org/linux-devicetree/20241101-asahi-spi-v3-0-3b411c5fb8e5@jannau.net/

This series passes `make CHECK_DTBS=1 dtbs` with the spi bindings except
for "local-mac-address" for the Bluetooth device (I need get back to
this).

[1] https://github.com/WhatAmISupposedToPutHere/asahi-nvram/

Signed-off-by: Janne Grunau <j@jannau.net>
---
Hector Martin (1):
      arm64: dts: apple: t8103: Fix spi4 power domain sort order

Janne Grunau (4):
      arm64: dts: apple: t8103: Add spi controller nodes
      arm64: dts: apple: t8112: Add spi controller nodes
      arm64: dts: apple: t600x: Add spi controller nodes
      arm64: dts: apple: Add SPI NOR nvram partition to all devices

 arch/arm64/boot/dts/apple/spi1-nvram.dtsi      | 39 +++++++++++++++
 arch/arm64/boot/dts/apple/t600x-common.dtsi    |  7 +++
 arch/arm64/boot/dts/apple/t600x-die0.dtsi      | 28 +++++++++++
 arch/arm64/boot/dts/apple/t600x-gpio-pins.dtsi | 14 ++++++
 arch/arm64/boot/dts/apple/t600x-j314-j316.dtsi |  2 +
 arch/arm64/boot/dts/apple/t600x-j375.dtsi      |  2 +
 arch/arm64/boot/dts/apple/t8103-jxxx.dtsi      |  2 +
 arch/arm64/boot/dts/apple/t8103-pmgr.dtsi      | 18 +++----
 arch/arm64/boot/dts/apple/t8103.dtsi           | 68 ++++++++++++++++++++++++++
 arch/arm64/boot/dts/apple/t8112-jxxx.dtsi      |  2 +
 arch/arm64/boot/dts/apple/t8112.dtsi           | 44 ++++++++++++++++-
 11 files changed, 216 insertions(+), 10 deletions(-)
---
base-commit: 98f7e32f20d28ec452afb208f9cffc08448a2652
change-id: 20241101-asahi-spi-dt-58245bb1da3e

Best regards,
-- 
Janne Grunau <j@jannau.net>
Re: [PATCH RESEND 0/5] Add Apple SPI controller and spi-nor dt nodes
Posted by Neal Gompa 1 year, 2 months ago
On Wed, Nov 27, 2024 at 4:52 AM Janne Grunau via B4 Relay
<devnull+j.jannau.net@kernel.org> wrote:
>
> This series adds SPI controller and SPI NOR flash device nodes to the
> man Apple silicon SoC dts files. Only the subset of used SPI controllers
> is added. Five SPI controllers exists according to pmgr ADT data but the
> commits only add controllers found in use on any of the devices. The
> parameters for the missing nodes are guessable but there's no point in
> adding them since no further M1 or M2 devices are expected.
> Together with controller nodes the first SPI device is added. All Apple
> silicon devices connect a SPI NOR flash to spi1. This holds Apple's 1st
> stage bootloader, firmwares, platform and machine specific config data
> and a writeable key-value store (nvram). Expose only the nvram as mtd
> partition since it has use beyond exploring the content. Tools from
> asahi-nvram [1] can modify the (default) boot configuration
> (asahi-bless), read Bluetooth sync keys (asahi-btsync) and read and
> write arbitrary keys (asahi-nvram).
>
> Devicetree bindings are included in the driver series. Last version at
> https://lore.kernel.org/linux-devicetree/20241101-asahi-spi-v3-0-3b411c5fb8e5@jannau.net/
>
> This series passes `make CHECK_DTBS=1 dtbs` with the spi bindings except
> for "local-mac-address" for the Bluetooth device (I need get back to
> this).
>
> [1] https://github.com/WhatAmISupposedToPutHere/asahi-nvram/
>
> Signed-off-by: Janne Grunau <j@jannau.net>
> ---
> Hector Martin (1):
>       arm64: dts: apple: t8103: Fix spi4 power domain sort order
>
> Janne Grunau (4):
>       arm64: dts: apple: t8103: Add spi controller nodes
>       arm64: dts: apple: t8112: Add spi controller nodes
>       arm64: dts: apple: t600x: Add spi controller nodes
>       arm64: dts: apple: Add SPI NOR nvram partition to all devices
>
>  arch/arm64/boot/dts/apple/spi1-nvram.dtsi      | 39 +++++++++++++++
>  arch/arm64/boot/dts/apple/t600x-common.dtsi    |  7 +++
>  arch/arm64/boot/dts/apple/t600x-die0.dtsi      | 28 +++++++++++
>  arch/arm64/boot/dts/apple/t600x-gpio-pins.dtsi | 14 ++++++
>  arch/arm64/boot/dts/apple/t600x-j314-j316.dtsi |  2 +
>  arch/arm64/boot/dts/apple/t600x-j375.dtsi      |  2 +
>  arch/arm64/boot/dts/apple/t8103-jxxx.dtsi      |  2 +
>  arch/arm64/boot/dts/apple/t8103-pmgr.dtsi      | 18 +++----
>  arch/arm64/boot/dts/apple/t8103.dtsi           | 68 ++++++++++++++++++++++++++
>  arch/arm64/boot/dts/apple/t8112-jxxx.dtsi      |  2 +
>  arch/arm64/boot/dts/apple/t8112.dtsi           | 44 ++++++++++++++++-
>  11 files changed, 216 insertions(+), 10 deletions(-)
> ---
> base-commit: 98f7e32f20d28ec452afb208f9cffc08448a2652
> change-id: 20241101-asahi-spi-dt-58245bb1da3e
>
> Best regards,
> --
> Janne Grunau <j@jannau.net>
>

Series LGTM.

Reviewed-by: Neal Gompa <neal@gompa.dev>


-- 
真実はいつも一つ!/ Always, there's only one truth!