Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

Merge tag 'amlogic-dt64-2' of git://git.kernel.org/pub/scm/linux/kernel/git/khilman/linux-amlogic into arm/dt

arm64: dts: amlogic updates for v5.11, round 2
- audio support for several more boards
- PHY timing fixes

* tag 'amlogic-dt64-2' of git://git.kernel.org/pub/scm/linux/kernel/git/khilman/linux-amlogic:
arm64: dts: meson: add i2c3/rtc nodes and vrtc alias to GT-King/GT-King-Pro
arm64: dts: meson: g12b: w400: fix PHY deassert timing requirements
arm64: dts: meson: g12a: x96-max: fix PHY deassert timing requirements
ARM: dts: meson: fix PHY deassert timing requirements
arm64: dts: meson: fix PHY deassert timing requirements
arm64: dts: meson: g12b: odroid-n2: fix PHY deassert timing requirements
arm64: dts: meson: minor fixups for Khadas VIM/VIM2 dts
arm64: dts: meson: add audio playback to wetek-play2
arm64: dts: meson: add audio playback to wetek-hub
arm64: dts: meson: add audio playback to odroid-c2
arm64: dts: meson: add audio playback to nanopi-k2
arm64: dts: meson: add audio playback to khadas-vim2
arm64: dts: meson: add audio playback to khadas-vim
arm64: dts: meson: add audio playback to a95x
arm64: dts: meson-axg: add GE2D node

Link: https://lore.kernel.org/r/7ho8j4gkxo.fsf@baylibre.com
Signed-off-by: Arnd Bergmann <arnd@arndb.de>

+361 -19
+1 -1
arch/arm/boot/dts/meson8b-odroidc1.dts
··· 224 224 reg = <0>; 225 225 226 226 reset-assert-us = <10000>; 227 - reset-deassert-us = <30000>; 227 + reset-deassert-us = <80000>; 228 228 reset-gpios = <&gpio GPIOH_4 GPIO_ACTIVE_LOW>; 229 229 230 230 interrupt-parent = <&gpio_intc>;
+1 -1
arch/arm/boot/dts/meson8m2-mxiii-plus.dts
··· 81 81 reg = <0>; 82 82 83 83 reset-assert-us = <10000>; 84 - reset-deassert-us = <30000>; 84 + reset-deassert-us = <80000>; 85 85 reset-gpios = <&gpio GPIOH_4 GPIO_ACTIVE_LOW>; 86 86 }; 87 87 };
+9
arch/arm64/boot/dts/amlogic/meson-axg.dtsi
··· 1727 1727 }; 1728 1728 }; 1729 1729 1730 + ge2d: ge2d@ff940000 { 1731 + compatible = "amlogic,axg-ge2d"; 1732 + reg = <0x0 0xff940000 0x0 0x10000>; 1733 + interrupts = <GIC_SPI 150 IRQ_TYPE_EDGE_RISING>; 1734 + clocks = <&clkc CLKID_VAPB>; 1735 + resets = <&reset RESET_GE2D>; 1736 + reset-names = "core"; 1737 + }; 1738 + 1730 1739 gic: interrupt-controller@ffc01000 { 1731 1740 compatible = "arm,gic-400"; 1732 1741 reg = <0x0 0xffc01000 0 0x1000>,
+1 -1
arch/arm64/boot/dts/amlogic/meson-g12a-x96-max.dts
··· 340 340 eee-broken-1000t; 341 341 342 342 reset-assert-us = <10000>; 343 - reset-deassert-us = <30000>; 343 + reset-deassert-us = <80000>; 344 344 reset-gpios = <&gpio GPIOZ_15 (GPIO_ACTIVE_LOW | GPIO_OPEN_DRAIN)>; 345 345 346 346 interrupt-parent = <&gpio_intc>;
+17
arch/arm64/boot/dts/amlogic/meson-g12b-gtking-pro.dts
··· 14 14 compatible = "azw,gtking", "amlogic,g12b"; 15 15 model = "Beelink GT-King Pro"; 16 16 17 + aliases { 18 + rtc0 = &rtc; 19 + rtc1 = &vrtc; 20 + }; 21 + 17 22 gpio-keys-polled { 18 23 compatible = "gpio-keys-polled"; 19 24 #address-cells = <1>; ··· 115 110 116 111 &frddr_c { 117 112 status = "okay"; 113 + }; 114 + 115 + &i2c3 { 116 + status = "okay"; 117 + pinctrl-0 = <&i2c3_sda_a_pins>, <&i2c3_sck_a_pins>; 118 + pinctrl-names = "default"; 119 + 120 + rtc: rtc@51 { 121 + compatible = "nxp,pcf8563"; 122 + reg = <0x51>; 123 + wakeup-source; 124 + }; 118 125 }; 119 126 120 127 &tdmif_b {
+18
arch/arm64/boot/dts/amlogic/meson-g12b-gtking.dts
··· 14 14 compatible = "azw,gtking", "amlogic,g12b"; 15 15 model = "Beelink GT-King"; 16 16 17 + aliases { 18 + rtc0 = &rtc; 19 + rtc1 = &vrtc; 20 + }; 21 + 17 22 spdif_dit: audio-codec-1 { 18 23 #sound-dai-cells = <0>; 19 24 compatible = "linux,spdif-dit"; ··· 125 120 126 121 &frddr_c { 127 122 status = "okay"; 123 + }; 124 + 125 + 126 + &i2c3 { 127 + status = "okay"; 128 + pinctrl-0 = <&i2c3_sda_a_pins>, <&i2c3_sck_a_pins>; 129 + pinctrl-names = "default"; 130 + 131 + rtc: rtc@51 { 132 + compatible = "nxp,pcf8563"; 133 + reg = <0x51>; 134 + wakeup-source; 135 + }; 128 136 }; 129 137 130 138 &spdifout {
+1 -1
arch/arm64/boot/dts/amlogic/meson-g12b-odroid-n2.dtsi
··· 413 413 max-speed = <1000>; 414 414 415 415 reset-assert-us = <10000>; 416 - reset-deassert-us = <30000>; 416 + reset-deassert-us = <80000>; 417 417 reset-gpios = <&gpio GPIOZ_15 (GPIO_ACTIVE_LOW | GPIO_OPEN_DRAIN)>; 418 418 419 419 interrupt-parent = <&gpio_intc>;
+1 -1
arch/arm64/boot/dts/amlogic/meson-g12b-w400.dtsi
··· 264 264 max-speed = <1000>; 265 265 266 266 reset-assert-us = <10000>; 267 - reset-deassert-us = <30000>; 267 + reset-deassert-us = <80000>; 268 268 reset-gpios = <&gpio GPIOZ_15 (GPIO_ACTIVE_LOW | GPIO_OPEN_DRAIN)>; 269 269 270 270 interrupt-parent = <&gpio_intc>;
+41 -1
arch/arm64/boot/dts/amlogic/meson-gxbb-nanopi-k2.dts
··· 7 7 8 8 #include "meson-gxbb.dtsi" 9 9 #include <dt-bindings/gpio/gpio.h> 10 + #include <dt-bindings/sound/meson-aiu.h> 10 11 11 12 / { 12 13 compatible = "friendlyarm,nanopi-k2", "amlogic,meson-gxbb"; ··· 131 130 }; 132 131 }; 133 132 }; 133 + 134 + sound { 135 + compatible = "amlogic,gx-sound-card"; 136 + model = "GXBB-NANOPI-K2"; 137 + assigned-clocks = <&clkc CLKID_MPLL0>, 138 + <&clkc CLKID_MPLL1>, 139 + <&clkc CLKID_MPLL2>; 140 + assigned-clock-parents = <0>, <0>, <0>; 141 + assigned-clock-rates = <294912000>, 142 + <270950400>, 143 + <393216000>; 144 + status = "okay"; 145 + 146 + dai-link-0 { 147 + sound-dai = <&aiu AIU_CPU CPU_I2S_FIFO>; 148 + }; 149 + 150 + dai-link-1 { 151 + sound-dai = <&aiu AIU_CPU CPU_I2S_ENCODER>; 152 + dai-format = "i2s"; 153 + mclk-fs = <256>; 154 + 155 + codec-0 { 156 + sound-dai = <&aiu AIU_HDMI CTRL_I2S>; 157 + }; 158 + }; 159 + 160 + dai-link-2 { 161 + sound-dai = <&aiu AIU_HDMI CTRL_OUT>; 162 + 163 + codec-0 { 164 + sound-dai = <&hdmi_tx>; 165 + }; 166 + }; 167 + }; 168 + }; 169 + 170 + &aiu { 171 + status = "okay"; 134 172 }; 135 173 136 174 &cec_AO { ··· 205 165 reg = <0>; 206 166 207 167 reset-assert-us = <10000>; 208 - reset-deassert-us = <30000>; 168 + reset-deassert-us = <80000>; 209 169 reset-gpios = <&gpio GPIOZ_14 GPIO_ACTIVE_LOW>; 210 170 211 171 interrupt-parent = <&gpio_intc>;
+40
arch/arm64/boot/dts/amlogic/meson-gxbb-nexbox-a95x.dts
··· 10 10 #include "meson-gxbb.dtsi" 11 11 #include <dt-bindings/gpio/gpio.h> 12 12 #include <dt-bindings/input/input.h> 13 + #include <dt-bindings/sound/meson-aiu.h> 13 14 14 15 / { 15 16 compatible = "nexbox,a95x", "amlogic,meson-gxbb"; ··· 140 139 }; 141 140 }; 142 141 }; 142 + 143 + sound { 144 + compatible = "amlogic,gx-sound-card"; 145 + model = "GXBB-NEXBOX-A95X"; 146 + assigned-clocks = <&clkc CLKID_MPLL0>, 147 + <&clkc CLKID_MPLL1>, 148 + <&clkc CLKID_MPLL2>; 149 + assigned-clock-parents = <0>, <0>, <0>; 150 + assigned-clock-rates = <294912000>, 151 + <270950400>, 152 + <393216000>; 153 + status = "okay"; 154 + 155 + dai-link-0 { 156 + sound-dai = <&aiu AIU_CPU CPU_I2S_FIFO>; 157 + }; 158 + 159 + dai-link-1 { 160 + sound-dai = <&aiu AIU_CPU CPU_I2S_ENCODER>; 161 + dai-format = "i2s"; 162 + mclk-fs = <256>; 163 + 164 + codec-0 { 165 + sound-dai = <&aiu AIU_HDMI CTRL_I2S>; 166 + }; 167 + }; 168 + 169 + dai-link-2 { 170 + sound-dai = <&aiu AIU_HDMI CTRL_OUT>; 171 + 172 + codec-0 { 173 + sound-dai = <&hdmi_tx>; 174 + }; 175 + }; 176 + }; 177 + }; 178 + 179 + &aiu { 180 + status = "okay"; 143 181 }; 144 182 145 183 &cvbs_vdac_port {
+41 -1
arch/arm64/boot/dts/amlogic/meson-gxbb-odroidc2.dts
··· 9 9 10 10 #include "meson-gxbb.dtsi" 11 11 #include <dt-bindings/gpio/gpio.h> 12 + #include <dt-bindings/sound/meson-aiu.h> 12 13 13 14 / { 14 15 compatible = "hardkernel,odroid-c2", "amlogic,meson-gxbb"; ··· 173 172 }; 174 173 }; 175 174 }; 175 + 176 + sound { 177 + compatible = "amlogic,gx-sound-card"; 178 + model = "GXBB-ODROID-C2"; 179 + assigned-clocks = <&clkc CLKID_MPLL0>, 180 + <&clkc CLKID_MPLL1>, 181 + <&clkc CLKID_MPLL2>; 182 + assigned-clock-parents = <0>, <0>, <0>; 183 + assigned-clock-rates = <294912000>, 184 + <270950400>, 185 + <393216000>; 186 + status = "okay"; 187 + 188 + dai-link-0 { 189 + sound-dai = <&aiu AIU_CPU CPU_I2S_FIFO>; 190 + }; 191 + 192 + dai-link-1 { 193 + sound-dai = <&aiu AIU_CPU CPU_I2S_ENCODER>; 194 + dai-format = "i2s"; 195 + mclk-fs = <256>; 196 + 197 + codec-0 { 198 + sound-dai = <&aiu AIU_HDMI CTRL_I2S>; 199 + }; 200 + }; 201 + 202 + dai-link-2 { 203 + sound-dai = <&aiu AIU_HDMI CTRL_OUT>; 204 + 205 + codec-0 { 206 + sound-dai = <&hdmi_tx>; 207 + }; 208 + }; 209 + }; 210 + }; 211 + 212 + &aiu { 213 + status = "okay"; 176 214 }; 177 215 178 216 &cec_AO { ··· 240 200 reg = <0>; 241 201 242 202 reset-assert-us = <10000>; 243 - reset-deassert-us = <30000>; 203 + reset-deassert-us = <80000>; 244 204 reset-gpios = <&gpio GPIOZ_14 GPIO_ACTIVE_LOW>; 245 205 246 206 interrupt-parent = <&gpio_intc>;
+1 -1
arch/arm64/boot/dts/amlogic/meson-gxbb-vega-s95.dtsi
··· 126 126 reg = <0>; 127 127 128 128 reset-assert-us = <10000>; 129 - reset-deassert-us = <30000>; 129 + reset-deassert-us = <80000>; 130 130 reset-gpios = <&gpio GPIOZ_14 GPIO_ACTIVE_LOW>; 131 131 132 132 interrupt-parent = <&gpio_intc>;
+40
arch/arm64/boot/dts/amlogic/meson-gxbb-wetek-hub.dts
··· 7 7 /dts-v1/; 8 8 9 9 #include "meson-gxbb-wetek.dtsi" 10 + #include <dt-bindings/sound/meson-aiu.h> 10 11 11 12 / { 12 13 compatible = "wetek,hub", "amlogic,meson-gxbb"; 13 14 model = "WeTek Hub"; 15 + 16 + sound { 17 + compatible = "amlogic,gx-sound-card"; 18 + model = "GXBB-WETEK-HUB"; 19 + assigned-clocks = <&clkc CLKID_MPLL0>, 20 + <&clkc CLKID_MPLL1>, 21 + <&clkc CLKID_MPLL2>; 22 + assigned-clock-parents = <0>, <0>, <0>; 23 + assigned-clock-rates = <294912000>, 24 + <270950400>, 25 + <393216000>; 26 + status = "okay"; 27 + 28 + dai-link-0 { 29 + sound-dai = <&aiu AIU_CPU CPU_I2S_FIFO>; 30 + }; 31 + 32 + dai-link-1 { 33 + sound-dai = <&aiu AIU_CPU CPU_I2S_ENCODER>; 34 + dai-format = "i2s"; 35 + mclk-fs = <256>; 36 + 37 + codec-0 { 38 + sound-dai = <&aiu AIU_HDMI CTRL_I2S>; 39 + }; 40 + }; 41 + 42 + dai-link-2 { 43 + sound-dai = <&aiu AIU_HDMI CTRL_OUT>; 44 + 45 + codec-0 { 46 + sound-dai = <&hdmi_tx>; 47 + }; 48 + }; 49 + }; 50 + }; 51 + 52 + &aiu { 53 + status = "okay"; 14 54 }; 15 55 16 56 &ir {
+61
arch/arm64/boot/dts/amlogic/meson-gxbb-wetek-play2.dts
··· 8 8 9 9 #include "meson-gxbb-wetek.dtsi" 10 10 #include <dt-bindings/input/input.h> 11 + #include <dt-bindings/sound/meson-aiu.h> 11 12 12 13 / { 13 14 compatible = "wetek,play2", "amlogic,meson-gxbb"; 14 15 model = "WeTek Play 2"; 16 + 17 + spdif_dit: audio-codec-0 { 18 + #sound-dai-cells = <0>; 19 + compatible = "linux,spdif-dit"; 20 + status = "okay"; 21 + sound-name-prefix = "DIT"; 22 + }; 15 23 16 24 leds { 17 25 led-wifi { ··· 47 39 gpios = <&gpio_ao GPIOAO_3 GPIO_ACTIVE_LOW>; 48 40 }; 49 41 }; 42 + 43 + sound { 44 + compatible = "amlogic,gx-sound-card"; 45 + model = "GXBB-WETEK-PLAY2"; 46 + assigned-clocks = <&clkc CLKID_MPLL0>, 47 + <&clkc CLKID_MPLL1>, 48 + <&clkc CLKID_MPLL2>; 49 + assigned-clock-parents = <0>, <0>, <0>; 50 + assigned-clock-rates = <294912000>, 51 + <270950400>, 52 + <393216000>; 53 + status = "okay"; 54 + 55 + dai-link-0 { 56 + sound-dai = <&aiu AIU_CPU CPU_I2S_FIFO>; 57 + }; 58 + 59 + dai-link-1 { 60 + sound-dai = <&aiu AIU_CPU CPU_SPDIF_FIFO>; 61 + }; 62 + 63 + dai-link-2 { 64 + sound-dai = <&aiu AIU_CPU CPU_I2S_ENCODER>; 65 + dai-format = "i2s"; 66 + mclk-fs = <256>; 67 + 68 + codec-0 { 69 + sound-dai = <&aiu AIU_HDMI CTRL_I2S>; 70 + }; 71 + }; 72 + 73 + dai-link-3 { 74 + sound-dai = <&aiu AIU_CPU CPU_SPDIF_ENCODER>; 75 + 76 + codec-0 { 77 + sound-dai = <&spdif_dit>; 78 + }; 79 + }; 80 + 81 + dai-link-4 { 82 + sound-dai = <&aiu AIU_HDMI CTRL_OUT>; 83 + 84 + codec-0 { 85 + sound-dai = <&hdmi_tx>; 86 + }; 87 + }; 88 + }; 89 + }; 90 + 91 + &aiu { 92 + status = "okay"; 93 + pinctrl-0 = <&spdif_out_y_pins>; 94 + pinctrl-names = "default"; 50 95 }; 51 96 52 97 &i2c_A {
+1 -1
arch/arm64/boot/dts/amlogic/meson-gxbb-wetek.dtsi
··· 147 147 reg = <0>; 148 148 149 149 reset-assert-us = <10000>; 150 - reset-deassert-us = <30000>; 150 + reset-deassert-us = <80000>; 151 151 reset-gpios = <&gpio GPIOZ_14 GPIO_ACTIVE_LOW>; 152 152 153 153 interrupt-parent = <&gpio_intc>;
+1 -1
arch/arm64/boot/dts/amlogic/meson-gxl-s905d-p230.dts
··· 82 82 83 83 /* External PHY reset is shared with internal PHY Led signal */ 84 84 reset-assert-us = <10000>; 85 - reset-deassert-us = <30000>; 85 + reset-deassert-us = <80000>; 86 86 reset-gpios = <&gpio GPIOZ_14 GPIO_ACTIVE_LOW>; 87 87 88 88 interrupt-parent = <&gpio_intc>;
+41 -2
arch/arm64/boot/dts/amlogic/meson-gxl-s905x-khadas-vim.dts
··· 5 5 6 6 /dts-v1/; 7 7 8 - #include <dt-bindings/input/input.h> 9 - 10 8 #include "meson-gxl-s905x-p212.dtsi" 9 + #include <dt-bindings/input/input.h> 10 + #include <dt-bindings/sound/meson-aiu.h> 11 11 12 12 / { 13 13 compatible = "khadas,vim", "amlogic,s905x", "amlogic,meson-gxl"; ··· 63 63 }; 64 64 }; 65 65 }; 66 + 67 + sound { 68 + compatible = "amlogic,gx-sound-card"; 69 + model = "GXL-KHADAS-VIM1"; 70 + assigned-clocks = <&clkc CLKID_MPLL0>, 71 + <&clkc CLKID_MPLL1>, 72 + <&clkc CLKID_MPLL2>; 73 + assigned-clock-parents = <0>, <0>, <0>; 74 + assigned-clock-rates = <294912000>, 75 + <270950400>, 76 + <393216000>; 77 + status = "okay"; 78 + 79 + dai-link-0 { 80 + sound-dai = <&aiu AIU_CPU CPU_I2S_FIFO>; 81 + }; 82 + 83 + dai-link-1 { 84 + sound-dai = <&aiu AIU_CPU CPU_I2S_ENCODER>; 85 + dai-format = "i2s"; 86 + mclk-fs = <256>; 87 + 88 + codec-0 { 89 + sound-dai = <&aiu AIU_HDMI CTRL_I2S>; 90 + }; 91 + }; 92 + 93 + dai-link-2 { 94 + sound-dai = <&aiu AIU_HDMI CTRL_OUT>; 95 + 96 + codec-0 { 97 + sound-dai = <&hdmi_tx>; 98 + }; 99 + }; 100 + }; 101 + }; 102 + 103 + &aiu { 104 + status = "okay"; 66 105 }; 67 106 68 107 &cec_AO {
+42 -4
arch/arm64/boot/dts/amlogic/meson-gxm-khadas-vim2.dts
··· 7 7 8 8 /dts-v1/; 9 9 10 - #include <dt-bindings/input/input.h> 11 - 12 10 #include "meson-gxm.dtsi" 11 + #include <dt-bindings/input/input.h> 12 + #include <dt-bindings/sound/meson-aiu.h> 13 13 14 14 / { 15 15 compatible = "khadas,vim2", "amlogic,s912", "amlogic,meson-gxm"; ··· 145 145 clock-frequency = <32768>; 146 146 pwms = <&pwm_ef 0 30518 0>; /* PWM_E at 32.768KHz */ 147 147 }; 148 + 149 + sound { 150 + compatible = "amlogic,gx-sound-card"; 151 + model = "GXM-KHADAS-VIM2"; 152 + assigned-clocks = <&clkc CLKID_MPLL0>, 153 + <&clkc CLKID_MPLL1>, 154 + <&clkc CLKID_MPLL2>; 155 + assigned-clock-parents = <0>, <0>, <0>; 156 + assigned-clock-rates = <294912000>, 157 + <270950400>, 158 + <393216000>; 159 + status = "okay"; 160 + 161 + dai-link-0 { 162 + sound-dai = <&aiu AIU_CPU CPU_I2S_FIFO>; 163 + }; 164 + 165 + dai-link-1 { 166 + sound-dai = <&aiu AIU_CPU CPU_I2S_ENCODER>; 167 + dai-format = "i2s"; 168 + mclk-fs = <256>; 169 + 170 + codec-0 { 171 + sound-dai = <&aiu AIU_HDMI CTRL_I2S>; 172 + }; 173 + }; 174 + 175 + dai-link-2 { 176 + sound-dai = <&aiu AIU_HDMI CTRL_OUT>; 177 + 178 + codec-0 { 179 + sound-dai = <&hdmi_tx>; 180 + }; 181 + }; 182 + }; 183 + }; 184 + 185 + &aiu { 186 + status = "okay"; 148 187 }; 149 188 150 189 &cec_AO { ··· 192 153 pinctrl-names = "default"; 193 154 hdmi-phandle = <&hdmi_tx>; 194 155 }; 195 - 196 156 197 157 &cpu_cooling_maps { 198 158 map0 { ··· 232 194 reg = <0>; 233 195 234 196 reset-assert-us = <10000>; 235 - reset-deassert-us = <30000>; 197 + reset-deassert-us = <80000>; 236 198 reset-gpios = <&gpio GPIOZ_14 GPIO_ACTIVE_LOW>; 237 199 238 200 interrupt-parent = <&gpio_intc>;
+1 -1
arch/arm64/boot/dts/amlogic/meson-gxm-nexbox-a1.dts
··· 112 112 max-speed = <1000>; 113 113 114 114 reset-assert-us = <10000>; 115 - reset-deassert-us = <30000>; 115 + reset-deassert-us = <80000>; 116 116 reset-gpios = <&gpio GPIOZ_14 GPIO_ACTIVE_LOW>; 117 117 }; 118 118 };
+1 -1
arch/arm64/boot/dts/amlogic/meson-gxm-q200.dts
··· 64 64 65 65 /* External PHY reset is shared with internal PHY Led signal */ 66 66 reset-assert-us = <10000>; 67 - reset-deassert-us = <30000>; 67 + reset-deassert-us = <80000>; 68 68 reset-gpios = <&gpio GPIOZ_14 GPIO_ACTIVE_LOW>; 69 69 70 70 interrupt-parent = <&gpio_intc>;
+1 -1
arch/arm64/boot/dts/amlogic/meson-gxm-rbox-pro.dts
··· 114 114 max-speed = <1000>; 115 115 116 116 reset-assert-us = <10000>; 117 - reset-deassert-us = <30000>; 117 + reset-deassert-us = <80000>; 118 118 reset-gpios = <&gpio GPIOZ_14 GPIO_ACTIVE_LOW>; 119 119 }; 120 120 };