diff --git a/arch/arm64/boot/dts/adi/sc598-som-revD.dts b/arch/arm64/boot/dts/adi/sc598-som-revD.dts new file mode 100644 index 00000000000000..c922a8fa4c33ca --- /dev/null +++ b/arch/arm64/boot/dts/adi/sc598-som-revD.dts @@ -0,0 +1,133 @@ +// SPDX-License-Identifier: GPL-2.0 +/* + * Copyright (c) 2025 Analog Devices Incorporated + * Author: Ozan Durgut + */ + +/dts-v1/; + +#include "sc598-som.dtsi" + +&i2c2 { + som_gpio_expander: mcp23018@20 { + compatible = "microchip,mcp23018"; + reg = <0x20>; + gpio-controller; + #gpio-cells = <2>; + bootph-pre-ram; + drive-pullups; + + led-ds1 { + gpio-hog; + gpios = <0 GPIO_ACTIVE_HIGH>; + output-high; + line-name = "led1-en"; + bootph-pre-ram; + }; + + led-ds2 { + gpio-hog; + gpios = <1 GPIO_ACTIVE_HIGH>; + output-high; + line-name = "led-ds2"; + bootph-pre-ram; + }; + + led-ds3 { + gpio-hog; + gpios = <2 GPIO_ACTIVE_HIGH>; + output-high; + line-name = "led-ds3"; + bootph-pre-ram; + }; + + som-flash-d2d3 { + gpio-hog; + gpios = <3 GPIO_ACTIVE_LOW>; + output-high; + line-name = "som-flash-d2d3-en"; + bootph-pre-ram; + }; + + som-flash-cs { + gpio-hog; + gpios = <4 GPIO_ACTIVE_LOW>; + output-high; + line-name = "som-flash-cs-en"; + bootph-pre-ram; + }; + + uart0 { + gpio-hog; + gpios = <5 GPIO_ACTIVE_LOW>; + output-high; + line-name = "uart0-en"; + bootph-pre-ram; + }; + + uart0-flow-en { + gpio-hog; + gpios = <6 GPIO_ACTIVE_LOW>; + output-low; + line-name = "uart0-flow-en"; + bootph-pre-ram; + }; + + som-emmc { + gpio-hog; + gpios = <8 GPIO_ACTIVE_LOW>; + output-high; + line-name = "som-emmc-en"; + bootph-pre-ram; + }; + + crr-sdcard { + gpio-hog; + gpios = <9 GPIO_ACTIVE_LOW>; + output-low; + line-name = "crr-sdcard-en"; + bootph-pre-ram; + }; + }; +}; + +&spi2 { + som_flash: is25lp512@1 { + compatible = "jedec,spi-nor", "is25lp512"; + reg = <1>; + spi-rx-bus-width = <4>; + spi-max-frequency = <25000000>; + bootph-pre-ram; + + partitions { + compatible = "fixed-partitions"; + #address-cells = <1>; + #size-cells = <1>; + + qspi_0@0 { + label = "U-Boot SPL"; + reg = <0x00000000 0x00040000>; + }; + + qspi_1@40000 { + label = "U-Boot Proper"; + reg = <0x00040000 0x000C0000>; + }; + + qspi_2@100000 { + label = "U-Boot Environment"; + reg = <0x00100000 0x00020000>; + }; + + qspi_3@120000 { + label = "FIT Image"; + reg = <0x00120000 0x00600000>; + }; + + qspi_4@720000 { + label = "JFFS2 Formatted RFS"; + reg = <0x00720000 0x038E0000>; + }; + }; + }; +}; diff --git a/arch/arm64/boot/dts/adi/sc598-som-revE.dts b/arch/arm64/boot/dts/adi/sc598-som-revE.dts new file mode 100644 index 00000000000000..262e5ce08b86b9 --- /dev/null +++ b/arch/arm64/boot/dts/adi/sc598-som-revE.dts @@ -0,0 +1,126 @@ +// SPDX-License-Identifier: GPL-2.0 +/* + * Copyright (c) 2025 Analog Devices Incorporated + * Author: Ozan Durgut + */ + +/dts-v1/; + +#include "sc598-som.dtsi" + +&i2c2 { + gpio_expander1: adp5587@34 { + compatible = "adi,adp5587"; + reg = <0x34>; + gpio-controller; + #gpio-cells = <2>; + bootph-pre-ram; + + uart0 { + gpio-hog; + gpios = <0 GPIO_ACTIVE_LOW>; + output-high; + line-name = "uart0-en"; + bootph-pre-ram; + }; + + uart0-flow { + gpio-hog; + gpios = <1 GPIO_ACTIVE_LOW>; + output-low; + line-name = "uart0-flow-en"; + bootph-pre-ram; + }; + + som-flash-d2d3 { + gpio-hog; + gpios = <2 GPIO_ACTIVE_LOW>; + output-high; + line-name = "som-flash-d2d3-en"; + }; + + som-flash-cs { + gpio-hog; + gpios = <3 GPIO_ACTIVE_LOW>; + output-high; + line-name = "som-flash-cs-en"; + }; + + som-emmc { + gpio-hog; + gpios = <8 GPIO_ACTIVE_LOW>; + output-high; + line-name = "som-emmc-en"; + }; + + crr-sdcard { + gpio-hog; + gpios = <9 GPIO_ACTIVE_LOW>; + output-low; + line-name = "crr-sdcard-en"; + }; + + led-ds3 { + gpio-hog; + gpios = <15 GPIO_ACTIVE_LOW>; + output-high; + line-name = "led-ds3"; + bootph-pre-ram; + }; + + led-ds2 { + gpio-hog; + gpios = <16 GPIO_ACTIVE_LOW>; + output-high; + line-name = "led-ds2"; + }; + + led-ds1 { + gpio-hog; + gpios = <17 GPIO_ACTIVE_LOW>; + output-high; + line-name = "led-ds1"; + }; + }; +}; + +&spi2 { + som_flash: is25lp01g@0 { + compatible = "jedec,spi-nor", "is25lp01g"; + reg = <0>; + spi-rx-bus-width = <4>; + spi-max-frequency = <25000000>; + bootph-pre-ram; + + partitions { + compatible = "fixed-partitions"; + #address-cells = <1>; + #size-cells = <1>; + + qspi_0@0 { + label = "U-Boot SPL"; + reg = <0x00000000 0x00040000>; + }; + + qspi_1@40000 { + label = "U-Boot Proper"; + reg = <0x00040000 0x000C0000>; + }; + + qspi_2@100000 { + label = "U-Boot Environment"; + reg = <0x00100000 0x00020000>; + }; + + qspi_3@120000 { + label = "FIT Image"; + reg = <0x00120000 0x00F00000>; + }; + + qspi_4@1020000 { + label = "JFFS2 Formatted RFS"; + reg = <0x01020000 0x06FE0000>; + }; + }; + }; +}; diff --git a/arch/arm64/boot/dts/adi/sc598-som.dtsi b/arch/arm64/boot/dts/adi/sc598-som.dtsi index 347be49f82d4e3..19c81418b0a7eb 100644 --- a/arch/arm64/boot/dts/adi/sc598-som.dtsi +++ b/arch/arm64/boot/dts/adi/sc598-som.dtsi @@ -203,43 +203,6 @@ pinctrl-0 = <&spi2_quad>; status = "okay"; cs-gpios = <&gpa 5 GPIO_ACTIVE_LOW>; - - flash: is25lp512@0 { - #address-cells = <1>; - #size-cells = <1>; - compatible = "is25lp512", "jedec,spi-nor"; - reg = <0>; - spi-cpha; - spi-cpol; - spi-max-frequency = <25000000>; - spi-rx-bus-width = <4>; - - qspi_0: partition@0 { - label = "U-Boot SPL"; - reg = <0x0 0x40000>; - }; - - qspi_1: partition@1 { - label = "U-Boot Proper"; - reg = <0x40000 0xC0000>; - }; - - qspi_2: partition@2 { - label = "U-Boot Environment"; - reg = <0x100000 0x20000>; - }; - - qspi_3: partition@3 { - label = "FIT Image"; - reg = <0x120000 0xF00000>; - }; - - qspi_4: partition@4 { - label = "JFFS2 Formatted RFS"; - reg = <0x1020000 0x2FE0000>; - }; - - }; }; &i2c0 { @@ -252,88 +215,6 @@ &i2c2 { status = "okay"; - pinctrl-names = "default"; - pinctrl-0 = <&i2c2_pins>; - - ssw0: gpio@20 { - compatible = "microchip,mcp23018"; - gpio-controller; - #gpio-cells = <2>; - reg = <0x20>; - status = "okay"; - - pinctrl-names = "default"; - pinctrl-0 = <&ssw0pullups>; - - ssw0pullups: pinmux { - bias-pull-up; - pins = "gpio0", "gpio1", "gpio2", "gpio3", - "gpio4", "gpio5", "gpio6", "gpio8", "gpio9"; - }; - - led1 { - gpio-hog; - gpios = <0 GPIO_ACTIVE_HIGH>; - output-high; - line-name = "led1-en"; - }; - - led2 { - gpio-hog; - gpios = <1 GPIO_ACTIVE_HIGH>; - output-high; - line-name = "led2-en"; - }; - - led3 { - gpio-hog; - gpios = <2 GPIO_ACTIVE_HIGH>; - output-high; - line-name = "led3-en"; - }; - - spi2d2-d3 { - gpio-hog; - gpios = <3 GPIO_ACTIVE_LOW>; - output-high; - line-name = "spi2d2-d3-en"; - }; - - spi2flash-cs { - gpio-hog; - gpios = <4 GPIO_ACTIVE_LOW>; - output-high; - line-name = "spi2flash-cs"; - }; - - uart0 { - gpio-hog; - gpios = <5 GPIO_ACTIVE_LOW>; - output-high; - line-name = "uart0-en"; - }; - - uart0-flow-en { - gpio-hog; - gpios = <6 GPIO_ACTIVE_LOW>; - output-low; - line-name = "uart0-flow-en"; - }; - - emmc { - gpio-hog; - gpios = <8 GPIO_ACTIVE_LOW>; - output-high; - line-name = "emmc-en"; - }; - - emmc-som-en { - gpio-hog; - gpios = <9 GPIO_ACTIVE_LOW>; - output-low; - line-name = "emmc-som-en"; - }; - }; }; &mmc0{