1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
|
// SPDX-License-Identifier: BSD-3-Clause
/*
* Copyright (c) 2021, Konrad Dybcio <konrad.dybcio@somainline.org>
*/
#include "sm8350.dtsi"
#include "pm8350.dtsi"
#include "pm8350b.dtsi"
#include "pm8350c.dtsi"
#include "pmk8350.dtsi"
#include "pmr735a.dtsi"
#include "pmr735b.dtsi"
/ {
/*
* Yes, you are correct, there is NO MORE {msm,board,pmic}-id on SM8350!
* Adding it will cause the bootloader to go crazy and randomly crash
* shortly after closing UEFI boot services.. Perhaps that has something
* to do with the OS running inside a VM now..?
*/
chassis-type = "handset";
chosen {
#address-cells = <2>;
#size-cells = <2>;
ranges;
framebuffer: framebuffer@e1000000 {
compatible = "simple-framebuffer";
reg = <0 0xe1000000 0 0x2300000>;
/* The display, even though it's 4K, initializes at 1080-ish p */
width = <1096>;
height = <2560>;
stride = <(1096 * 4)>;
format = "a8r8g8b8";
/*
* That's (going to be) a lot of clocks, but it's necessary due
* to unused clk cleanup & no panel driver yet
*/
clocks = <&gcc GCC_DISP_HF_AXI_CLK>,
<&gcc GCC_DISP_SF_AXI_CLK>;
};
};
gpio-keys {
compatible = "gpio-keys";
/* For reasons still unknown, GAssist key and Camera Focus/Shutter don't work.. */
vol-down {
label = "Volume Down";
linux,code = <KEY_VOLUMEDOWN>;
gpios = <&pmk8350_gpios 3 GPIO_ACTIVE_LOW>;
debounce-interval = <15>;
linux,can-disable;
gpio-key,wakeup;
};
};
reserved-memory {
cont_splash_mem: memory@e1000000 {
reg = <0 0xe1000000 0 0x2300000>;
no-map;
};
ramoops@ffc00000 {
compatible = "ramoops";
reg = <0 0xffc00000 0 0x100000>;
console-size = <0x40000>;
record-size = <0x1000>;
no-map;
};
};
};
&pmk8350_rtc {
status = "okay";
};
&pon_pwrkey {
status = "okay";
};
&pon_resin {
status = "okay";
linux,code = <KEY_VOLUMEUP>;
};
&qupv3_id_0 {
status = "okay";
};
&qupv3_id_1 {
status = "okay";
};
&qupv3_id_2 {
status = "okay";
};
&tlmm {
gpio-reserved-ranges = <44 4>;
};
/* BIG WARNING! DO NOT TOUCH UFS, YOUR DEVICE WILL DIE! */
&ufs_mem_hc { status = "disabled"; };
&ufs_mem_phy { status = "disabled"; };
/* TODO: Make USB3 work (perhaps needs regulators for higher-current operation?) */
&usb_1 {
status = "okay";
qcom,select-utmi-as-pipe-clk;
};
&usb_1_dwc3 {
dr_mode = "peripheral";
maximum-speed = "high-speed";
phys = <&usb_1_hsphy>;
phy-names = "usb2-phy";
};
&usb_1_hsphy {
status = "okay";
};
&usb_1_qmpphy {
status = "okay";
};
|