meson-g12b-gsking-x.dts 2.7 KB

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