// SPDX-License-Identifier: GPL-2.0 // Copyright (c) 2018 Nuvoton Technology tomer.maimon@nuvoton.com // Copyright 2018 Google, Inc. /dts-v1/; #include "nuvoton-npcm750.dtsi" #include "dt-bindings/gpio/gpio.h" #include "nuvoton-npcm750-pincfg-evb.dtsi" / { model = "Nuvoton npcm750 Development Board (Device Tree)"; compatible = "nuvoton,npcm750-evb", "nuvoton,npcm750"; aliases { ethernet2 = &gmac0; ethernet3 = &gmac1; serial0 = &serial0; serial1 = &serial1; serial2 = &serial2; serial3 = &serial3; i2c0 = &i2c0; 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; fiu2 = &fiux; }; chosen { stdout-path = &serial3; }; memory { device_type = "memory"; reg = <0x0 0x20000000>; }; }; &gmac0 { phy-mode = "rgmii-id"; status = "okay"; }; &gmac1 { phy-mode = "rgmii-id"; status = "okay"; }; &ehci1 { status = "okay"; }; &fiu0 { status = "okay"; spi-nor@0 { compatible = "jedec,spi-nor"; #address-cells = <1>; #size-cells = <1>; spi-rx-bus-width = <2>; reg = <0>; spi-max-frequency = <5000000>; partitions@80000000 { compatible = "fixed-partitions"; #address-cells = <1>; #size-cells = <1>; bbuboot1@0 { label = "bb-uboot-1"; reg = <0x0000000 0x80000>; read-only; }; bbuboot2@80000 { label = "bb-uboot-2"; reg = <0x0080000 0x80000>; read-only; }; envparam@100000 { label = "env-param"; reg = <0x0100000 0x40000>; read-only; }; spare@140000 { label = "spare"; reg = <0x0140000 0xC0000>; }; kernel@200000 { label = "kernel"; reg = <0x0200000 0x400000>; }; rootfs@600000 { label = "rootfs"; reg = <0x0600000 0x700000>; }; spare1@d00000 { label = "spare1"; reg = <0x0D00000 0x200000>; }; spare2@f00000 { label = "spare2"; reg = <0x0F00000 0x200000>; }; spare3@1100000 { label = "spare3"; reg = <0x1100000 0x200000>; }; spare4@1300000 { label = "spare4"; reg = <0x1300000 0x0>; }; }; }; }; &fiu3 { pinctrl-0 = <&spi3_pins>, <&spi3quad_pins>; status = "okay"; spi-nor@0 { compatible = "jedec,spi-nor"; #address-cells = <1>; #size-cells = <1>; spi-rx-bus-width = <2>; reg = <0>; spi-max-frequency = <5000000>; partitions@A0000000 { compatible = "fixed-partitions"; #address-cells = <1>; #size-cells = <1>; system1@0 { label = "spi3-system1"; reg = <0x0 0x0>; }; }; }; }; &fiux { spix-mode; }; &watchdog1 { status = "okay"; }; &rng { status = "okay"; }; &serial0 { status = "okay"; }; &serial1 { status = "okay"; }; &serial2 { status = "okay"; }; &serial3 { status = "okay"; }; &adc { status = "okay"; }; &lpc_kcs { kcs1: kcs1@0 { status = "okay"; }; kcs2: kcs2@0 { status = "okay"; }; kcs3: kcs3@0 { status = "okay"; }; }; /* lm75 on SVB */ &i2c0 { clock-frequency = <100000>; status = "okay"; lm75@48 { compatible = "lm75"; reg = <0x48>; status = "okay"; }; }; /* lm75 on EB */ &i2c1 { clock-frequency = <100000>; status = "okay"; lm75@48 { compatible = "lm75"; reg = <0x48>; status = "okay"; }; }; /* tmp100 on EB */ &i2c2 { clock-frequency = <100000>; status = "okay"; tmp100@48 { compatible = "tmp100"; reg = <0x48>; status = "okay"; }; }; &i2c3 { clock-frequency = <100000>; status = "okay"; }; &i2c5 { clock-frequency = <100000>; status = "okay"; }; /* tmp100 on SVB */ &i2c6 { clock-frequency = <100000>; status = "okay"; tmp100@48 { compatible = "tmp100"; reg = <0x48>; status = "okay"; }; }; &i2c7 { clock-frequency = <100000>; status = "okay"; }; &i2c8 { clock-frequency = <100000>; status = "okay"; }; &i2c9 { clock-frequency = <100000>; status = "okay"; }; &i2c10 { clock-frequency = <100000>; status = "okay"; }; &i2c11 { clock-frequency = <100000>; status = "okay"; }; &i2c14 { clock-frequency = <100000>; status = "okay"; }; &pwm_fan { status = "okay"; fan@0 { reg = <0x00>; fan-tach-ch = /bits/ 8 <0x00 0x01>; cooling-levels = <127 255>; }; fan@1 { reg = <0x01>; fan-tach-ch = /bits/ 8 <0x02 0x03>; cooling-levels = /bits/ 8 <127 255>; }; fan@2 { reg = <0x02>; fan-tach-ch = /bits/ 8 <0x04 0x05>; cooling-levels = /bits/ 8 <127 255>; }; fan@3 { reg = <0x03>; fan-tach-ch = /bits/ 8 <0x06 0x07>; cooling-levels = /bits/ 8 <127 255>; }; fan@4 { reg = <0x04>; fan-tach-ch = /bits/ 8 <0x08 0x09>; cooling-levels = /bits/ 8 <127 255>; }; fan@5 { reg = <0x05>; fan-tach-ch = /bits/ 8 <0x0A 0x0B>; cooling-levels = /bits/ 8 <127 255>; }; fan@6 { reg = <0x06>; fan-tach-ch = /bits/ 8 <0x0C 0x0D>; cooling-levels = /bits/ 8 <127 255>; }; fan@7 { reg = <0x07>; fan-tach-ch = /bits/ 8 <0x0E 0x0F>; cooling-levels = /bits/ 8 <127 255>; }; }; &spi0 { cs-gpios = <&gpio6 11 GPIO_ACTIVE_LOW>; status = "okay"; Flash@0 { compatible = "winbond,w25q128", "jedec,spi-nor"; reg = <0x0>; #address-cells = <1>; #size-cells = <1>; spi-max-frequency = <5000000>; partition@0 { label = "spi0_spare1"; reg = <0x0000000 0x800000>; }; partition@1 { label = "spi0_spare2"; reg = <0x800000 0x0>; }; }; }; &spi1 { cs-gpios = <&gpio0 20 GPIO_ACTIVE_LOW>; status = "okay"; Flash@0 { compatible = "winbond,w25q128fw", "jedec,spi-nor"; reg = <0x0>; #address-cells = <1>; #size-cells = <1>; spi-max-frequency = <5000000>; partition@0 { label = "spi1_spare1"; reg = <0x0000000 0x800000>; }; partition@1 { label = "spi1_spare2"; reg = <0x800000 0x0>; }; }; }; &pinctrl { pinctrl-names = "default"; pinctrl-0 = < &iox1_pins &pin8_input &pin9_output_high &pin10_input &pin11_output_high &pin16_input &pin24_output_high &pin25_output_low &pin32_output_high &jtag2_pins &pin61_output_high &pin62_output_high &pin63_output_high &lpc_pins &pin160_input &pin162_input &pin168_input &pin169_input &pin170_input &pin187_output_high &pin190_input &pin191_output_high &pin192_output_high &pin197_output_low &ddc_pins &pin218_input &pin219_output_low &pin220_output_low &pin221_output_high &pin222_input &pin223_output_low &spix_pins &pin228_output_low &pin231_output_high &pin255_input>; };