From 3b5b3d89ed075214d4eb3f47ea372261a3cdad27 Mon Sep 17 00:00:00 2001 From: Pawel Dembicki Date: Fri, 15 Mar 2024 11:54:41 +0100 Subject: [PATCH] kirkwood: split files into 6.1 and 6.6 version Upstream change location of kirkwood dts files. Split downstream files location for better upstream follow. Signed-off-by: Pawel Dembicki --- .../arch/arm/boot/dts/kirkwood-e4200-v2.dts | 0 .../arch/arm/boot/dts/kirkwood-ea3500.dts | 0 .../arch/arm/boot/dts/kirkwood-ea4500.dts | 0 .../arch/arm/boot/dts/kirkwood-goflexhome.dts | 0 .../arch/arm/boot/dts/kirkwood-ix4-200d.dts | 0 .../arch/arm/boot/dts/kirkwood-nas1.dts | 0 .../arch/arm/boot/dts/kirkwood-nsa310b.dts | 0 .../arch/arm/boot/dts/kirkwood-on100.dts | 0 .../arch/arm/boot/dts/kirkwood-stora.dts | 0 .../boot/dts/marvell/kirkwood-e4200-v2.dts | 8 + .../arm/boot/dts/marvell/kirkwood-ea3500.dts | 243 ++++++++++++++++++ .../arm/boot/dts/marvell/kirkwood-ea4500.dts | 8 + .../boot/dts/marvell/kirkwood-goflexhome.dts | 135 ++++++++++ .../boot/dts/marvell/kirkwood-ix4-200d.dts | 199 ++++++++++++++ .../arm/boot/dts/marvell/kirkwood-nas1.dts | 234 +++++++++++++++++ .../arm/boot/dts/marvell/kirkwood-nsa310b.dts | 144 +++++++++++ .../arm/boot/dts/marvell/kirkwood-on100.dts | 165 ++++++++++++ .../arm/boot/dts/marvell/kirkwood-stora.dts | 227 ++++++++++++++++ target/linux/kirkwood/image/Makefile | 3 + 19 files changed, 1366 insertions(+) rename target/linux/kirkwood/{files => files-6.1}/arch/arm/boot/dts/kirkwood-e4200-v2.dts (100%) rename target/linux/kirkwood/{files => files-6.1}/arch/arm/boot/dts/kirkwood-ea3500.dts (100%) rename target/linux/kirkwood/{files => files-6.1}/arch/arm/boot/dts/kirkwood-ea4500.dts (100%) rename target/linux/kirkwood/{files => files-6.1}/arch/arm/boot/dts/kirkwood-goflexhome.dts (100%) rename target/linux/kirkwood/{files => files-6.1}/arch/arm/boot/dts/kirkwood-ix4-200d.dts (100%) rename target/linux/kirkwood/{files => files-6.1}/arch/arm/boot/dts/kirkwood-nas1.dts (100%) rename target/linux/kirkwood/{files => files-6.1}/arch/arm/boot/dts/kirkwood-nsa310b.dts (100%) rename target/linux/kirkwood/{files => files-6.1}/arch/arm/boot/dts/kirkwood-on100.dts (100%) rename target/linux/kirkwood/{files => files-6.1}/arch/arm/boot/dts/kirkwood-stora.dts (100%) create mode 100644 target/linux/kirkwood/files-6.6/arch/arm/boot/dts/marvell/kirkwood-e4200-v2.dts create mode 100644 target/linux/kirkwood/files-6.6/arch/arm/boot/dts/marvell/kirkwood-ea3500.dts create mode 100644 target/linux/kirkwood/files-6.6/arch/arm/boot/dts/marvell/kirkwood-ea4500.dts create mode 100644 target/linux/kirkwood/files-6.6/arch/arm/boot/dts/marvell/kirkwood-goflexhome.dts create mode 100644 target/linux/kirkwood/files-6.6/arch/arm/boot/dts/marvell/kirkwood-ix4-200d.dts create mode 100644 target/linux/kirkwood/files-6.6/arch/arm/boot/dts/marvell/kirkwood-nas1.dts create mode 100644 target/linux/kirkwood/files-6.6/arch/arm/boot/dts/marvell/kirkwood-nsa310b.dts create mode 100644 target/linux/kirkwood/files-6.6/arch/arm/boot/dts/marvell/kirkwood-on100.dts create mode 100644 target/linux/kirkwood/files-6.6/arch/arm/boot/dts/marvell/kirkwood-stora.dts diff --git a/target/linux/kirkwood/files/arch/arm/boot/dts/kirkwood-e4200-v2.dts b/target/linux/kirkwood/files-6.1/arch/arm/boot/dts/kirkwood-e4200-v2.dts similarity index 100% rename from target/linux/kirkwood/files/arch/arm/boot/dts/kirkwood-e4200-v2.dts rename to target/linux/kirkwood/files-6.1/arch/arm/boot/dts/kirkwood-e4200-v2.dts diff --git a/target/linux/kirkwood/files/arch/arm/boot/dts/kirkwood-ea3500.dts b/target/linux/kirkwood/files-6.1/arch/arm/boot/dts/kirkwood-ea3500.dts similarity index 100% rename from target/linux/kirkwood/files/arch/arm/boot/dts/kirkwood-ea3500.dts rename to target/linux/kirkwood/files-6.1/arch/arm/boot/dts/kirkwood-ea3500.dts diff --git a/target/linux/kirkwood/files/arch/arm/boot/dts/kirkwood-ea4500.dts b/target/linux/kirkwood/files-6.1/arch/arm/boot/dts/kirkwood-ea4500.dts similarity index 100% rename from target/linux/kirkwood/files/arch/arm/boot/dts/kirkwood-ea4500.dts rename to target/linux/kirkwood/files-6.1/arch/arm/boot/dts/kirkwood-ea4500.dts diff --git a/target/linux/kirkwood/files/arch/arm/boot/dts/kirkwood-goflexhome.dts b/target/linux/kirkwood/files-6.1/arch/arm/boot/dts/kirkwood-goflexhome.dts similarity index 100% rename from target/linux/kirkwood/files/arch/arm/boot/dts/kirkwood-goflexhome.dts rename to target/linux/kirkwood/files-6.1/arch/arm/boot/dts/kirkwood-goflexhome.dts diff --git a/target/linux/kirkwood/files/arch/arm/boot/dts/kirkwood-ix4-200d.dts b/target/linux/kirkwood/files-6.1/arch/arm/boot/dts/kirkwood-ix4-200d.dts similarity index 100% rename from target/linux/kirkwood/files/arch/arm/boot/dts/kirkwood-ix4-200d.dts rename to target/linux/kirkwood/files-6.1/arch/arm/boot/dts/kirkwood-ix4-200d.dts diff --git a/target/linux/kirkwood/files/arch/arm/boot/dts/kirkwood-nas1.dts b/target/linux/kirkwood/files-6.1/arch/arm/boot/dts/kirkwood-nas1.dts similarity index 100% rename from target/linux/kirkwood/files/arch/arm/boot/dts/kirkwood-nas1.dts rename to target/linux/kirkwood/files-6.1/arch/arm/boot/dts/kirkwood-nas1.dts diff --git a/target/linux/kirkwood/files/arch/arm/boot/dts/kirkwood-nsa310b.dts b/target/linux/kirkwood/files-6.1/arch/arm/boot/dts/kirkwood-nsa310b.dts similarity index 100% rename from target/linux/kirkwood/files/arch/arm/boot/dts/kirkwood-nsa310b.dts rename to target/linux/kirkwood/files-6.1/arch/arm/boot/dts/kirkwood-nsa310b.dts diff --git a/target/linux/kirkwood/files/arch/arm/boot/dts/kirkwood-on100.dts b/target/linux/kirkwood/files-6.1/arch/arm/boot/dts/kirkwood-on100.dts similarity index 100% rename from target/linux/kirkwood/files/arch/arm/boot/dts/kirkwood-on100.dts rename to target/linux/kirkwood/files-6.1/arch/arm/boot/dts/kirkwood-on100.dts diff --git a/target/linux/kirkwood/files/arch/arm/boot/dts/kirkwood-stora.dts b/target/linux/kirkwood/files-6.1/arch/arm/boot/dts/kirkwood-stora.dts similarity index 100% rename from target/linux/kirkwood/files/arch/arm/boot/dts/kirkwood-stora.dts rename to target/linux/kirkwood/files-6.1/arch/arm/boot/dts/kirkwood-stora.dts diff --git a/target/linux/kirkwood/files-6.6/arch/arm/boot/dts/marvell/kirkwood-e4200-v2.dts b/target/linux/kirkwood/files-6.6/arch/arm/boot/dts/marvell/kirkwood-e4200-v2.dts new file mode 100644 index 0000000000..bfd708a677 --- /dev/null +++ b/target/linux/kirkwood/files-6.6/arch/arm/boot/dts/marvell/kirkwood-e4200-v2.dts @@ -0,0 +1,8 @@ +// SPDX-License-Identifier: GPL-2.0-or-later OR MIT + +#include "kirkwood-linksys-viper.dts" + +/ { + model = "Linksys E4200 v2 (Viper)"; + compatible = "linksys,e4200-v2", "linksys,viper", "marvell,kirkwood-88f6282", "marvell,kirkwood"; +}; diff --git a/target/linux/kirkwood/files-6.6/arch/arm/boot/dts/marvell/kirkwood-ea3500.dts b/target/linux/kirkwood/files-6.6/arch/arm/boot/dts/marvell/kirkwood-ea3500.dts new file mode 100644 index 0000000000..e9f9e30bb4 --- /dev/null +++ b/target/linux/kirkwood/files-6.6/arch/arm/boot/dts/marvell/kirkwood-ea3500.dts @@ -0,0 +1,243 @@ +// SPDX-License-Identifier: GPL-2.0-only +/* + * kirkwood-linksys-audi.dts - Device Tree file for Linksys EA3500 + * + * (c) 2013 Jonas Gorski + * (c) 2013 Deutsche Telekom Innovation Laboratories + * (c) 2014 Luka Perkov + * (c) 2014 Dan Walters + * + */ + +/dts-v1/; + +#include "kirkwood.dtsi" +#include "kirkwood-6282.dtsi" + +/ { + model = "Linksys EA3500 (Audi)"; + compatible = "linksys,ea3500", "linksys,audi", "marvell,kirkwood-88f6282", "marvell,kirkwood"; + + memory@0 { + device_type = "memory"; + reg = <0x00000000 0x4000000>; + }; + + aliases { + led-boot = &led_power; + led-failsafe = &led_power; + led-running = &led_power; + led-upgrade = &led_power; + serial0 = &uart0; + }; + + chosen { + stdout-path = "serial0:115200n8"; + }; + + gpio-keys { + compatible = "gpio-keys"; + + pinctrl-0 = <&pmx_btn_wps &pmx_btn_reset>; + pinctrl-names = "default"; + + wps { + label = "WPS Button"; + linux,code = ; + gpios = <&gpio1 15 GPIO_ACTIVE_LOW>; + }; + + reset { + label = "Reset Button"; + linux,code = ; + gpios = <&gpio1 16 GPIO_ACTIVE_LOW>; + }; + }; + + gpio-leds { + compatible = "gpio-leds"; + + pinctrl-0 = <&pmx_led_green_power>; + pinctrl-names = "default"; + + led_power: power { + label = "audi:green:power"; + gpios = <&gpio0 7 GPIO_ACTIVE_HIGH>; + default-state = "on"; + }; + }; +}; + +&pinctrl { + pmx_led_green_power: pmx-led-green-power { + marvell,pins = "mpp7"; + marvell,function = "gpo"; + }; + + pmx_btn_wps: pmx-btn-wps { + marvell,pins = "mpp47"; + marvell,function = "gpio"; + }; + + pmx_btn_reset: pmx-btn-reset { + marvell,pins = "mpp48"; + marvell,function = "gpio"; + }; +}; + +&mdio { + status = "okay"; + + switch@10 { + compatible = "marvell,mv88e6085"; + #address-cells = <1>; + #size-cells = <0>; + reg = <16>; + + ports { + #address-cells = <1>; + #size-cells = <0>; + + port@0 { + reg = <0>; + label = "ethernet1"; + }; + + port@1 { + reg = <1>; + label = "ethernet2"; + }; + + port@2 { + reg = <2>; + label = "ethernet3"; + }; + + port@3 { + reg = <3>; + label = "ethernet4"; + }; + + port@4 { + reg = <4>; + label = "internet"; + }; + + port@5 { + reg = <5>; + phy-mode = "rgmii-id"; + ethernet = <ð0port>; + fixed-link { + speed = <1000>; + full-duplex; + }; + }; + }; + }; +}; + +&nand { + status = "okay"; + + pinctrl-0 = <&pmx_nand>; + pinctrl-names = "default"; + + partitions { + compatible = "fixed-partitions"; + #address-cells = <1>; + #size-cells = <1>; + + partition@0 { + label = "u-boot"; + reg = <0x0 0x80000>; + read-only; + }; + + partition@80000 { + label = "u_env"; + reg = <0x80000 0x4000>; + }; + + partition@84000 { + label = "s_env"; + reg = <0x84000 0x4000>; + }; + + partition@200000 { + label = "kernel1"; + reg = <0x200000 0x1400000>; + }; + + partition@600000 { + label = "rootfs1"; + reg = <0x600000 0x1000000>; + }; + + partition@1600000 { + label = "kernel2"; + reg = <0x1600000 0x1400000>; + }; + + partition@1a00000 { + label = "rootfs2"; + reg = <0x1a00000 0x1000000>; + }; + + partition@2a00000 { + label = "syscfg"; + reg = <0x2a00000 0x1600000>; + }; + + partition@88000 { + label = "unused"; + reg = <0x88000 0x178000>; + }; + }; +}; + +&pciec { + status = "okay"; +}; + +&pcie0 { + status = "okay"; +}; + +&pcie1 { + status = "okay"; +}; + +&mdio { + status = "okay"; +}; + +&uart0 { + status = "okay"; +}; + +/* eth0 is connected to a Marvell 88E6171 switch, without a PHY. So set + * fixed speed and duplex. + */ +ð0 { + status = "okay"; + + ethernet0-port@0 { + speed = <1000>; + duplex = <1>; + phy-mode = "rgmii"; + }; +}; + +/* eth1 is connected to the switch at port 6. However DSA only supports a + * single CPU port. This port is disabled to avoid confusion. + */ +ð1 { + status = "disabled"; +}; + +/* There is no battery on the board, so the RTC does not keep + * time when there is no power, making it useless. + */ +&rtc { + status = "disabled"; +}; diff --git a/target/linux/kirkwood/files-6.6/arch/arm/boot/dts/marvell/kirkwood-ea4500.dts b/target/linux/kirkwood/files-6.6/arch/arm/boot/dts/marvell/kirkwood-ea4500.dts new file mode 100644 index 0000000000..495cff34a4 --- /dev/null +++ b/target/linux/kirkwood/files-6.6/arch/arm/boot/dts/marvell/kirkwood-ea4500.dts @@ -0,0 +1,8 @@ +// SPDX-License-Identifier: GPL-2.0-or-later OR MIT + +#include "kirkwood-linksys-viper.dts" + +/ { + model = "Linksys EA4500 (Viper)"; + compatible = "linksys,ea4500", "linksys,viper", "marvell,kirkwood-88f6282", "marvell,kirkwood"; +}; diff --git a/target/linux/kirkwood/files-6.6/arch/arm/boot/dts/marvell/kirkwood-goflexhome.dts b/target/linux/kirkwood/files-6.6/arch/arm/boot/dts/marvell/kirkwood-goflexhome.dts new file mode 100644 index 0000000000..b0b69b46cd --- /dev/null +++ b/target/linux/kirkwood/files-6.6/arch/arm/boot/dts/marvell/kirkwood-goflexhome.dts @@ -0,0 +1,135 @@ +/dts-v1/; + +#include "kirkwood.dtsi" +#include "kirkwood-6281.dtsi" + +/ { + model = "Seagate GoFlex Home"; + compatible = "seagate,goflexhome", "marvell,kirkwood-88f6281", "marvell,kirkwood"; + + aliases { + led-boot = &led_health; + led-failsafe = &led_fault; + led-running = &led_health; + led-upgrade = &led_fault; + }; + + memory@0 { + device_type = "memory"; + reg = <0x00000000 0x8000000>; + }; + + chosen { + bootargs = "console=ttyS0,115200n8 earlyprintk root=/dev/sda1 rootdelay=10"; + stdout-path = &uart0; + }; + + ocp@f1000000 { + pinctrl: pin-controller@10000 { + pmx_usb_power_enable: pmx-usb-power-enable { + marvell,pins = "mpp29"; + marvell,function = "gpio"; + }; + + pmx_led_white: pmx-led-white { + marvell,pins = "mpp40"; + marvell,function = "gpio"; + }; + + pmx_led_green: pmx-led_green { + marvell,pins = "mpp46"; + marvell,function = "gpio"; + }; + + pmx_led_orange: pmx-led-orange { + marvell,pins = "mpp47"; + marvell,function = "gpio"; + }; + }; + + serial@12000 { + status = "okay"; + }; + + sata@80000 { + status = "okay"; + nr-ports = <2>; + }; + }; + + gpio-leds { + compatible = "gpio-leds"; + + led_health: health { + label = "status:green:health"; + gpios = <&gpio1 14 GPIO_ACTIVE_LOW>; + default-state = "on"; + }; + + led_fault: fault { + label = "status:orange:fault"; + gpios = <&gpio1 15 GPIO_ACTIVE_LOW>; + }; + + misc { + label = "status:white:misc"; + gpios = <&gpio1 8 GPIO_ACTIVE_LOW>; + linux,default-trigger = "disk-activity"; + }; + }; + + regulators { + compatible = "simple-bus"; + + #address-cells = <1>; + #size-cells = <0>; + + pinctrl-0 = <&pmx_usb_power_enable>; + pinctrl-names = "default"; + + usb_power: regulator@1 { + compatible = "regulator-fixed"; + reg = <1>; + regulator-name = "USB Power"; + regulator-min-microvolt = <5000000>; + regulator-max-microvolt = <5000000>; + enable-active-high; + regulator-always-on; + regulator-boot-on; + gpio = <&gpio0 29 GPIO_ACTIVE_HIGH>; + }; + }; +}; + +&nand { + status = "okay"; + + chip-delay = <40>; + + partition@0 { + label = "u-boot"; + reg = <0x0000000 0x0100000>; + read-only; + }; + + partition@100000 { + label = "ubi"; + reg = <0x0100000 0xff00000>; + }; +}; + +&mdio { + status = "okay"; + + ethphy0: ethernet-phy@0 { + reg = <0>; + }; +}; + +ð0 { + status = "okay"; + + ethernet0-port@0 { + phy-handle = <ðphy0>; + }; +}; diff --git a/target/linux/kirkwood/files-6.6/arch/arm/boot/dts/marvell/kirkwood-ix4-200d.dts b/target/linux/kirkwood/files-6.6/arch/arm/boot/dts/marvell/kirkwood-ix4-200d.dts new file mode 100644 index 0000000000..6220fbf137 --- /dev/null +++ b/target/linux/kirkwood/files-6.6/arch/arm/boot/dts/marvell/kirkwood-ix4-200d.dts @@ -0,0 +1,199 @@ +// SPDX-License-Identifier: GPL-2.0-or-later OR MIT +/dts-v1/; + +#include "kirkwood.dtsi" +#include "kirkwood-6281.dtsi" +#include + +/ { + model = "Iomega ix4-200d"; + compatible = "iom,ix4-200d", "marvell,kirkwood-88f6281", "marvell,kirkwood"; + + aliases { + led-boot = &led_status_white; + led-failsafe = &led_status_red; + led-running = &led_power_white; + led-upgrade = &led_status_red; + }; + + chosen { + bootargs = "console=ttyS0,115200n8 earlyprintk"; + stdout-path = &uart0; + }; + + memory { + device_type = "memory"; + reg = <0x00000000 0x20000000>; + }; + + ocp@f1000000 { + i2c@11000 { + status = "okay"; + + adt7473@2e { + compatible = "adi,adt7473"; + reg = <0x2e>; + }; + }; + + pinctrl: pin-controller@10000 { + pmx_spi: pmx-spi { + marvell,pins = "mpp12", "mpp13", "mpp14"; + marvell,function = "gpio"; + }; + + pmx_keys: pmx-keys { + marvell,pins = "mpp16", "mpp29", "mpp47", "mpp49"; + marvell,function = "gpio"; + }; + }; + + sata@80000 { + status = "okay"; + nr-ports = <2>; + }; + + serial@12000 { + status = "okay"; + }; + + spi3 { + compatible = "spi-gpio"; + #address-cells = <0x1>; + ranges; + status = "okay"; + sck-gpios = <&gpio0 13 GPIO_ACTIVE_LOW>; + mosi-gpios = <&gpio0 12 GPIO_ACTIVE_LOW>; + cs-gpios = <&gpio0 14 GPIO_ACTIVE_LOW>; + num-chipselects = <1>; + #size-cells = <0>; + + gpio_spi: gpio_spi@0 { + compatible = "fairchild,74hc595"; + reg = <0>; + gpio-controller; + #gpio-cells = <2>; + registers-number = <1>; + spi-max-frequency = <100000>; + }; + }; + + gpio-keys { + compatible = "gpio-keys"; + pinctrl-0 = <&pmx_keys>; + pinctrl-names = "default"; + + button-0 { + label = "Next Button"; + linux,code = ; + gpios = <&gpio0 16 GPIO_ACTIVE_HIGH>; + }; + + button-1 { + label = "Reset Button"; + linux,code = ; + gpios = <&gpio0 29 GPIO_ACTIVE_HIGH>; + }; + + button-2 { + label = "Cancel Button"; + linux,code = ; + gpios = <&gpio1 15 GPIO_ACTIVE_LOW>; + }; + + button-3 { + label = "Power Button"; + linux,code = ; + gpios = <&gpio1 17 GPIO_ACTIVE_LOW>; + }; + }; + + gpio-leds { + compatible = "gpio-leds"; + + led_status_white: led-0 { + function = LED_FUNCTION_STATUS; + color = ; + gpios = <&gpio_spi 4 GPIO_ACTIVE_LOW>; + }; + + led_status_red: led-1 { + function = LED_FUNCTION_STATUS; + color = ; + gpios = <&gpio_spi 5 GPIO_ACTIVE_LOW>; + }; + + led_power_white: led-2 { + function = LED_FUNCTION_POWER; + color = ; + gpios = <&gpio_spi 7 GPIO_ACTIVE_HIGH>; + }; + }; + }; +}; + +ð0 { + status = "okay"; + ethernet0-port@0 { + phy-handle = <ðphy0>; + }; +}; + +ð1 { + status = "okay"; + ethernet1-port@0 { + phy-handle = <ðphy1>; + }; +}; + +&mdio { + status = "okay"; + + ethphy0: ethernet-phy@8 { + reg = <8>; + }; + + ethphy1: ethernet-phy@9 { + reg = <9>; + }; +}; + +&nand { + status = "okay"; + + partitions { + compatible = "fixed-partitions"; + #address-cells = <1>; + #size-cells = <1>; + + partition@0 { + label = "u-boot"; + reg = <0x0000000 0x100000>; + read-only; + }; + + partition@a0000 { + label = "u-boot environment"; + reg = <0xa0000 0x20000>; + read-only; + }; + + partition@100000 { + label = "kernel"; + reg = <0x100000 0x400000>; + }; + + partition@500000 { + label = "ubi"; + reg = <0x500000 0x1B00000>; + }; + }; +}; + +&pciec { + status = "okay"; +}; + +&pcie0 { + status = "okay"; +}; diff --git a/target/linux/kirkwood/files-6.6/arch/arm/boot/dts/marvell/kirkwood-nas1.dts b/target/linux/kirkwood/files-6.6/arch/arm/boot/dts/marvell/kirkwood-nas1.dts new file mode 100644 index 0000000000..379db8acd8 --- /dev/null +++ b/target/linux/kirkwood/files-6.6/arch/arm/boot/dts/marvell/kirkwood-nas1.dts @@ -0,0 +1,234 @@ +// SPDX-License-Identifier: GPL-2.0-or-later OR MIT +/dts-v1/; + +#include + +#include "kirkwood.dtsi" +#include "kirkwood-6281.dtsi" + +/ { + model = "ipTIME NAS1"; + compatible = "iptime,nas1", "marvell,kirkwood-88f6281", "marvell,kirkwood"; + + aliases { + serial0 = &uart0; + led-boot = &led_ready; + led-failsafe = &led_ready; + led-running = &led_ready; + led-upgrade = &led_ready; + }; + + chosen { + /* + * "root" argument from the stock bootloader should be ignored + * as it'll prevent the kernel from finding the correct rootfs. + */ + bootargs-append = " console=ttyS0,115200 root="; + stdout-path = "serial0:115200n8"; + }; + + memory@0 { + device_type = "memory"; + reg = <0x00000000 0x10000000>; + }; + + gpio-leds { + compatible = "gpio-leds"; + + pinctrl-0 = <&pmx_led>; + pinctrl-names = "default"; + + hdd { + label = "blue:hdd"; + gpios = <&gpio1 3 GPIO_ACTIVE_HIGH>; + linux,default-trigger = "ata1"; + }; + + usb { + function = LED_FUNCTION_USB; + color = ; + gpios = <&gpio1 13 GPIO_ACTIVE_LOW>; + trigger-sources = <&ehci_port1>; + linux,default-trigger = "usbport"; + }; + + led_ready: ready { + label = "blue:ready"; + gpios = <&gpio1 14 GPIO_ACTIVE_LOW>; + }; + }; + + gpio-keys { + compatible = "gpio-keys"; + + pinctrl-0 = <&pmx_button>; + pinctrl-names = "default"; + + reset-copy { + label = "Reset/Copy Button"; + linux,code = ; + gpios = <&gpio1 12 GPIO_ACTIVE_LOW>; + }; + + power { + label = "Power Button"; + linux,code = ; + gpios = <&gpio1 16 GPIO_ACTIVE_HIGH>; + }; + }; + + gpio-fan { + compatible = "gpio-fan"; + + pinctrl-0 = <&pmx_fan>; + pinctrl-names = "default"; + gpios = <&gpio1 9 GPIO_ACTIVE_HIGH>, + <&gpio1 10 GPIO_ACTIVE_HIGH>; + /* We don't know the exact rpm, just use dummy values here. */ + gpio-fan,speed-map = <0 0>, <1 1>, <2 2>; + #cooling-cells = <2>; + }; + + gpio-poweroff { + compatible = "gpio-poweroff"; + gpios = <&pca9536 0 GPIO_ACTIVE_LOW>; + }; + + regulators { + compatible = "simple-bus"; + #address-cells = <1>; + #size-cells = <0>; + + pinctrl-0 = <&pmx_usb_vbus>; + pinctrl-names = "default"; + + regulator@1 { + compatible = "regulator-fixed"; + reg = <1>; + regulator-name = "USB Power"; + regulator-min-microvolt = <5000000>; + regulator-max-microvolt = <5000000>; + enable-active-high; + regulator-always-on; + gpio = <&gpio1 11 GPIO_ACTIVE_HIGH>; + }; + }; +}; + +&pinctrl { + pmx_led: pmx-led { + marvell,pins = "mpp35", "mpp45", "mpp46"; + marvell,function = "gpio"; + }; + + pmx_fan: pmx-fan { + marvell,pins = "mpp41", "mpp42"; + marvell,function = "gpio"; + }; + + pmx_usb_vbus: pmx-usb-vbus { + marvell,pins = "mpp43"; + marvell,function = "gpio"; + }; + + pmx_button: pmx-button { + marvell,pins = "mpp44", "mpp48"; + marvell,function = "gpio"; + }; +}; + +&spi0 { + status = "okay"; + + flash@0 { + compatible = "jedec,spi-nor"; + reg = <0>; + spi-max-frequency = <20000000>; + + partitions { + compatible = "fixed-partitions"; + #address-cells = <1>; + #size-cells = <1>; + + partition@0 { + label = "u-boot"; + reg = <0x0 0x40000>; + read-only; + }; + + partition@40000 { + compatible = "openwrt,uimage", "denx,uimage"; + openwrt,offset = <0x400>; + label = "firmware"; + reg = <0x40000 0xf80000>; + }; + + partition@fc0000 { + label = "config"; + reg = <0xfc0000 0x40000>; + read-only; + }; + }; + }; +}; + +&rtc { + status = "disabled"; +}; + +&i2c0 { + status = "okay"; + + pca9536: gpio@41 { + compatible = "nxp,pca9536"; + reg = <0x41>; + gpio-controller; + #gpio-cells = <2>; + }; +}; + +&uart0 { + status = "okay"; +}; + +&usb0 { + status = "okay"; + + #address-cells = <1>; + #size-cells = <0>; + + ehci_port1: port@1 { + reg = <1>; + #trigger-source-cells = <0>; + }; +}; + +&mdio { + status = "okay"; + + ethphyb: ethernet-phy@b { + reg = <0x0b>; + }; +}; + +ð1 { + status = "okay"; +}; + +ð1port { + phy-handle = <ðphyb>; + phy-connection-type = "rgmii-id"; +}; + +&sata { + status = "okay"; + + #address-cells = <1>; + #size-cells = <0>; + nr-ports = <1>; + + sata-port@0 { + reg = <0>; + #thermal-sensor-cells = <0>; + }; +}; diff --git a/target/linux/kirkwood/files-6.6/arch/arm/boot/dts/marvell/kirkwood-nsa310b.dts b/target/linux/kirkwood/files-6.6/arch/arm/boot/dts/marvell/kirkwood-nsa310b.dts new file mode 100644 index 0000000000..12e51d6656 --- /dev/null +++ b/target/linux/kirkwood/files-6.6/arch/arm/boot/dts/marvell/kirkwood-nsa310b.dts @@ -0,0 +1,144 @@ +/dts-v1/; + +#include "kirkwood-nsa3x0-common.dtsi" + +/* + * There are at least two different NSA310 designs. This variant has + * a red/green USB Led (same as nsa310) and a lm85 temp/fan controller. + */ + +/ { + model = "ZyXEL NSA310b"; + compatible = "zyxel,nsa310b", "zyxel,nsa310", "marvell,kirkwood-88f6281", "marvell,kirkwood"; + + aliases { + led-boot = &led_green_sys; + led-failsafe = &led_red_sys; + led-running = &led_green_sys; + led-upgrade = &led_red_sys; + }; + + memory@0 { + device_type = "memory"; + reg = <0x00000000 0x10000000>; + }; + + chosen { + bootargs = "console=ttyS0,115200"; + stdout-path = &uart0; + }; + + ocp@f1000000 { + pinctrl: pin-controller@10000 { + pinctrl-names = "default"; + + pmx_led_esata_green: pmx-led-esata-green { + marvell,pins = "mpp12"; + marvell,function = "gpio"; + }; + + pmx_led_esata_red: pmx-led-esata-red { + marvell,pins = "mpp13"; + marvell,function = "gpio"; + }; + + pmx_led_usb_green: pmx-led-usb-green { + marvell,pins = "mpp15"; + marvell,function = "gpio"; + }; + + pmx_led_usb_red: pmx-led-usb-red { + marvell,pins = "mpp16"; + marvell,function = "gpio"; + }; + + pmx_led_sys_green: pmx-led-sys-green { + marvell,pins = "mpp28"; + marvell,function = "gpio"; + }; + + pmx_led_sys_red: pmx-led-sys-red { + marvell,pins = "mpp29"; + marvell,function = "gpio"; + }; + + pmx_led_hdd_green: pmx-led-hdd-green { + marvell,pins = "mpp41"; + marvell,function = "gpio"; + }; + + pmx_led_hdd_red: pmx-led-hdd-red { + marvell,pins = "mpp42"; + marvell,function = "gpio"; + }; + + }; + + i2c@11000 { + status = "okay"; + + lm85: lm85@2e { + compatible = "national,lm85"; + reg = <0x2e>; + }; + }; + }; + + gpio-leds { + compatible = "gpio-leds"; + + led_green_sys: green-sys { + label = "nsa310:green:sys"; + gpios = <&gpio0 28 GPIO_ACTIVE_HIGH>; + default-state = "on"; + }; + + led_red_sys: red-sys { + label = "nsa310:red:sys"; + gpios = <&gpio0 29 GPIO_ACTIVE_HIGH>; + }; + + green-hdd { + label = "nsa310:green:hdd"; + gpios = <&gpio1 9 GPIO_ACTIVE_HIGH>; + linux,default-trigger = "ata1"; + }; + + red-hdd { + label = "nsa310:red:hdd"; + gpios = <&gpio1 10 GPIO_ACTIVE_HIGH>; + }; + + green-esata { + label = "nsa310:green:esata"; + gpios = <&gpio0 12 GPIO_ACTIVE_HIGH>; + linux,default-trigger = "ata2"; + }; + + red-esata { + label = "nsa310:red:esata"; + gpios = <&gpio0 13 GPIO_ACTIVE_HIGH>; + }; + + green-usb { + label = "nsa310:green:usb"; + gpios = <&gpio0 15 GPIO_ACTIVE_HIGH>; + linux,default-trigger = "usb-host"; + }; + + red-usb { + label = "nsa310:red:usb"; + gpios = <&gpio0 16 GPIO_ACTIVE_HIGH>; + }; + + green-copy { + label = "nsa310:green:copy"; + gpios = <&gpio1 7 GPIO_ACTIVE_HIGH>; + }; + + red-copy { + label = "nsa310:red:copy"; + gpios = <&gpio1 8 GPIO_ACTIVE_HIGH>; + }; + }; +}; diff --git a/target/linux/kirkwood/files-6.6/arch/arm/boot/dts/marvell/kirkwood-on100.dts b/target/linux/kirkwood/files-6.6/arch/arm/boot/dts/marvell/kirkwood-on100.dts new file mode 100644 index 0000000000..5ae66ede2f --- /dev/null +++ b/target/linux/kirkwood/files-6.6/arch/arm/boot/dts/marvell/kirkwood-on100.dts @@ -0,0 +1,165 @@ +/dts-v1/; + +#include "kirkwood.dtsi" +#include "kirkwood-6282.dtsi" + +/ { + model = "Cisco Systems ON100"; + compatible = "cisco,on100", "marvell,kirkwood-88f6282", "marvell,kirkwood"; + + memory@0 { + device_type = "memory"; + reg = <0x00000000 0x20000000>; + }; + + aliases { + led-boot = &led_health_green; + led-failsafe = &led_health_red; + led-running = &led_health_green; + led-upgrade = &led_health_red; + serial0 = &uart0; + }; + + chosen { + bootargs = "console=ttyS0,115200n8 earlyprintk"; + stdout-path = "serial0:115200n8"; + }; + + gpio-keys { + compatible = "gpio-keys"; + + pinctrl-0 = <&pmx_btn_reset>; + pinctrl-names = "default"; + + reset { + label = "Reset Button"; + linux,code = ; + gpios = <&gpio1 9 GPIO_ACTIVE_LOW>; + }; + }; + + gpio-leds { + compatible = "gpio-leds"; + + pinctrl-0 = <&pmx_led_health_red &pmx_led_health_green>; + pinctrl-names = "default"; + + led_health_green: health-green { + label = "on100:green:health"; + gpios = <&gpio1 12 GPIO_ACTIVE_LOW>; + default-state = "on"; + }; + + led_health_red: health-red { + label = "on100:red:health"; + gpios = <&gpio1 13 GPIO_ACTIVE_LOW>; + }; + + health2-green { + label = "on100:green:health2"; + gpios = <&gpio1 14 GPIO_ACTIVE_LOW>; + }; + + health2-red { + label = "on100:red:health2"; + gpios = <&gpio1 15 GPIO_ACTIVE_LOW>; + }; + }; +}; + +ð0 { + status = "okay"; + + ethernet0-port@0 { + phy-handle = <ðphy0>; + phy-connection-type = "rgmii-id"; + }; +}; + +ð1 { + status = "okay"; + + ethernet1-port@0 { + phy-handle = <ðphy1>; + phy-connection-type = "rgmii-id"; + }; +}; + +&mdio { + status = "okay"; + + ethphy0: ethernet-phy@0 { + /* Marvell 88E1121R */ + compatible = "ethernet-phy-id0141.0cb0", + "ethernet-phy-ieee802.3-c22"; + reg = <0>; + }; + + ethphy1: ethernet-phy@1 { + /* Marvell 88E1121R */ + compatible = "ethernet-phy-id0141.0cb0", + "ethernet-phy-ieee802.3-c22"; + reg = <1>; + }; +}; + +&nand { + status = "okay"; + + partition@0 { + label = "u-boot"; + reg = <0x00000000 0x000a0000>; + read-only; + }; + + partition@a0000 { + label = "u-boot environment"; + reg = <0x000a0000 0x00020000>; + read-only; + }; + + partition@c0000 { + label = "kernel"; + reg = <0x000c0000 0x00540000>; + }; + + partition@600000 { + label = "ubi"; + reg = <0x00600000 0x1fa00000>; + }; +}; + +&pinctrl { + pmx_led_health_red: pmx-led-health-red { + marvell,pins = "mpp45"; + marvell,function = "gpio"; + }; + + pmx_led_health_green: pmx-led-health-green { + marvell,pins = "mpp44"; + marvell,function = "gpio"; + }; + + pmx_led_health2_red: pmx-led-health2-red { + marvell,pins = "mpp47"; + marvell,function = "gpio"; + }; + + pmx_led_health2_green: pmx-led-health2-green { + marvell,pins = "mpp46"; + marvell,function = "gpio"; + }; + + pmx_btn_reset: pmx-btn-reset { + marvell,pins = "mpp31"; + marvell,function = "gpio"; + }; +}; + +&sdio { + status = "okay"; +}; + +&uart0 { + status = "okay"; +}; diff --git a/target/linux/kirkwood/files-6.6/arch/arm/boot/dts/marvell/kirkwood-stora.dts b/target/linux/kirkwood/files-6.6/arch/arm/boot/dts/marvell/kirkwood-stora.dts new file mode 100644 index 0000000000..577c009144 --- /dev/null +++ b/target/linux/kirkwood/files-6.6/arch/arm/boot/dts/marvell/kirkwood-stora.dts @@ -0,0 +1,227 @@ +// SPDX-License-Identifier: GPL-2.0-or-later +/* + * Device Tree file for NETGEAR Stora (MS2000/2110) + * + * Copyright (C) 2013, Arnaud EBALARD + * Copyright (C) 2021, Zoltan HERPAI + */ + +/dts-v1/; + +#include "kirkwood.dtsi" +#include "kirkwood-6281.dtsi" + +/ { + model = "NETGEAR Stora (MS2000/2110)"; + compatible = "netgear,stora", "marvell,kirkwood-88f6281", "marvell,kirkwood"; + + memory { /* 128 MB */ + device_type = "memory"; + reg = <0x00000000 0x8000000>; + }; + + aliases { + led-boot = &led_power; + led-failsafe = &led_power; + led-running = &led_power; + led-upgrade = &led_power; + }; + + chosen { + bootargs = "console=ttyS0,115200n8 earlyprintk"; + stdout-path = &uart0; + }; + + ocp@f1000000 { + pinctrl: pin-controller@10000 { + pmx_button_power: pmx-button-power { + marvell,pins = "mpp36"; + marvell,function = "gpio"; + }; + + pmx_button_reset: pmx-button-reset { + marvell,pins = "mpp38"; + marvell,function = "gpio"; + }; + + pmx_led_blue_power: pmx-led-blue-power { + marvell,pins = "mpp31"; + marvell,function = "gpio"; + }; + + pmx_led_green_disk1: pmx-led-green-disk1 { + marvell,pins = "mpp21"; + marvell,function = "gpio"; + }; + + pmx_led_green_disk2: pmx-led-green-disk2 { + marvell,pins = "mpp20"; + marvell,function = "gpio"; + }; + + pmx_led_red_disk1: pmx-led-red-disk1 { + marvell,pins = "mpp23"; + marvell,function = "gpio"; + }; + + pmx_led_red_disk2: pmx-led-red-disk2 { + marvell,pins = "mpp22"; + marvell,function = "gpio"; + }; + + pmx_poweroff: pmx-poweroff { + marvell,pins = "mpp40"; + marvell,function = "gpio"; + }; + + pmx_fan_tacho: pmx-fan-tacho { + marvell,pins = "mpp41"; + marvell,function = "gpio"; + }; + }; + + clocks { + pcf8563_clk: pcf8563-oscillator { + compatible = "fixed-clock"; + #clock-cells = <0>; + clock-frequency = <2048>; + }; + }; + + i2c@11000 { + status = "okay"; + + tc654@1b { + compatible = "microchip,tc654"; + reg = <0x1b>; + }; + + lm75@48 { + compatible = "national,lm75"; + reg = <0x48>; + }; + + pcf8563@51 { + compatible = "nxp,pcf8563"; + reg = <0x51>; + }; + }; + + serial@12000 { + status = "okay"; + }; + + sata@80000 { + status = "okay"; + phy-names = "port0", "port1"; + nr-ports = <2>; + }; + }; + + gpio-leds { + compatible = "gpio-leds"; + pinctrl-0 = < &pmx_led_blue_power + &pmx_led_green_disk1 &pmx_led_green_disk2 + &pmx_led_red_disk1 &pmx_led_red_disk2 >; + pinctrl-names = "default"; + + led_power: power { + label = "blue:power"; + gpios = <&gpio0 31 GPIO_ACTIVE_LOW>; + linux,default-trigger = "default-on"; + }; + + disk1 { + label = "green:disk1"; + gpios = <&gpio0 21 GPIO_ACTIVE_LOW>; + linux,default-trigger = "ata1"; + }; + + disk2 { + label = "green:disk2"; + gpios = <&gpio0 20 GPIO_ACTIVE_LOW>; + linux,default-trigger = "ata2"; + }; + + disk1_fail { + label = "red:disk1_fail"; + gpios = <&gpio0 23 GPIO_ACTIVE_LOW>; + }; + + disk2_fail { + label = "red:disk2_fail"; + gpios = <&gpio0 22 GPIO_ACTIVE_LOW>; + }; + }; + + gpio-keys { + compatible = "gpio-keys"; + pinctrl-0 = <&pmx_button_power &pmx_button_reset >; + pinctrl-names = "default"; + + power { + label = "Power Button"; + linux,code = ; + gpios = <&gpio1 4 GPIO_ACTIVE_LOW>; + }; + + reset { + label = "Reset Button"; + linux,code = ; + gpios = <&gpio1 6 GPIO_ACTIVE_LOW>; + }; + }; + + gpio-poweroff { + compatible = "gpio-poweroff"; + pinctrl-0 = <&pmx_poweroff>; + pinctrl-names = "default"; + gpios = <&gpio0 40 GPIO_ACTIVE_LOW>; + }; +}; + +&nand { + status = "okay"; + chip-delay = <40>; + + partition@0 { + label = "u-boot"; + reg = <0x0000000 0x0e0000>; + read-only; + }; + + partition@e0000 { + label = "u-boot-env"; + reg = <0x0e00000 0x020000>; + }; + + partition@100000 { + label = "ubi"; + reg = <0x0100000 0xff00000>; + }; +}; + +&mdio { + status = "okay"; + + ethphy0: ethernet-phy@0 { /* Marvell 88E1318 */ + compatible = "marvell,88e1116"; + reg = <8>; + }; +}; + +ð0 { + status = "okay"; + + ethernet0-port@0 { + phy-handle = <ðphy0>; + }; +}; + +&pciec { + status = "okay"; +}; + +&pcie0 { + status = "okay"; +}; diff --git a/target/linux/kirkwood/image/Makefile b/target/linux/kirkwood/image/Makefile index 8aa2d69720..cc13648890 100644 --- a/target/linux/kirkwood/image/Makefile +++ b/target/linux/kirkwood/image/Makefile @@ -112,6 +112,9 @@ endef define Device/Default PROFILES := Default +ifdef CONFIG_LINUX_6_6 + DEVICE_DTS_DIR := $(DTS_DIR)/marvell +endif DEVICE_DTS = kirkwood-$(lastword $(subst _, ,$(1))) KERNEL_DEPENDS = $$(wildcard $(DTS_DIR)/$$(DEVICE_DTS).dts) KERNEL := kernel-bin | append-dtb | uImage none -- 2.30.2