// SPDX-License-Identifier: GPL-2.0 // Copyright (c) 2020 Fii USA Inc. /dts-v1/; #include "nuvoton-npcm730.dtsi" #include / { model = "Fii Kudo Board"; compatible = "fii,kudo", "nuvoton,npcm730"; aliases { ethernet1 = &gmac0; serial0 = &serial0; serial1 = &serial1; serial2 = &serial2; serial3 = &serial3; i2c1 = &i2c1; i2c2 = &i2c2; i2c3 = &i2c3; i2c4 = &i2c4; i2c5 = &i2c5; i2c6 = &i2c6; i2c7 = &i2c7; i2c8 = &i2c8; i2c9 = &i2c9; i2c10 = &i2c10; i2c11 = &i2c11; i2c12 = &i2c12; i2c13 = &i2c13; i2c14 = &i2c14; i2c15 = &i2c15; spi0 = &spi0; spi1 = &spi1; fiu0 = &fiu0; fiu1 = &fiu3; }; chosen { stdout-path = &serial3; }; memory { reg = <0 0x40000000>; }; iio-hwmon { compatible = "iio-hwmon"; io-channels = <&adc 0>, <&adc 1>, <&adc 2>, <&adc 3>, <&adc 4>, <&adc 5>, <&adc 6>, <&adc 7>; }; jtag_master { compatible = "nuvoton,npcm750-jtag-master"; #address-cells = <1>; #size-cells = <1>; // dev/jtag0 dev-num = <0>; // pspi or gpio mode = "pspi"; // pspi2 pspi-controller = <2>; reg = <0xf0201000 0x1000>; interrupts = ; clocks = <&clk NPCM7XX_CLK_APB5>; // TCK, TDI, TDO, TMS jtag-gpios = <&gpio0 19 GPIO_ACTIVE_HIGH>, <&gpio0 18 GPIO_ACTIVE_HIGH>, <&gpio0 17 GPIO_ACTIVE_HIGH>, <&gpio0 16 GPIO_ACTIVE_HIGH>; }; leds { compatible = "gpio-leds"; heartbeat { label = "heartbeat"; gpios = <&gpio0 14 1>; }; }; pinctrl: pinctrl@f0800000 { gpio61oh_pins: gpio61oh-pins { pins = "GPO61/nDTR1_BOUT1/STRAP6"; bias-disable; output-high; }; gpio62oh_pins: gpio62oh-pins { pins = "GPO62/nRTST1/STRAP5"; bias-disable; output-high; }; gpio161ol_pins: gpio161ol-pins { pins = "GPIO161/nLFRAME/nESPICS"; bias-disable; output-low; }; gpio163i_pins: gpio163i-pins { pins = "GPIO163/LCLK/ESPICLK"; bias-disable; input-enable; }; gpio167ol_pins: gpio167ol-pins { pins = "GPIO167/LAD3/ESPI_IO3"; bias-disable; output-low; }; gpio95i_pins: gpio95i-pins { pins = "GPIO95/nLRESET/nESPIRST"; bias-disable; input-enable; }; gpio65ol_pins: gpio65ol-pins { pins = "GPIO65/FANIN1"; bias-disable; output-low; }; gpio66oh_pins: gpio66oh-pins { pins = "GPIO66/FANIN2"; bias-disable; output-high; }; gpio67oh_pins: gpio67oh-pins { pins = "GPIO67/FANIN3"; bias-disable; output-high; }; gpio68ol_pins: gpio68ol-pins { pins = "GPIO68/FANIN4"; bias-disable; output-low; }; gpio69i_pins: gpio69i-pins { pins = "GPIO69/FANIN5"; bias-disable; input-enable; }; gpio70ol_pins: gpio70ol-pins { pins = "GPIO70/FANIN6"; bias-disable; output-low; }; gpio71i_pins: gpio71i-pins { pins = "GPIO71/FANIN7"; bias-disable; input-enable; }; gpio72i_pins: gpio72i-pins { pins = "GPIO72/FANIN8"; bias-disable; input-enable; }; gpio73i_pins: gpio73i-pins { pins = "GPIO73/FANIN9"; bias-disable; input-enable; }; gpio74i_pins: gpio74i-pins { pins = "GPIO74/FANIN10"; bias-disable; input-enable; }; gpio75i_pins: gpio75i-pins { pins = "GPIO75/FANIN11"; bias-disable; input-enable; }; gpio76i_pins: gpio76i-pins { pins = "GPIO76/FANIN12"; bias-disable; input-enable; }; gpio77i_pins: gpio77i-pins { pins = "GPIO77/FANIN13"; bias-disable; input-enable; }; gpio78i_pins: gpio78i-pins { pins = "GPIO78/FANIN14"; bias-disable; input-enable; }; gpio79ol_pins: gpio79ol-pins { pins = "GPIO79/FANIN15"; bias-disable; output-low; }; gpio80oh_pins: gpio80oh-pins { pins = "GPIO80/PWM0"; bias-disable; output-high; }; gpio81i_pins: gpio81i-pins { pins = "GPIO81/PWM1"; bias-disable; input-enable; }; gpio82i_pins: gpio82i-pins { pins = "GPIO82/PWM2"; bias-disable; input-enable; }; gpio83i_pins: gpio83i-pins { pins = "GPIO83/PWM3"; bias-disable; input-enable; }; gpio144i_pins: gpio144i-pins { pins = "GPIO144/PWM4"; bias-disable; input-enable; }; gpio145i_pins: gpio145i-pins { pins = "GPIO145/PWM5"; bias-disable; input-enable; }; gpio146i_pins: gpio146i-pins { pins = "GPIO146/PWM6"; bias-disable; input-enable; }; gpio147oh_pins: gpio147oh-pins { pins = "GPIO147/PWM7"; bias-disable; output-high; }; gpio168ol_pins: gpio168ol-pins { pins = "GPIO168/nCLKRUN/nESPIALERT"; bias-disable; output-low; }; gpio169oh_pins: gpio169oh-pins { pins = "GPIO169/nSCIPME"; bias-disable; output-high; }; gpio170ol_pins: gpio170ol-pins { pins = "GPIO170/nSMI"; bias-disable; output-low; }; gpio218oh_pins: gpio218oh-pins { pins = "GPIO218/nWDO1"; bias-disable; output-high; }; gpio37i_pins: gpio37i-pins { pins = "GPIO37/SMB3CSDA"; bias-disable; input-enable; }; gpio38i_pins: gpio38i-pins { pins = "GPIO38/SMB3CSCL"; bias-disable; input-enable; }; gpio39i_pins: gpio39i-pins { pins = "GPIO39/SMB3BSDA"; bias-disable; input-enable; }; gpio40i_pins: gpio40i-pins { pins = "GPIO40/SMB3BSCL"; bias-disable; input-enable; }; gpio121i_pins: gpio121i-pins { pins = "GPIO121/SMB2CSCL"; bias-disable; input-enable; }; gpio122i_pins: gpio122i-pins { pins = "GPIO122/SMB2BSDA"; bias-disable; input-enable; }; gpio123i_pins: gpio123i-pins { pins = "GPIO123/SMB2BSCL"; bias-disable; input-enable; }; gpio124i_pins: gpio124i-pins { pins = "GPIO124/SMB1CSDA"; bias-disable; input-enable; }; gpio125i_pins: gpio125i-pins { pins = "GPIO125/SMB1CSCL"; bias-disable; input-enable; }; gpio126i_pins: gpio126i-pins { pins = "GPIO126/SMB1BSDA"; bias-disable; input-enable; }; gpio127i_pins: gpio127i-pins { pins = "GPIO127/SMB1BSCL"; bias-disable; input-enable; }; gpio136i_pins: gpio136i-pins { pins = "GPIO136/SD1DT0"; bias-disable; input-enable; }; gpio137oh_pins: gpio137oh-pins { pins = "GPIO137/SD1DT1"; bias-disable; output-high; }; gpio138i_pins: gpio138i-pins { pins = "GPIO138/SD1DT2"; bias-disable; input-enable; }; gpio139i_pins: gpio139i-pins { pins = "GPIO139/SD1DT3"; bias-disable; input-enable; }; gpio140i_pins: gpio140i-pins { pins = "GPIO140/SD1CLK"; bias-disable; input-enable; }; gpio141i_pins: gpio141i-pins { pins = "GPIO141/SD1WP"; bias-disable; input-enable; }; gpio190oh_pins: gpio190oh-pins { pins = "GPIO190/nPRD_SMI"; bias-disable; output-high; }; gpio191oh_pins: gpio191oh-pins { pins = "GPIO191"; bias-disable; output-high; }; gpio195ol_pins: gpio195ol-pins { pins = "GPIO195/SMB0BSDA"; bias-disable; output-low; }; gpio196ol_pins: gpio196ol-pins { pins = "GPIO196/SMB0CSCL"; bias-disable; output-low; }; gpio199i_pins: gpio199i-pins { pins = "GPIO199/SMB0DSCL"; bias-disable; input-enable; }; gpio202ol_pins: gpio202ol-pins { pins = "GPIO202/SMB0CSDA"; bias-disable; output-low; }; }; }; &gmac0 { phy-mode = "rgmii-id"; snps,eee-force-disable; status = "okay"; }; &ehci1 { status = "okay"; }; &fiu0 { pinctrl-names = "default"; pinctrl-0 = <&spi0cs1_pins>; status = "okay"; spi-nor@0 { compatible = "jedec,spi-nor"; #address-cells = <1>; #size-cells = <1>; reg = <0>; spi-max-frequency = <5000000>; spi-rx-bus-width = <2>; label = "bmc"; partitions@80000000 { compatible = "fixed-partitions"; #address-cells = <1>; #size-cells = <1>; u-boot@0 { label = "u-boot"; reg = <0x0000000 0xC0000>; read-only; }; u-boot-env@100000{ label = "u-boot-env"; reg = <0x00100000 0x40000>; }; kernel@200000 { label = "kernel"; reg = <0x0200000 0x600000>; }; rofs@800000 { label = "rofs"; reg = <0x800000 0x3500000>; }; rwfs@3d00000 { label = "rwfs"; reg = <0x3d00000 0x300000>; }; }; }; spi-nor@1 { compatible = "jedec,spi-nor"; #address-cells = <1>; #size-cells = <1>; reg = <1>; spi-max-frequency = <5000000>; spi-rx-bus-width = <2>; partitions@88000000 { compatible = "fixed-partitions"; #address-cells = <1>; #size-cells = <1>; spare1@0 { label = "spi0-cs1-spare1"; reg = <0x0 0x800000>; }; spare2@800000 { label = "spi0-cs1-spare2"; reg = <0x800000 0x0>; }; }; }; }; &fiu3 { pinctrl-0 = <&spi3_pins>; spi-nor@0 { compatible = "jedec,spi-nor"; #address-cells = <1>; #size-cells = <1>; reg = <0>; spi-max-frequency = <5000000>; spi-rx-bus-width = <2>; partitions@A0000000 { compatible = "fixed-partitions"; #address-cells = <1>; #size-cells = <1>; system1@0 { label = "bios"; reg = <0x0 0x0>; }; system2@800000 { label = "spi3-system2"; reg = <0x800000 0x0>; }; }; }; }; &watchdog1 { status = "okay"; }; &rng { status = "okay"; }; &serial0 { status = "okay"; }; &serial1 { status = "okay"; }; &serial2 { status = "okay"; }; &serial3 { status = "okay"; }; &adc { #io-channel-cells = <1>; status = "okay"; }; &i2c1 { status = "okay"; i2c-switch@75 { compatible = "nxp,pca9548"; #address-cells = <1>; #size-cells = <0>; reg = <0x75>; i2c-mux-idle-disconnect; i2c@2 { #address-cells = <1>; #size-cells = <0>; reg = <2>; // Rear-Fan max31790@58 { compatible = "maxim,max31790"; reg = <0x58>; }; }; i2c@3 { #address-cells = <1>; #size-cells = <0>; reg = <3>; // Mid-Fan max31790@58 { compatible = "maxim,max31790"; reg = <0x58>; }; }; i2c-bus@4 { #address-cells = <1>; #size-cells = <0>; reg = <4>; // INLET1_T lm75@5c { compatible = "ti,lm75"; reg = <0x5c>; }; }; i2c-bus@5 { #address-cells = <1>; #size-cells = <0>; reg = <5>; // OUTLET1_T lm75@5c { compatible = "ti,lm75"; reg = <0x5c>; }; }; i2c-bus@6 { #address-cells = <1>; #size-cells = <0>; reg = <6>; // OUTLET2_T lm75@5c { compatible = "ti,lm75"; reg = <0x5c>; }; }; i2c-bus@7 { #address-cells = <1>; #size-cells = <0>; reg = <7>; // OUTLET3_T lm75@5c { compatible = "ti,lm75"; reg = <0x5c>; }; }; }; i2c-switch@77 { compatible = "nxp,pca9548"; #address-cells = <1>; #size-cells = <0>; reg = <0x77>; i2c-mux-idle-disconnect; i2c-bus@2 { #address-cells = <1>; #size-cells = <0>; reg = <2>; // STB-T pmbus@74 { compatible = "pmbus"; reg = <0x74>; }; }; }; }; &i2c2 { status = "okay"; smpro@4f { compatible = "ampere,smpro"; reg = <0x4f>; }; smpro@4e { compatible = "ampere,smpro"; reg = <0x4e>; }; }; &i2c3 { status = "okay"; }; &i2c4 { status = "okay"; i2c-switch@77 { compatible = "nxp,pca9548"; #address-cells = <1>; #size-cells = <0>; reg = <0x77>; i2c-mux-idle-disconnect; i2c-bus@0 { #address-cells = <1>; #size-cells = <0>; reg = <0>; // ADC sensors adm1266@40 { compatible = "adi,adm1266"; reg = <0x40>; }; }; i2c-bus@1 { #address-cells = <1>; #size-cells = <0>; reg = <1>; // ADC sensors adm1266@41 { compatible = "adi,adm1266"; reg = <0x41>; }; }; }; }; &i2c5 { status = "okay"; }; &i2c6 { status = "okay"; }; &i2c7 { status = "okay"; }; &i2c8 { status = "okay"; }; &i2c9 { status = "okay"; }; &i2c10 { status = "okay"; }; &i2c11 { status = "okay"; }; &i2c12 { status = "okay"; ssif-bmc@10 { compatible = "ssif-bmc"; reg = <0x10>; }; }; &i2c13 { status = "okay"; i2c-switch@77 { compatible = "nxp,pca9548"; #address-cells = <1>; #size-cells = <0>; reg = <0x77>; i2c-mux-idle-disconnect; i2c-bus@3 { #address-cells = <1>; #size-cells = <0>; reg = <3>; // M2_ZONE_T lm75@28 { compatible = "ti,lm75"; reg = <0x28>; }; }; i2c-bus@4 { #address-cells = <1>; #size-cells = <0>; reg = <4>; // BATT_ZONE_T lm75@29 { compatible = "ti,lm75"; reg = <0x29>; }; }; i2c-bus@5 { #address-cells = <1>; #size-cells = <0>; reg = <5>; // NBM1_ZONE_T lm75@28 { compatible = "ti,lm75"; reg = <0x28>; }; }; i2c-bus@6 { #address-cells = <1>; #size-cells = <0>; reg = <6>; // NBM2_ZONE_T lm75@29 { compatible = "ti,lm75"; reg = <0x29>; }; }; }; }; &i2c14 { status = "okay"; }; &i2c15 { status = "okay"; }; &spi0 { cs-gpios = <&gpio6 11 GPIO_ACTIVE_LOW>; status = "okay"; }; &pinctrl { pinctrl-names = "default"; pinctrl-0 = < &gpio61oh_pins &gpio62oh_pins &gpio161ol_pins &gpio163i_pins &gpio167ol_pins &gpio95i_pins &gpio65ol_pins &gpio66oh_pins &gpio67oh_pins &gpio68ol_pins &gpio69i_pins &gpio70ol_pins &gpio71i_pins &gpio72i_pins &gpio73i_pins &gpio74i_pins &gpio75i_pins &gpio76i_pins &gpio77i_pins &gpio78i_pins &gpio79ol_pins &gpio80oh_pins &gpio81i_pins &gpio82i_pins &gpio83i_pins &gpio144i_pins &gpio145i_pins &gpio146i_pins &gpio147oh_pins &gpio168ol_pins &gpio169oh_pins &gpio170ol_pins &gpio218oh_pins &gpio37i_pins &gpio38i_pins &gpio39i_pins &gpio40i_pins &gpio121i_pins &gpio122i_pins &gpio123i_pins &gpio124i_pins &gpio125i_pins &gpio126i_pins &gpio127i_pins &gpio136i_pins &gpio137oh_pins &gpio138i_pins &gpio139i_pins &gpio140i_pins &gpio141i_pins &gpio190oh_pins &gpio191oh_pins &gpio195ol_pins &gpio196ol_pins &gpio199i_pins &gpio202ol_pins >; }; &gcr { serial_port_mux: mux-controller { compatible = "mmio-mux"; #mux-control-cells = <1>; mux-reg-masks = <0x38 0x07>; idle-states = <2>; }; };