1*cb7aa33aSEmmanuel Vadot// SPDX-License-Identifier: GPL-2.0
2*cb7aa33aSEmmanuel Vadot/*
3*cb7aa33aSEmmanuel Vadot * Original all-in-one devicetree:
4*cb7aa33aSEmmanuel Vadot * Copyright (C) 2020-2022 - Aldec
5*cb7aa33aSEmmanuel Vadot * Rewritten to use includes:
6*cb7aa33aSEmmanuel Vadot * Copyright (C) 2022 - Conor Dooley <conor.dooley@microchip.com>
7*cb7aa33aSEmmanuel Vadot */
8*cb7aa33aSEmmanuel Vadot
9*cb7aa33aSEmmanuel Vadot/dts-v1/;
10*cb7aa33aSEmmanuel Vadot
11*cb7aa33aSEmmanuel Vadot#include "mpfs.dtsi"
12*cb7aa33aSEmmanuel Vadot#include "mpfs-tysom-m-fabric.dtsi"
13*cb7aa33aSEmmanuel Vadot
14*cb7aa33aSEmmanuel Vadot/ {
15*cb7aa33aSEmmanuel Vadot	model = "Aldec TySOM-M-MPFS250T-REV2";
16*cb7aa33aSEmmanuel Vadot	compatible = "aldec,tysom-m-mpfs250t-rev2", "microchip,mpfs";
17*cb7aa33aSEmmanuel Vadot
18*cb7aa33aSEmmanuel Vadot	aliases {
19*cb7aa33aSEmmanuel Vadot		ethernet0 = &mac0;
20*cb7aa33aSEmmanuel Vadot		ethernet1 = &mac1;
21*cb7aa33aSEmmanuel Vadot		serial0 = &mmuart0;
22*cb7aa33aSEmmanuel Vadot		serial1 = &mmuart1;
23*cb7aa33aSEmmanuel Vadot		serial2 = &mmuart2;
24*cb7aa33aSEmmanuel Vadot		serial3 = &mmuart3;
25*cb7aa33aSEmmanuel Vadot		serial4 = &mmuart4;
26*cb7aa33aSEmmanuel Vadot		gpio0 = &gpio0;
27*cb7aa33aSEmmanuel Vadot		gpio1 = &gpio2;
28*cb7aa33aSEmmanuel Vadot	};
29*cb7aa33aSEmmanuel Vadot
30*cb7aa33aSEmmanuel Vadot	chosen {
31*cb7aa33aSEmmanuel Vadot		stdout-path = "serial1:115200n8";
32*cb7aa33aSEmmanuel Vadot	};
33*cb7aa33aSEmmanuel Vadot
34*cb7aa33aSEmmanuel Vadot	ddrc_cache_lo: memory@80000000 {
35*cb7aa33aSEmmanuel Vadot		device_type = "memory";
36*cb7aa33aSEmmanuel Vadot		reg = <0x0 0x80000000 0x0 0x30000000>;
37*cb7aa33aSEmmanuel Vadot		status = "okay";
38*cb7aa33aSEmmanuel Vadot	};
39*cb7aa33aSEmmanuel Vadot
40*cb7aa33aSEmmanuel Vadot	ddrc_cache_hi: memory@1000000000 {
41*cb7aa33aSEmmanuel Vadot		device_type = "memory";
42*cb7aa33aSEmmanuel Vadot		reg = <0x10 0x00000000 0x0 0x40000000>;
43*cb7aa33aSEmmanuel Vadot		status = "okay";
44*cb7aa33aSEmmanuel Vadot	};
45*cb7aa33aSEmmanuel Vadot
46*cb7aa33aSEmmanuel Vadot	leds {
47*cb7aa33aSEmmanuel Vadot		compatible = "gpio-leds";
48*cb7aa33aSEmmanuel Vadot		status = "okay";
49*cb7aa33aSEmmanuel Vadot
50*cb7aa33aSEmmanuel Vadot		led0 {
51*cb7aa33aSEmmanuel Vadot			gpios = <&gpio1 23 1>;
52*cb7aa33aSEmmanuel Vadot			default-state = "on";
53*cb7aa33aSEmmanuel Vadot			linux,default-trigger = "heartbeat";
54*cb7aa33aSEmmanuel Vadot		};
55*cb7aa33aSEmmanuel Vadot	};
56*cb7aa33aSEmmanuel Vadot};
57*cb7aa33aSEmmanuel Vadot
58*cb7aa33aSEmmanuel Vadot&i2c0 {
59*cb7aa33aSEmmanuel Vadot	status = "okay";
60*cb7aa33aSEmmanuel Vadot};
61*cb7aa33aSEmmanuel Vadot
62*cb7aa33aSEmmanuel Vadot&i2c1 {
63*cb7aa33aSEmmanuel Vadot	status = "okay";
64*cb7aa33aSEmmanuel Vadot	hwmon: hwmon@45 {
65*cb7aa33aSEmmanuel Vadot		status = "okay";
66*cb7aa33aSEmmanuel Vadot		compatible = "ti,ina219";
67*cb7aa33aSEmmanuel Vadot		reg = <0x45>;
68*cb7aa33aSEmmanuel Vadot		shunt-resistor = <2000>;
69*cb7aa33aSEmmanuel Vadot	};
70*cb7aa33aSEmmanuel Vadot};
71*cb7aa33aSEmmanuel Vadot
72*cb7aa33aSEmmanuel Vadot&gpio1 {
73*cb7aa33aSEmmanuel Vadot	interrupts = <27>, <28>, <29>, <30>,
74*cb7aa33aSEmmanuel Vadot		     <31>, <32>, <33>, <47>,
75*cb7aa33aSEmmanuel Vadot		     <35>, <36>, <37>, <38>,
76*cb7aa33aSEmmanuel Vadot		     <39>, <40>, <41>, <42>,
77*cb7aa33aSEmmanuel Vadot		     <43>, <44>, <45>, <46>,
78*cb7aa33aSEmmanuel Vadot		     <47>, <48>, <49>, <50>;
79*cb7aa33aSEmmanuel Vadot	status = "okay";
80*cb7aa33aSEmmanuel Vadot};
81*cb7aa33aSEmmanuel Vadot
82*cb7aa33aSEmmanuel Vadot&mac0 {
83*cb7aa33aSEmmanuel Vadot	status = "okay";
84*cb7aa33aSEmmanuel Vadot	phy-mode = "gmii";
85*cb7aa33aSEmmanuel Vadot	phy-handle = <&phy0>;
86*cb7aa33aSEmmanuel Vadot
87*cb7aa33aSEmmanuel Vadot};
88*cb7aa33aSEmmanuel Vadot
89*cb7aa33aSEmmanuel Vadot&mac1 {
90*cb7aa33aSEmmanuel Vadot	status = "okay";
91*cb7aa33aSEmmanuel Vadot	phy-mode = "gmii";
92*cb7aa33aSEmmanuel Vadot	phy-handle = <&phy1>;
93*cb7aa33aSEmmanuel Vadot	phy1: ethernet-phy@1 {
94*cb7aa33aSEmmanuel Vadot		reg = <1>;
95*cb7aa33aSEmmanuel Vadot	};
96*cb7aa33aSEmmanuel Vadot	phy0: ethernet-phy@0 {
97*cb7aa33aSEmmanuel Vadot		reg = <0>;
98*cb7aa33aSEmmanuel Vadot	};
99*cb7aa33aSEmmanuel Vadot};
100*cb7aa33aSEmmanuel Vadot
101*cb7aa33aSEmmanuel Vadot&mbox {
102*cb7aa33aSEmmanuel Vadot	status = "okay";
103*cb7aa33aSEmmanuel Vadot};
104*cb7aa33aSEmmanuel Vadot
105*cb7aa33aSEmmanuel Vadot&mmc {
106*cb7aa33aSEmmanuel Vadot	max-frequency = <200000000>;
107*cb7aa33aSEmmanuel Vadot	cap-mmc-highspeed;
108*cb7aa33aSEmmanuel Vadot	cap-sd-highspeed;
109*cb7aa33aSEmmanuel Vadot	no-1-8-v;
110*cb7aa33aSEmmanuel Vadot	disable-wp;
111*cb7aa33aSEmmanuel Vadot	status = "okay";
112*cb7aa33aSEmmanuel Vadot};
113*cb7aa33aSEmmanuel Vadot
114*cb7aa33aSEmmanuel Vadot&mmuart1 {
115*cb7aa33aSEmmanuel Vadot	status = "okay";
116*cb7aa33aSEmmanuel Vadot};
117*cb7aa33aSEmmanuel Vadot
118*cb7aa33aSEmmanuel Vadot&mmuart2 {
119*cb7aa33aSEmmanuel Vadot	status = "okay";
120*cb7aa33aSEmmanuel Vadot};
121*cb7aa33aSEmmanuel Vadot
122*cb7aa33aSEmmanuel Vadot&mmuart3 {
123*cb7aa33aSEmmanuel Vadot	status = "okay";
124*cb7aa33aSEmmanuel Vadot};
125*cb7aa33aSEmmanuel Vadot
126*cb7aa33aSEmmanuel Vadot&mmuart4 {
127*cb7aa33aSEmmanuel Vadot	status = "okay";
128*cb7aa33aSEmmanuel Vadot};
129*cb7aa33aSEmmanuel Vadot
130*cb7aa33aSEmmanuel Vadot&refclk {
131*cb7aa33aSEmmanuel Vadot	clock-frequency = <125000000>;
132*cb7aa33aSEmmanuel Vadot};
133*cb7aa33aSEmmanuel Vadot
134*cb7aa33aSEmmanuel Vadot&rtc {
135*cb7aa33aSEmmanuel Vadot	status = "okay";
136*cb7aa33aSEmmanuel Vadot};
137*cb7aa33aSEmmanuel Vadot
138*cb7aa33aSEmmanuel Vadot&spi0 {
139*cb7aa33aSEmmanuel Vadot	status = "okay";
140*cb7aa33aSEmmanuel Vadot};
141*cb7aa33aSEmmanuel Vadot
142*cb7aa33aSEmmanuel Vadot&spi1 {
143*cb7aa33aSEmmanuel Vadot	status = "okay";
144*cb7aa33aSEmmanuel Vadot	flash@0 {
145*cb7aa33aSEmmanuel Vadot		compatible = "micron,n25q128a11", "jedec,spi-nor";
146*cb7aa33aSEmmanuel Vadot		reg = <0x0>;
147*cb7aa33aSEmmanuel Vadot		spi-max-frequency = <10000000>;
148*cb7aa33aSEmmanuel Vadot	};
149*cb7aa33aSEmmanuel Vadot};
150*cb7aa33aSEmmanuel Vadot
151*cb7aa33aSEmmanuel Vadot&syscontroller {
152*cb7aa33aSEmmanuel Vadot	status = "okay";
153*cb7aa33aSEmmanuel Vadot};
154*cb7aa33aSEmmanuel Vadot
155*cb7aa33aSEmmanuel Vadot&usb {
156*cb7aa33aSEmmanuel Vadot	status = "okay";
157*cb7aa33aSEmmanuel Vadot	dr_mode = "host";
158*cb7aa33aSEmmanuel Vadot};
159