1 // SPDX-License-Identifier: (GPL-2.0+ OR MIT)
3 * Copyright (C) 2019 Icenowy Zheng <icenowy@aosc.xyz>
9 #include "sun50i-a64.dtsi"
10 #include "sun50i-a64-cpu-opp.dtsi"
12 #include <dt-bindings/gpio/gpio.h>
13 #include <dt-bindings/input/input.h>
14 #include <dt-bindings/pwm/pwm.h>
18 compatible = "pine64,pinetab", "allwinner,sun50i-a64";
22 ethernet0 = &rtl8723cs;
25 backlight: backlight {
26 compatible = "pwm-backlight";
27 pwms = <&pwm 0 50000 PWM_POLARITY_INVERTED>;
28 brightness-levels = <0 16 18 20 22 24 26 29 32 35 38 42 46 51 56 62 68 75 83 91 100>;
29 default-brightness-level = <15>;
30 enable-gpios = <&pio 3 23 GPIO_ACTIVE_HIGH>; /* PD23 */
31 power-supply = <&vdd_bl>;
35 stdout-path = "serial0:115200n8";
39 compatible = "i2c-gpio";
40 sda-gpios = <&pio 4 13 GPIO_ACTIVE_HIGH>; /* PE13 */
41 scl-gpios = <&pio 4 12 GPIO_ACTIVE_HIGH>; /* PE12 */
42 i2c-gpio,delay-us = <5>;
48 compatible = "ovti,ov5640";
50 pinctrl-names = "default";
51 pinctrl-0 = <&csi_mclk_pin>;
52 clocks = <&ccu CLK_CSI_MCLK>;
55 AVDD-supply = <®_dldo3>;
56 DOVDD-supply = <®_aldo1>;
57 DVDD-supply = <®_eldo3>;
58 reset-gpios = <&pio 4 14 GPIO_ACTIVE_LOW>; /* PE14 */
59 powerdown-gpios = <&pio 4 15 GPIO_ACTIVE_HIGH>; /* PE15 */
63 remote-endpoint = <&csi_ep>;
65 hsync-active = <1>; /* Active high */
66 vsync-active = <0>; /* Active low */
67 data-active = <1>; /* Active high */
68 pclk-sample = <1>; /* Rising */
74 speaker_amp: audio-amplifier {
75 compatible = "simple-audio-amplifier";
76 enable-gpios = <&pio 7 7 GPIO_ACTIVE_HIGH>; /* PH7 */
77 sound-name-prefix = "Speaker Amp";
81 compatible = "regulator-fixed";
82 regulator-name = "bl-3v3";
83 regulator-min-microvolt = <3300000>;
84 regulator-max-microvolt = <3300000>;
85 gpio = <&pio 7 6 GPIO_ACTIVE_HIGH>; /* PH6 */
89 wifi_pwrseq: wifi_pwrseq {
90 compatible = "mmc-pwrseq-simple";
91 reset-gpios = <&r_pio 0 2 GPIO_ACTIVE_LOW>; /* PL2 */
92 post-power-on-delay-ms = <200>;
101 cpvdd-supply = <®_eldo1>;
106 cpu-supply = <®_dcdc2>;
110 cpu-supply = <®_dcdc2>;
114 cpu-supply = <®_dcdc2>;
118 cpu-supply = <®_dcdc2>;
125 #address-cells = <1>;
129 remote-endpoint = <&ov5640_ep>;
131 hsync-active = <1>; /* Active high */
132 vsync-active = <0>; /* Active low */
133 data-active = <1>; /* Active high */
134 pclk-sample = <1>; /* Rising */
152 vcc-dsi-supply = <®_dldo1>;
156 compatible = "feixin,k101-im2ba02";
158 avdd-supply = <®_dc1sw>;
159 dvdd-supply = <®_dc1sw>;
160 cvdd-supply = <®_ldo_io1>;
161 reset-gpios = <&pio 3 24 GPIO_ACTIVE_HIGH>; /* PD24 */
162 backlight = <&backlight>;
178 compatible = "goodix,gt9271";
180 interrupt-parent = <&pio>;
181 interrupts = <7 4 IRQ_TYPE_LEVEL_HIGH>; /* PH4 */
182 irq-gpios = <&pio 7 4 GPIO_ACTIVE_HIGH>; /* PH4 */
183 reset-gpios = <&pio 7 8 GPIO_ACTIVE_HIGH>; /* PH8 */
184 AVDD28-supply = <®_ldo_io1>;
195 /* TODO: add Bochs BMA223 accelerometer here */
199 vref-supply = <®_aldo3>;
204 linux,code = <KEY_VOLUMEUP>;
210 label = "Volume Down";
211 linux,code = <KEY_VOLUMEDOWN>;
222 pinctrl-names = "default";
223 pinctrl-0 = <&mmc0_pins>;
224 vmmc-supply = <®_dcdc1>;
225 cd-gpios = <&pio 5 6 GPIO_ACTIVE_LOW>;
232 pinctrl-names = "default";
233 pinctrl-0 = <&mmc1_pins>;
234 vmmc-supply = <®_dldo4>;
235 vqmmc-supply = <®_eldo1>;
236 mmc-pwrseq = <&wifi_pwrseq>;
247 pinctrl-names = "default";
248 pinctrl-0 = <&mmc2_pins>;
249 vmmc-supply = <®_dcdc1>;
250 vqmmc-supply = <®_dcdc1>;
269 compatible = "x-powers,axp803";
271 interrupt-parent = <&r_intc>;
272 interrupts = <0 IRQ_TYPE_LEVEL_LOW>;
273 x-powers,drive-vbus-en;
277 #include "axp803.dtsi"
283 &battery_power_supply {
288 regulator-min-microvolt = <2800000>;
289 regulator-max-microvolt = <2800000>;
290 regulator-name = "dovdd-csi";
295 regulator-min-microvolt = <1800000>;
296 regulator-max-microvolt = <3300000>;
297 regulator-name = "vcc-pl";
302 regulator-min-microvolt = <2700000>;
303 regulator-max-microvolt = <3300000>;
304 regulator-name = "vcc-pll-avcc";
308 regulator-name = "vcc-lcd";
313 regulator-min-microvolt = <3300000>;
314 regulator-max-microvolt = <3300000>;
315 regulator-name = "vcc-3v3";
320 regulator-min-microvolt = <1000000>;
321 regulator-max-microvolt = <1300000>;
322 regulator-name = "vdd-cpux";
325 /* DCDC3 is polyphased with DCDC2 */
329 regulator-min-microvolt = <1200000>;
330 regulator-max-microvolt = <1200000>;
331 regulator-name = "vcc-dram";
336 regulator-min-microvolt = <1100000>;
337 regulator-max-microvolt = <1100000>;
338 regulator-name = "vdd-sys";
343 regulator-min-microvolt = <3300000>;
344 regulator-max-microvolt = <3300000>;
345 regulator-name = "vcc-hdmi-dsi-sensor";
349 regulator-min-microvolt = <2800000>;
350 regulator-max-microvolt = <2800000>;
351 regulator-name = "avdd-csi";
355 regulator-min-microvolt = <3300000>;
356 regulator-max-microvolt = <3300000>;
357 regulator-name = "vcc-wifi";
361 regulator-name = "usb0-vbus";
367 regulator-min-microvolt = <1800000>;
368 regulator-max-microvolt = <1800000>;
369 regulator-name = "cpvdd";
373 regulator-min-microvolt = <1800000>;
374 regulator-max-microvolt = <1800000>;
375 regulator-name = "vcca-1v8";
379 regulator-min-microvolt = <1800000>;
380 regulator-max-microvolt = <1800000>;
381 regulator-name = "dvdd-1v8-csi";
385 regulator-min-microvolt = <1200000>;
386 regulator-max-microvolt = <1200000>;
387 regulator-name = "vcc-1v2-hsic";
392 regulator-min-microvolt = <1100000>;
393 regulator-max-microvolt = <1100000>;
394 regulator-name = "vdd-cpus";
398 regulator-min-microvolt = <3300000>;
399 regulator-max-microvolt = <3300000>;
400 regulator-name = "vcc-usb";
405 regulator-min-microvolt = <3300000>;
406 regulator-max-microvolt = <3300000>;
407 regulator-enable-ramp-delay = <3500000>;
408 regulator-name = "vcc-touchscreen";
413 regulator-name = "vcc-rtc";
418 simple-audio-card,aux-devs = <&codec_analog>, <&speaker_amp>;
419 simple-audio-card,widgets = "Microphone", "Internal Microphone Left",
420 "Microphone", "Internal Microphone Right",
421 "Headphone", "Headphone Jack",
422 "Speaker", "Internal Speaker";
423 simple-audio-card,routing =
426 "Speaker Amp INL", "LINEOUT",
427 "Speaker Amp INR", "LINEOUT",
428 "Internal Speaker", "Speaker Amp OUTL",
429 "Internal Speaker", "Speaker Amp OUTR",
430 "Headphone Jack", "HP",
433 "Internal Microphone Left", "MBIAS",
434 "MIC1", "Internal Microphone Left",
435 "Internal Microphone Right", "HBIAS",
436 "MIC2", "Internal Microphone Right";
440 pinctrl-names = "default";
441 pinctrl-0 = <&uart0_pb_pins>;
455 usb0_id_det-gpios = <&pio 7 9 GPIO_ACTIVE_HIGH>; /* PH9 */
456 usb0_vbus_power-supply = <&usb_power_supply>;
457 usb0_vbus-supply = <®_drivevbus>;
458 usb1_vbus-supply = <®_ldo_io0>;