xref: /freebsd/sys/contrib/device-tree/src/arm64/intel/socfpga_n5x_socdk.dts (revision 8d13bc63c0e1d50bc9e47ac1f26329c999bfecf0)
15def4c47SEmmanuel Vadot// SPDX-License-Identifier:     GPL-2.0
25def4c47SEmmanuel Vadot/*
35def4c47SEmmanuel Vadot * Copyright (C) 2021, Intel Corporation
45def4c47SEmmanuel Vadot */
55def4c47SEmmanuel Vadot#include "socfpga_agilex.dtsi"
65def4c47SEmmanuel Vadot
75def4c47SEmmanuel Vadot/ {
85def4c47SEmmanuel Vadot	model = "eASIC N5X SoCDK";
9c9ccf3a3SEmmanuel Vadot	compatible = "intel,n5x-socdk", "intel,socfpga-agilex";
105def4c47SEmmanuel Vadot
115def4c47SEmmanuel Vadot	aliases {
125def4c47SEmmanuel Vadot		serial0 = &uart0;
135def4c47SEmmanuel Vadot		ethernet0 = &gmac0;
145def4c47SEmmanuel Vadot		ethernet1 = &gmac1;
155def4c47SEmmanuel Vadot		ethernet2 = &gmac2;
165def4c47SEmmanuel Vadot	};
175def4c47SEmmanuel Vadot
185def4c47SEmmanuel Vadot	chosen {
195def4c47SEmmanuel Vadot		stdout-path = "serial0:115200n8";
205def4c47SEmmanuel Vadot	};
215def4c47SEmmanuel Vadot
22aa1a8ff2SEmmanuel Vadot	memory@80000000 {
235def4c47SEmmanuel Vadot		device_type = "memory";
245def4c47SEmmanuel Vadot		/* We expect the bootloader to fill in the reg */
25aa1a8ff2SEmmanuel Vadot		reg = <0 0x80000000 0 0>;
265def4c47SEmmanuel Vadot	};
27c9ccf3a3SEmmanuel Vadot
28*8d13bc63SEmmanuel Vadot	soc@0 {
29c9ccf3a3SEmmanuel Vadot		sdram_edac: memory-controller@f87f8000 {
30c9ccf3a3SEmmanuel Vadot			compatible = "snps,ddrc-3.80a";
31c9ccf3a3SEmmanuel Vadot			reg = <0xf87f8000 0x400>;
32c9ccf3a3SEmmanuel Vadot			interrupts = <0 175 4>;
33c9ccf3a3SEmmanuel Vadot		};
34c9ccf3a3SEmmanuel Vadot	};
355def4c47SEmmanuel Vadot};
365def4c47SEmmanuel Vadot
375def4c47SEmmanuel Vadot&clkmgr {
385def4c47SEmmanuel Vadot	compatible = "intel,easic-n5x-clkmgr";
395def4c47SEmmanuel Vadot};
405def4c47SEmmanuel Vadot
41e67e8565SEmmanuel Vadot&gmac0 {
42e67e8565SEmmanuel Vadot	status = "okay";
43e67e8565SEmmanuel Vadot	phy-mode = "rgmii";
44e67e8565SEmmanuel Vadot	phy-handle = <&phy0>;
45e67e8565SEmmanuel Vadot
46e67e8565SEmmanuel Vadot	max-frame-size = <9000>;
47e67e8565SEmmanuel Vadot
48e67e8565SEmmanuel Vadot	mdio0 {
49e67e8565SEmmanuel Vadot		#address-cells = <1>;
50e67e8565SEmmanuel Vadot		#size-cells = <0>;
51e67e8565SEmmanuel Vadot		compatible = "snps,dwmac-mdio";
52e67e8565SEmmanuel Vadot		phy0: ethernet-phy@0 {
53e67e8565SEmmanuel Vadot			reg = <4>;
54e67e8565SEmmanuel Vadot
55e67e8565SEmmanuel Vadot			txd0-skew-ps = <0>; /* -420ps */
56e67e8565SEmmanuel Vadot			txd1-skew-ps = <0>; /* -420ps */
57e67e8565SEmmanuel Vadot			txd2-skew-ps = <0>; /* -420ps */
58e67e8565SEmmanuel Vadot			txd3-skew-ps = <0>; /* -420ps */
59e67e8565SEmmanuel Vadot			rxd0-skew-ps = <420>; /* 0ps */
60e67e8565SEmmanuel Vadot			rxd1-skew-ps = <420>; /* 0ps */
61e67e8565SEmmanuel Vadot			rxd2-skew-ps = <420>; /* 0ps */
62e67e8565SEmmanuel Vadot			rxd3-skew-ps = <420>; /* 0ps */
63e67e8565SEmmanuel Vadot			txen-skew-ps = <0>; /* -420ps */
64e67e8565SEmmanuel Vadot			txc-skew-ps = <900>; /* 0ps */
65e67e8565SEmmanuel Vadot			rxdv-skew-ps = <420>; /* 0ps */
66e67e8565SEmmanuel Vadot			rxc-skew-ps = <1680>; /* 780ps */
67e67e8565SEmmanuel Vadot		};
68e67e8565SEmmanuel Vadot	};
69e67e8565SEmmanuel Vadot};
70e67e8565SEmmanuel Vadot
715def4c47SEmmanuel Vadot&mmc {
725def4c47SEmmanuel Vadot	status = "okay";
735def4c47SEmmanuel Vadot	cap-sd-highspeed;
745def4c47SEmmanuel Vadot	broken-cd;
755def4c47SEmmanuel Vadot	bus-width = <4>;
768bab661aSEmmanuel Vadot	clk-phase-sd-hs = <0>, <135>;
775def4c47SEmmanuel Vadot};
785def4c47SEmmanuel Vadot
792eb4d8dcSEmmanuel Vadot&osc1 {
802eb4d8dcSEmmanuel Vadot	clock-frequency = <25000000>;
812eb4d8dcSEmmanuel Vadot};
822eb4d8dcSEmmanuel Vadot
83e67e8565SEmmanuel Vadot&qspi {
84e67e8565SEmmanuel Vadot	status = "okay";
85e67e8565SEmmanuel Vadot	flash@0 {
86e67e8565SEmmanuel Vadot		#address-cells = <1>;
87e67e8565SEmmanuel Vadot		#size-cells = <1>;
88e67e8565SEmmanuel Vadot		compatible = "micron,mt25qu02g", "jedec,spi-nor";
89e67e8565SEmmanuel Vadot		reg = <0>;
90e67e8565SEmmanuel Vadot		spi-max-frequency = <100000000>;
91e67e8565SEmmanuel Vadot
92e67e8565SEmmanuel Vadot		m25p,fast-read;
93e67e8565SEmmanuel Vadot		cdns,read-delay = <2>;
94e67e8565SEmmanuel Vadot		cdns,tshsl-ns = <50>;
95e67e8565SEmmanuel Vadot		cdns,tsd2d-ns = <50>;
96e67e8565SEmmanuel Vadot		cdns,tchsh-ns = <4>;
97e67e8565SEmmanuel Vadot		cdns,tslch-ns = <4>;
98e67e8565SEmmanuel Vadot
99e67e8565SEmmanuel Vadot		partitions {
100e67e8565SEmmanuel Vadot			compatible = "fixed-partitions";
101e67e8565SEmmanuel Vadot			#address-cells = <1>;
102e67e8565SEmmanuel Vadot			#size-cells = <1>;
103e67e8565SEmmanuel Vadot
104e67e8565SEmmanuel Vadot			qspi_boot: partition@0 {
105e67e8565SEmmanuel Vadot				label = "Boot and fpga data";
106e67e8565SEmmanuel Vadot				reg = <0x0 0x03FE0000>;
107e67e8565SEmmanuel Vadot			};
108e67e8565SEmmanuel Vadot
109aa1a8ff2SEmmanuel Vadot			qspi_rootfs: partition@3fe0000 {
110e67e8565SEmmanuel Vadot				label = "Root Filesystem - JFFS2";
111e67e8565SEmmanuel Vadot				reg = <0x03FE0000 0x0C020000>;
112e67e8565SEmmanuel Vadot			};
113e67e8565SEmmanuel Vadot		};
114e67e8565SEmmanuel Vadot	};
115e67e8565SEmmanuel Vadot};
116e67e8565SEmmanuel Vadot
1175def4c47SEmmanuel Vadot&uart0 {
1185def4c47SEmmanuel Vadot	status = "okay";
1195def4c47SEmmanuel Vadot};
1205def4c47SEmmanuel Vadot
121e67e8565SEmmanuel Vadot&usb0 {
122e67e8565SEmmanuel Vadot	status = "okay";
123e67e8565SEmmanuel Vadot	disable-over-current;
124e67e8565SEmmanuel Vadot};
125e67e8565SEmmanuel Vadot
1265def4c47SEmmanuel Vadot&watchdog0 {
1275def4c47SEmmanuel Vadot	status = "okay";
1285def4c47SEmmanuel Vadot};
129