18c2ecf20Sopenharmony_ci// SPDX-License-Identifier: BSD-3-Clause
28c2ecf20Sopenharmony_ci/*
38c2ecf20Sopenharmony_ci * Copyright (c) 2020, Konrad Dybcio
48c2ecf20Sopenharmony_ci */
58c2ecf20Sopenharmony_ci
68c2ecf20Sopenharmony_ci/dts-v1/;
78c2ecf20Sopenharmony_ci
88c2ecf20Sopenharmony_ci#include "sdm630.dtsi"
98c2ecf20Sopenharmony_ci#include "pm660.dtsi"
108c2ecf20Sopenharmony_ci#include "pm660l.dtsi"
118c2ecf20Sopenharmony_ci#include <dt-bindings/gpio/gpio.h>
128c2ecf20Sopenharmony_ci#include <dt-bindings/input/input.h>
138c2ecf20Sopenharmony_ci#include <dt-bindings/input/gpio-keys.h>
148c2ecf20Sopenharmony_ci
158c2ecf20Sopenharmony_ci/ {
168c2ecf20Sopenharmony_ci	/* required for bootloader to select correct board */
178c2ecf20Sopenharmony_ci	qcom,msm-id = <318 0>;
188c2ecf20Sopenharmony_ci	qcom,board-id = <8 1>;
198c2ecf20Sopenharmony_ci	qcom,pmic-id = <0x1001b 0x101011a 0x00 0x00 0x1001b 0x201011a 0x00 0x00>;
208c2ecf20Sopenharmony_ci
218c2ecf20Sopenharmony_ci	/* This part enables graphical output via bootloader-enabled display */
228c2ecf20Sopenharmony_ci	chosen {
238c2ecf20Sopenharmony_ci		bootargs = "earlycon=tty0 console=tty0";
248c2ecf20Sopenharmony_ci
258c2ecf20Sopenharmony_ci		#address-cells = <2>;
268c2ecf20Sopenharmony_ci		#size-cells = <2>;
278c2ecf20Sopenharmony_ci		ranges;
288c2ecf20Sopenharmony_ci
298c2ecf20Sopenharmony_ci		stdout-path = "framebuffer0";
308c2ecf20Sopenharmony_ci
318c2ecf20Sopenharmony_ci		framebuffer0: framebuffer@9d400000 {
328c2ecf20Sopenharmony_ci			compatible = "simple-framebuffer";
338c2ecf20Sopenharmony_ci			reg = <0 0x9d400000 0 (1920 * 1080 * 4)>;
348c2ecf20Sopenharmony_ci			width = <1080>;
358c2ecf20Sopenharmony_ci			height = <1920>;
368c2ecf20Sopenharmony_ci			stride = <(1080 * 4)>;
378c2ecf20Sopenharmony_ci			format = "a8r8g8b8";
388c2ecf20Sopenharmony_ci			status= "okay";
398c2ecf20Sopenharmony_ci		};
408c2ecf20Sopenharmony_ci	};
418c2ecf20Sopenharmony_ci
428c2ecf20Sopenharmony_ci	gpio_keys {
438c2ecf20Sopenharmony_ci		status = "okay";
448c2ecf20Sopenharmony_ci		compatible = "gpio-keys";
458c2ecf20Sopenharmony_ci		input-name = "gpio-keys";
468c2ecf20Sopenharmony_ci		#address-cells = <1>;
478c2ecf20Sopenharmony_ci		#size-cells = <0>;
488c2ecf20Sopenharmony_ci		autorepeat;
498c2ecf20Sopenharmony_ci
508c2ecf20Sopenharmony_ci		camera_focus {
518c2ecf20Sopenharmony_ci			label = "Camera Focus";
528c2ecf20Sopenharmony_ci			gpios = <&tlmm 64 GPIO_ACTIVE_LOW>;
538c2ecf20Sopenharmony_ci			linux,input-type = <1>;
548c2ecf20Sopenharmony_ci			linux,code = <KEY_CAMERA_FOCUS>;
558c2ecf20Sopenharmony_ci			debounce-interval = <15>;
568c2ecf20Sopenharmony_ci		};
578c2ecf20Sopenharmony_ci
588c2ecf20Sopenharmony_ci		camera_snapshot {
598c2ecf20Sopenharmony_ci			label = "Camera Snapshot";
608c2ecf20Sopenharmony_ci			gpios = <&tlmm 113 GPIO_ACTIVE_LOW>;
618c2ecf20Sopenharmony_ci			linux,input-type = <1>;
628c2ecf20Sopenharmony_ci			linux,code = <KEY_CAMERA>;
638c2ecf20Sopenharmony_ci			debounce-interval = <15>;
648c2ecf20Sopenharmony_ci		};
658c2ecf20Sopenharmony_ci
668c2ecf20Sopenharmony_ci		vol_down {
678c2ecf20Sopenharmony_ci			label = "Volume Down";
688c2ecf20Sopenharmony_ci			gpios = <&pm660l_gpios 7 GPIO_ACTIVE_LOW>;
698c2ecf20Sopenharmony_ci			linux,input-type = <1>;
708c2ecf20Sopenharmony_ci			linux,code = <KEY_VOLUMEDOWN>;
718c2ecf20Sopenharmony_ci			gpio-key,wakeup;
728c2ecf20Sopenharmony_ci			debounce-interval = <15>;
738c2ecf20Sopenharmony_ci		};
748c2ecf20Sopenharmony_ci	};
758c2ecf20Sopenharmony_ci
768c2ecf20Sopenharmony_ci	reserved-memory {
778c2ecf20Sopenharmony_ci		#address-cells = <2>;
788c2ecf20Sopenharmony_ci		#size-cells = <2>;
798c2ecf20Sopenharmony_ci		ranges;
808c2ecf20Sopenharmony_ci
818c2ecf20Sopenharmony_ci		ramoops@ffc00000 {
828c2ecf20Sopenharmony_ci			compatible = "ramoops";
838c2ecf20Sopenharmony_ci			reg = <0x0 0xffc00000 0x0 0x100000>;
848c2ecf20Sopenharmony_ci			record-size = <0x10000>;
858c2ecf20Sopenharmony_ci			console-size = <0x60000>;
868c2ecf20Sopenharmony_ci			ftrace-size = <0x10000>;
878c2ecf20Sopenharmony_ci			pmsg-size = <0x20000>;
888c2ecf20Sopenharmony_ci			ecc-size = <16>;
898c2ecf20Sopenharmony_ci			status = "okay";
908c2ecf20Sopenharmony_ci		};
918c2ecf20Sopenharmony_ci
928c2ecf20Sopenharmony_ci		debug_region@ffb00000 {
938c2ecf20Sopenharmony_ci			reg = <0x00 0xffb00000 0x00 0x100000>;
948c2ecf20Sopenharmony_ci			no-map;
958c2ecf20Sopenharmony_ci		};
968c2ecf20Sopenharmony_ci
978c2ecf20Sopenharmony_ci		removed_region@85800000 {
988c2ecf20Sopenharmony_ci			reg = <0x00 0x85800000 0x00 0x3700000>;
998c2ecf20Sopenharmony_ci			no-map;
1008c2ecf20Sopenharmony_ci		};
1018c2ecf20Sopenharmony_ci	};
1028c2ecf20Sopenharmony_ci
1038c2ecf20Sopenharmony_ci	soc {
1048c2ecf20Sopenharmony_ci		sdhci@c0c4000 {
1058c2ecf20Sopenharmony_ci			status = "okay";
1068c2ecf20Sopenharmony_ci
1078c2ecf20Sopenharmony_ci			mmc-ddr-1_8v;
1088c2ecf20Sopenharmony_ci			/* SoMC Nile platform's eMMC doesn't support HS200 mode */
1098c2ecf20Sopenharmony_ci			mmc-hs400-1_8v;
1108c2ecf20Sopenharmony_ci		};
1118c2ecf20Sopenharmony_ci
1128c2ecf20Sopenharmony_ci		i2c@c175000 {
1138c2ecf20Sopenharmony_ci			status = "okay";
1148c2ecf20Sopenharmony_ci
1158c2ecf20Sopenharmony_ci			/* Synaptics touchscreen */
1168c2ecf20Sopenharmony_ci		};
1178c2ecf20Sopenharmony_ci
1188c2ecf20Sopenharmony_ci		i2c@c176000 {
1198c2ecf20Sopenharmony_ci			status = "okay";
1208c2ecf20Sopenharmony_ci
1218c2ecf20Sopenharmony_ci			/* SMB1351 charger */
1228c2ecf20Sopenharmony_ci		};
1238c2ecf20Sopenharmony_ci
1248c2ecf20Sopenharmony_ci		serial@c1af000 {
1258c2ecf20Sopenharmony_ci			status = "okay";
1268c2ecf20Sopenharmony_ci		};
1278c2ecf20Sopenharmony_ci
1288c2ecf20Sopenharmony_ci		/* I2C3, 4, 5, 7 and 8 are disabled on this board. */
1298c2ecf20Sopenharmony_ci
1308c2ecf20Sopenharmony_ci		i2c@c1b6000 {
1318c2ecf20Sopenharmony_ci			status = "okay";
1328c2ecf20Sopenharmony_ci
1338c2ecf20Sopenharmony_ci			/* NXP NFC */
1348c2ecf20Sopenharmony_ci		};
1358c2ecf20Sopenharmony_ci	};
1368c2ecf20Sopenharmony_ci};
137