Merge branch 'etnaviv/next' of https://git.pengutronix.de/git/lst/linux into drm...
[sfrench/cifs-2.6.git] / arch / arm64 / boot / dts / amlogic / meson-gxl-s905x-khadas-vim.dts
1 /*
2  * Copyright (c) 2017 Martin Blumenstingl <martin.blumenstingl@googlemail.com>.
3  *
4  * SPDX-License-Identifier: (GPL-2.0+ OR MIT)
5  */
6
7 /dts-v1/;
8
9 #include <dt-bindings/input/input.h>
10
11 #include "meson-gxl-s905x-p212.dtsi"
12
13 / {
14         compatible = "khadas,vim", "amlogic,s905x", "amlogic,meson-gxl";
15         model = "Khadas VIM";
16
17         adc-keys {
18                 compatible = "adc-keys";
19                 io-channels = <&saradc 0>;
20                 io-channel-names = "buttons";
21                 keyup-threshold-microvolt = <1710000>;
22
23                 button-function {
24                         label = "Function";
25                         linux,code = <KEY_FN>;
26                         press-threshold-microvolt = <10000>;
27                 };
28         };
29
30         aliases {
31                 serial2 = &uart_AO_B;
32         };
33
34         gpio-keys-polled {
35                 compatible = "gpio-keys-polled";
36                 #address-cells = <1>;
37                 #size-cells = <0>;
38                 poll-interval = <100>;
39
40                 button@0 {
41                         label = "power";
42                         linux,code = <KEY_POWER>;
43                         gpios = <&gpio_ao GPIOAO_2 GPIO_ACTIVE_LOW>;
44                 };
45         };
46
47         pwmleds {
48                 compatible = "pwm-leds";
49
50                 power {
51                         label = "vim:red:power";
52                         pwms = <&pwm_AO_ab 1 7812500 0>;
53                         max-brightness = <255>;
54                         linux,default-trigger = "default-on";
55                 };
56         };
57 };
58
59 &i2c_A {
60         status = "okay";
61         pinctrl-0 = <&i2c_a_pins>;
62         pinctrl-names = "default";
63 };
64
65 &i2c_B {
66         status = "okay";
67         pinctrl-0 = <&i2c_b_pins>;
68         pinctrl-names = "default";
69
70         rtc: rtc@51 {
71                 /* has to be enabled manually when a battery is connected: */
72                 status = "disabled";
73                 compatible = "haoyu,hym8563";
74                 reg = <0x51>;
75                 #clock-cells = <0>;
76                 clock-frequency = <32768>;
77                 clock-output-names = "xin32k";
78         };
79 };
80
81 &ir {
82         linux,rc-map-name = "rc-geekbox";
83 };
84
85 &pwm_AO_ab {
86         status = "okay";
87         pinctrl-0 = <&pwm_ao_a_3_pins>, <&pwm_ao_b_pins>;
88         pinctrl-names = "default";
89         clocks = <&clkc CLKID_FCLK_DIV4>;
90         clock-names = "clkin0";
91 };
92
93 &pwm_ef {
94         pinctrl-0 = <&pwm_e_pins>, <&pwm_f_clk_pins>;
95 };
96
97 &sd_emmc_a {
98         brcmf: bcrmf@1 {
99                 reg = <1>;
100                 compatible = "brcm,bcm4329-fmac";
101         };
102 };
103
104 /* This is brought out on the Linux_RX (18) and Linux_TX (19) pins: */
105 &uart_AO {
106         status = "okay";
107 };
108
109 /* This is brought out on the UART_RX_AO_B (15) and UART_TX_AO_B (16) pins: */
110 &uart_AO_B {
111         status = "okay";
112         pinctrl-0 = <&uart_ao_b_pins>;
113         pinctrl-names = "default";
114 };