From 083eb80bf23619fe3d972bc6d28338dc85baa333 Mon Sep 17 00:00:00 2001 From: John Crispin Date: Tue, 25 Feb 2020 17:15:07 +0100 Subject: [PATCH] mediatek: add latest fixes provided by MTK Signed-off-by: John Crispin --- .../arch/arm/boot/dts/mt7629-rfb.dts | 95 ++++++++++++------- .../arm64/boot/dts/mediatek/mt7622-rfb1.dts | 47 +++++++-- target/linux/mediatek/image/mt7622.mk | 17 +--- target/linux/mediatek/image/mt7623.mk | 6 +- target/linux/mediatek/image/mt7629.mk | 8 +- ...atek-Add-SPI-Nand-support-for-MT7629.patch | 59 +----------- 6 files changed, 109 insertions(+), 123 deletions(-) diff --git a/target/linux/mediatek/files-4.19/arch/arm/boot/dts/mt7629-rfb.dts b/target/linux/mediatek/files-4.19/arch/arm/boot/dts/mt7629-rfb.dts index 8043238fea..8ea7b163d8 100644 --- a/target/linux/mediatek/files-4.19/arch/arm/boot/dts/mt7629-rfb.dts +++ b/target/linux/mediatek/files-4.19/arch/arm/boot/dts/mt7629-rfb.dts @@ -10,7 +10,7 @@ / { model = "MediaTek MT7629 reference board"; - compatible = "mediatek,mt7629-rfb", "mediatek,mt7629"; + compatible = "mediatek,mt7629-lynx-rfb", "mediatek,mt7629"; aliases { serial0 = &uart0; @@ -18,6 +18,7 @@ chosen { stdout-path = "serial0:115200n8"; + bootargs = "earlycon=uart8250,mmio32,0x11002000 console=ttyS0,115200n8"; }; gpio-keys { @@ -36,6 +37,13 @@ }; }; + gsw: gsw@0 { + compatible = "mediatek,mt753x"; + mediatek,ethsys = <ðsys>; + #address-cells = <1>; + #size-cells = <0>; + }; + memory@40000000 { device_type = "memory"; reg = <0 0x40000000 0 0x10000000>; @@ -58,46 +66,61 @@ regulator-boot-on; regulator-always-on; }; - - rtkgsw: rtkgsw@0 { - compatible = "mediatek,rtk-gsw"; - mediatek,ethsys = <ðsys>; - mediatek,mdio = <&mdio>; - status = "okay"; - }; }; ð { - pinctrl-names = "default"; - pinctrl-0 = <&ephy_leds_pins>; - status = "okay"; + pinctrl-names = "default"; + pinctrl-0 = <&ephy_leds_pins>; + status = "okay"; - gmac0: mac@0 { - compatible = "mediatek,eth-mac"; - reg = <0>; - phy-mode = "sgmii"; - fixed-link { - speed = <1000>; - full-duplex; - pause; - }; - }; + gmac0: mac@0 { + compatible = "mediatek,eth-mac"; + reg = <0>; + mtd-mac-address = <&factory 0x2a>; + phy-mode = "sgmii"; + fixed-link { + speed = <1000>; + full-duplex; + pause; + }; + }; - gmac1: mac@1 { - compatible = "mediatek,eth-mac"; - reg = <1>; - phy-handle = <&phy0>; - }; + gmac1: mac@1 { + compatible = "mediatek,eth-mac"; + reg = <1>; + mtd-mac-address = <&factory 0x24>; + phy-handle = <&phy0>; + }; - mdio: mdio-bus { - #address-cells = <1>; - #size-cells = <0>; + mdio: mdio-bus { + #address-cells = <1>; + #size-cells = <0>; - phy0: ethernet-phy@0 { - reg = <0>; - phy-mode = "gmii"; - }; - }; + phy0: ethernet-phy@0 { + reg = <0>; + phy-mode = "gmii"; + }; + }; +}; + +&gsw { + mediatek,mdio = <&mdio>; + mediatek,portmap = "llllw"; + mediatek,mdio_master_pinmux = <0>; + reset-gpios = <&pio 28 0>; + interrupt-parent = <&pio>; + interrupts = <6 IRQ_TYPE_LEVEL_HIGH>; + status = "okay"; + + port6: port@6 { + compatible = "mediatek,mt753x-port"; + reg = <6>; + phy-mode = "sgmii"; + fixed-link { + speed = <2500>; + full-duplex; + }; + }; }; &i2c { @@ -133,13 +156,13 @@ }; factory: partition@70000 { - label = "Factory"; + label = "factory"; reg = <0x70000 0x40000>; read-only; }; partition@b0000 { - label = "Kernel"; + label = "firmware"; reg = <0xb0000 0xb50000>; }; }; diff --git a/target/linux/mediatek/files-4.19/arch/arm64/boot/dts/mediatek/mt7622-rfb1.dts b/target/linux/mediatek/files-4.19/arch/arm64/boot/dts/mediatek/mt7622-rfb1.dts index 3805c5c4ce..ecd344c956 100644 --- a/target/linux/mediatek/files-4.19/arch/arm64/boot/dts/mediatek/mt7622-rfb1.dts +++ b/target/linux/mediatek/files-4.19/arch/arm64/boot/dts/mediatek/mt7622-rfb1.dts @@ -23,7 +23,7 @@ chosen { stdout-path = "serial0:115200n8"; - bootargs = "earlycon=uart8250,mmio32,0x11002000 swiotlb=512"; + bootargs = "earlycon=uart8250,mmio32,0x11002000 console=ttyS0,115200n1 swiotlb=512"; }; cpus { @@ -55,6 +55,13 @@ }; }; + gsw: gsw@0 { + compatible = "mediatek,mt753x"; + mediatek,ethsys = <ðsys>; + #address-cells = <1>; + #size-cells = <0>; + }; + memory { reg = <0 0x40000000 0 0x3F000000>; }; @@ -84,14 +91,6 @@ regulator-boot-on; regulator-always-on; }; - - rtkgsw: rtkgsw@0 { - compatible = "mediatek,rtk-gsw"; - mediatek,ethsys = <ðsys>; - mediatek,mdio = <&mdio>; - mediatek,reset-pin = <&pio 54 0>; - status = "okay"; - }; }; &pcie { @@ -405,6 +404,36 @@ }; }; +&gsw { + mediatek,mdio = <&mdio>; + mediatek,portmap = "llllw"; + mediatek,mdio_master_pinmux = <0>; + reset-gpios = <&pio 54 0>; + interrupt-parent = <&pio>; + interrupts = <53 IRQ_TYPE_LEVEL_HIGH>; + status = "okay"; + + port5: port@5 { + compatible = "mediatek,mt753x-port"; + reg = <5>; + phy-mode = "rgmii"; + fixed-link { + speed = <1000>; + full-duplex; + }; + }; + + port6: port@6 { + compatible = "mediatek,mt753x-port"; + reg = <6>; + phy-mode = "sgmii"; + fixed-link { + speed = <2500>; + full-duplex; + }; + }; +}; + &i2c1 { pinctrl-names = "default"; pinctrl-0 = <&i2c1_pins>; diff --git a/target/linux/mediatek/image/mt7622.mk b/target/linux/mediatek/image/mt7622.mk index 9a5aedc88d..486ab98b0f 100644 --- a/target/linux/mediatek/image/mt7622.mk +++ b/target/linux/mediatek/image/mt7622.mk @@ -8,19 +8,8 @@ define Device/mediatek_mt7622-rfb1 endef TARGET_DEVICES += mediatek_mt7622-rfb1 -define Device/mediatek_mt7622-lynx-rfb1 - DEVICE_VENDOR := MediaTek - DEVICE_MODEL := MTK7622 Lynx rfb1 AP - DEVICE_DTS := mt7622-lynx-rfb1 - DEVICE_DTS_DIR := $(DTS_DIR)/mediatek - SUPPORTED_DEVICES := mediatek,mt7622-rfb1 - DEVICE_PACKAGES := kmod-usb-ohci kmod-usb2 kmod-usb3 \ - kmod-ata-core kmod-ata-ahci-mtk -endef -TARGET_DEVICES += mediatek_mt7622-lynx-rfb1 - -define Device/lemaker_bananapi-bpi-r64 - DEVICE_VENDOR := LeMaker +define Device/bpi_bananapi-r64 + DEVICE_VENDOR := Bpi DEVICE_MODEL := Banana Pi R64 DEVICE_DTS := mt7622-bananapi-bpi-r64 DEVICE_DTS_DIR := $(DTS_DIR)/mediatek @@ -28,4 +17,4 @@ define Device/lemaker_bananapi-bpi-r64 DEVICE_PACKAGES := kmod-usb-ohci kmod-usb2 kmod-usb3 \ kmod-ata-core kmod-ata-ahci-mtk endef -TARGET_DEVICES += lemaker_bananapi-bpi-r64 +TARGET_DEVICES += bpi_bananapi-r64 diff --git a/target/linux/mediatek/image/mt7623.mk b/target/linux/mediatek/image/mt7623.mk index fd609d22fa..4c3c927439 100644 --- a/target/linux/mediatek/image/mt7623.mk +++ b/target/linux/mediatek/image/mt7623.mk @@ -9,10 +9,10 @@ define Device/unielec_u7623-02-emmc-512m endef TARGET_DEVICES += unielec_u7623-02-emmc-512m -define Device/lemaker_bananapi-bpi-r2 - DEVICE_VENDOR := LeMaker +define Device/bpi_bananapi-r2 + DEVICE_VENDOR := Bpi DEVICE_MODEL := Banana Pi R2 DEVICE_DTS := mt7623n-bananapi-bpi-r2 SUPPORTED_DEVICES := bananapi,bpi-r2 endef -TARGET_DEVICES += lemaker_bananapi-bpi-r2 +TARGET_DEVICES += bpi_bananapi-r2 diff --git a/target/linux/mediatek/image/mt7629.mk b/target/linux/mediatek/image/mt7629.mk index 71fb3dda09..ef4b752351 100644 --- a/target/linux/mediatek/image/mt7629.mk +++ b/target/linux/mediatek/image/mt7629.mk @@ -1,7 +1,7 @@ -define Device/mediatek_mt7629-lynx-rfb +define Device/mediatek_mt7629-rfb DEVICE_VENDOR := MediaTek - DEVICE_MODEL := MT7629 Lynx reference board - DEVICE_DTS := mt7629-lynx-rfb + DEVICE_MODEL := MT7629 rfb AP + DEVICE_DTS := mt7629-rfb DEVICE_PACKAGES := swconfig endef -TARGET_DEVICES += mediatek_mt7629-lynx-rfb +TARGET_DEVICES += mediatek_mt7629-rfb diff --git a/target/linux/mediatek/patches-4.19/0307-spi-mem-Mediatek-Add-SPI-Nand-support-for-MT7629.patch b/target/linux/mediatek/patches-4.19/0307-spi-mem-Mediatek-Add-SPI-Nand-support-for-MT7629.patch index 31530afc9b..b8cb416b3e 100644 --- a/target/linux/mediatek/patches-4.19/0307-spi-mem-Mediatek-Add-SPI-Nand-support-for-MT7629.patch +++ b/target/linux/mediatek/patches-4.19/0307-spi-mem-Mediatek-Add-SPI-Nand-support-for-MT7629.patch @@ -6,65 +6,10 @@ Subject: [PATCH] spi: spi-mem: Mediatek: Add SPI Nand support for MT7629 Signed-off-by: Xiangsheng Hou --- arch/arm/boot/dts/mt7629-rfb.dts | 45 ++++++++++++++++++++++++++++++++ - arch/arm/boot/dts/mt7629-lynx-rfb.dts | 45 ++++++++++++++++++++++++++++++++ arch/arm/boot/dts/mt7629.dtsi | 22 ++++++++++++++++ drivers/spi/spi-mtk-snfi.c | 12 +++++++++ 3 files changed, 79 insertions(+) ---- a/arch/arm/boot/dts/mt7629-rfb.dts -+++ b/arch/arm/boot/dts/mt7629-rfb.dts -@@ -258,6 +258,51 @@ - }; - }; - -+&bch { -+ status = "okay"; -+}; -+ -+&snfi { -+ pinctrl-names = "default"; -+ pinctrl-0 = <&serial_nand_pins>; -+ status = "okay"; -+ -+ spi_nand@0 { -+ #address-cells = <1>; -+ #size-cells = <1>; -+ compatible = "spi-nand"; -+ spi-max-frequency = <104000000>; -+ reg = <0>; -+ -+ partitions { -+ compatible = "fixed-partitions"; -+ #address-cells = <1>; -+ #size-cells = <1>; -+ -+ partition@0 { -+ label = "Bootloader"; -+ reg = <0x00000 0x0100000>; -+ read-only; -+ }; -+ -+ partition@100000 { -+ label = "Config"; -+ reg = <0x100000 0x0040000>; -+ }; -+ -+ partition@140000 { -+ label = "factory"; -+ reg = <0x140000 0x0080000>; -+ }; -+ -+ partition@1c0000 { -+ label = "firmware"; -+ reg = <0x1c0000 0x1000000>; -+ }; -+ }; -+ }; -+}; -+ - &spi { - pinctrl-names = "default"; - pinctrl-0 = <&spi_pins>; --- a/arch/arm/boot/dts/mt7629.dtsi +++ b/arch/arm/boot/dts/mt7629.dtsi @@ -259,6 +259,28 @@ @@ -119,8 +64,8 @@ Signed-off-by: Xiangsheng Hou { /* sentinel */ } }; ---- a/arch/arm/boot/dts/mt7629-lynx-rfb.dts -+++ b/arch/arm/boot/dts/mt7629-lynx-rfb.dts +--- a/arch/arm/boot/dts/mt7629-rfb.dts ++++ b/arch/arm/boot/dts/mt7629-rfb.dts @@ -281,6 +281,52 @@ }; };