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 hdmi-connector { 59 compatible = "hdmi-connector"; 60 type = "a"; 61 62 port { 63 hdmi_connector_in: endpoint { 64 remote-endpoint = <&hdmi_tx_tmds_out>; 65 }; 66 }; 67 }; 68}; 69 70&hdmi_tx { 71 status = "okay"; 72 pinctrl-0 = <&hdmi_hpd_pins>, <&hdmi_i2c_pins>; 73 pinctrl-names = "default"; 74}; 75 76&hdmi_tx_tmds_port { 77 hdmi_tx_tmds_out: endpoint { 78 remote-endpoint = <&hdmi_connector_in>; 79 }; 80}; 81 82&i2c_A { 83 status = "okay"; 84 pinctrl-0 = <&i2c_a_pins>; 85 pinctrl-names = "default"; 86}; 87 88&i2c_B { 89 status = "okay"; 90 pinctrl-0 = <&i2c_b_pins>; 91 pinctrl-names = "default"; 92 93 rtc: rtc@51 { 94 /* has to be enabled manually when a battery is connected: */ 95 status = "disabled"; 96 compatible = "haoyu,hym8563"; 97 reg = <0x51>; 98 #clock-cells = <0>; 99 clock-frequency = <32768>; 100 clock-output-names = "xin32k"; 101 }; 102}; 103 104&ir { 105 linux,rc-map-name = "rc-geekbox"; 106}; 107 108&pwm_AO_ab { 109 status = "okay"; 110 pinctrl-0 = <&pwm_ao_a_3_pins>, <&pwm_ao_b_pins>; 111 pinctrl-names = "default"; 112 clocks = <&xtal> , <&xtal>; 113 clock-names = "clkin0", "clkin1" ; 114}; 115 116&pwm_ef { 117 pinctrl-0 = <&pwm_e_pins>, <&pwm_f_clk_pins>; 118}; 119 120&sd_emmc_a { 121 brcmf: wifi@1 { 122 reg = <1>; 123 compatible = "brcm,bcm4329-fmac"; 124 }; 125}; 126 127/* This is brought out on the Linux_RX (18) and Linux_TX (19) pins: */ 128&uart_AO { 129 status = "okay"; 130}; 131 132/* This is brought out on the UART_RX_AO_B (15) and UART_TX_AO_B (16) pins: */ 133&uart_AO_B { 134 status = "okay"; 135 pinctrl-0 = <&uart_ao_b_pins>; 136 pinctrl-names = "default"; 137}; 138