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