1*f126890aSEmmanuel Vadot// SPDX-License-Identifier: GPL-2.0+ 2*f126890aSEmmanuel Vadot// Copyright 2019 YADRO 3*f126890aSEmmanuel Vadot/dts-v1/; 4*f126890aSEmmanuel Vadot#include "aspeed-g5.dtsi" 5*f126890aSEmmanuel Vadot#include <dt-bindings/gpio/aspeed-gpio.h> 6*f126890aSEmmanuel Vadot 7*f126890aSEmmanuel Vadot/ { 8*f126890aSEmmanuel Vadot model = "Nicole BMC"; 9*f126890aSEmmanuel Vadot compatible = "yadro,nicole-bmc", "aspeed,ast2500"; 10*f126890aSEmmanuel Vadot 11*f126890aSEmmanuel Vadot chosen { 12*f126890aSEmmanuel Vadot stdout-path = &uart5; 13*f126890aSEmmanuel Vadot bootargs = "console=ttyS4,115200 earlycon"; 14*f126890aSEmmanuel Vadot }; 15*f126890aSEmmanuel Vadot 16*f126890aSEmmanuel Vadot memory@80000000 { 17*f126890aSEmmanuel Vadot reg = <0x80000000 0x20000000>; 18*f126890aSEmmanuel Vadot }; 19*f126890aSEmmanuel Vadot 20*f126890aSEmmanuel Vadot reserved-memory { 21*f126890aSEmmanuel Vadot #address-cells = <1>; 22*f126890aSEmmanuel Vadot #size-cells = <1>; 23*f126890aSEmmanuel Vadot ranges; 24*f126890aSEmmanuel Vadot 25*f126890aSEmmanuel Vadot vga_memory: framebuffer@9f000000 { 26*f126890aSEmmanuel Vadot no-map; 27*f126890aSEmmanuel Vadot reg = <0x9f000000 0x01000000>; /* 16M */ 28*f126890aSEmmanuel Vadot }; 29*f126890aSEmmanuel Vadot 30*f126890aSEmmanuel Vadot flash_memory: region@98000000 { 31*f126890aSEmmanuel Vadot no-map; 32*f126890aSEmmanuel Vadot reg = <0x98000000 0x04000000>; /* 64M */ 33*f126890aSEmmanuel Vadot }; 34*f126890aSEmmanuel Vadot 35*f126890aSEmmanuel Vadot coldfire_memory: codefire_memory@9ef00000 { 36*f126890aSEmmanuel Vadot reg = <0x9ef00000 0x00100000>; 37*f126890aSEmmanuel Vadot no-map; 38*f126890aSEmmanuel Vadot }; 39*f126890aSEmmanuel Vadot 40*f126890aSEmmanuel Vadot gfx_memory: framebuffer { 41*f126890aSEmmanuel Vadot size = <0x01000000>; 42*f126890aSEmmanuel Vadot alignment = <0x01000000>; 43*f126890aSEmmanuel Vadot compatible = "shared-dma-pool"; 44*f126890aSEmmanuel Vadot reusable; 45*f126890aSEmmanuel Vadot }; 46*f126890aSEmmanuel Vadot 47*f126890aSEmmanuel Vadot video_engine_memory: jpegbuffer { 48*f126890aSEmmanuel Vadot size = <0x02000000>; /* 32M */ 49*f126890aSEmmanuel Vadot alignment = <0x01000000>; 50*f126890aSEmmanuel Vadot compatible = "shared-dma-pool"; 51*f126890aSEmmanuel Vadot reusable; 52*f126890aSEmmanuel Vadot }; 53*f126890aSEmmanuel Vadot }; 54*f126890aSEmmanuel Vadot 55*f126890aSEmmanuel Vadot leds { 56*f126890aSEmmanuel Vadot compatible = "gpio-leds"; 57*f126890aSEmmanuel Vadot 58*f126890aSEmmanuel Vadot power { 59*f126890aSEmmanuel Vadot label = "platform:green:power"; 60*f126890aSEmmanuel Vadot gpios = <&gpio ASPEED_GPIO(AA, 4) GPIO_ACTIVE_HIGH>; 61*f126890aSEmmanuel Vadot }; 62*f126890aSEmmanuel Vadot 63*f126890aSEmmanuel Vadot identify { 64*f126890aSEmmanuel Vadot label = "platform:blue:indicator"; 65*f126890aSEmmanuel Vadot gpios = <&gpio ASPEED_GPIO(AA, 7) GPIO_ACTIVE_HIGH>; 66*f126890aSEmmanuel Vadot }; 67*f126890aSEmmanuel Vadot 68*f126890aSEmmanuel Vadot fault { 69*f126890aSEmmanuel Vadot label = "platform:red:fault"; 70*f126890aSEmmanuel Vadot gpios = <&gpio ASPEED_GPIO(AA, 3) GPIO_ACTIVE_HIGH>; 71*f126890aSEmmanuel Vadot }; 72*f126890aSEmmanuel Vadot 73*f126890aSEmmanuel Vadot attention { 74*f126890aSEmmanuel Vadot label = "platform:yellow:alarm"; 75*f126890aSEmmanuel Vadot gpios = <&gpio ASPEED_GPIO(AA, 1) GPIO_ACTIVE_HIGH>; 76*f126890aSEmmanuel Vadot }; 77*f126890aSEmmanuel Vadot }; 78*f126890aSEmmanuel Vadot 79*f126890aSEmmanuel Vadot fsi: gpio-fsi { 80*f126890aSEmmanuel Vadot compatible = "aspeed,ast2500-cf-fsi-master", "fsi-master"; 81*f126890aSEmmanuel Vadot #address-cells = <2>; 82*f126890aSEmmanuel Vadot #size-cells = <0>; 83*f126890aSEmmanuel Vadot no-gpio-delays; 84*f126890aSEmmanuel Vadot 85*f126890aSEmmanuel Vadot memory-region = <&coldfire_memory>; 86*f126890aSEmmanuel Vadot aspeed,sram = <&sram>; 87*f126890aSEmmanuel Vadot aspeed,cvic = <&cvic>; 88*f126890aSEmmanuel Vadot 89*f126890aSEmmanuel Vadot clock-gpios = <&gpio ASPEED_GPIO(AA, 0) GPIO_ACTIVE_HIGH>; 90*f126890aSEmmanuel Vadot data-gpios = <&gpio ASPEED_GPIO(AA, 2) GPIO_ACTIVE_HIGH>; 91*f126890aSEmmanuel Vadot mux-gpios = <&gpio ASPEED_GPIO(A, 6) GPIO_ACTIVE_HIGH>; 92*f126890aSEmmanuel Vadot enable-gpios = <&gpio ASPEED_GPIO(D, 0) GPIO_ACTIVE_HIGH>; 93*f126890aSEmmanuel Vadot trans-gpios = <&gpio ASPEED_GPIO(P, 1) GPIO_ACTIVE_HIGH>; 94*f126890aSEmmanuel Vadot }; 95*f126890aSEmmanuel Vadot 96*f126890aSEmmanuel Vadot gpio-keys { 97*f126890aSEmmanuel Vadot compatible = "gpio-keys"; 98*f126890aSEmmanuel Vadot 99*f126890aSEmmanuel Vadot event-checkstop { 100*f126890aSEmmanuel Vadot label = "checkstop"; 101*f126890aSEmmanuel Vadot gpios = <&gpio ASPEED_GPIO(J, 2) GPIO_ACTIVE_LOW>; 102*f126890aSEmmanuel Vadot linux,code = <ASPEED_GPIO(J, 2)>; 103*f126890aSEmmanuel Vadot }; 104*f126890aSEmmanuel Vadot }; 105*f126890aSEmmanuel Vadot 106*f126890aSEmmanuel Vadot iio-hwmon-battery { 107*f126890aSEmmanuel Vadot compatible = "iio-hwmon"; 108*f126890aSEmmanuel Vadot io-channels = <&adc 12>; 109*f126890aSEmmanuel Vadot }; 110*f126890aSEmmanuel Vadot}; 111*f126890aSEmmanuel Vadot 112*f126890aSEmmanuel Vadot&fmc { 113*f126890aSEmmanuel Vadot status = "okay"; 114*f126890aSEmmanuel Vadot flash@0 { 115*f126890aSEmmanuel Vadot status = "okay"; 116*f126890aSEmmanuel Vadot m25p,fast-read; 117*f126890aSEmmanuel Vadot label = "bmc"; 118*f126890aSEmmanuel Vadot spi-max-frequency = <50000000>; 119*f126890aSEmmanuel Vadot#include "openbmc-flash-layout.dtsi" 120*f126890aSEmmanuel Vadot }; 121*f126890aSEmmanuel Vadot}; 122*f126890aSEmmanuel Vadot 123*f126890aSEmmanuel Vadot&spi1 { 124*f126890aSEmmanuel Vadot status = "okay"; 125*f126890aSEmmanuel Vadot pinctrl-names = "default"; 126*f126890aSEmmanuel Vadot pinctrl-0 = <&pinctrl_spi1_default>; 127*f126890aSEmmanuel Vadot 128*f126890aSEmmanuel Vadot flash@0 { 129*f126890aSEmmanuel Vadot status = "okay"; 130*f126890aSEmmanuel Vadot m25p,fast-read; 131*f126890aSEmmanuel Vadot label = "pnor"; 132*f126890aSEmmanuel Vadot spi-max-frequency = <100000000>; 133*f126890aSEmmanuel Vadot }; 134*f126890aSEmmanuel Vadot}; 135*f126890aSEmmanuel Vadot 136*f126890aSEmmanuel Vadot&lpc_ctrl { 137*f126890aSEmmanuel Vadot status = "okay"; 138*f126890aSEmmanuel Vadot memory-region = <&flash_memory>; 139*f126890aSEmmanuel Vadot flash = <&spi1>; 140*f126890aSEmmanuel Vadot}; 141*f126890aSEmmanuel Vadot 142*f126890aSEmmanuel Vadot&uart1 { 143*f126890aSEmmanuel Vadot /* Rear RS-232 connector */ 144*f126890aSEmmanuel Vadot status = "okay"; 145*f126890aSEmmanuel Vadot 146*f126890aSEmmanuel Vadot pinctrl-names = "default"; 147*f126890aSEmmanuel Vadot pinctrl-0 = <&pinctrl_txd1_default 148*f126890aSEmmanuel Vadot &pinctrl_rxd1_default 149*f126890aSEmmanuel Vadot &pinctrl_nrts1_default 150*f126890aSEmmanuel Vadot &pinctrl_ndtr1_default 151*f126890aSEmmanuel Vadot &pinctrl_ndsr1_default 152*f126890aSEmmanuel Vadot &pinctrl_ncts1_default 153*f126890aSEmmanuel Vadot &pinctrl_ndcd1_default 154*f126890aSEmmanuel Vadot &pinctrl_nri1_default>; 155*f126890aSEmmanuel Vadot}; 156*f126890aSEmmanuel Vadot 157*f126890aSEmmanuel Vadot&uart5 { 158*f126890aSEmmanuel Vadot status = "okay"; 159*f126890aSEmmanuel Vadot}; 160*f126890aSEmmanuel Vadot 161*f126890aSEmmanuel Vadot&mac0 { 162*f126890aSEmmanuel Vadot status = "okay"; 163*f126890aSEmmanuel Vadot 164*f126890aSEmmanuel Vadot use-ncsi; 165*f126890aSEmmanuel Vadot 166*f126890aSEmmanuel Vadot pinctrl-names = "default"; 167*f126890aSEmmanuel Vadot pinctrl-0 = <&pinctrl_rmii1_default>; 168*f126890aSEmmanuel Vadot clocks = <&syscon ASPEED_CLK_GATE_MAC1CLK>, 169*f126890aSEmmanuel Vadot <&syscon ASPEED_CLK_MAC1RCLK>; 170*f126890aSEmmanuel Vadot clock-names = "MACCLK", "RCLK"; 171*f126890aSEmmanuel Vadot}; 172*f126890aSEmmanuel Vadot 173*f126890aSEmmanuel Vadot&i2c0 { 174*f126890aSEmmanuel Vadot status = "okay"; 175*f126890aSEmmanuel Vadot 176*f126890aSEmmanuel Vadot eeprom@50 { 177*f126890aSEmmanuel Vadot compatible = "atmel,24c256"; 178*f126890aSEmmanuel Vadot reg = <0x50>; 179*f126890aSEmmanuel Vadot pagesize = <64>; 180*f126890aSEmmanuel Vadot }; 181*f126890aSEmmanuel Vadot}; 182*f126890aSEmmanuel Vadot 183*f126890aSEmmanuel Vadot&i2c2 { 184*f126890aSEmmanuel Vadot status = "okay"; 185*f126890aSEmmanuel Vadot /* CPU0 characterization connector */ 186*f126890aSEmmanuel Vadot}; 187*f126890aSEmmanuel Vadot 188*f126890aSEmmanuel Vadot&i2c3 { 189*f126890aSEmmanuel Vadot status = "okay"; 190*f126890aSEmmanuel Vadot /* CLK GEN SI5338 */ 191*f126890aSEmmanuel Vadot}; 192*f126890aSEmmanuel Vadot 193*f126890aSEmmanuel Vadot&i2c4 { 194*f126890aSEmmanuel Vadot status = "okay"; 195*f126890aSEmmanuel Vadot /* Voltage regulators for CPU0 */ 196*f126890aSEmmanuel Vadot}; 197*f126890aSEmmanuel Vadot 198*f126890aSEmmanuel Vadot&i2c5 { 199*f126890aSEmmanuel Vadot status = "okay"; 200*f126890aSEmmanuel Vadot /* Voltage regulators for CPU1 */ 201*f126890aSEmmanuel Vadot}; 202*f126890aSEmmanuel Vadot 203*f126890aSEmmanuel Vadot&i2c6 { 204*f126890aSEmmanuel Vadot status = "okay"; 205*f126890aSEmmanuel Vadot 206*f126890aSEmmanuel Vadot rtc@32 { 207*f126890aSEmmanuel Vadot compatible = "epson,rx8900"; 208*f126890aSEmmanuel Vadot reg = <0x32>; 209*f126890aSEmmanuel Vadot }; 210*f126890aSEmmanuel Vadot}; 211*f126890aSEmmanuel Vadot 212*f126890aSEmmanuel Vadot&i2c7 { 213*f126890aSEmmanuel Vadot status = "okay"; 214*f126890aSEmmanuel Vadot /* CPLD */ 215*f126890aSEmmanuel Vadot}; 216*f126890aSEmmanuel Vadot 217*f126890aSEmmanuel Vadot&gpio { 218*f126890aSEmmanuel Vadot gpio-line-names = 219*f126890aSEmmanuel Vadot /*A0-A7*/ "","cfam-reset","","","","","fsi-mux","", 220*f126890aSEmmanuel Vadot /*B0-B7*/ "","","","","","","","", 221*f126890aSEmmanuel Vadot /*C0-C7*/ "","","","","","","","", 222*f126890aSEmmanuel Vadot /*D0-D7*/ "fsi-enable","bmc_power_up","sys_pwrok_buf", 223*f126890aSEmmanuel Vadot "func_mode0","func_mode1","func_mode2","","", 224*f126890aSEmmanuel Vadot /*E0-E7*/ "","ncsi_cfg","","","","","","", 225*f126890aSEmmanuel Vadot /*F0-F7*/ "","","","","","","","", 226*f126890aSEmmanuel Vadot /*G0-G7*/ "","","","","","","","", 227*f126890aSEmmanuel Vadot /*H0-H7*/ "","","","","","","","", 228*f126890aSEmmanuel Vadot /*I0-I7*/ "","","","","","","","", 229*f126890aSEmmanuel Vadot /*J0-J7*/ "","","checkstop","","","","","", 230*f126890aSEmmanuel Vadot /*K0-K7*/ "","","","","","","","", 231*f126890aSEmmanuel Vadot /*L0-L7*/ "","","","","","","","", 232*f126890aSEmmanuel Vadot /*M0-M7*/ "","","","","","","","", 233*f126890aSEmmanuel Vadot /*N0-N7*/ "","","","","","","","", 234*f126890aSEmmanuel Vadot /*O0-O7*/ "","","power-button","","","","","", 235*f126890aSEmmanuel Vadot /*P0-P7*/ "","fsi-trans","pm_rtc_adc_en","","","","","", 236*f126890aSEmmanuel Vadot /*Q0-Q7*/ "","","","","","","","id-button", 237*f126890aSEmmanuel Vadot /*R0-R7*/ "","software_pwrgood","","","","","","", 238*f126890aSEmmanuel Vadot /*S0-S7*/ "","","","","","","","seq_cont", 239*f126890aSEmmanuel Vadot /*T0-T7*/ "","","","","","","","", 240*f126890aSEmmanuel Vadot /*U0-U7*/ "","","","","","","","", 241*f126890aSEmmanuel Vadot /*V0-V7*/ "","","","","","","","", 242*f126890aSEmmanuel Vadot /*W0-W7*/ "","","","","","","","", 243*f126890aSEmmanuel Vadot /*X0-X7*/ "","","","","","","","", 244*f126890aSEmmanuel Vadot /*Y0-Y7*/ "","","","","","","","", 245*f126890aSEmmanuel Vadot /*Z0-Z7*/ "","","","","","","","", 246*f126890aSEmmanuel Vadot /*AA0-AA7*/ "fsi-clock","led-attention","fsi-data","led-fault", 247*f126890aSEmmanuel Vadot "led-power","","","led-identify", 248*f126890aSEmmanuel Vadot /*AB0-AB7*/ "","","","","","","","", 249*f126890aSEmmanuel Vadot /*AC0-AC7*/ "","","","","","","",""; 250*f126890aSEmmanuel Vadot 251*f126890aSEmmanuel Vadot func_mode0 { 252*f126890aSEmmanuel Vadot gpio-hog; 253*f126890aSEmmanuel Vadot gpios = <ASPEED_GPIO(D, 3) GPIO_ACTIVE_HIGH>; 254*f126890aSEmmanuel Vadot output-low; 255*f126890aSEmmanuel Vadot }; 256*f126890aSEmmanuel Vadot func_mode1 { 257*f126890aSEmmanuel Vadot gpio-hog; 258*f126890aSEmmanuel Vadot gpios = <ASPEED_GPIO(D, 4) GPIO_ACTIVE_HIGH>; 259*f126890aSEmmanuel Vadot output-low; 260*f126890aSEmmanuel Vadot }; 261*f126890aSEmmanuel Vadot func_mode2 { 262*f126890aSEmmanuel Vadot gpio-hog; 263*f126890aSEmmanuel Vadot gpios = <ASPEED_GPIO(D, 5) GPIO_ACTIVE_HIGH>; 264*f126890aSEmmanuel Vadot output-low; 265*f126890aSEmmanuel Vadot }; 266*f126890aSEmmanuel Vadot seq_cont { 267*f126890aSEmmanuel Vadot gpio-hog; 268*f126890aSEmmanuel Vadot gpios = <ASPEED_GPIO(S, 7) GPIO_ACTIVE_HIGH>; 269*f126890aSEmmanuel Vadot output-low; 270*f126890aSEmmanuel Vadot }; 271*f126890aSEmmanuel Vadot ncsi_cfg { 272*f126890aSEmmanuel Vadot gpio-hog; 273*f126890aSEmmanuel Vadot input; 274*f126890aSEmmanuel Vadot gpios = <ASPEED_GPIO(E, 1) GPIO_ACTIVE_HIGH>; 275*f126890aSEmmanuel Vadot }; 276*f126890aSEmmanuel Vadot}; 277*f126890aSEmmanuel Vadot 278*f126890aSEmmanuel Vadot&vuart { 279*f126890aSEmmanuel Vadot status = "okay"; 280*f126890aSEmmanuel Vadot}; 281*f126890aSEmmanuel Vadot 282*f126890aSEmmanuel Vadot&gfx { 283*f126890aSEmmanuel Vadot status = "okay"; 284*f126890aSEmmanuel Vadot memory-region = <&gfx_memory>; 285*f126890aSEmmanuel Vadot}; 286*f126890aSEmmanuel Vadot 287*f126890aSEmmanuel Vadot&ibt { 288*f126890aSEmmanuel Vadot status = "okay"; 289*f126890aSEmmanuel Vadot}; 290*f126890aSEmmanuel Vadot 291*f126890aSEmmanuel Vadot&vhub { 292*f126890aSEmmanuel Vadot status = "okay"; 293*f126890aSEmmanuel Vadot}; 294*f126890aSEmmanuel Vadot 295*f126890aSEmmanuel Vadot&adc { 296*f126890aSEmmanuel Vadot status = "okay"; 297*f126890aSEmmanuel Vadot 298*f126890aSEmmanuel Vadot pinctrl-names = "default"; 299*f126890aSEmmanuel Vadot pinctrl-0 = <&pinctrl_adc0_default 300*f126890aSEmmanuel Vadot &pinctrl_adc1_default 301*f126890aSEmmanuel Vadot &pinctrl_adc2_default 302*f126890aSEmmanuel Vadot &pinctrl_adc3_default 303*f126890aSEmmanuel Vadot &pinctrl_adc4_default 304*f126890aSEmmanuel Vadot &pinctrl_adc5_default 305*f126890aSEmmanuel Vadot &pinctrl_adc6_default 306*f126890aSEmmanuel Vadot &pinctrl_adc7_default 307*f126890aSEmmanuel Vadot &pinctrl_adc8_default 308*f126890aSEmmanuel Vadot &pinctrl_adc9_default 309*f126890aSEmmanuel Vadot &pinctrl_adc10_default 310*f126890aSEmmanuel Vadot &pinctrl_adc11_default 311*f126890aSEmmanuel Vadot &pinctrl_adc12_default 312*f126890aSEmmanuel Vadot &pinctrl_adc13_default 313*f126890aSEmmanuel Vadot &pinctrl_adc14_default 314*f126890aSEmmanuel Vadot &pinctrl_adc15_default>; 315*f126890aSEmmanuel Vadot}; 316*f126890aSEmmanuel Vadot 317*f126890aSEmmanuel Vadot&video { 318*f126890aSEmmanuel Vadot status = "okay"; 319*f126890aSEmmanuel Vadot memory-region = <&video_engine_memory>; 320*f126890aSEmmanuel Vadot}; 321*f126890aSEmmanuel Vadot 322*f126890aSEmmanuel Vadot#include "ibm-power9-dual.dtsi" 323