aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux/mediatek/patches-5.15/131-dts-mt7622-add-snand-support.patch
diff options
context:
space:
mode:
authorChuanhong Guo <gch981213@gmail.com>2022-04-07 10:16:47 +0800
committerChuanhong Guo <gch981213@gmail.com>2022-04-28 18:06:00 +0800
commit68d5efaa10cf0689521fe05e386e3a1e11d8cb29 (patch)
treec6492319fa9cb6ef1694431c948b907be6fe2735 /target/linux/mediatek/patches-5.15/131-dts-mt7622-add-snand-support.patch
parent2138956bdc3145fac26d2ba8ac966f31d33cd290 (diff)
downloadupstream-68d5efaa10cf0689521fe05e386e3a1e11d8cb29.tar.gz
upstream-68d5efaa10cf0689521fe05e386e3a1e11d8cb29.tar.bz2
upstream-68d5efaa10cf0689521fe05e386e3a1e11d8cb29.zip
mediatek: add an upstreamed spi-nand driver
This patch implements the spi-nand controller driver as an ECC-capable spi-mem controller to use the upstream SPI-NAND driver. Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
Diffstat (limited to 'target/linux/mediatek/patches-5.15/131-dts-mt7622-add-snand-support.patch')
-rw-r--r--target/linux/mediatek/patches-5.15/131-dts-mt7622-add-snand-support.patch103
1 files changed, 45 insertions, 58 deletions
diff --git a/target/linux/mediatek/patches-5.15/131-dts-mt7622-add-snand-support.patch b/target/linux/mediatek/patches-5.15/131-dts-mt7622-add-snand-support.patch
index b8050b3592..134e5997e2 100644
--- a/target/linux/mediatek/patches-5.15/131-dts-mt7622-add-snand-support.patch
+++ b/target/linux/mediatek/patches-5.15/131-dts-mt7622-add-snand-support.patch
@@ -1,77 +1,64 @@
---- a/arch/arm64/boot/dts/mediatek/mt7622.dtsi
-+++ b/arch/arm64/boot/dts/mediatek/mt7622.dtsi
-@@ -561,6 +561,20 @@
- status = "disabled";
- };
-
-+ snand: snfi@1100d000 {
-+ compatible = "mediatek,mt7622-snand";
-+ reg = <0 0x1100d000 0 0x1000>, <0 0x1100e000 0 0x1000>;
-+ reg-names = "nfi", "ecc";
-+ interrupts = <GIC_SPI 96 IRQ_TYPE_LEVEL_LOW>;
-+ clocks = <&pericfg CLK_PERI_NFI_PD>,
-+ <&pericfg CLK_PERI_SNFI_PD>,
-+ <&pericfg CLK_PERI_NFIECC_PD>;
-+ clock-names = "nfi_clk", "pad_clk", "ecc_clk";
-+ #address-cells = <1>;
-+ #size-cells = <0>;
-+ status = "disabled";
-+ };
-+
- nor_flash: spi@11014000 {
- compatible = "mediatek,mt7622-nor",
- "mediatek,mt8173-nor";
--- a/arch/arm64/boot/dts/mediatek/mt7622-rfb1.dts
+++ b/arch/arm64/boot/dts/mediatek/mt7622-rfb1.dts
-@@ -539,6 +539,55 @@
+@@ -539,6 +539,65 @@
status = "disabled";
};
-+&snand {
-+ mediatek,quad-spi;
++&bch {
++ status = "okay";
++};
++
++&snfi {
+ pinctrl-names = "default";
+ pinctrl-0 = <&serial_nand_pins>;
+ status = "okay";
++ flash@0 {
++ compatible = "spi-nand";
++ reg = <0>;
++ spi-tx-bus-width = <4>;
++ spi-rx-bus-width = <4>;
++ nand-ecc-engine = <&snfi>;
+
-+ partitions {
-+ compatible = "fixed-partitions";
-+ #address-cells = <1>;
-+ #size-cells = <1>;
++ partitions {
++ compatible = "fixed-partitions";
++ #address-cells = <1>;
++ #size-cells = <1>;
+
-+ partition@0 {
-+ label = "Preloader";
-+ reg = <0x00000 0x0080000>;
-+ read-only;
-+ };
++ partition@0 {
++ label = "Preloader";
++ reg = <0x00000 0x0080000>;
++ read-only;
++ };
+
-+ partition@80000 {
-+ label = "ATF";
-+ reg = <0x80000 0x0040000>;
-+ };
++ partition@80000 {
++ label = "ATF";
++ reg = <0x80000 0x0040000>;
++ };
+
-+ partition@c0000 {
-+ label = "Bootloader";
-+ reg = <0xc0000 0x0080000>;
-+ };
++ partition@c0000 {
++ label = "Bootloader";
++ reg = <0xc0000 0x0080000>;
++ };
+
-+ partition@140000 {
-+ label = "Config";
-+ reg = <0x140000 0x0080000>;
-+ };
++ partition@140000 {
++ label = "Config";
++ reg = <0x140000 0x0080000>;
++ };
+
-+ partition@1c0000 {
-+ label = "Factory";
-+ reg = <0x1c0000 0x0100000>;
-+ };
++ partition@1c0000 {
++ label = "Factory";
++ reg = <0x1c0000 0x0100000>;
++ };
+
-+ partition@200000 {
-+ label = "firmware";
-+ reg = <0x2c0000 0x2000000>;
-+ };
++ partition@200000 {
++ label = "firmware";
++ reg = <0x2c0000 0x2000000>;
++ };
+
-+ partition@2200000 {
-+ label = "User_data";
-+ reg = <0x22c0000 0x4000000>;
++ partition@2200000 {
++ label = "User_data";
++ reg = <0x22c0000 0x4000000>;
++ };
+ };
+ };
+};