hc
2024-05-10 37f49e37ab4cb5d0bc4c60eb5c6d4dd57db767bb
kernel/arch/arm/boot/dts/rk3288-veyron-mickey.dts
....@@ -7,6 +7,7 @@
77
88 /dts-v1/;
99 #include "rk3288-veyron.dtsi"
10
+#include "rk3288-veyron-broadcom-bluetooth.dtsi"
1011
1112 / {
1213 model = "Google Mickey";
....@@ -27,6 +28,13 @@
2728 regulator-always-on;
2829 regulator-boot-on;
2930 vin-supply = <&vcc33_sys>;
31
+ };
32
+
33
+ sound {
34
+ compatible = "rockchip,rockchip-audio-max98090";
35
+ rockchip,model = "VEYRON-HDMI";
36
+ rockchip,hdmi-codec = <&hdmi>;
37
+ rockchip,i2s-controller = <&i2s>;
3038 };
3139 };
3240
....@@ -75,14 +83,18 @@
7583 cooling-maps {
7684 /*
7785 * After 1st level, throttle the CPU down to as low as 1.4 GHz
78
- * and don't let the GPU go faster than 400 MHz. Note that we
79
- * won't throttle the GPU lower than 400 MHz due to CPU
80
- * heat--we'll let the GPU do the rest itself.
86
+ * and don't let the GPU go faster than 400 MHz.
8187 */
8288 cpu_warm_limit_cpu {
8389 trip = <&cpu_alert_warm>;
84
- cooling-device =
85
- <&cpu0 THERMAL_NO_LIMIT 4>;
90
+ cooling-device = <&cpu0 THERMAL_NO_LIMIT 4>,
91
+ <&cpu1 THERMAL_NO_LIMIT 4>,
92
+ <&cpu2 THERMAL_NO_LIMIT 4>,
93
+ <&cpu3 THERMAL_NO_LIMIT 4>;
94
+ };
95
+ cpu_warm_limit_gpu {
96
+ trip = <&cpu_alert_warm>;
97
+ cooling-device = <&gpu 1 1>;
8698 };
8799
88100 /*
....@@ -103,23 +115,98 @@
103115 */
104116 cpu_almost_hot_limit_cpu {
105117 trip = <&cpu_alert_almost_hot>;
106
- cooling-device =
107
- <&cpu0 5 6>;
118
+ cooling-device = <&cpu0 5 6>, <&cpu1 5 6>, <&cpu2 5 6>,
119
+ <&cpu3 5 6>;
108120 };
109121 cpu_hot_limit_cpu {
110122 trip = <&cpu_alert_hot>;
111
- cooling-device =
112
- <&cpu0 7 7>;
123
+ cooling-device = <&cpu0 7 7>, <&cpu1 7 7>, <&cpu2 7 7>,
124
+ <&cpu3 7 7>;
113125 };
114126 cpu_hotter_limit_cpu {
115127 trip = <&cpu_alert_hotter>;
116
- cooling-device =
117
- <&cpu0 7 8>;
128
+ cooling-device = <&cpu0 7 8>, <&cpu1 7 8>, <&cpu2 7 8>,
129
+ <&cpu3 7 8>;
118130 };
119131 cpu_very_hot_limit_cpu {
120132 trip = <&cpu_alert_very_hot>;
121
- cooling-device =
122
- <&cpu0 8 THERMAL_NO_LIMIT>;
133
+ cooling-device = <&cpu0 8 THERMAL_NO_LIMIT>,
134
+ <&cpu1 8 THERMAL_NO_LIMIT>,
135
+ <&cpu2 8 THERMAL_NO_LIMIT>,
136
+ <&cpu3 8 THERMAL_NO_LIMIT>;
137
+ };
138
+
139
+ /* At very hot, don't let GPU go over 300 MHz */
140
+ cpu_very_hot_limit_gpu {
141
+ trip = <&cpu_alert_very_hot>;
142
+ cooling-device = <&gpu 2 2>;
143
+ };
144
+ };
145
+};
146
+
147
+&gpu_thermal {
148
+ /delete-node/ trips;
149
+ /delete-node/ cooling-maps;
150
+
151
+ trips {
152
+ gpu_alert_warmish: gpu_alert_warmish {
153
+ temperature = <60000>; /* millicelsius */
154
+ hysteresis = <2000>; /* millicelsius */
155
+ type = "passive";
156
+ };
157
+ gpu_alert_warm: gpu_alert_warm {
158
+ temperature = <65000>; /* millicelsius */
159
+ hysteresis = <2000>; /* millicelsius */
160
+ type = "passive";
161
+ };
162
+ gpu_alert_hotter: gpu_alert_hotter {
163
+ temperature = <84000>; /* millicelsius */
164
+ hysteresis = <2000>; /* millicelsius */
165
+ type = "passive";
166
+ };
167
+ gpu_alert_very_very_hot: gpu_alert_very_very_hot {
168
+ temperature = <86000>; /* millicelsius */
169
+ hysteresis = <2000>; /* millicelsius */
170
+ type = "passive";
171
+ };
172
+ gpu_crit: gpu_crit {
173
+ temperature = <90000>; /* millicelsius */
174
+ hysteresis = <2000>; /* millicelsius */
175
+ type = "critical";
176
+ };
177
+ };
178
+
179
+ cooling-maps {
180
+ /* After 1st level throttle the GPU down to as low as 400 MHz */
181
+ gpu_warmish_limit_gpu {
182
+ trip = <&gpu_alert_warmish>;
183
+ cooling-device = <&gpu THERMAL_NO_LIMIT 1>;
184
+ };
185
+
186
+ /*
187
+ * Slightly after we throttle the GPU, we'll also make sure that
188
+ * the CPU can't go faster than 1.4 GHz. Note that we won't
189
+ * throttle the CPU lower than 1.4 GHz due to GPU heat--we'll
190
+ * let the CPU do the rest itself.
191
+ */
192
+ gpu_warm_limit_cpu {
193
+ trip = <&gpu_alert_warm>;
194
+ cooling-device = <&cpu0 4 4>,
195
+ <&cpu1 4 4>,
196
+ <&cpu2 4 4>,
197
+ <&cpu3 4 4>;
198
+ };
199
+
200
+ /* When hot, GPU goes down to 300 MHz */
201
+ gpu_hotter_limit_gpu {
202
+ trip = <&gpu_alert_hotter>;
203
+ cooling-device = <&gpu 2 2>;
204
+ };
205
+
206
+ /* When really hot, don't let GPU go _above_ 300 MHz */
207
+ gpu_very_very_hot_limit_gpu {
208
+ trip = <&gpu_alert_very_very_hot>;
209
+ cooling-device = <&gpu 2 THERMAL_NO_LIMIT>;
123210 };
124211 };
125212 };
....@@ -134,8 +221,6 @@
134221
135222 &i2s {
136223 status = "okay";
137
- clock-names = "i2s_hclk", "i2s_clk", "i2s_clk_out";
138
- clocks = <&cru HCLK_I2S0>, <&cru SCLK_I2S0>, <&cru SCLK_I2S0_OUT>;
139224 };
140225
141226 &rk808 {
....@@ -175,7 +260,166 @@
175260 };
176261 };
177262
263
+&gpio0 {
264
+ gpio-line-names = "PMIC_SLEEP_AP",
265
+ "",
266
+ "",
267
+ "",
268
+ "PMIC_INT_L",
269
+ "POWER_BUTTON_L",
270
+ "",
271
+ "",
272
+
273
+ "",
274
+ /*
275
+ * RECOVERY_SW_L is Chrome OS ABI. Schematics call
276
+ * it REC_MODE_L.
277
+ */
278
+ "RECOVERY_SW_L",
279
+ "OT_RESET",
280
+ "",
281
+ "",
282
+ "AP_WARM_RESET_H",
283
+ "",
284
+ "I2C0_SDA_PMIC",
285
+
286
+ "I2C0_SCL_PMIC",
287
+ "",
288
+ "nFALUT";
289
+};
290
+
291
+&gpio2 {
292
+ gpio-line-names = "CONFIG0",
293
+ "CONFIG1",
294
+ "CONFIG2",
295
+ "",
296
+ "",
297
+ "",
298
+ "",
299
+ "CONFIG3",
300
+
301
+ "",
302
+ "EMMC_RST_L";
303
+};
304
+
305
+&gpio3 {
306
+ gpio-line-names = "FLASH0_D0",
307
+ "FLASH0_D1",
308
+ "FLASH0_D2",
309
+ "FLASH0_D3",
310
+ "FLASH0_D4",
311
+ "FLASH0_D5",
312
+ "FLASH0_D6",
313
+ "FLASH0_D7",
314
+
315
+ "",
316
+ "",
317
+ "",
318
+ "",
319
+ "",
320
+ "",
321
+ "",
322
+ "",
323
+
324
+ "FLASH0_CS2/EMMC_CMD",
325
+ "",
326
+ "FLASH0_DQS/EMMC_CLKO";
327
+};
328
+
329
+&gpio4 {
330
+ gpio-line-names = "",
331
+ "",
332
+ "",
333
+ "",
334
+ "",
335
+ "",
336
+ "",
337
+ "",
338
+
339
+ "",
340
+ "",
341
+ "",
342
+ "",
343
+ "",
344
+ "",
345
+ "",
346
+ "",
347
+
348
+ "UART0_RXD",
349
+ "UART0_TXD",
350
+ "UART0_CTS_L",
351
+ "UART0_RTS_L",
352
+ "SDIO0_D0",
353
+ "SDIO0_D1",
354
+ "SDIO0_D2",
355
+ "SDIO0_D3",
356
+
357
+ "SDIO0_CMD",
358
+ "SDIO0_CLK",
359
+ "BT_DEV_WAKE",
360
+ "",
361
+ "WIFI_ENABLE_H",
362
+ "BT_ENABLE_L",
363
+ "WIFI_HOST_WAKE",
364
+ "BT_HOST_WAKE";
365
+};
366
+
367
+&gpio7 {
368
+ gpio-line-names = "",
369
+ "PWM_LOG",
370
+ "",
371
+ "",
372
+ "TPM_INT_H",
373
+ "SDMMC_DET_L",
374
+ /*
375
+ * AP_FLASH_WP_L is Chrome OS ABI. Schematics call
376
+ * it FW_WP_AP.
377
+ */
378
+ "AP_FLASH_WP_L",
379
+ "",
380
+
381
+ "CPU_NMI",
382
+ "DVSOK",
383
+ "HDMI_WAKE",
384
+ "POWER_HDMI_ON",
385
+ "DVS1",
386
+ "",
387
+ "",
388
+ "DVS2",
389
+
390
+ "HDMI_CEC",
391
+ "",
392
+ "",
393
+ "I2C5_SDA_HDMI",
394
+ "I2C5_SCL_HDMI",
395
+ "",
396
+ "UART2_RXD",
397
+ "UART2_TXD";
398
+};
399
+
400
+&gpio8 {
401
+ gpio-line-names = "RAM_ID0",
402
+ "RAM_ID1",
403
+ "RAM_ID2",
404
+ "RAM_ID3",
405
+ "I2C1_SDA_TPM",
406
+ "I2C1_SCL_TPM",
407
+ "SPI2_CLK",
408
+ "SPI2_CS0",
409
+
410
+ "SPI2_RXD",
411
+ "SPI2_TXD";
412
+};
413
+
178414 &pinctrl {
415
+ pinctrl-names = "default";
416
+ pinctrl-0 = <
417
+ /* Common for sleep and wake, but no owners */
418
+ &ddr0_retention
419
+ &ddrio_pwroff
420
+ &global_pwroff
421
+ >;
422
+
179423 hdmi {
180424 power_hdmi_on: power-hdmi-on {
181425 rockchip,pins = <7 RK_PB3 RK_FUNC_GPIO &pcfg_pull_none>;