ARM: dts: aspeed: asrock: Add BIOS SPI flash chips
Commit Message
On e3c246d4i, e3c256d4i, romed8hm3, and spc621d8hm3 the host firmware
flash is accessible to the BMC via the AST2500 SPI1 interface with an
external GPIO-controlled mux switching the flash chip between the host
and the BMC.
The default state of the mux GPIO leaves it connected to the host, so
the BMC's attempt to bind a driver to it during its boot sequence will
fail, but a write to a sysfs 'bind' file after toggling the mux GPIO
(along with whatever other preparatory steps are required) can later
allow it to be attached and accessed by the BMC. It's not an ideal
arrangement, but in the absence of DT overlays or any other
alternative it is at least a functional one, if somewhat clumsily so.
Signed-off-by: Zev Weiss <zev@bewilderbeest.net>
---
Note that this patch is based on Joel's for-next tree, since the
e3c256d4i and spc621d8hm3 device-trees haven't been merged in mainline
yet.
.../boot/dts/aspeed/aspeed-bmc-asrock-e3c246d4i.dts | 12 ++++++++++++
.../boot/dts/aspeed/aspeed-bmc-asrock-e3c256d4i.dts | 12 ++++++++++++
.../boot/dts/aspeed/aspeed-bmc-asrock-romed8hm3.dts | 12 ++++++++++++
.../dts/aspeed/aspeed-bmc-asrock-spc621d8hm3.dts | 12 ++++++++++++
4 files changed, 48 insertions(+)
@@ -68,6 +68,18 @@ flash@0 {
};
};
+&spi1 {
+ status = "okay";
+ pinctrl-names = "default";
+ pinctrl-0 = <&pinctrl_spi1_default>;
+ flash@0 {
+ status = "okay";
+ label = "bios";
+ m25p,fast-read;
+ spi-max-frequency = <25000000>; /* 25 MHz */
+ };
+};
+
&uart5 {
status = "okay";
};
@@ -69,6 +69,18 @@ flash@0 {
};
};
+&spi1 {
+ status = "okay";
+ pinctrl-names = "default";
+ pinctrl-0 = <&pinctrl_spi1_default>;
+ flash@0 {
+ status = "okay";
+ label = "bios";
+ m25p,fast-read;
+ spi-max-frequency = <25000000>; /* 25 MHz */
+ };
+};
+
&uart1 {
status = "okay";
};
@@ -56,6 +56,18 @@ flash@0 {
};
};
+&spi1 {
+ status = "okay";
+ pinctrl-names = "default";
+ pinctrl-0 = <&pinctrl_spi1_default>;
+ flash@0 {
+ status = "okay";
+ label = "bios";
+ m25p,fast-read;
+ spi-max-frequency = <33000000>; /* 33 MHz */
+ };
+};
+
&uart5 {
status = "okay";
};
@@ -66,6 +66,18 @@ flash@0 {
};
};
+&spi1 {
+ status = "okay";
+ pinctrl-names = "default";
+ pinctrl-0 = <&pinctrl_spi1_default>;
+ flash@0 {
+ status = "okay";
+ label = "bios";
+ m25p,fast-read;
+ spi-max-frequency = <17000000>; /* 17 MHz */
+ };
+};
+
&uart5 {
status = "okay";
};