1/*
2 * Copyright (C) 2015, 2016 Imagination Technologies Ltd.
3 *
4 * This program is free software; you can redistribute it and/or modify
5 * it under the terms of the GNU General Public License version 2 as
6 * published by the Free Software Foundation.
7 *
8 * IMG Marduk board is also known as Creator Ci40.
9 */
10
11/dts-v1/;
12
13#include "pistachio.dtsi"
14
15/ {
16	model = "IMG Marduk (Creator Ci40)";
17	compatible = "img,pistachio-marduk", "img,pistachio";
18
19	aliases {
20		serial0 = &uart0;
21		serial1 = &uart1;
22		ethernet0 = &enet;
23		spi0 = &spfi0;
24		spi1 = &spfi1;
25	};
26
27	chosen {
28		bootargs = "root=/dev/sda1 rootwait ro lpj=723968";
29		stdout-path = "serial1:115200";
30	};
31
32	memory {
33		device_type = "memory";
34		reg =  <0x00000000 0x10000000>;
35	};
36
37	reg_1v8: fixed-regulator {
38		compatible = "regulator-fixed";
39		regulator-name = "aux_adc_vref";
40		regulator-min-microvolt = <1800000>;
41		regulator-max-microvolt = <1800000>;
42		regulator-boot-on;
43	};
44
45	internal_dac_supply: internal-dac-supply {
46		compatible = "regulator-fixed";
47		regulator-name = "internal_dac_supply";
48		regulator-min-microvolt = <1800000>;
49		regulator-max-microvolt = <1800000>;
50	};
51
52	leds {
53		compatible = "pwm-leds";
54		heartbeat {
55			label = "marduk:red:heartbeat";
56			pwms = <&pwm 3 300000>;
57			max-brightness = <255>;
58			linux,default-trigger = "heartbeat";
59		};
60	};
61
62	keys {
63		compatible = "gpio-keys";
64		button@1 {
65			label = "Button 1";
66			linux,code = <0x101>; /* BTN_1 */
67			gpios = <&gpio3 6 GPIO_ACTIVE_LOW>;
68		};
69		button@2 {
70			label = "Button 2";
71			linux,code = <0x102>; /* BTN_2 */
72			gpios = <&gpio2 14 GPIO_ACTIVE_LOW>;
73		};
74	};
75};
76
77&internal_dac {
78	VDD-supply = <&internal_dac_supply>;
79};
80
81&spfi1 {
82	status = "okay";
83
84	pinctrl-0 = <&spim1_pins>, <&spim1_quad_pins>, <&spim1_cs0_pin>,
85		    <&spim1_cs1_pin>;
86	pinctrl-names = "default";
87	cs-gpios = <&gpio0 0 GPIO_ACTIVE_HIGH>, <&gpio0 1 GPIO_ACTIVE_HIGH>;
88
89	flash@0 {
90		compatible = "spansion,s25fl016k", "jedec,spi-nor";
91		reg = <0>;
92		spi-max-frequency = <50000000>;
93	};
94};
95
96&uart0 {
97	status = "okay";
98	assigned-clock-rates = <114278400>, <1843200>;
99};
100
101&uart1 {
102	status = "okay";
103};
104
105&usb {
106	status = "okay";
107};
108
109&enet {
110	status = "okay";
111};
112
113&pin_enet {
114	drive-strength = <2>;
115};
116
117&pin_enet_phy_clk {
118	drive-strength = <2>;
119};
120
121&sdhost {
122	status = "okay";
123	bus-width = <4>;
124	disable-wp;
125};
126
127&pin_sdhost_cmd {
128	drive-strength = <2>;
129};
130
131&pin_sdhost_data {
132	drive-strength = <2>;
133};
134
135&pwm {
136	status = "okay";
137
138	pinctrl-0 = <&pwmpdm0_pin>, <&pwmpdm1_pin>, <&pwmpdm2_pin>,
139		    <&pwmpdm3_pin>;
140	pinctrl-names = "default";
141};
142
143&adc {
144	status = "okay";
145	vref-supply = <&reg_1v8>;
146	adc-reserved-channels = <0x10>;
147};
148
149&i2c2 {
150	status = "okay";
151	clock-frequency = <400000>;
152
153	tpm@20 {
154		compatible = "infineon,slb9645tt";
155		reg = <0x20>;
156	};
157
158};
159
160&i2c3 {
161	status = "okay";
162	clock-frequency = <400000>;
163};
164