blob: 70255ab2598ffe3c7d1499388b97d90d0e02c112 [file] [log] [blame]
Andrew Davis5c12edd2023-04-11 13:24:57 -05001// SPDX-License-Identifier: GPL-2.0-only
Tom Rini85554e52017-05-16 14:46:38 -04002/dts-v1/;
3
4#include "dm816x.dtsi"
5#include <dt-bindings/interrupt-controller/irq.h>
6
7/ {
8 model = "DM8168 EVM";
9 compatible = "ti,dm8168-evm", "ti,dm8168";
10
11 memory@80000000 {
12 device_type = "memory";
13 reg = <0x80000000 0x40000000 /* 1 GB */
14 0xc0000000 0x40000000>; /* 1 GB */
15 };
16
17 /* FDC6331L controlled by SD_POW pin */
18 vmmcsd_fixed: fixedregulator0 {
19 compatible = "regulator-fixed";
20 regulator-name = "vmmcsd_fixed";
21 regulator-min-microvolt = <3300000>;
22 regulator-max-microvolt = <3300000>;
23 };
24};
25
26&dm816x_pinmux {
27 mcspi1_pins: pinmux_mcspi1_pins {
28 pinctrl-single,pins = <
29 DM816X_IOPAD(0x0a94, MUX_MODE0) /* SPI_SCLK */
30 DM816X_IOPAD(0x0a98, MUX_MODE0) /* SPI_SCS0 */
31 DM816X_IOPAD(0x0aa8, MUX_MODE0) /* SPI_D0 */
32 DM816X_IOPAD(0x0aac, MUX_MODE0) /* SPI_D1 */
33 >;
34 };
35
36 mmc_pins: pinmux_mmc_pins {
37 pinctrl-single,pins = <
38 DM816X_IOPAD(0x0a70, MUX_MODE0) /* SD_POW */
39 DM816X_IOPAD(0x0a74, MUX_MODE0) /* SD_CLK */
40 DM816X_IOPAD(0x0a78, MUX_MODE0) /* SD_CMD */
41 DM816X_IOPAD(0x0a7C, MUX_MODE0) /* SD_DAT0 */
42 DM816X_IOPAD(0x0a80, MUX_MODE0) /* SD_DAT1 */
43 DM816X_IOPAD(0x0a84, MUX_MODE0) /* SD_DAT2 */
44 DM816X_IOPAD(0x0a88, MUX_MODE0) /* SD_DAT2 */
45 DM816X_IOPAD(0x0a8c, MUX_MODE2) /* GP1[7] */
46 DM816X_IOPAD(0x0a90, MUX_MODE2) /* GP1[8] */
47 >;
48 };
49
50 usb0_pins: pinmux_usb0_pins {
51 pinctrl-single,pins = <
52 DM816X_IOPAD(0x0d04, MUX_MODE0) /* USB0_DRVVBUS */
53 >;
54 };
55
56 usb1_pins: pinmux_usb1_pins {
57 pinctrl-single,pins = <
58 DM816X_IOPAD(0x0d08, MUX_MODE0) /* USB1_DRVVBUS */
59 >;
60 };
61};
62
63&i2c1 {
64 extgpio0: pcf8575@20 {
65 compatible = "nxp,pcf8575";
66 reg = <0x20>;
67 gpio-controller;
68 #gpio-cells = <2>;
69 };
70};
71
72&i2c2 {
73 extgpio1: pcf8575@20 {
74 compatible = "nxp,pcf8575";
75 reg = <0x20>;
76 gpio-controller;
77 #gpio-cells = <2>;
78 };
79};
80
81&gpmc {
82 ranges = <0 0 0x04000000 0x01000000>; /* CS0: 16MB for NAND */
83
84 nand@0,0 {
85 compatible = "ti,omap2-nand";
86 linux,mtd-name= "micron,mt29f2g16aadwp";
87 reg = <0 0 4>; /* CS0, offset 0, IO size 4 */
88 interrupt-parent = <&gpmc>;
89 interrupts = <0 IRQ_TYPE_NONE>, /* fifoevent */
90 <1 IRQ_TYPE_NONE>; /* termcount */
91 #address-cells = <1>;
92 #size-cells = <1>;
93 ti,nand-ecc-opt = "bch8";
94 nand-bus-width = <16>;
95 gpmc,device-width = <2>;
96 gpmc,sync-clk-ps = <0>;
97 gpmc,cs-on-ns = <0>;
98 gpmc,cs-rd-off-ns = <44>;
99 gpmc,cs-wr-off-ns = <44>;
100 gpmc,adv-on-ns = <6>;
101 gpmc,adv-rd-off-ns = <34>;
102 gpmc,adv-wr-off-ns = <44>;
103 gpmc,we-on-ns = <0>;
104 gpmc,we-off-ns = <40>;
105 gpmc,oe-on-ns = <0>;
106 gpmc,oe-off-ns = <54>;
107 gpmc,access-ns = <64>;
108 gpmc,rd-cycle-ns = <82>;
109 gpmc,wr-cycle-ns = <82>;
110 gpmc,bus-turnaround-ns = <0>;
111 gpmc,cycle2cycle-delay-ns = <0>;
112 gpmc,clk-activation-ns = <0>;
113 gpmc,wr-access-ns = <40>;
114 gpmc,wr-data-mux-bus-ns = <0>;
115 partition@0 {
116 label = "X-Loader";
117 reg = <0 0x80000>;
118 };
Andrew Davisd402bf72023-04-11 13:25:07 -0500119 partition@80000 {
Tom Rini85554e52017-05-16 14:46:38 -0400120 label = "U-Boot";
121 reg = <0x80000 0x1c0000>;
122 };
Andrew Davisd402bf72023-04-11 13:25:07 -0500123 partition@1c0000 {
Tom Rini85554e52017-05-16 14:46:38 -0400124 label = "Environment";
125 reg = <0x240000 0x40000>;
126 };
Andrew Davisd402bf72023-04-11 13:25:07 -0500127 partition@280000 {
Tom Rini85554e52017-05-16 14:46:38 -0400128 label = "Kernel";
129 reg = <0x280000 0x500000>;
130 };
Andrew Davisd402bf72023-04-11 13:25:07 -0500131 partition@780000 {
Tom Rini85554e52017-05-16 14:46:38 -0400132 label = "Filesystem";
133 reg = <0x780000 0xf880000>;
134 };
135 };
136};
137
138&mcspi1 {
139 pinctrl-names = "default";
140 pinctrl-0 = <&mcspi1_pins>;
141
Andrew Davisd402bf72023-04-11 13:25:07 -0500142 flash@0 {
Tom Rini85554e52017-05-16 14:46:38 -0400143 compatible = "w25x32";
144 spi-max-frequency = <48000000>;
145 reg = <0>;
146 #address-cells = <1>;
147 #size-cells = <1>;
148 };
149};
150
151&mmc1 {
152 pinctrl-names = "default";
153 pinctrl-0 = <&mmc_pins>;
154 vmmc-supply = <&vmmcsd_fixed>;
155 bus-width = <4>;
156 cd-gpios = <&gpio2 7 GPIO_ACTIVE_LOW>;
157 wp-gpios = <&gpio2 8 GPIO_ACTIVE_LOW>;
158};
159
160/* At least dm8168-evm rev c won't support multipoint, later may */
161&usb0 {
162 pinctrl-names = "default";
163 pinctrl-0 = <&usb0_pins>;
164 mentor,multipoint = <0>;
165};
166
167&usb1 {
168 pinctrl-names = "default";
169 pinctrl-0 = <&usb1_pins>;
170 mentor,multipoint = <0>;
171};