~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

TOMOYO Linux Cross Reference
Linux/arch/arm64/boot/dts/amlogic/meson-gxbb-vega-s95.dtsi

Version: ~ [ linux-6.12-rc7 ] ~ [ linux-6.11.7 ] ~ [ linux-6.10.14 ] ~ [ linux-6.9.12 ] ~ [ linux-6.8.12 ] ~ [ linux-6.7.12 ] ~ [ linux-6.6.60 ] ~ [ linux-6.5.13 ] ~ [ linux-6.4.16 ] ~ [ linux-6.3.13 ] ~ [ linux-6.2.16 ] ~ [ linux-6.1.116 ] ~ [ linux-6.0.19 ] ~ [ linux-5.19.17 ] ~ [ linux-5.18.19 ] ~ [ linux-5.17.15 ] ~ [ linux-5.16.20 ] ~ [ linux-5.15.171 ] ~ [ linux-5.14.21 ] ~ [ linux-5.13.19 ] ~ [ linux-5.12.19 ] ~ [ linux-5.11.22 ] ~ [ linux-5.10.229 ] ~ [ linux-5.9.16 ] ~ [ linux-5.8.18 ] ~ [ linux-5.7.19 ] ~ [ linux-5.6.19 ] ~ [ linux-5.5.19 ] ~ [ linux-5.4.285 ] ~ [ linux-5.3.18 ] ~ [ linux-5.2.21 ] ~ [ linux-5.1.21 ] ~ [ linux-5.0.21 ] ~ [ linux-4.20.17 ] ~ [ linux-4.19.323 ] ~ [ linux-4.18.20 ] ~ [ linux-4.17.19 ] ~ [ linux-4.16.18 ] ~ [ linux-4.15.18 ] ~ [ linux-4.14.336 ] ~ [ linux-4.13.16 ] ~ [ linux-4.12.14 ] ~ [ linux-4.11.12 ] ~ [ linux-4.10.17 ] ~ [ linux-4.9.337 ] ~ [ linux-4.4.302 ] ~ [ linux-3.10.108 ] ~ [ linux-2.6.32.71 ] ~ [ linux-2.6.0 ] ~ [ linux-2.4.37.11 ] ~ [ unix-v6-master ] ~ [ ccs-tools-1.8.12 ] ~ [ policy-sample ] ~
Architecture: ~ [ i386 ] ~ [ alpha ] ~ [ m68k ] ~ [ mips ] ~ [ ppc ] ~ [ sparc ] ~ [ sparc64 ] ~

  1 // SPDX-License-Identifier: (GPL-2.0+ OR MIT)
  2 /*
  3  * Copyright (c) 2016 Andreas Färber
  4  */
  5 
  6 #include "meson-gxbb.dtsi"
  7 #include <dt-bindings/sound/meson-aiu.h>
  8 
  9 / {
 10         compatible = "tronsmart,vega-s95", "amlogic,meson-gxbb";
 11 
 12         aliases {
 13                 serial0 = &uart_AO;
 14                 ethernet0 = &ethmac;
 15         };
 16 
 17         chosen {
 18                 stdout-path = "serial0:115200n8";
 19         };
 20 
 21         spdif_dit: audio-codec-0 {
 22                 #sound-dai-cells = <0>;
 23                 compatible = "linux,spdif-dit";
 24                 sound-name-prefix = "DIT";
 25         };
 26 
 27         leds {
 28                 compatible = "gpio-leds";
 29 
 30                 led-blue {
 31                         label = "vega-s95:blue:on";
 32                         gpios = <&gpio_ao GPIOAO_13 GPIO_ACTIVE_HIGH>;
 33                         default-state = "on";
 34                         panic-indicator;
 35                 };
 36         };
 37 
 38         usb_pwr: regulator-usb-pwrs {
 39                 compatible = "regulator-fixed";
 40 
 41                 regulator-name = "USB_PWR";
 42 
 43                 regulator-min-microvolt = <5000000>;
 44                 regulator-max-microvolt = <5000000>;
 45 
 46                 gpio = <&gpio GPIODV_24 GPIO_ACTIVE_HIGH>;
 47                 enable-active-high;
 48         };
 49 
 50         vddio_boot: regulator-vddio-boot {
 51                 compatible = "regulator-fixed";
 52                 regulator-name = "VDDIO_BOOT";
 53                 regulator-min-microvolt = <1800000>;
 54                 regulator-max-microvolt = <1800000>;
 55         };
 56 
 57         vddao_3v3: regulator-vddao-3v3 {
 58                 compatible = "regulator-fixed";
 59                 regulator-name = "VDDAO_3V3";
 60                 regulator-min-microvolt = <3300000>;
 61                 regulator-max-microvolt = <3300000>;
 62         };
 63 
 64         vddio_ao18: regulator-vddio-ao18 {
 65                 compatible = "regulator-fixed";
 66                 regulator-name = "VDDIO_AO18";
 67                 regulator-min-microvolt = <1800000>;
 68                 regulator-max-microvolt = <1800000>;
 69         };
 70 
 71         vcc_3v3: regulator-vcc-3v3 {
 72                 compatible = "regulator-fixed";
 73                 regulator-name = "VCC_3V3";
 74                 regulator-min-microvolt = <3300000>;
 75                 regulator-max-microvolt = <3300000>;
 76         };
 77 
 78         emmc_pwrseq: emmc-pwrseq {
 79                 compatible = "mmc-pwrseq-emmc";
 80                 reset-gpios = <&gpio BOOT_9 GPIO_ACTIVE_LOW>;
 81         };
 82 
 83         wifi32k: wifi32k {
 84                 compatible = "pwm-clock";
 85                 #clock-cells = <0>;
 86                 clock-frequency = <32768>;
 87                 pwms = <&pwm_ef 0 30518 0>; /* PWM_E at 32.768KHz */
 88         };
 89 
 90         hdmi-connector {
 91                 compatible = "hdmi-connector";
 92                 type = "a";
 93 
 94                 port {
 95                         hdmi_connector_in: endpoint {
 96                                 remote-endpoint = <&hdmi_tx_tmds_out>;
 97                         };
 98                 };
 99         };
100 
101         sdio_pwrseq: sdio-pwrseq {
102                 compatible = "mmc-pwrseq-simple";
103                 reset-gpios = <&gpio GPIOX_6 GPIO_ACTIVE_LOW>;
104                 clocks = <&wifi32k>;
105                 clock-names = "ext_clock";
106         };
107 
108         sound {
109                 compatible = "amlogic,gx-sound-card";
110                 model = "VEGA-S95";
111                 clocks = <&clkc CLKID_MPLL0>,
112                          <&clkc CLKID_MPLL1>,
113                          <&clkc CLKID_MPLL2>;
114 
115                 assigned-clocks = <&clkc CLKID_MPLL0>,
116                                   <&clkc CLKID_MPLL1>,
117                                   <&clkc CLKID_MPLL2>;
118                 assigned-clock-parents = <0>, <0>, <0>;
119                 assigned-clock-rates = <294912000>,
120                                        <270950400>,
121                                        <393216000>;
122 
123                 dai-link-0 {
124                         sound-dai = <&aiu AIU_CPU CPU_I2S_FIFO>;
125                 };
126 
127                 dai-link-1 {
128                         sound-dai = <&aiu AIU_CPU CPU_SPDIF_FIFO>;
129                 };
130 
131                 dai-link-2 {
132                         sound-dai = <&aiu AIU_CPU CPU_I2S_ENCODER>;
133                         dai-format = "i2s";
134                         mclk-fs = <256>;
135 
136                         codec-0 {
137                                 sound-dai = <&aiu AIU_HDMI CTRL_I2S>;
138                         };
139                 };
140 
141                 dai-link-3 {
142                         sound-dai = <&aiu AIU_CPU CPU_SPDIF_ENCODER>;
143 
144                         codec-0 {
145                                 sound-dai = <&spdif_dit>;
146                         };
147                 };
148 
149                 dai-link-4 {
150                         sound-dai = <&aiu AIU_HDMI CTRL_OUT>;
151 
152                         codec-0 {
153                                 sound-dai = <&hdmi_tx>;
154                         };
155                 };
156         };
157 };
158 
159 &aiu {
160         status = "okay";
161         pinctrl-0 = <&spdif_out_y_pins>;
162         pinctrl-names = "default";
163 };
164 
165 &cec_AO {
166         status = "okay";
167         pinctrl-0 = <&ao_cec_pins>;
168         pinctrl-names = "default";
169         hdmi-phandle = <&hdmi_tx>;
170 };
171 
172 &ethmac {
173         status = "okay";
174         pinctrl-0 = <&eth_rgmii_pins>;
175         pinctrl-names = "default";
176 
177         phy-handle = <&eth_phy0>;
178         phy-mode = "rgmii";
179 
180         amlogic,tx-delay-ns = <2>;
181 
182         mdio {
183                 compatible = "snps,dwmac-mdio";
184                 #address-cells = <1>;
185                 #size-cells = <0>;
186 
187                 eth_phy0: ethernet-phy@0 {
188                         /* Realtek RTL8211F (0x001cc916) */
189                         reg = <0>;
190 
191                         reset-assert-us = <10000>;
192                         reset-deassert-us = <80000>;
193                         reset-gpios = <&gpio GPIOZ_14 GPIO_ACTIVE_LOW>;
194 
195                         interrupt-parent = <&gpio_intc>;
196                         /* MAC_INTR on GPIOZ_15 */
197                         interrupts = <29 IRQ_TYPE_LEVEL_LOW>;
198                 };
199         };
200 };
201 
202 &hdmi_tx {
203         status = "okay";
204         pinctrl-0 = <&hdmi_hpd_pins>, <&hdmi_i2c_pins>;
205         pinctrl-names = "default";
206 };
207 
208 &hdmi_tx_tmds_port {
209         hdmi_tx_tmds_out: endpoint {
210                 remote-endpoint = <&hdmi_connector_in>;
211         };
212 };
213 
214 &ir {
215         status = "okay";
216         pinctrl-0 = <&remote_input_ao_pins>;
217         pinctrl-names = "default";
218         linux,rc-map-name = "rc-vega-s9x";
219 };
220 
221 &pwm_ef {
222         status = "okay";
223         pinctrl-0 = <&pwm_e_pins>;
224         pinctrl-names = "default";
225         clocks = <&clkc CLKID_FCLK_DIV4>;
226         clock-names = "clkin0";
227 };
228 
229 &saradc {
230         status = "okay";
231         vref-supply = <&vddio_ao18>;
232 };
233 
234 /* Wireless SDIO Module */
235 &sd_emmc_a {
236         status = "okay";
237         pinctrl-0 = <&sdio_pins>;
238         pinctrl-1 = <&sdio_clk_gate_pins>;
239         pinctrl-names = "default", "clk-gate";
240         #address-cells = <1>;
241         #size-cells = <0>;
242 
243         bus-width = <4>;
244         cap-sd-highspeed;
245         max-frequency = <50000000>;
246 
247         non-removable;
248         disable-wp;
249 
250         /* WiFi firmware requires power to be kept while in suspend */
251         keep-power-in-suspend;
252 
253         mmc-pwrseq = <&sdio_pwrseq>;
254 
255         vmmc-supply = <&vddao_3v3>;
256         vqmmc-supply = <&vddio_boot>;
257 
258         brcmf: wifi@1 {
259                 reg = <1>;
260                 compatible = "brcm,bcm4329-fmac";
261         };
262 };
263 
264 /* SD card */
265 &sd_emmc_b {
266         status = "okay";
267         pinctrl-0 = <&sdcard_pins>;
268         pinctrl-1 = <&sdcard_clk_gate_pins>;
269         pinctrl-names = "default", "clk-gate";
270 
271         bus-width = <4>;
272         cap-sd-highspeed;
273         max-frequency = <50000000>;
274         disable-wp;
275 
276         cd-gpios = <&gpio CARD_6 GPIO_ACTIVE_LOW>;
277 
278         vmmc-supply = <&vddao_3v3>;
279         vqmmc-supply = <&vcc_3v3>;
280 };
281 
282 /* eMMC */
283 &sd_emmc_c {
284         status = "okay";
285         pinctrl-0 = <&emmc_pins>, <&emmc_ds_pins>;
286         pinctrl-1 = <&emmc_clk_gate_pins>;
287         pinctrl-names = "default", "clk-gate";
288 
289         bus-width = <8>;
290         cap-mmc-highspeed;
291         max-frequency = <200000000>;
292         non-removable;
293         disable-wp;
294         mmc-ddr-1_8v;
295         mmc-hs200-1_8v;
296 
297         mmc-pwrseq = <&emmc_pwrseq>;
298         vmmc-supply = <&vcc_3v3>;
299         vqmmc-supply = <&vddio_boot>;
300 };
301 
302 /* This is connected to the Bluetooth module: */
303 &uart_A {
304         status = "okay";
305         pinctrl-0 = <&uart_a_pins>, <&uart_a_cts_rts_pins>;
306         pinctrl-names = "default";
307 
308         bluetooth {
309                 compatible = "brcm,bcm43438-bt";
310                 shutdown-gpios = <&gpio GPIOX_20 GPIO_ACTIVE_HIGH>;
311                 max-speed = <2000000>;
312                 clocks = <&wifi32k>;
313                 clock-names = "lpo";
314         };
315 };
316 
317 /* This UART is brought out to the DB9 connector */
318 &uart_AO {
319         status = "okay";
320         pinctrl-0 = <&uart_ao_a_pins>;
321         pinctrl-names = "default";
322 };
323 
324 &usb0_phy {
325         status = "okay";
326         phy-supply = <&usb_pwr>;
327 };
328 
329 &usb1_phy {
330         status = "okay";
331 };
332 
333 &usb0 {
334         status = "okay";
335 };
336 
337 &usb1 {
338         status = "okay";
339 };

~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

kernel.org | git.kernel.org | LWN.net | Project Home | SVN repository | Mail admin

Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.

sflogo.php