1f126890aSEmmanuel Vadot// SPDX-License-Identifier: (GPL-2.0 OR MIT) 2f126890aSEmmanuel Vadot/* 3f126890aSEmmanuel Vadot * Device Tree file for Armada 385 Allied Telesis x530/GS980MX Board. 4f126890aSEmmanuel Vadot (x530/AT-GS980MX) 5f126890aSEmmanuel Vadot * 6f126890aSEmmanuel Vadot Copyright (C) 2020 Allied Telesis Labs 7f126890aSEmmanuel Vadot */ 8f126890aSEmmanuel Vadot 9f126890aSEmmanuel Vadot/dts-v1/; 10f126890aSEmmanuel Vadot#include "armada-385.dtsi" 11f126890aSEmmanuel Vadot 12f126890aSEmmanuel Vadot#include <dt-bindings/gpio/gpio.h> 13f126890aSEmmanuel Vadot 14f126890aSEmmanuel Vadot/ { 15f126890aSEmmanuel Vadot model = "x530/AT-GS980MX"; 16f126890aSEmmanuel Vadot compatible = "alliedtelesis,gs980mx", "alliedtelesis,x530", "marvell,armada385", "marvell,armada380"; 17f126890aSEmmanuel Vadot 18f126890aSEmmanuel Vadot chosen { 19f126890aSEmmanuel Vadot stdout-path = "serial1:115200n8"; 20f126890aSEmmanuel Vadot }; 21f126890aSEmmanuel Vadot 22f126890aSEmmanuel Vadot memory { 23f126890aSEmmanuel Vadot device_type = "memory"; 24f126890aSEmmanuel Vadot reg = <0x00000000 0x40000000>; /* 1GB */ 25f126890aSEmmanuel Vadot }; 26f126890aSEmmanuel Vadot 27f126890aSEmmanuel Vadot soc { 28f126890aSEmmanuel Vadot ranges = <MBUS_ID(0xf0, 0x01) 0 0xf1000000 0x100000 29f126890aSEmmanuel Vadot MBUS_ID(0x01, 0x3d) 0 0xf4800000 0x80000 30f126890aSEmmanuel Vadot MBUS_ID(0x01, 0x1d) 0 0xfff00000 0x100000>; 31f126890aSEmmanuel Vadot 32f126890aSEmmanuel Vadot internal-regs { 33f126890aSEmmanuel Vadot i2c0: i2c@11000 { 34f126890aSEmmanuel Vadot pinctrl-names = "default"; 35f126890aSEmmanuel Vadot pinctrl-0 = <&i2c0_pins>; 36f126890aSEmmanuel Vadot status = "okay"; 37f126890aSEmmanuel Vadot }; 38f126890aSEmmanuel Vadot 39f126890aSEmmanuel Vadot uart0: serial@12000 { 40f126890aSEmmanuel Vadot pinctrl-names = "default"; 41f126890aSEmmanuel Vadot pinctrl-0 = <&uart0_pins>; 42f126890aSEmmanuel Vadot status = "okay"; 43f126890aSEmmanuel Vadot }; 44f126890aSEmmanuel Vadot }; 45f126890aSEmmanuel Vadot }; 46*0e8011faSEmmanuel Vadot 47*0e8011faSEmmanuel Vadot led-7seg { 48*0e8011faSEmmanuel Vadot compatible = "gpio-7-segment"; 49*0e8011faSEmmanuel Vadot segment-gpios = <&led_7seg_gpio 0 GPIO_ACTIVE_LOW>, 50*0e8011faSEmmanuel Vadot <&led_7seg_gpio 1 GPIO_ACTIVE_LOW>, 51*0e8011faSEmmanuel Vadot <&led_7seg_gpio 2 GPIO_ACTIVE_LOW>, 52*0e8011faSEmmanuel Vadot <&led_7seg_gpio 3 GPIO_ACTIVE_LOW>, 53*0e8011faSEmmanuel Vadot <&led_7seg_gpio 4 GPIO_ACTIVE_LOW>, 54*0e8011faSEmmanuel Vadot <&led_7seg_gpio 5 GPIO_ACTIVE_LOW>, 55*0e8011faSEmmanuel Vadot <&led_7seg_gpio 6 GPIO_ACTIVE_LOW>; 56*0e8011faSEmmanuel Vadot }; 57f126890aSEmmanuel Vadot}; 58f126890aSEmmanuel Vadot 59f126890aSEmmanuel Vadot&pciec { 60f126890aSEmmanuel Vadot status = "okay"; 61f126890aSEmmanuel Vadot}; 62f126890aSEmmanuel Vadot 63f126890aSEmmanuel Vadot&pcie1 { 64f126890aSEmmanuel Vadot status = "okay"; 65f126890aSEmmanuel Vadot reset-gpios = <&gpio1 23 GPIO_ACTIVE_LOW>; 66f126890aSEmmanuel Vadot reset-delay-us = <400000>; 67f126890aSEmmanuel Vadot}; 68f126890aSEmmanuel Vadot 69f126890aSEmmanuel Vadot&pcie2 { 70f126890aSEmmanuel Vadot status = "okay"; 71f126890aSEmmanuel Vadot}; 72f126890aSEmmanuel Vadot 73f126890aSEmmanuel Vadot&devbus_cs1 { 74f126890aSEmmanuel Vadot compatible = "marvell,mvebu-devbus"; 75f126890aSEmmanuel Vadot status = "okay"; 76f126890aSEmmanuel Vadot 77f126890aSEmmanuel Vadot devbus,bus-width = <8>; 78f126890aSEmmanuel Vadot devbus,turn-off-ps = <60000>; 79f126890aSEmmanuel Vadot devbus,badr-skew-ps = <0>; 80f126890aSEmmanuel Vadot devbus,acc-first-ps = <124000>; 81f126890aSEmmanuel Vadot devbus,acc-next-ps = <248000>; 82f126890aSEmmanuel Vadot devbus,rd-setup-ps = <0>; 83f126890aSEmmanuel Vadot devbus,rd-hold-ps = <0>; 84f126890aSEmmanuel Vadot 85f126890aSEmmanuel Vadot /* Write parameters */ 86f126890aSEmmanuel Vadot devbus,sync-enable = <0>; 87f126890aSEmmanuel Vadot devbus,wr-high-ps = <60000>; 88f126890aSEmmanuel Vadot devbus,wr-low-ps = <60000>; 89f126890aSEmmanuel Vadot devbus,ale-wr-ps = <60000>; 90f126890aSEmmanuel Vadot 91f126890aSEmmanuel Vadot nvs@0 { 92f126890aSEmmanuel Vadot status = "okay"; 93f126890aSEmmanuel Vadot 94f126890aSEmmanuel Vadot compatible = "mtd-ram"; 95f126890aSEmmanuel Vadot reg = <0 0x00080000>; 96f126890aSEmmanuel Vadot bank-width = <1>; 97f126890aSEmmanuel Vadot label = "nvs"; 98f126890aSEmmanuel Vadot }; 99f126890aSEmmanuel Vadot}; 100f126890aSEmmanuel Vadot 101f126890aSEmmanuel Vadot&pinctrl { 102f126890aSEmmanuel Vadot i2c0_gpio_pins: i2c-gpio-pins-0 { 103f126890aSEmmanuel Vadot marvell,pins = "mpp2", "mpp3"; 104f126890aSEmmanuel Vadot marvell,function = "gpio"; 105f126890aSEmmanuel Vadot }; 106f126890aSEmmanuel Vadot}; 107f126890aSEmmanuel Vadot 108f126890aSEmmanuel Vadot&i2c0 { 109f126890aSEmmanuel Vadot clock-frequency = <100000>; 110f126890aSEmmanuel Vadot status = "okay"; 111f126890aSEmmanuel Vadot 112f126890aSEmmanuel Vadot pinctrl-names = "default", "gpio"; 113f126890aSEmmanuel Vadot pinctrl-0 = <&i2c0_pins>; 114f126890aSEmmanuel Vadot pinctrl-1 = <&i2c0_gpio_pins>; 115f126890aSEmmanuel Vadot scl-gpio = <&gpio0 2 (GPIO_ACTIVE_HIGH|GPIO_OPEN_DRAIN)>; 116f126890aSEmmanuel Vadot sda-gpio = <&gpio0 3 (GPIO_ACTIVE_HIGH|GPIO_OPEN_DRAIN)>; 117f126890aSEmmanuel Vadot 118f126890aSEmmanuel Vadot i2c0mux: mux@71 { 119f126890aSEmmanuel Vadot #address-cells = <1>; 120f126890aSEmmanuel Vadot #size-cells = <0>; 121f126890aSEmmanuel Vadot compatible = "nxp,pca9544"; 122f126890aSEmmanuel Vadot reg = <0x71>; 123f126890aSEmmanuel Vadot i2c-mux-idle-disconnect; 124f126890aSEmmanuel Vadot 125f126890aSEmmanuel Vadot i2c@0 { /* POE devices MUX */ 126f126890aSEmmanuel Vadot #address-cells = <1>; 127f126890aSEmmanuel Vadot #size-cells = <0>; 128f126890aSEmmanuel Vadot reg = <0>; 129f126890aSEmmanuel Vadot }; 130f126890aSEmmanuel Vadot 131f126890aSEmmanuel Vadot i2c@1 { 132f126890aSEmmanuel Vadot #address-cells = <1>; 133f126890aSEmmanuel Vadot #size-cells = <0>; 134f126890aSEmmanuel Vadot reg = <1>; 135f126890aSEmmanuel Vadot 136f126890aSEmmanuel Vadot adt7476_2e: hwmon@2e { 137f126890aSEmmanuel Vadot compatible = "adi,adt7476"; 138f126890aSEmmanuel Vadot reg = <0x2e>; 139f126890aSEmmanuel Vadot }; 140f126890aSEmmanuel Vadot 141f126890aSEmmanuel Vadot adt7476_2d: hwmon@2d { 142f126890aSEmmanuel Vadot compatible = "adi,adt7476"; 143f126890aSEmmanuel Vadot reg = <0x2d>; 144f126890aSEmmanuel Vadot }; 145f126890aSEmmanuel Vadot }; 146f126890aSEmmanuel Vadot 147f126890aSEmmanuel Vadot i2c@2 { 148f126890aSEmmanuel Vadot #address-cells = <1>; 149f126890aSEmmanuel Vadot #size-cells = <0>; 150f126890aSEmmanuel Vadot reg = <2>; 151f126890aSEmmanuel Vadot 152f126890aSEmmanuel Vadot rtc@68 { 153f126890aSEmmanuel Vadot compatible = "dallas,ds1340"; 154f126890aSEmmanuel Vadot reg = <0x68>; 155f126890aSEmmanuel Vadot }; 156f126890aSEmmanuel Vadot }; 157f126890aSEmmanuel Vadot 158f126890aSEmmanuel Vadot i2c@3 { 159f126890aSEmmanuel Vadot #address-cells = <1>; 160f126890aSEmmanuel Vadot #size-cells = <0>; 161f126890aSEmmanuel Vadot reg = <3>; 162f126890aSEmmanuel Vadot 163*0e8011faSEmmanuel Vadot led_7seg_gpio: gpio@20 { 164f126890aSEmmanuel Vadot compatible = "nxp,pca9554"; 165f126890aSEmmanuel Vadot gpio-controller; 166f126890aSEmmanuel Vadot #gpio-cells = <2>; 167f126890aSEmmanuel Vadot reg = <0x20>; 168f126890aSEmmanuel Vadot }; 169f126890aSEmmanuel Vadot }; 170f126890aSEmmanuel Vadot }; 171f126890aSEmmanuel Vadot}; 172f126890aSEmmanuel Vadot 173f126890aSEmmanuel Vadot&usb0 { 174f126890aSEmmanuel Vadot status = "okay"; 175f126890aSEmmanuel Vadot}; 176f126890aSEmmanuel Vadot 177f126890aSEmmanuel Vadot&spi1 { 178f126890aSEmmanuel Vadot pinctrl-names = "default"; 179f126890aSEmmanuel Vadot pinctrl-0 = <&spi1_pins>; 180f126890aSEmmanuel Vadot status = "okay"; 181f126890aSEmmanuel Vadot 182f126890aSEmmanuel Vadot flash@1 { 183f126890aSEmmanuel Vadot #address-cells = <1>; 184f126890aSEmmanuel Vadot #size-cells = <1>; 185f126890aSEmmanuel Vadot compatible = "jedec,spi-nor"; 186f126890aSEmmanuel Vadot reg = <1>; /* Chip select 1 */ 187f126890aSEmmanuel Vadot spi-max-frequency = <54000000>; 188f126890aSEmmanuel Vadot 189f126890aSEmmanuel Vadot partitions { 190f126890aSEmmanuel Vadot compatible = "fixed-partitions"; 191f126890aSEmmanuel Vadot #address-cells = <1>; 192f126890aSEmmanuel Vadot #size-cells = <1>; 193f126890aSEmmanuel Vadot partition@0 { 194f126890aSEmmanuel Vadot reg = <0x00000000 0x00100000>; 195f126890aSEmmanuel Vadot label = "u-boot"; 196f126890aSEmmanuel Vadot }; 197f126890aSEmmanuel Vadot partition@100000 { 198f126890aSEmmanuel Vadot reg = <0x00100000 0x00040000>; 199f126890aSEmmanuel Vadot label = "u-boot-env"; 200f126890aSEmmanuel Vadot }; 201f126890aSEmmanuel Vadot partition@140000 { 202f126890aSEmmanuel Vadot reg = <0x00140000 0x00e80000>; 203f126890aSEmmanuel Vadot label = "unused"; 204f126890aSEmmanuel Vadot }; 205f126890aSEmmanuel Vadot partition@fc0000 { 206f126890aSEmmanuel Vadot reg = <0x00fc0000 0x00040000>; 207f126890aSEmmanuel Vadot label = "idprom"; 208f126890aSEmmanuel Vadot }; 209f126890aSEmmanuel Vadot }; 210f126890aSEmmanuel Vadot }; 211f126890aSEmmanuel Vadot}; 212f126890aSEmmanuel Vadot 213f126890aSEmmanuel Vadot&nand_controller { 214f126890aSEmmanuel Vadot status = "okay"; 215f126890aSEmmanuel Vadot 216f126890aSEmmanuel Vadot nand@0 { 217f126890aSEmmanuel Vadot reg = <0>; 218f126890aSEmmanuel Vadot label = "pxa3xx_nand-0"; 219f126890aSEmmanuel Vadot nand-rb = <0>; 220f126890aSEmmanuel Vadot nand-on-flash-bbt; 221f126890aSEmmanuel Vadot nand-ecc-strength = <4>; 222f126890aSEmmanuel Vadot nand-ecc-step-size = <512>; 223f126890aSEmmanuel Vadot 224f126890aSEmmanuel Vadot marvell,nand-enable-arbiter; 225f126890aSEmmanuel Vadot 226f126890aSEmmanuel Vadot partitions { 227f126890aSEmmanuel Vadot compatible = "fixed-partitions"; 228f126890aSEmmanuel Vadot #address-cells = <1>; 229f126890aSEmmanuel Vadot #size-cells = <1>; 230f126890aSEmmanuel Vadot partition@0 { 231f126890aSEmmanuel Vadot reg = <0x00000000 0x0f000000>; 232f126890aSEmmanuel Vadot label = "user"; 233f126890aSEmmanuel Vadot }; 234f126890aSEmmanuel Vadot partition@f000000 { 235f126890aSEmmanuel Vadot /* Maximum mtdoops size is 8MB, so set to that. */ 236f126890aSEmmanuel Vadot reg = <0x0f000000 0x00800000>; 237f126890aSEmmanuel Vadot label = "errlog"; 238f126890aSEmmanuel Vadot }; 239f126890aSEmmanuel Vadot partition@f800000 { 240f126890aSEmmanuel Vadot reg = <0x0f800000 0x00800000>; 241f126890aSEmmanuel Vadot label = "nand-bbt"; 242f126890aSEmmanuel Vadot }; 243f126890aSEmmanuel Vadot }; 244f126890aSEmmanuel Vadot }; 245f126890aSEmmanuel Vadot}; 246f126890aSEmmanuel Vadot 247