Back to home page

OSCL-LXR

 
 

    


0001 // SPDX-License-Identifier: (GPL-2.0-only OR MIT)
0002 // Copyright (c) 2017-2019 Arm Ltd.
0003 
0004 /dts-v1/;
0005 #include "rk3328.dtsi"
0006 
0007 / {
0008         model = "Beelink A1";
0009         compatible = "azw,beelink-a1", "rockchip,rk3328";
0010 
0011         aliases {
0012                 mmc0 = &sdmmc;
0013                 mmc1 = &emmc;
0014         };
0015 
0016         /*
0017          * UART pins, as viewed with bottom of case removed:
0018          *
0019          *           Front
0020          *        /-------
0021          *  L    / o <- Gnd
0022          *  e   / o <-- Rx
0023          *  f  / o <--- Tx
0024          *  t / o <---- +3.3v
0025          *    |
0026          */
0027         chosen {
0028                 stdout-path = "serial2:1500000n8";
0029         };
0030 
0031         gmac_clkin: external-gmac-clock {
0032                 compatible = "fixed-clock";
0033                 clock-frequency = <125000000>;
0034                 clock-output-names = "gmac_clkin";
0035                 #clock-cells = <0>;
0036         };
0037 
0038         vcc_host_5v: usb3-current-switch {
0039                 compatible = "regulator-fixed";
0040                 enable-active-high;
0041                 gpio = <&gpio0 RK_PA0 GPIO_ACTIVE_HIGH>;
0042                 pinctrl-names = "default";
0043                 pinctrl-0 = <&usb30_host_drv>;
0044                 regulator-name = "vcc_host_5v";
0045                 vin-supply = <&vcc_sys>;
0046         };
0047 
0048         vcc_sys: vcc-sys {
0049                 compatible = "regulator-fixed";
0050                 regulator-name = "vcc_sys";
0051                 regulator-min-microvolt = <5000000>;
0052                 regulator-max-microvolt = <5000000>;
0053         };
0054 
0055         ir-receiver {
0056                 compatible = "gpio-ir-receiver";
0057                 gpios = <&gpio2 RK_PA2 GPIO_ACTIVE_LOW>;
0058                 linux,rc-map-name = "rc-beelink-gs1";
0059         };
0060 };
0061 
0062 &analog_sound {
0063         simple-audio-card,name = "Analog A/V";
0064         status = "okay";
0065 };
0066 
0067 &codec {
0068         mute-gpios = <&grf_gpio 0 GPIO_ACTIVE_LOW>;
0069         status = "okay";
0070 };
0071 
0072 &cpu0 {
0073         cpu-supply = <&vdd_arm>;
0074 };
0075 
0076 &cpu1 {
0077         cpu-supply = <&vdd_arm>;
0078 };
0079 
0080 &cpu2 {
0081         cpu-supply = <&vdd_arm>;
0082 };
0083 
0084 &cpu3 {
0085         cpu-supply = <&vdd_arm>;
0086 };
0087 
0088 &emmc {
0089         bus-width = <8>;
0090         cap-mmc-highspeed;
0091         mmc-ddr-1_8v;
0092         mmc-hs200-1_8v;
0093         no-sd;
0094         no-sdio;
0095         non-removable;
0096         pinctrl-names = "default";
0097         pinctrl-0 = <&emmc_clk &emmc_cmd &emmc_bus8>;
0098         vmmc-supply = <&vcc_io>;
0099         vqmmc-supply = <&vcc18_emmc>;
0100         status = "okay";
0101 };
0102 
0103 &gmac2io {
0104         assigned-clocks = <&cru SCLK_MAC2IO>, <&cru SCLK_MAC2IO_EXT>;
0105         assigned-clock-parents = <&gmac_clkin>, <&gmac_clkin>;
0106         clock_in_out = "input";
0107         phy-handle = <&rtl8211f>;
0108         phy-mode = "rgmii";
0109         phy-supply = <&vcc_io>;
0110         pinctrl-names = "default";
0111         pinctrl-0 = <&rgmiim1_pins>;
0112         snps,aal;
0113         snps,pbl = <0x4>;
0114         tx_delay = <0x26>;
0115         rx_delay = <0x11>;
0116         status = "okay";
0117 
0118         mdio {
0119                 compatible = "snps,dwmac-mdio";
0120                 #address-cells = <1>;
0121                 #size-cells = <0>;
0122 
0123                 rtl8211f: ethernet-phy@0 {
0124                         reg = <0>;
0125                         reset-assert-us = <10000>;
0126                         reset-deassert-us = <30000>;
0127                         reset-gpios = <&gpio2 RK_PC1 GPIO_ACTIVE_LOW>;
0128                 };
0129         };
0130 };
0131 
0132 &gpu {
0133         mali-supply = <&vdd_logic>;
0134 };
0135 
0136 &hdmi {
0137         status = "okay";
0138 };
0139 
0140 &hdmiphy {
0141         status = "okay";
0142 };
0143 
0144 &hdmi_sound {
0145         status = "okay";
0146 };
0147 
0148 &i2c1 {
0149         clock-frequency = <1000000>;
0150         i2c-scl-falling-time-ns = <5>;
0151         i2c-scl-rising-time-ns = <83>;
0152         status = "okay";
0153 
0154         pmic@18 {
0155                 compatible = "rockchip,rk805";
0156                 reg = <0x18>;
0157                 interrupt-parent = <&gpio2>;
0158                 interrupts = <RK_PA6 IRQ_TYPE_LEVEL_LOW>;
0159                 pinctrl-names = "default";
0160                 pinctrl-0 = <&pmic_int_l>;
0161                 rockchip,system-power-controller;
0162                 wakeup-source;
0163                 #clock-cells = <0>;
0164 
0165                 vcc1-supply = <&vcc_sys>;
0166                 vcc2-supply = <&vcc_sys>;
0167                 vcc3-supply = <&vcc_sys>;
0168                 vcc4-supply = <&vcc_sys>;
0169                 vcc5-supply = <&vcc_io>;
0170                 vcc6-supply = <&vcc_io>;
0171 
0172                 regulators {
0173                         vdd_logic: DCDC_REG1 {
0174                                 regulator-name = "vdd_logic";
0175                                 regulator-min-microvolt = <700000>;
0176                                 regulator-max-microvolt = <1350000>;
0177                                 regulator-always-on;
0178                                 regulator-boot-on;
0179                                 regulator-state-mem {
0180                                         regulator-on-in-suspend;
0181                                         regulator-suspend-microvolt = <1000000>;
0182                                 };
0183                         };
0184 
0185                         vdd_arm: DCDC_REG2 {
0186                                 regulator-name = "vdd_arm";
0187                                 regulator-min-microvolt = <700000>;
0188                                 regulator-max-microvolt = <1350000>;
0189                                 regulator-always-on;
0190                                 regulator-boot-on;
0191                                 regulator-state-mem {
0192                                         regulator-on-in-suspend;
0193                                         regulator-suspend-microvolt = <950000>;
0194                                 };
0195                         };
0196 
0197                         vcc_ddr: DCDC_REG3 {
0198                                 regulator-name = "vcc_ddr";
0199                                 regulator-always-on;
0200                                 regulator-boot-on;
0201                                 regulator-state-mem {
0202                                         regulator-on-in-suspend;
0203                                 };
0204                         };
0205 
0206                         vcc_io: DCDC_REG4 {
0207                                 regulator-name = "vcc_io";
0208                                 regulator-min-microvolt = <3300000>;
0209                                 regulator-max-microvolt = <3300000>;
0210                                 regulator-always-on;
0211                                 regulator-boot-on;
0212                                 regulator-state-mem {
0213                                         regulator-on-in-suspend;
0214                                         regulator-suspend-microvolt = <3300000>;
0215                                 };
0216                         };
0217 
0218                         vdd_18: LDO_REG1 {
0219                                 regulator-name = "vdd_18";
0220                                 regulator-min-microvolt = <1800000>;
0221                                 regulator-max-microvolt = <1800000>;
0222                                 regulator-always-on;
0223                                 regulator-boot-on;
0224                                 regulator-state-mem {
0225                                         regulator-on-in-suspend;
0226                                         regulator-suspend-microvolt = <1800000>;
0227                                 };
0228                         };
0229 
0230                         vcc18_emmc: LDO_REG2 {
0231                                 regulator-name = "vcc_18emmc";
0232                                 regulator-min-microvolt = <1800000>;
0233                                 regulator-max-microvolt = <1800000>;
0234                                 regulator-always-on;
0235                                 regulator-boot-on;
0236                                 regulator-state-mem {
0237                                         regulator-on-in-suspend;
0238                                         regulator-suspend-microvolt = <1800000>;
0239                                 };
0240                         };
0241 
0242                         vdd_11: LDO_REG3 {
0243                                 regulator-name = "vdd_11";
0244                                 regulator-min-microvolt = <1100000>;
0245                                 regulator-max-microvolt = <1100000>;
0246                                 regulator-always-on;
0247                                 regulator-boot-on;
0248                                 regulator-state-mem {
0249                                         regulator-on-in-suspend;
0250                                         regulator-suspend-microvolt = <1100000>;
0251                                 };
0252                         };
0253                 };
0254         };
0255 };
0256 
0257 &i2s0 {
0258         status = "okay";
0259 };
0260 
0261 &i2s1 {
0262         status = "okay";
0263 };
0264 
0265 &io_domains {
0266         vccio1-supply = <&vcc_io>;
0267         vccio2-supply = <&vcc18_emmc>;
0268         vccio3-supply = <&vcc_io>;
0269         vccio4-supply = <&vdd_18>;
0270         vccio5-supply = <&vcc_io>;
0271         vccio6-supply = <&vdd_18>;
0272         pmuio-supply = <&vcc_io>;
0273         status = "okay";
0274 };
0275 
0276 &pinctrl {
0277         pmic {
0278                 pmic_int_l: pmic-int-l {
0279                         rockchip,pins = <2 RK_PA6 RK_FUNC_GPIO &pcfg_pull_up>;
0280                 };
0281         };
0282 
0283         usb3 {
0284                 usb30_host_drv: usb30-host-drv {
0285                         rockchip,pins = <0 RK_PA0 RK_FUNC_GPIO &pcfg_pull_none>;
0286                 };
0287         };
0288 
0289         wifi {
0290                 bt_dis: bt-dis {
0291                         rockchip,pins = <2 RK_PC5 RK_FUNC_GPIO &pcfg_output_low>;
0292                 };
0293 
0294                 bt_wake_host: bt-wake-host {
0295                         rockchip,pins = <2 RK_PC0 RK_FUNC_GPIO &pcfg_pull_up>;
0296                 };
0297 
0298                 chip_en: chip-en {
0299                         rockchip,pins = <2 RK_PC3 RK_FUNC_GPIO &pcfg_output_low>;
0300                 };
0301 
0302                 host_wake_bt: host-wake-bt {
0303                         rockchip,pins = <2 RK_PB7 RK_FUNC_GPIO &pcfg_output_high>;
0304                 };
0305 
0306                 wl_dis: wl-dis {
0307                         rockchip,pins = <3 RK_PB0 RK_FUNC_GPIO &pcfg_output_low>;
0308                 };
0309 
0310                 wl_wake_host: wl-wake-host {
0311                         rockchip,pins = <3 RK_PA1 RK_FUNC_GPIO &pcfg_pull_up>;
0312                 };
0313         };
0314 };
0315 
0316 &sdmmc {
0317         bus-width = <4>;
0318         cap-mmc-highspeed;
0319         cap-sd-highspeed;
0320         disable-wp;
0321         pinctrl-names = "default";
0322         pinctrl-0 = <&sdmmc0_clk &sdmmc0_cmd &sdmmc0_dectn &sdmmc0_bus4>;
0323         vmmc-supply = <&vcc_io>;
0324         vqmmc-supply = <&vcc_io>;
0325         status = "okay";
0326 };
0327 
0328 &tsadc {
0329         rockchip,hw-tshut-mode = <0>;
0330         rockchip,hw-tshut-polarity = <0>;
0331         status = "okay";
0332 };
0333 
0334 &uart2 {
0335         status = "okay";
0336 };
0337 
0338 &u2phy {
0339         status = "okay";
0340 };
0341 
0342 &u2phy_host {
0343         status = "okay";
0344 };
0345 
0346 &u2phy_otg {
0347         status = "okay";
0348 };
0349 
0350 &usb20_otg {
0351         dr_mode = "host";
0352         status = "okay";
0353 };
0354 
0355 &usb_host0_ehci {
0356         pinctrl-names = "default";
0357         pinctrl-0 = <&bt_dis &bt_wake_host &chip_en &host_wake_bt &wl_dis &wl_wake_host>;
0358         status = "okay";
0359 };
0360 
0361 &vop {
0362         status = "okay";
0363 };
0364 
0365 &vop_mmu {
0366         status = "okay";
0367 };