18c2ecf20Sopenharmony_ci// SPDX-License-Identifier: GPL-2.0-only
28c2ecf20Sopenharmony_ci/*
38c2ecf20Sopenharmony_ci * Copyright (C) 2015, 2016 Imagination Technologies Ltd.
48c2ecf20Sopenharmony_ci *
58c2ecf20Sopenharmony_ci * IMG Marduk board is also known as Creator Ci40.
68c2ecf20Sopenharmony_ci */
78c2ecf20Sopenharmony_ci
88c2ecf20Sopenharmony_ci/dts-v1/;
98c2ecf20Sopenharmony_ci
108c2ecf20Sopenharmony_ci#include "pistachio.dtsi"
118c2ecf20Sopenharmony_ci
128c2ecf20Sopenharmony_ci/ {
138c2ecf20Sopenharmony_ci	model = "IMG Marduk (Creator Ci40)";
148c2ecf20Sopenharmony_ci	compatible = "img,pistachio-marduk", "img,pistachio";
158c2ecf20Sopenharmony_ci
168c2ecf20Sopenharmony_ci	aliases {
178c2ecf20Sopenharmony_ci		serial0 = &uart0;
188c2ecf20Sopenharmony_ci		serial1 = &uart1;
198c2ecf20Sopenharmony_ci		ethernet0 = &enet;
208c2ecf20Sopenharmony_ci		spi0 = &spfi0;
218c2ecf20Sopenharmony_ci		spi1 = &spfi1;
228c2ecf20Sopenharmony_ci	};
238c2ecf20Sopenharmony_ci
248c2ecf20Sopenharmony_ci	chosen {
258c2ecf20Sopenharmony_ci		bootargs = "root=/dev/sda1 rootwait ro lpj=723968";
268c2ecf20Sopenharmony_ci		stdout-path = "serial1:115200";
278c2ecf20Sopenharmony_ci	};
288c2ecf20Sopenharmony_ci
298c2ecf20Sopenharmony_ci	memory {
308c2ecf20Sopenharmony_ci		device_type = "memory";
318c2ecf20Sopenharmony_ci		reg =  <0x00000000 0x10000000>;
328c2ecf20Sopenharmony_ci	};
338c2ecf20Sopenharmony_ci
348c2ecf20Sopenharmony_ci	reg_1v8: fixed-regulator {
358c2ecf20Sopenharmony_ci		compatible = "regulator-fixed";
368c2ecf20Sopenharmony_ci		regulator-name = "aux_adc_vref";
378c2ecf20Sopenharmony_ci		regulator-min-microvolt = <1800000>;
388c2ecf20Sopenharmony_ci		regulator-max-microvolt = <1800000>;
398c2ecf20Sopenharmony_ci		regulator-boot-on;
408c2ecf20Sopenharmony_ci	};
418c2ecf20Sopenharmony_ci
428c2ecf20Sopenharmony_ci	internal_dac_supply: internal-dac-supply {
438c2ecf20Sopenharmony_ci		compatible = "regulator-fixed";
448c2ecf20Sopenharmony_ci		regulator-name = "internal_dac_supply";
458c2ecf20Sopenharmony_ci		regulator-min-microvolt = <1800000>;
468c2ecf20Sopenharmony_ci		regulator-max-microvolt = <1800000>;
478c2ecf20Sopenharmony_ci	};
488c2ecf20Sopenharmony_ci
498c2ecf20Sopenharmony_ci	leds {
508c2ecf20Sopenharmony_ci		compatible = "pwm-leds";
518c2ecf20Sopenharmony_ci		heartbeat {
528c2ecf20Sopenharmony_ci			label = "marduk:red:heartbeat";
538c2ecf20Sopenharmony_ci			pwms = <&pwm 3 300000>;
548c2ecf20Sopenharmony_ci			max-brightness = <255>;
558c2ecf20Sopenharmony_ci			linux,default-trigger = "heartbeat";
568c2ecf20Sopenharmony_ci		};
578c2ecf20Sopenharmony_ci	};
588c2ecf20Sopenharmony_ci
598c2ecf20Sopenharmony_ci	keys {
608c2ecf20Sopenharmony_ci		compatible = "gpio-keys";
618c2ecf20Sopenharmony_ci		button@1 {
628c2ecf20Sopenharmony_ci			label = "Button 1";
638c2ecf20Sopenharmony_ci			linux,code = <0x101>; /* BTN_1 */
648c2ecf20Sopenharmony_ci			gpios = <&gpio3 6 GPIO_ACTIVE_LOW>;
658c2ecf20Sopenharmony_ci		};
668c2ecf20Sopenharmony_ci		button@2 {
678c2ecf20Sopenharmony_ci			label = "Button 2";
688c2ecf20Sopenharmony_ci			linux,code = <0x102>; /* BTN_2 */
698c2ecf20Sopenharmony_ci			gpios = <&gpio2 14 GPIO_ACTIVE_LOW>;
708c2ecf20Sopenharmony_ci		};
718c2ecf20Sopenharmony_ci	};
728c2ecf20Sopenharmony_ci};
738c2ecf20Sopenharmony_ci
748c2ecf20Sopenharmony_ci&internal_dac {
758c2ecf20Sopenharmony_ci	VDD-supply = <&internal_dac_supply>;
768c2ecf20Sopenharmony_ci};
778c2ecf20Sopenharmony_ci
788c2ecf20Sopenharmony_ci&spfi1 {
798c2ecf20Sopenharmony_ci	status = "okay";
808c2ecf20Sopenharmony_ci
818c2ecf20Sopenharmony_ci	pinctrl-0 = <&spim1_pins>, <&spim1_quad_pins>, <&spim1_cs0_pin>,
828c2ecf20Sopenharmony_ci		    <&spim1_cs1_pin>;
838c2ecf20Sopenharmony_ci	pinctrl-names = "default";
848c2ecf20Sopenharmony_ci	cs-gpios = <&gpio0 0 GPIO_ACTIVE_HIGH>, <&gpio0 1 GPIO_ACTIVE_HIGH>;
858c2ecf20Sopenharmony_ci
868c2ecf20Sopenharmony_ci	flash@0 {
878c2ecf20Sopenharmony_ci		compatible = "spansion,s25fl016k", "jedec,spi-nor";
888c2ecf20Sopenharmony_ci		reg = <0>;
898c2ecf20Sopenharmony_ci		spi-max-frequency = <50000000>;
908c2ecf20Sopenharmony_ci	};
918c2ecf20Sopenharmony_ci};
928c2ecf20Sopenharmony_ci
938c2ecf20Sopenharmony_ci&uart0 {
948c2ecf20Sopenharmony_ci	status = "okay";
958c2ecf20Sopenharmony_ci	assigned-clock-rates = <114278400>, <1843200>;
968c2ecf20Sopenharmony_ci};
978c2ecf20Sopenharmony_ci
988c2ecf20Sopenharmony_ci&uart1 {
998c2ecf20Sopenharmony_ci	status = "okay";
1008c2ecf20Sopenharmony_ci};
1018c2ecf20Sopenharmony_ci
1028c2ecf20Sopenharmony_ci&usb {
1038c2ecf20Sopenharmony_ci	status = "okay";
1048c2ecf20Sopenharmony_ci};
1058c2ecf20Sopenharmony_ci
1068c2ecf20Sopenharmony_ci&enet {
1078c2ecf20Sopenharmony_ci	status = "okay";
1088c2ecf20Sopenharmony_ci};
1098c2ecf20Sopenharmony_ci
1108c2ecf20Sopenharmony_ci&pin_enet {
1118c2ecf20Sopenharmony_ci	drive-strength = <2>;
1128c2ecf20Sopenharmony_ci};
1138c2ecf20Sopenharmony_ci
1148c2ecf20Sopenharmony_ci&pin_enet_phy_clk {
1158c2ecf20Sopenharmony_ci	drive-strength = <2>;
1168c2ecf20Sopenharmony_ci};
1178c2ecf20Sopenharmony_ci
1188c2ecf20Sopenharmony_ci&sdhost {
1198c2ecf20Sopenharmony_ci	status = "okay";
1208c2ecf20Sopenharmony_ci	bus-width = <4>;
1218c2ecf20Sopenharmony_ci	disable-wp;
1228c2ecf20Sopenharmony_ci};
1238c2ecf20Sopenharmony_ci
1248c2ecf20Sopenharmony_ci&pin_sdhost_cmd {
1258c2ecf20Sopenharmony_ci	drive-strength = <2>;
1268c2ecf20Sopenharmony_ci};
1278c2ecf20Sopenharmony_ci
1288c2ecf20Sopenharmony_ci&pin_sdhost_data {
1298c2ecf20Sopenharmony_ci	drive-strength = <2>;
1308c2ecf20Sopenharmony_ci};
1318c2ecf20Sopenharmony_ci
1328c2ecf20Sopenharmony_ci&pwm {
1338c2ecf20Sopenharmony_ci	status = "okay";
1348c2ecf20Sopenharmony_ci
1358c2ecf20Sopenharmony_ci	pinctrl-0 = <&pwmpdm0_pin>, <&pwmpdm1_pin>, <&pwmpdm2_pin>,
1368c2ecf20Sopenharmony_ci		    <&pwmpdm3_pin>;
1378c2ecf20Sopenharmony_ci	pinctrl-names = "default";
1388c2ecf20Sopenharmony_ci};
1398c2ecf20Sopenharmony_ci
1408c2ecf20Sopenharmony_ci&adc {
1418c2ecf20Sopenharmony_ci	status = "okay";
1428c2ecf20Sopenharmony_ci	vref-supply = <&reg_1v8>;
1438c2ecf20Sopenharmony_ci	adc-reserved-channels = <0x10>;
1448c2ecf20Sopenharmony_ci};
1458c2ecf20Sopenharmony_ci
1468c2ecf20Sopenharmony_ci&i2c2 {
1478c2ecf20Sopenharmony_ci	status = "okay";
1488c2ecf20Sopenharmony_ci	clock-frequency = <400000>;
1498c2ecf20Sopenharmony_ci
1508c2ecf20Sopenharmony_ci	tpm@20 {
1518c2ecf20Sopenharmony_ci		compatible = "infineon,slb9645tt";
1528c2ecf20Sopenharmony_ci		reg = <0x20>;
1538c2ecf20Sopenharmony_ci	};
1548c2ecf20Sopenharmony_ci
1558c2ecf20Sopenharmony_ci};
1568c2ecf20Sopenharmony_ci
1578c2ecf20Sopenharmony_ci&i2c3 {
1588c2ecf20Sopenharmony_ci	status = "okay";
1598c2ecf20Sopenharmony_ci	clock-frequency = <400000>;
1608c2ecf20Sopenharmony_ci};
161