0001 // SPDX-License-Identifier: (GPL-2.0+ OR MIT)
0002 /*
0003 * Copyright (c) 2019 BayLibre, SAS
0004 * Author: Neil Armstrong <narmstrong@baylibre.com>
0005 * Copyright (c) 2019 Christian Hewitt <christianshewitt@gmail.com>
0006 */
0007
0008 /dts-v1/;
0009
0010 #include "meson-g12b-w400.dtsi"
0011 #include <dt-bindings/leds/common.h>
0012 #include <dt-bindings/sound/meson-g12a-tohdmitx.h>
0013
0014 / {
0015 compatible = "azw,gsking-x", "amlogic,s922x", "amlogic,g12b";
0016 model = "Beelink GS-King X";
0017
0018 aliases {
0019 rtc0 = &rtc;
0020 rtc1 = &vrtc;
0021 };
0022
0023 gpio_fan: gpio-fan {
0024 compatible = "gpio-fan";
0025 gpios = <&gpio GPIOH_5 GPIO_ACTIVE_HIGH>;
0026 /* Using Dummy Speed */
0027 gpio-fan,speed-map = <0 0>, <1 1>;
0028 #cooling-cells = <2>;
0029 };
0030
0031 gpio-keys-polled {
0032 compatible = "gpio-keys-polled";
0033 poll-interval = <100>;
0034
0035 power-button {
0036 label = "power";
0037 linux,code = <KEY_POWER>;
0038 gpios = <&gpio_ao GPIOAO_3 GPIO_ACTIVE_HIGH>;
0039 };
0040 };
0041
0042 sound {
0043 compatible = "amlogic,axg-sound-card";
0044 model = "GSKING-X";
0045 audio-aux-devs = <&tdmout_a>;
0046 audio-routing = "TDMOUT_A IN 0", "FRDDR_A OUT 1",
0047 "TDMOUT_A IN 1", "FRDDR_B OUT 1",
0048 "TDMOUT_A IN 2", "FRDDR_C OUT 1",
0049 "TDM_A Playback", "TDMOUT_A OUT";
0050
0051 assigned-clocks = <&clkc CLKID_MPLL2>,
0052 <&clkc CLKID_MPLL0>,
0053 <&clkc CLKID_MPLL1>;
0054 assigned-clock-parents = <0>, <0>, <0>;
0055 assigned-clock-rates = <294912000>,
0056 <270950400>,
0057 <393216000>;
0058 status = "okay";
0059
0060 dai-link-0 {
0061 sound-dai = <&frddr_a>;
0062 };
0063
0064 dai-link-1 {
0065 sound-dai = <&frddr_b>;
0066 };
0067
0068 dai-link-2 {
0069 sound-dai = <&frddr_c>;
0070 };
0071
0072 /* 8ch hdmi interface */
0073 dai-link-3 {
0074 sound-dai = <&tdmif_a>;
0075 dai-format = "i2s";
0076 dai-tdm-slot-tx-mask-0 = <1 1>;
0077 dai-tdm-slot-tx-mask-1 = <1 1>;
0078 dai-tdm-slot-tx-mask-2 = <1 1>;
0079 dai-tdm-slot-tx-mask-3 = <1 1>;
0080 mclk-fs = <256>;
0081
0082 codec {
0083 sound-dai = <&tohdmitx TOHDMITX_I2S_IN_A>;
0084 };
0085 };
0086
0087 dai-link-4 {
0088 sound-dai = <&tohdmitx TOHDMITX_I2S_OUT>;
0089
0090 codec {
0091 sound-dai = <&hdmi_tx>;
0092 };
0093 };
0094 };
0095 };
0096
0097 &arb {
0098 status = "okay";
0099 };
0100
0101 &clkc_audio {
0102 status = "okay";
0103 };
0104
0105 &cpu_thermal {
0106 trips {
0107 cpu_active: cpu-active {
0108 temperature = <70000>; /* millicelsius */
0109 hysteresis = <2000>; /* millicelsius */
0110 type = "active";
0111 };
0112 };
0113
0114 cooling-maps {
0115 map {
0116 trip = <&cpu_active>;
0117 cooling-device = <&gpio_fan THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
0118 };
0119 };
0120 };
0121
0122 &frddr_a {
0123 status = "okay";
0124 };
0125
0126 &frddr_b {
0127 status = "okay";
0128 };
0129
0130 &frddr_c {
0131 status = "okay";
0132 };
0133
0134 &i2c3 {
0135 status = "okay";
0136 pinctrl-0 = <&i2c3_sda_a_pins>, <&i2c3_sck_a_pins>;
0137 pinctrl-names = "default";
0138
0139 rtc: rtc@51 {
0140 compatible = "nxp,pcf8563";
0141 reg = <0x51>;
0142 wakeup-source;
0143 };
0144 };
0145
0146 &tdmif_a {
0147 status = "okay";
0148 };
0149
0150 &tdmout_a {
0151 status = "okay";
0152 };
0153
0154 &tohdmitx {
0155 status = "okay";
0156 };