1// SPDX-License-Identifier: (GPL-2.0+ OR MIT) 2/* 3 * Copyright (c) 2019 BayLibre, SAS 4 * Author: Neil Armstrong <narmstrong@baylibre.com> 5 * Copyright (c) 2019 Christian Hewitt <christianshewitt@gmail.com> 6 */ 7 8/dts-v1/; 9 10#include "meson-g12b-w400.dtsi" 11#include <dt-bindings/leds/common.h> 12#include <dt-bindings/sound/meson-g12a-tohdmitx.h> 13 14/ { 15 compatible = "azw,gsking-x", "amlogic,s922x", "amlogic,g12b"; 16 model = "Beelink GS-King X"; 17 18 aliases { 19 rtc0 = &rtc; 20 rtc1 = &vrtc; 21 }; 22 23 gpio_fan: gpio-fan { 24 compatible = "gpio-fan"; 25 gpios = <&gpio GPIOH_5 GPIO_ACTIVE_HIGH>; 26 /* Using Dummy Speed */ 27 gpio-fan,speed-map = <0 0>, <1 1>; 28 #cooling-cells = <2>; 29 }; 30 31 gpio-keys-polled { 32 compatible = "gpio-keys-polled"; 33 poll-interval = <100>; 34 35 power-button { 36 label = "power"; 37 linux,code = <KEY_POWER>; 38 gpios = <&gpio_ao GPIOAO_3 GPIO_ACTIVE_HIGH>; 39 }; 40 }; 41 42 sound { 43 compatible = "amlogic,axg-sound-card"; 44 model = "GSKING-X"; 45 audio-aux-devs = <&tdmout_a>; 46 audio-routing = "TDMOUT_A IN 0", "FRDDR_A OUT 1", 47 "TDMOUT_A IN 1", "FRDDR_B OUT 1", 48 "TDMOUT_A IN 2", "FRDDR_C OUT 1", 49 "TDM_A Playback", "TDMOUT_A OUT"; 50 51 assigned-clocks = <&clkc CLKID_MPLL2>, 52 <&clkc CLKID_MPLL0>, 53 <&clkc CLKID_MPLL1>; 54 assigned-clock-parents = <0>, <0>, <0>; 55 assigned-clock-rates = <294912000>, 56 <270950400>, 57 <393216000>; 58 59 dai-link-0 { 60 sound-dai = <&frddr_a>; 61 }; 62 63 dai-link-1 { 64 sound-dai = <&frddr_b>; 65 }; 66 67 dai-link-2 { 68 sound-dai = <&frddr_c>; 69 }; 70 71 /* 8ch hdmi interface */ 72 dai-link-3 { 73 sound-dai = <&tdmif_a>; 74 dai-format = "i2s"; 75 dai-tdm-slot-tx-mask-0 = <1 1>; 76 dai-tdm-slot-tx-mask-1 = <1 1>; 77 dai-tdm-slot-tx-mask-2 = <1 1>; 78 dai-tdm-slot-tx-mask-3 = <1 1>; 79 mclk-fs = <256>; 80 81 codec { 82 sound-dai = <&tohdmitx TOHDMITX_I2S_IN_A>; 83 }; 84 }; 85 86 dai-link-4 { 87 sound-dai = <&tohdmitx TOHDMITX_I2S_OUT>; 88 89 codec { 90 sound-dai = <&hdmi_tx>; 91 }; 92 }; 93 }; 94}; 95 96&arb { 97 status = "okay"; 98}; 99 100&clkc_audio { 101 status = "okay"; 102}; 103 104&cpu_thermal { 105 trips { 106 cpu_active: cpu-active { 107 temperature = <70000>; /* millicelsius */ 108 hysteresis = <2000>; /* millicelsius */ 109 type = "active"; 110 }; 111 }; 112 113 cooling-maps { 114 map { 115 trip = <&cpu_active>; 116 cooling-device = <&gpio_fan THERMAL_NO_LIMIT THERMAL_NO_LIMIT>; 117 }; 118 }; 119}; 120 121&frddr_a { 122 status = "okay"; 123}; 124 125&frddr_b { 126 status = "okay"; 127}; 128 129&frddr_c { 130 status = "okay"; 131}; 132 133&i2c3 { 134 status = "okay"; 135 pinctrl-0 = <&i2c3_sda_a_pins>, <&i2c3_sck_a_pins>; 136 pinctrl-names = "default"; 137 138 rtc: rtc@51 { 139 compatible = "nxp,pcf8563"; 140 reg = <0x51>; 141 wakeup-source; 142 }; 143}; 144 145&tdmif_a { 146 status = "okay"; 147}; 148 149&tdmout_a { 150 status = "okay"; 151}; 152 153&tohdmitx { 154 status = "okay"; 155}; 156