Back to home page

OSCL-LXR

 
 

    


0001 // SPDX-License-Identifier: (GPL-2.0+ OR MIT)
0002 /*
0003  * Copyright (c) 2021 Vyacheslav Bocharov <adeep@lexina.in>
0004  * Copyright (c) 2020 JetHome
0005  * Author: Aleksandr Kazantsev <ak@tvip.ru>
0006  * Author: Alexey Shevelkin <ash@tvip.ru>
0007  * Author: Vyacheslav Bocharov <adeep@lexina.in>
0008  */
0009 
0010 /dts-v1/;
0011 
0012 #include "meson-gxl.dtsi"
0013 
0014 / {
0015         compatible = "jethome,jethub-j80", "amlogic,s905w", "amlogic,meson-gxl";
0016         model = "JetHome JetHub J80";
0017         memory@0 {
0018                 device_type = "memory";
0019                 reg = <0x0 0x0 0x0 0x40000000>;
0020         };
0021 
0022         reserved-memory {
0023                 linux,cma {
0024                         size = <0x0 0x1000000>;
0025                 };
0026         };
0027 
0028         aliases {
0029                 serial0 = &uart_AO;   /* Console */
0030                 serial1 = &uart_A;    /* Bluetooth */
0031                 serial2 = &uart_AO_B; /* Wireless module 1 */
0032                 serial3 = &uart_C;    /* Wireless module 2 */
0033                 ethernet0 = &ethmac;
0034         };
0035 
0036         chosen {
0037                 stdout-path = "serial0:115200n8";
0038         };
0039 
0040         vddio_ao18: regulator-vddio_ao18 {
0041                 compatible = "regulator-fixed";
0042                 regulator-name = "VDDIO_AO18";
0043                 regulator-min-microvolt = <1800000>;
0044                 regulator-max-microvolt = <1800000>;
0045         };
0046 
0047         vddio_boot: regulator-vddio_boot {
0048                 compatible = "regulator-fixed";
0049                 regulator-name = "VDDIO_BOOT";
0050                 regulator-min-microvolt = <1800000>;
0051                 regulator-max-microvolt = <1800000>;
0052         };
0053 
0054         vddao_3v3: regulator-vddao_3v3 {
0055                 compatible = "regulator-fixed";
0056                 regulator-name = "VDDAO_3V3";
0057                 regulator-min-microvolt = <3300000>;
0058                 regulator-max-microvolt = <3300000>;
0059         };
0060 
0061         vcc_3v3: regulator-vcc_3v3 {
0062                 compatible = "regulator-fixed";
0063                 regulator-name = "VCC_3V3";
0064                 regulator-min-microvolt = <3300000>;
0065                 regulator-max-microvolt = <3300000>;
0066         };
0067 
0068         emmc_pwrseq: emmc-pwrseq {
0069                 compatible = "mmc-pwrseq-emmc";
0070                 reset-gpios = <&gpio BOOT_9 GPIO_ACTIVE_LOW>;
0071         };
0072 
0073         wifi32k: wifi32k {
0074                 compatible = "pwm-clock";
0075                 #clock-cells = <0>;
0076                 clock-frequency = <32768>;
0077                 pwms = <&pwm_ef 0 30518 0>; /* PWM_E at 32.768KHz */
0078         };
0079 
0080         sdio_pwrseq: sdio-pwrseq {
0081                 compatible = "mmc-pwrseq-simple";
0082                 reset-gpios = <&gpio GPIOX_6 GPIO_ACTIVE_LOW>;
0083                 clocks = <&wifi32k>;
0084                 clock-names = "ext_clock";
0085         };
0086 };
0087 
0088 &efuse {
0089         bt_mac: bt_mac@6 {
0090                 reg = <0x6 0x6>;
0091         };
0092 
0093         wifi_mac: wifi_mac@C {
0094                 reg = <0xc 0x6>;
0095         };
0096 };
0097 
0098 &sn {
0099         reg = <0x32 0x20>;
0100 };
0101 
0102 &eth_mac {
0103         reg = <0x0 0x6>;
0104 };
0105 
0106 &bid {
0107         reg = <0x12 0x20>;
0108 };
0109 
0110 &usb {
0111         status = "okay";
0112         dr_mode = "host";
0113 };
0114 
0115 &pwm_ef {
0116         status = "okay";
0117         pinctrl-0 = <&pwm_e_pins>;
0118         pinctrl-names = "default";
0119         clocks = <&clkc CLKID_FCLK_DIV4>;
0120         clock-names = "clkin0";
0121 };
0122 
0123 &saradc {
0124         status = "okay";
0125         vref-supply = <&vddio_ao18>;
0126 };
0127 
0128 /* Wireless SDIO Module */
0129 &sd_emmc_a {
0130         status = "okay";
0131         pinctrl-0 = <&sdio_pins>;
0132         pinctrl-1 = <&sdio_clk_gate_pins>;
0133         pinctrl-names = "default", "clk-gate";
0134         #address-cells = <1>;
0135         #size-cells = <0>;
0136 
0137         bus-width = <4>;
0138         cap-sd-highspeed;
0139         max-frequency = <50000000>;
0140 
0141         non-removable;
0142         disable-wp;
0143 
0144         /* WiFi firmware requires power to be kept while in suspend */
0145         keep-power-in-suspend;
0146 
0147         mmc-pwrseq = <&sdio_pwrseq>;
0148 
0149         vmmc-supply = <&vddao_3v3>;
0150         vqmmc-supply = <&vddio_boot>;
0151 };
0152 
0153 /* SD card */
0154 &sd_emmc_b {
0155         status = "okay";
0156         pinctrl-0 = <&sdcard_pins>;
0157         pinctrl-1 = <&sdcard_clk_gate_pins>;
0158         pinctrl-names = "default", "clk-gate";
0159 
0160         bus-width = <4>;
0161         cap-sd-highspeed;
0162         max-frequency = <50000000>;
0163         disable-wp;
0164 
0165         cd-gpios = <&gpio CARD_6 GPIO_ACTIVE_LOW>;
0166 
0167         vmmc-supply = <&vddao_3v3>;
0168         vqmmc-supply = <&vddio_boot>;
0169 };
0170 
0171 /* eMMC */
0172 &sd_emmc_c {
0173         status = "okay";
0174         pinctrl-0 = <&emmc_pins>, <&emmc_ds_pins>;
0175         pinctrl-1 = <&emmc_clk_gate_pins>;
0176         pinctrl-names = "default", "clk-gate";
0177 
0178         bus-width = <8>;
0179         cap-mmc-highspeed;
0180         max-frequency = <200000000>;
0181         non-removable;
0182         disable-wp;
0183         mmc-ddr-1_8v;
0184         mmc-hs200-1_8v;
0185 
0186         mmc-pwrseq = <&emmc_pwrseq>;
0187         vmmc-supply = <&vcc_3v3>;
0188         vqmmc-supply = <&vddio_boot>;
0189 };
0190 
0191 /* Console UART */
0192 &uart_AO {
0193         status = "okay";
0194         pinctrl-0 = <&uart_ao_a_pins>;
0195         pinctrl-names = "default";
0196 };
0197 
0198 /* S905W only has access to its internal PHY */
0199 &ethmac {
0200         status = "okay";
0201         phy-mode = "rmii";
0202         phy-handle = <&internal_phy>;
0203 };
0204 
0205 &internal_phy {
0206         status = "okay";
0207         pinctrl-0 = <&eth_link_led_pins>, <&eth_act_led_pins>;
0208         pinctrl-names = "default";
0209 };
0210 
0211 &uart_A {
0212         status = "okay";
0213         pinctrl-0 = <&uart_a_pins>, <&uart_a_cts_rts_pins>;
0214         pinctrl-names = "default";
0215         uart-has-rtscts;
0216 
0217         bluetooth {
0218                 compatible = "realtek,rtl8822cs-bt";
0219                 enable-gpios = <&gpio GPIOX_17 GPIO_ACTIVE_HIGH>;
0220                 host-wake-gpios = <&gpio GPIOX_18 GPIO_ACTIVE_HIGH>;
0221        };
0222 };
0223 
0224 &uart_C {
0225         status = "okay";
0226         pinctrl-0 = <&uart_c_pins>;
0227         pinctrl-names = "default";
0228 };
0229 
0230 &uart_AO_B {
0231         status = "okay";
0232         pinctrl-0 = <&uart_ao_b_pins>, <&uart_ao_b_cts_rts_pins>;
0233         pinctrl-names = "default";
0234         uart-has-rtscts;
0235 };
0236 
0237 &i2c_B {
0238         status = "okay";
0239         pinctrl-names = "default";
0240         pinctrl-0 = <&i2c_b_pins>;
0241 
0242         pcf8563: pcf8563@51 {
0243                 compatible = "nxp,pcf8563";
0244                 reg = <0x51>;
0245                 status = "okay";
0246         };
0247 };