1*724ba675SRob Herring// SPDX-License-Identifier: GPL-2.0-or-later 2*724ba675SRob Herring/* 3*724ba675SRob Herring * Ctera C200 V1 Board Description 4*724ba675SRob Herring * Copyright 2021-2022 Pawel Dembicki <paweldembicki@gmail.com> 5*724ba675SRob Herring */ 6*724ba675SRob Herring 7*724ba675SRob Herring/dts-v1/; 8*724ba675SRob Herring 9*724ba675SRob Herring#include "kirkwood.dtsi" 10*724ba675SRob Herring#include "kirkwood-6281.dtsi" 11*724ba675SRob Herring#include <dt-bindings/leds/common.h> 12*724ba675SRob Herring 13*724ba675SRob Herring/ { 14*724ba675SRob Herring model = "Ctera C200 V1"; 15*724ba675SRob Herring compatible = "ctera,c200-v1", "marvell,kirkwood-88f6281", "marvell,kirkwood"; 16*724ba675SRob Herring 17*724ba675SRob Herring chosen { 18*724ba675SRob Herring bootargs = "console=ttyS0,115200"; 19*724ba675SRob Herring stdout-path = &uart0; 20*724ba675SRob Herring }; 21*724ba675SRob Herring 22*724ba675SRob Herring memory@0 { 23*724ba675SRob Herring device_type = "memory"; 24*724ba675SRob Herring reg = <0x00000000 0x20000000>; 25*724ba675SRob Herring }; 26*724ba675SRob Herring 27*724ba675SRob Herring keys { 28*724ba675SRob Herring compatible = "gpio-keys"; 29*724ba675SRob Herring pinctrl-0 = <&pmx_buttons>; 30*724ba675SRob Herring pinctrl-names = "default"; 31*724ba675SRob Herring 32*724ba675SRob Herring power { 33*724ba675SRob Herring label = "Power Button"; 34*724ba675SRob Herring linux,code = <KEY_POWER>; 35*724ba675SRob Herring gpios = <&gpio1 16 GPIO_ACTIVE_HIGH>; 36*724ba675SRob Herring }; 37*724ba675SRob Herring 38*724ba675SRob Herring reset { 39*724ba675SRob Herring label = "Reset Button"; 40*724ba675SRob Herring linux,code = <KEY_RESTART>; 41*724ba675SRob Herring gpios = <&gpio1 17 GPIO_ACTIVE_LOW>; 42*724ba675SRob Herring }; 43*724ba675SRob Herring 44*724ba675SRob Herring usb1 { 45*724ba675SRob Herring label = "USB1 Button"; 46*724ba675SRob Herring linux,code = <BTN_0>; 47*724ba675SRob Herring gpios = <&gpio0 28 GPIO_ACTIVE_LOW>; 48*724ba675SRob Herring }; 49*724ba675SRob Herring 50*724ba675SRob Herring usb2 { 51*724ba675SRob Herring label = "USB2 Button"; 52*724ba675SRob Herring linux,code = <BTN_1>; 53*724ba675SRob Herring gpios = <&gpio0 29 GPIO_ACTIVE_LOW>; 54*724ba675SRob Herring }; 55*724ba675SRob Herring }; 56*724ba675SRob Herring 57*724ba675SRob Herring gpio-poweroff { 58*724ba675SRob Herring compatible = "gpio-poweroff"; 59*724ba675SRob Herring pinctrl-0 = <&pmx_poweroff>; 60*724ba675SRob Herring pinctrl-names = "default"; 61*724ba675SRob Herring gpios = <&gpio1 2 GPIO_ACTIVE_HIGH>; 62*724ba675SRob Herring }; 63*724ba675SRob Herring 64*724ba675SRob Herring leds { 65*724ba675SRob Herring compatible = "gpio-leds"; 66*724ba675SRob Herring pinctrl-0 = <&pmx_leds>; 67*724ba675SRob Herring pinctrl-names = "default"; 68*724ba675SRob Herring 69*724ba675SRob Herring led-0 { 70*724ba675SRob Herring function = LED_FUNCTION_DISK; 71*724ba675SRob Herring function-enumerator = <2>; 72*724ba675SRob Herring color = <LED_COLOR_ID_RED>; 73*724ba675SRob Herring gpios = <&gpio0 14 GPIO_ACTIVE_LOW>; 74*724ba675SRob Herring }; 75*724ba675SRob Herring 76*724ba675SRob Herring led-1 { 77*724ba675SRob Herring function = LED_FUNCTION_DISK; 78*724ba675SRob Herring function-enumerator = <1>; 79*724ba675SRob Herring color = <LED_COLOR_ID_GREEN>; 80*724ba675SRob Herring gpios = <&gpio0 15 GPIO_ACTIVE_LOW>; 81*724ba675SRob Herring }; 82*724ba675SRob Herring 83*724ba675SRob Herring led-2 { 84*724ba675SRob Herring function = LED_FUNCTION_DISK; 85*724ba675SRob Herring function-enumerator = <2>; 86*724ba675SRob Herring color = <LED_COLOR_ID_GREEN>; 87*724ba675SRob Herring gpios = <&gpio0 16 GPIO_ACTIVE_LOW>; 88*724ba675SRob Herring }; 89*724ba675SRob Herring 90*724ba675SRob Herring led-3 { 91*724ba675SRob Herring function = LED_FUNCTION_DISK; 92*724ba675SRob Herring function-enumerator = <1>; 93*724ba675SRob Herring color = <LED_COLOR_ID_RED>; 94*724ba675SRob Herring gpios = <&gpio0 17 GPIO_ACTIVE_LOW>; 95*724ba675SRob Herring }; 96*724ba675SRob Herring 97*724ba675SRob Herring led-4 { 98*724ba675SRob Herring function = LED_FUNCTION_STATUS; 99*724ba675SRob Herring color = <LED_COLOR_ID_RED>; 100*724ba675SRob Herring gpios = <&gpio1 6 GPIO_ACTIVE_LOW>; 101*724ba675SRob Herring }; 102*724ba675SRob Herring 103*724ba675SRob Herring led-5 { 104*724ba675SRob Herring function = LED_FUNCTION_STATUS; 105*724ba675SRob Herring color = <LED_COLOR_ID_GREEN>; 106*724ba675SRob Herring gpios = <&gpio1 7 GPIO_ACTIVE_LOW>; 107*724ba675SRob Herring }; 108*724ba675SRob Herring 109*724ba675SRob Herring led-6 { 110*724ba675SRob Herring function = LED_FUNCTION_INDICATOR; 111*724ba675SRob Herring color = <LED_COLOR_ID_BLUE>; 112*724ba675SRob Herring gpios = <&gpio1 8 GPIO_ACTIVE_LOW>; 113*724ba675SRob Herring }; 114*724ba675SRob Herring 115*724ba675SRob Herring led-7 { 116*724ba675SRob Herring function = LED_FUNCTION_DISK_ERR; 117*724ba675SRob Herring color = <LED_COLOR_ID_RED>; 118*724ba675SRob Herring gpios = <&gpio1 10 GPIO_ACTIVE_LOW>; 119*724ba675SRob Herring }; 120*724ba675SRob Herring 121*724ba675SRob Herring led-8 { 122*724ba675SRob Herring function = LED_FUNCTION_DISK_ERR; 123*724ba675SRob Herring color = <LED_COLOR_ID_GREEN>; 124*724ba675SRob Herring gpios = <&gpio1 11 GPIO_ACTIVE_LOW>; 125*724ba675SRob Herring }; 126*724ba675SRob Herring 127*724ba675SRob Herring led-9 { 128*724ba675SRob Herring function = LED_FUNCTION_USB; 129*724ba675SRob Herring function-enumerator = <1>; 130*724ba675SRob Herring color = <LED_COLOR_ID_RED>; 131*724ba675SRob Herring gpios = <&gpio1 12 GPIO_ACTIVE_LOW>; 132*724ba675SRob Herring }; 133*724ba675SRob Herring 134*724ba675SRob Herring led-10 { 135*724ba675SRob Herring function = LED_FUNCTION_USB; 136*724ba675SRob Herring function-enumerator = <1>; 137*724ba675SRob Herring color = <LED_COLOR_ID_GREEN>; 138*724ba675SRob Herring gpios = <&gpio1 13 GPIO_ACTIVE_LOW>; 139*724ba675SRob Herring linux,default-trigger = "usbport"; 140*724ba675SRob Herring trigger-sources = <&hub_port2>; 141*724ba675SRob Herring }; 142*724ba675SRob Herring 143*724ba675SRob Herring led-11 { 144*724ba675SRob Herring function = LED_FUNCTION_USB; 145*724ba675SRob Herring function-enumerator = <2>; 146*724ba675SRob Herring color = <LED_COLOR_ID_RED>; 147*724ba675SRob Herring gpios = <&gpio1 14 GPIO_ACTIVE_LOW>; 148*724ba675SRob Herring }; 149*724ba675SRob Herring 150*724ba675SRob Herring led-12 { 151*724ba675SRob Herring function = LED_FUNCTION_USB; 152*724ba675SRob Herring function-enumerator = <2>; 153*724ba675SRob Herring color = <LED_COLOR_ID_GREEN>; 154*724ba675SRob Herring gpios = <&gpio1 15 GPIO_ACTIVE_LOW>; 155*724ba675SRob Herring linux,default-trigger = "usbport"; 156*724ba675SRob Herring trigger-sources = <&hub_port1>; 157*724ba675SRob Herring }; 158*724ba675SRob Herring }; 159*724ba675SRob Herring}; 160*724ba675SRob Herring 161*724ba675SRob Herringð0 { 162*724ba675SRob Herring status = "okay"; 163*724ba675SRob Herring}; 164*724ba675SRob Herring 165*724ba675SRob Herringð0port { 166*724ba675SRob Herring phy-handle = <ðphy9>; 167*724ba675SRob Herring}; 168*724ba675SRob Herring 169*724ba675SRob Herring&i2c0 { 170*724ba675SRob Herring status = "okay"; 171*724ba675SRob Herring 172*724ba675SRob Herring rtc@30 { 173*724ba675SRob Herring compatible = "s35390a"; 174*724ba675SRob Herring reg = <0x30>; 175*724ba675SRob Herring }; 176*724ba675SRob Herring 177*724ba675SRob Herring lm63@4c { 178*724ba675SRob Herring compatible = "national,lm63"; 179*724ba675SRob Herring reg = <0x4c>; 180*724ba675SRob Herring }; 181*724ba675SRob Herring}; 182*724ba675SRob Herring 183*724ba675SRob Herring&mdio { 184*724ba675SRob Herring status = "okay"; 185*724ba675SRob Herring 186*724ba675SRob Herring ethphy9: ethernet-phy@9 { 187*724ba675SRob Herring reg = <9>; 188*724ba675SRob Herring }; 189*724ba675SRob Herring}; 190*724ba675SRob Herring 191*724ba675SRob Herring&nand { 192*724ba675SRob Herring status = "okay"; 193*724ba675SRob Herring chip-delay = <40>; 194*724ba675SRob Herring 195*724ba675SRob Herring partition@0 { 196*724ba675SRob Herring label = "uboot"; 197*724ba675SRob Herring reg = <0x0000000 0x200000>; 198*724ba675SRob Herring }; 199*724ba675SRob Herring 200*724ba675SRob Herring partition@200000 { 201*724ba675SRob Herring label = "certificate"; 202*724ba675SRob Herring reg = <0x0200000 0x100000>; 203*724ba675SRob Herring }; 204*724ba675SRob Herring 205*724ba675SRob Herring partition@300000 { 206*724ba675SRob Herring label = "preset_cfg"; 207*724ba675SRob Herring reg = <0x0300000 0x100000>; 208*724ba675SRob Herring }; 209*724ba675SRob Herring 210*724ba675SRob Herring partition@400000 { 211*724ba675SRob Herring label = "dev_params"; 212*724ba675SRob Herring reg = <0x0400000 0x100000>; 213*724ba675SRob Herring }; 214*724ba675SRob Herring 215*724ba675SRob Herring partition@500000 { 216*724ba675SRob Herring label = "active_bank"; 217*724ba675SRob Herring reg = <0x0500000 0x0100000>; 218*724ba675SRob Herring }; 219*724ba675SRob Herring 220*724ba675SRob Herring partition@600000 { 221*724ba675SRob Herring label = "magic"; 222*724ba675SRob Herring reg = <0x0600000 0x0100000>; 223*724ba675SRob Herring }; 224*724ba675SRob Herring 225*724ba675SRob Herring partition@700000 { 226*724ba675SRob Herring label = "bank1"; 227*724ba675SRob Herring reg = <0x0700000 0x2800000>; 228*724ba675SRob Herring }; 229*724ba675SRob Herring 230*724ba675SRob Herring partition@2f00000 { 231*724ba675SRob Herring label = "bank2"; 232*724ba675SRob Herring reg = <0x2f00000 0x2800000>; 233*724ba675SRob Herring }; 234*724ba675SRob Herring 235*724ba675SRob Herring /* 0x5700000-0x5a00000 undefined in vendor firmware */ 236*724ba675SRob Herring 237*724ba675SRob Herring partition@5a00000 { 238*724ba675SRob Herring label = "reserved"; 239*724ba675SRob Herring reg = <0x5a00000 0x2000000>; 240*724ba675SRob Herring }; 241*724ba675SRob Herring 242*724ba675SRob Herring partition@7a00000 { 243*724ba675SRob Herring label = "rootfs"; 244*724ba675SRob Herring reg = <0x7a00000 0x8600000>; 245*724ba675SRob Herring }; 246*724ba675SRob Herring}; 247*724ba675SRob Herring 248*724ba675SRob Herring&pinctrl { 249*724ba675SRob Herring /* Buzzer gpios are connected to two pins of buzzer. 250*724ba675SRob Herring * This buzzer require a modulated signal from gpio. 251*724ba675SRob Herring * Leave it as is due lack of proper driver. 252*724ba675SRob Herring */ 253*724ba675SRob Herring pmx_buzzer: pmx-buzzer { 254*724ba675SRob Herring marvell,pins = "mpp12", "mpp13"; 255*724ba675SRob Herring marvell,function = "gpio"; 256*724ba675SRob Herring }; 257*724ba675SRob Herring 258*724ba675SRob Herring pmx_leds: pmx-leds { 259*724ba675SRob Herring marvell,pins = "mpp14", "mpp15", "mpp16", "mpp17", "mpp38", 260*724ba675SRob Herring "mpp39", "mpp40", "mpp42", "mpp43", "mpp44", 261*724ba675SRob Herring "mpp45", "mpp46", "mpp47"; 262*724ba675SRob Herring marvell,function = "gpio"; 263*724ba675SRob Herring }; 264*724ba675SRob Herring 265*724ba675SRob Herring pmx_buttons: pmx-buttons { 266*724ba675SRob Herring marvell,pins = "mpp28", "mpp29", "mpp48", "mpp49"; 267*724ba675SRob Herring marvell,function = "gpio"; 268*724ba675SRob Herring }; 269*724ba675SRob Herring 270*724ba675SRob Herring pmx_poweroff: pmx-poweroff { 271*724ba675SRob Herring marvell,pins = "mpp34"; 272*724ba675SRob Herring marvell,function = "gpio"; 273*724ba675SRob Herring }; 274*724ba675SRob Herring}; 275*724ba675SRob Herring 276*724ba675SRob Herring&rtc { 277*724ba675SRob Herring status = "disabled"; 278*724ba675SRob Herring}; 279*724ba675SRob Herring 280*724ba675SRob Herring&sata { 281*724ba675SRob Herring status = "okay"; 282*724ba675SRob Herring nr-ports = <2>; 283*724ba675SRob Herring}; 284*724ba675SRob Herring 285*724ba675SRob Herring&uart0 { 286*724ba675SRob Herring status = "okay"; 287*724ba675SRob Herring}; 288*724ba675SRob Herring 289*724ba675SRob Herring&usb0 { 290*724ba675SRob Herring #address-cells = <1>; 291*724ba675SRob Herring #size-cells = <0>; 292*724ba675SRob Herring status = "okay"; 293*724ba675SRob Herring 294*724ba675SRob Herring port@1 { 295*724ba675SRob Herring #address-cells = <1>; 296*724ba675SRob Herring #size-cells = <0>; 297*724ba675SRob Herring reg = <1>; 298*724ba675SRob Herring #trigger-source-cells = <0>; 299*724ba675SRob Herring 300*724ba675SRob Herring hub_port1: port@1 { 301*724ba675SRob Herring reg = <1>; 302*724ba675SRob Herring #trigger-source-cells = <0>; 303*724ba675SRob Herring }; 304*724ba675SRob Herring 305*724ba675SRob Herring hub_port2: port@2 { 306*724ba675SRob Herring reg = <2>; 307*724ba675SRob Herring #trigger-source-cells = <0>; 308*724ba675SRob Herring }; 309*724ba675SRob Herring }; 310*724ba675SRob Herring}; 311