[PATCH dev-4.19 v1] Add device tree for Quanta GSJ board.

fran.hsu at quantatw.com fran.hsu at quantatw.com
Wed Feb 20 01:10:00 AEDT 2019


From: FranHsu <Fran.Hsu at quantatw.com>

	Tested: This commit included the first version of Quanta GSJ device tree.
            And it could build successfully with the Nuvoton kernel branch 
            "Poleg-4.19.16-OpenBMC". And it could be booted on EVB.

Signed-off-by: FranHsu <Fran.Hsu at quantatw.com>
---
 arch/arm/boot/dts/nuvoton-npcm730-gsj.dts | 463 ++++++++++++++++++++++
 1 file changed, 463 insertions(+)
 create mode 100644 arch/arm/boot/dts/nuvoton-npcm730-gsj.dts

diff --git a/arch/arm/boot/dts/nuvoton-npcm730-gsj.dts b/arch/arm/boot/dts/nuvoton-npcm730-gsj.dts
new file mode 100644
index 000000000000..f5671c9a6bc6
--- /dev/null
+++ b/arch/arm/boot/dts/nuvoton-npcm730-gsj.dts
@@ -0,0 +1,463 @@
+// SPDX-License-Identifier: GPL-2.0
+// Copyright (c) 2019 Quanta Computer lnc. Fran.Hsu at quantatw.com
+
+/dts-v1/;
+#include "nuvoton-npcm730.dtsi"
+
+/ {
+	model = "Quanta GSJ Board (Device Tree v1)";
+	compatible = "nuvoton,npcm750";
+
+	aliases {
+		ethernet1 = &gmac0;
+		serial3 = &serial3;
+		udc9 = &udc9;
+		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 {
+		reg = <0 0x40000000>;
+	};
+
+	ahb {
+		gmac0: eth at f0802000 {
+			reg = <0xf0802000 0x2000>;
+			phy-mode = "rgmii-id";
+			status = "okay";
+		};
+
+		ehci1: usb at f0806000 {
+			status = "okay";
+		};
+
+		ohci1: ohci at f0807000 {
+			status = "okay";
+		};
+
+		udc9:udc at f0839000 {
+			status = "okay";
+		};
+
+		aes:aes at f0858000 {
+			status = "okay";
+		};
+
+		sha:sha at f085a000 {
+			status = "okay";
+		};
+
+		fiu0: fiu at fb000000 {
+			pinctrl-names = "default";
+			pinctrl-0 = <&spi0cs1_pins>;
+			status = "okay";
+			spi-nor at 0 {
+				compatible = "jedec,spi-nor";
+				#address-cells = <1>;
+				#size-cells = <1>;
+				reg = <0>;
+				spi-rx-bus-width = <2>;
+				partitions at 80000000 {
+						compatible = "fixed-partitions";
+						#address-cells = <1>;
+						#size-cells = <1>;
+						bmc at 0{
+							label = "bmc";
+							reg = <0x000000 0x4000000>;
+						};
+						u-boot at 0 {
+							label = "u-boot";
+							reg = <0x0000000 0x80000>;
+						};
+						envparam at 100000 {
+							label = "env-param";
+							reg = <0x0100000 0x40000>;
+						};
+						kernel at 200000 {
+							label = "kernel";
+							reg = <0x0200000 0x580000>;
+						};
+						rofs at C00000 {
+							label = "rofs";
+							reg = <0x0C00000 0x2600000>;
+						};
+						rwfs at 3200000 {
+							label = "rwfs";
+							reg = <0x3200000 0xE00000>;
+						};
+				};
+			};
+		};
+
+		fiu3: fiu at c0000000 {
+			pinctrl-0 = <&spi3_pins>;
+			status = "disabled";
+		};
+
+		fiux: fiu at fb001000 {
+			status = "disabled";
+			spix-mode;
+		};
+
+		sdhci0: sdhci at f0842000 {
+			status = "disabled";
+		};
+
+		pcimbox: pcimbox at f0848000 {
+			status = "okay";
+		};
+
+		vcd: vcd at f0810000 {
+			status = "disabled";
+		};
+
+		ece: ece at f0820000 {
+			status = "okay";
+		};
+
+		apb {
+
+			watchdog1: watchdog at 901C {
+				status = "okay";
+			};
+
+			rng: rng at b000 {
+				status = "okay";
+			};
+
+			serial0: serial at 1000 {
+				status = "okay";
+			};
+
+			serial1: serial at 2000 {
+				status = "okay";
+			};
+
+			serial2: serial at 3000 {
+				status = "okay";
+			};
+
+			serial3: serial at 4000 {
+				status = "okay";
+			};
+
+			adc: adc at c000 {
+				status = "okay";
+			};
+			otp:otp at 189000 {
+				status = "okay";
+			};
+
+			i2c0: i2c at 80000 {
+				#address-cells = <1>;
+				#size-cells = <0>;
+				bus-frequency = <100000>;
+				status = "disabled";
+			};
+
+			i2c1: i2c at 81000 {
+				#address-cells = <1>;
+				#size-cells = <0>;
+				bus-frequency = <100000>;
+				status = "okay";
+			};
+
+			i2c2: i2c at 82000 {
+				#address-cells = <1>;
+				#size-cells = <0>;
+				bus-frequency = <100000>;
+				status = "okay";
+			};
+
+			i2c3: i2c at 83000 {
+				#address-cells = <1>;
+				#size-cells = <0>;
+				bus-frequency = <100000>;
+				status = "okay";
+			};
+
+			i2c4: i2c at 84000 {
+				#address-cells = <1>;
+				#size-cells = <0>;
+				bus-frequency = <100000>;
+				status = "okay";
+			};
+
+			i2c5: i2c at 85000 {
+				#address-cells = <1>;
+				#size-cells = <0>;
+				bus-frequency = <100000>;
+				status = "disabled";
+			};
+
+			i2c6: i2c at 86000 {
+				#address-cells = <1>;
+				#size-cells = <0>;
+				bus-frequency = <100000>;
+				status = "disabled";
+			};
+
+			i2c7: i2c at 87000 {
+				#address-cells = <1>;
+				#size-cells = <0>;
+				bus-frequency = <100000>;
+				status = "disabled";
+			};
+
+			i2c8: i2c at 88000 {
+				#address-cells = <1>;
+				#size-cells = <0>;
+				bus-frequency = <100000>;
+				status = "okay";
+			};
+
+			i2c9: i2c at 89000 {
+				#address-cells = <1>;
+				#size-cells = <0>;
+				bus-frequency = <100000>;
+				status = "okay";
+				eeprom at 55 {
+					compatible = "atmel,24c64";
+					reg = <0x55>;
+				};
+			};
+
+			i2c10: i2c at 8a000 {
+				#address-cells = <1>;
+				#size-cells = <0>;
+				bus-frequency = <100000>;
+				status = "okay";
+				eeprom at 55 {
+					compatible = "atmel,24c64";
+					reg = <0x55>;
+				};
+			};
+
+			i2c11: i2c at 8b000 {
+				#address-cells = <1>;
+				#size-cells = <0>;
+				bus-frequency = <100000>;
+				status = "okay";
+
+				/* P12V Quarter Brick DC/DC Power Module Q54SH12050 @60 */
+				power-brick at 60 {
+					compatible = "delta,dps800";
+					reg = <0x60>;
+				};
+			};
+
+			i2c12: i2c at 8c000 {
+				#address-cells = <1>;
+				#size-cells = <0>;
+				bus-frequency = <100000>;
+				status = "okay";
+			};
+
+			i2c13: i2c at 8d000 {
+				#address-cells = <1>;
+				#size-cells = <0>;
+				bus-frequency = <100000>;
+				status = "okay";
+			};
+
+			i2c14: i2c at 8e000 {
+				#address-cells = <1>;
+				#size-cells = <0>;
+				bus-frequency = <100000>;
+				status = "okay";
+			};
+
+			i2c15: i2c at 8f000 {
+				#address-cells = <1>;
+				#size-cells = <0>;
+				bus-frequency = <100000>;
+				status = "okay";
+
+				i2c-switch at 75 {
+					compatible = "nxp,pca9548";
+					#address-cells = <1>;
+					#size-cells = <0>;
+					reg = <0x75>;
+					i2c-mux-idle-disconnect;
+
+					i2c_u20: i2c-bus at 0 {
+						#address-cells = <1>;
+						#size-cells = <0>;
+						reg = <0>;
+					};
+
+					i2c_u21: i2c-bus at 1 {
+						#address-cells = <1>;
+						#size-cells = <0>;
+						reg = <1>;
+					};
+
+					i2c_u22: i2c-bus at 2 {
+						#address-cells = <1>;
+						#size-cells = <0>;
+						reg = <2>;
+					};
+
+					i2c_u23: i2c-bus at 3 {
+						#address-cells = <1>;
+						#size-cells = <0>;
+						reg = <3>;
+					};
+
+					i2c_u24: i2c-bus at 4 {
+						#address-cells = <1>;
+						#size-cells = <0>;
+						reg = <4>;
+					};
+
+					i2c_u25: i2c-bus at 5 {
+						#address-cells = <1>;
+						#size-cells = <0>;
+						reg = <5>;
+					};
+
+					i2c_u26: i2c-bus at 6 {
+						#address-cells = <1>;
+						#size-cells = <0>;
+						reg = <6>;
+					};
+
+					i2c_u27: i2c-bus at 7 {
+						#address-cells = <1>;
+						#size-cells = <0>;
+						reg = <7>;
+					};
+				};
+			};
+
+			pwm_fan:pwm-fan-controller at 103000 {
+				pinctrl-names = "default";
+				pinctrl-0 = <   &pwm0_pins &pwm1_pins &pwm2_pins
+						&fanin0_pins &fanin1_pins
+						&fanin2_pins &fanin3_pins
+						&fanin4_pins &fanin5_pins>;
+				status = "okay";
+				fan at 0 {
+					reg = <0x00>;
+					fan-tach-ch = /bits/ 8 <0x00 0x01>;
+					cooling-levels = <127 255>;
+				};
+				fan at 1 {
+					reg = <0x01>;
+					fan-tach-ch = /bits/ 8 <0x02 0x03>;
+					cooling-levels = /bits/ 8 <127 255>;
+				};
+				fan at 2 {
+					reg = <0x02>;
+					fan-tach-ch = /bits/ 8 <0x04 0x05>;
+					cooling-levels = /bits/ 8 <127 255>;
+				};
+				fan at 3 {
+					reg = <0x03>;
+					fan-tach-ch = /bits/ 8 <0x06 0x07>;
+					cooling-levels = /bits/ 8 <127 255>;
+				};
+				fan at 4 {
+					reg = <0x04>;
+					fan-tach-ch = /bits/ 8 <0x08 0x09>;
+					cooling-levels = /bits/ 8 <127 255>;
+				};
+				fan at 5 {
+					reg = <0x05>;
+					fan-tach-ch = /bits/ 8 <0x0A 0x0B>;
+					cooling-levels = /bits/ 8 <127 255>;
+				};
+			};
+
+			spi0: spi at 200000 {
+				status = "disabled";
+			};
+
+			spi1: spi at 201000 {
+				status = "disabled";
+			};
+
+		};
+	};
+
+	pinctrl: pinctrl at f0800000 {
+		pinctrl-names = "default";
+		pinctrl-0 = <
+				&gpio8_pins
+				&gpio9_pins
+				&gpio12_pins
+				&gpio13_pins
+				&gpio15_pins
+				&gpio14_pins
+				&gpio23_pins
+				&gpio91_pins
+				&gpio92_pins
+				&gpio95_pins
+				&gpio141_pins
+				&gpio148_pins
+				&gpio149_pins
+				&gpio136_pins
+				&gpio137_pins
+				&gpio150_pins
+				&gpio151_pins
+				&gpio152_pins
+				&gpio153_pins
+				&gpio154_pins
+				&gpio155_pins
+				&gpio159_pins
+				&gpio161_pins
+				&gpio162_pins
+				&gpio163_pins
+				&gpio164_pins
+				&gpio165_pins
+				&gpio166_pins
+				&gpio167_pins
+				&gpio168_pins
+				&gpio169_pins
+				&gpio170_pins
+				&gpio175_pins
+				&gpio176_pins
+				&gpio177_pins
+				&gpio192_pins
+				&gpio203_pins
+				>;
+	};
+
+
+
+	leds {
+		compatible = "gpio-leds";
+		pinctrl-names = "default";
+		pinctrl-0 = <&gpio143ol_pins>;
+
+		led {
+			label = "led-bmc-live";
+			gpios = <&gpio4 15 GPIO_ACTIVE_HIGH>;
+			linux,default-trigger = "heartbeat";
+		};
+	};
+};
+
-- 
2.20.1



More information about the openbmc mailing list