1// SPDX-License-Identifier: GPL-2.0
2#include <dt-bindings/input/input.h>
3
4#include "qcom-msm8660.dtsi"
5#include "pm8058.dtsi"
6
7/ {
8	model = "Qualcomm MSM8660 SURF";
9	compatible = "qcom,msm8660-surf", "qcom,msm8660";
10
11	aliases {
12		serial0 = &gsbi12_serial;
13	};
14
15	chosen {
16		stdout-path = "serial0:115200n8";
17	};
18
19	/* Temporary fixed regulator */
20	vsdcc_fixed: vsdcc-regulator {
21		compatible = "regulator-fixed";
22		regulator-name = "SDCC Power";
23		regulator-min-microvolt = <2700000>;
24		regulator-max-microvolt = <2700000>;
25		regulator-always-on;
26	};
27};
28
29&gsbi12 {
30	qcom,mode = <GSBI_PROT_I2C_UART>;
31	status = "okay";
32};
33
34&gsbi12_serial {
35	status = "okay";
36};
37
38&pm8058 {
39	interrupts-extended = <&tlmm 88 IRQ_TYPE_LEVEL_LOW>;
40};
41
42&pm8058_keypad {
43	linux,keymap = <
44		MATRIX_KEY(0, 0, KEY_FN_F1)
45		MATRIX_KEY(0, 1, KEY_UP)
46		MATRIX_KEY(0, 2, KEY_LEFT)
47		MATRIX_KEY(0, 3, KEY_VOLUMEUP)
48		MATRIX_KEY(1, 0, KEY_FN_F2)
49		MATRIX_KEY(1, 1, KEY_RIGHT)
50		MATRIX_KEY(1, 2, KEY_DOWN)
51		MATRIX_KEY(1, 3, KEY_VOLUMEDOWN)
52		MATRIX_KEY(2, 3, KEY_ENTER)
53		MATRIX_KEY(4, 0, KEY_CAMERA_FOCUS)
54		MATRIX_KEY(4, 1, KEY_UP)
55		MATRIX_KEY(4, 2, KEY_LEFT)
56		MATRIX_KEY(4, 3, KEY_HOME)
57		MATRIX_KEY(4, 4, KEY_FN_F3)
58		MATRIX_KEY(5, 0, KEY_CAMERA)
59		MATRIX_KEY(5, 1, KEY_RIGHT)
60		MATRIX_KEY(5, 2, KEY_DOWN)
61		MATRIX_KEY(5, 3, KEY_BACK)
62		MATRIX_KEY(5, 4, KEY_MENU)
63		>;
64	keypad,num-rows = <6>;
65	keypad,num-columns = <5>;
66};
67
68&rpm {
69	regulators-0 {
70		compatible = "qcom,rpm-pm8901-regulators";
71	};
72
73	regulators-1 {
74		compatible = "qcom,rpm-pm8058-regulators";
75	};
76};
77
78/* eMMC */
79&sdcc1 {
80	vmmc-supply = <&vsdcc_fixed>;
81	status = "okay";
82};
83
84/* External micro SD card */
85&sdcc3 {
86	vmmc-supply = <&vsdcc_fixed>;
87	status = "okay";
88};
89