123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367 |
- // SPDX-License-Identifier: (GPL-2.0-only OR MIT)
- // Copyright (c) 2017-2019 Arm Ltd.
- /dts-v1/;
- #include "rk3328.dtsi"
- / {
- model = "Beelink A1";
- compatible = "azw,beelink-a1", "rockchip,rk3328";
- aliases {
- mmc0 = &sdmmc;
- mmc1 = &emmc;
- };
- /*
- * UART pins, as viewed with bottom of case removed:
- *
- * Front
- * /-------
- * L / o <- Gnd
- * e / o <-- Rx
- * f / o <--- Tx
- * t / o <---- +3.3v
- * |
- */
- chosen {
- stdout-path = "serial2:1500000n8";
- };
- gmac_clkin: external-gmac-clock {
- compatible = "fixed-clock";
- clock-frequency = <125000000>;
- clock-output-names = "gmac_clkin";
- #clock-cells = <0>;
- };
- vcc_host_5v: usb3-current-switch {
- compatible = "regulator-fixed";
- enable-active-high;
- gpio = <&gpio0 RK_PA0 GPIO_ACTIVE_HIGH>;
- pinctrl-names = "default";
- pinctrl-0 = <&usb30_host_drv>;
- regulator-name = "vcc_host_5v";
- vin-supply = <&vcc_sys>;
- };
- vcc_sys: vcc-sys {
- compatible = "regulator-fixed";
- regulator-name = "vcc_sys";
- regulator-min-microvolt = <5000000>;
- regulator-max-microvolt = <5000000>;
- };
- ir-receiver {
- compatible = "gpio-ir-receiver";
- gpios = <&gpio2 RK_PA2 GPIO_ACTIVE_LOW>;
- linux,rc-map-name = "rc-beelink-gs1";
- };
- };
- &analog_sound {
- simple-audio-card,name = "Analog A/V";
- status = "okay";
- };
- &codec {
- mute-gpios = <&grf_gpio 0 GPIO_ACTIVE_LOW>;
- status = "okay";
- };
- &cpu0 {
- cpu-supply = <&vdd_arm>;
- };
- &cpu1 {
- cpu-supply = <&vdd_arm>;
- };
- &cpu2 {
- cpu-supply = <&vdd_arm>;
- };
- &cpu3 {
- cpu-supply = <&vdd_arm>;
- };
- &emmc {
- bus-width = <8>;
- cap-mmc-highspeed;
- mmc-ddr-1_8v;
- mmc-hs200-1_8v;
- no-sd;
- no-sdio;
- non-removable;
- pinctrl-names = "default";
- pinctrl-0 = <&emmc_clk &emmc_cmd &emmc_bus8>;
- vmmc-supply = <&vcc_io>;
- vqmmc-supply = <&vcc18_emmc>;
- status = "okay";
- };
- &gmac2io {
- assigned-clocks = <&cru SCLK_MAC2IO>, <&cru SCLK_MAC2IO_EXT>;
- assigned-clock-parents = <&gmac_clkin>, <&gmac_clkin>;
- clock_in_out = "input";
- phy-handle = <&rtl8211f>;
- phy-mode = "rgmii";
- phy-supply = <&vcc_io>;
- pinctrl-names = "default";
- pinctrl-0 = <&rgmiim1_pins>;
- snps,aal;
- snps,pbl = <0x4>;
- tx_delay = <0x26>;
- rx_delay = <0x11>;
- status = "okay";
- mdio {
- compatible = "snps,dwmac-mdio";
- #address-cells = <1>;
- #size-cells = <0>;
- rtl8211f: ethernet-phy@0 {
- reg = <0>;
- reset-assert-us = <10000>;
- reset-deassert-us = <30000>;
- reset-gpios = <&gpio2 RK_PC1 GPIO_ACTIVE_LOW>;
- };
- };
- };
- &gpu {
- mali-supply = <&vdd_logic>;
- };
- &hdmi {
- status = "okay";
- };
- &hdmiphy {
- status = "okay";
- };
- &hdmi_sound {
- status = "okay";
- };
- &i2c1 {
- clock-frequency = <1000000>;
- i2c-scl-falling-time-ns = <5>;
- i2c-scl-rising-time-ns = <83>;
- status = "okay";
- pmic@18 {
- compatible = "rockchip,rk805";
- reg = <0x18>;
- interrupt-parent = <&gpio2>;
- interrupts = <RK_PA6 IRQ_TYPE_LEVEL_LOW>;
- pinctrl-names = "default";
- pinctrl-0 = <&pmic_int_l>;
- rockchip,system-power-controller;
- wakeup-source;
- #clock-cells = <0>;
- vcc1-supply = <&vcc_sys>;
- vcc2-supply = <&vcc_sys>;
- vcc3-supply = <&vcc_sys>;
- vcc4-supply = <&vcc_sys>;
- vcc5-supply = <&vcc_io>;
- vcc6-supply = <&vcc_io>;
- regulators {
- vdd_logic: DCDC_REG1 {
- regulator-name = "vdd_logic";
- regulator-min-microvolt = <700000>;
- regulator-max-microvolt = <1350000>;
- regulator-always-on;
- regulator-boot-on;
- regulator-state-mem {
- regulator-on-in-suspend;
- regulator-suspend-microvolt = <1000000>;
- };
- };
- vdd_arm: DCDC_REG2 {
- regulator-name = "vdd_arm";
- regulator-min-microvolt = <700000>;
- regulator-max-microvolt = <1350000>;
- regulator-always-on;
- regulator-boot-on;
- regulator-state-mem {
- regulator-on-in-suspend;
- regulator-suspend-microvolt = <950000>;
- };
- };
- vcc_ddr: DCDC_REG3 {
- regulator-name = "vcc_ddr";
- regulator-always-on;
- regulator-boot-on;
- regulator-state-mem {
- regulator-on-in-suspend;
- };
- };
- vcc_io: DCDC_REG4 {
- regulator-name = "vcc_io";
- regulator-min-microvolt = <3300000>;
- regulator-max-microvolt = <3300000>;
- regulator-always-on;
- regulator-boot-on;
- regulator-state-mem {
- regulator-on-in-suspend;
- regulator-suspend-microvolt = <3300000>;
- };
- };
- vdd_18: LDO_REG1 {
- regulator-name = "vdd_18";
- regulator-min-microvolt = <1800000>;
- regulator-max-microvolt = <1800000>;
- regulator-always-on;
- regulator-boot-on;
- regulator-state-mem {
- regulator-on-in-suspend;
- regulator-suspend-microvolt = <1800000>;
- };
- };
- vcc18_emmc: LDO_REG2 {
- regulator-name = "vcc_18emmc";
- regulator-min-microvolt = <1800000>;
- regulator-max-microvolt = <1800000>;
- regulator-always-on;
- regulator-boot-on;
- regulator-state-mem {
- regulator-on-in-suspend;
- regulator-suspend-microvolt = <1800000>;
- };
- };
- vdd_11: LDO_REG3 {
- regulator-name = "vdd_11";
- regulator-min-microvolt = <1100000>;
- regulator-max-microvolt = <1100000>;
- regulator-always-on;
- regulator-boot-on;
- regulator-state-mem {
- regulator-on-in-suspend;
- regulator-suspend-microvolt = <1100000>;
- };
- };
- };
- };
- };
- &i2s0 {
- status = "okay";
- };
- &i2s1 {
- status = "okay";
- };
- &io_domains {
- vccio1-supply = <&vcc_io>;
- vccio2-supply = <&vcc18_emmc>;
- vccio3-supply = <&vcc_io>;
- vccio4-supply = <&vdd_18>;
- vccio5-supply = <&vcc_io>;
- vccio6-supply = <&vdd_18>;
- pmuio-supply = <&vcc_io>;
- status = "okay";
- };
- &pinctrl {
- pmic {
- pmic_int_l: pmic-int-l {
- rockchip,pins = <2 RK_PA6 RK_FUNC_GPIO &pcfg_pull_up>;
- };
- };
- usb3 {
- usb30_host_drv: usb30-host-drv {
- rockchip,pins = <0 RK_PA0 RK_FUNC_GPIO &pcfg_pull_none>;
- };
- };
- wifi {
- bt_dis: bt-dis {
- rockchip,pins = <2 RK_PC5 RK_FUNC_GPIO &pcfg_output_low>;
- };
- bt_wake_host: bt-wake-host {
- rockchip,pins = <2 RK_PC0 RK_FUNC_GPIO &pcfg_pull_up>;
- };
- chip_en: chip-en {
- rockchip,pins = <2 RK_PC3 RK_FUNC_GPIO &pcfg_output_low>;
- };
- host_wake_bt: host-wake-bt {
- rockchip,pins = <2 RK_PB7 RK_FUNC_GPIO &pcfg_output_high>;
- };
- wl_dis: wl-dis {
- rockchip,pins = <3 RK_PB0 RK_FUNC_GPIO &pcfg_output_low>;
- };
- wl_wake_host: wl-wake-host {
- rockchip,pins = <3 RK_PA1 RK_FUNC_GPIO &pcfg_pull_up>;
- };
- };
- };
- &sdmmc {
- bus-width = <4>;
- cap-mmc-highspeed;
- cap-sd-highspeed;
- disable-wp;
- pinctrl-names = "default";
- pinctrl-0 = <&sdmmc0_clk &sdmmc0_cmd &sdmmc0_dectn &sdmmc0_bus4>;
- vmmc-supply = <&vcc_io>;
- vqmmc-supply = <&vcc_io>;
- status = "okay";
- };
- &tsadc {
- rockchip,hw-tshut-mode = <0>;
- rockchip,hw-tshut-polarity = <0>;
- status = "okay";
- };
- &uart2 {
- status = "okay";
- };
- &u2phy {
- status = "okay";
- };
- &u2phy_host {
- status = "okay";
- };
- &u2phy_otg {
- status = "okay";
- };
- &usb20_otg {
- dr_mode = "host";
- status = "okay";
- };
- &usb_host0_ehci {
- pinctrl-names = "default";
- pinctrl-0 = <&bt_dis &bt_wake_host &chip_en &host_wake_bt &wl_dis &wl_wake_host>;
- status = "okay";
- };
- &vop {
- status = "okay";
- };
- &vop_mmu {
- status = "okay";
- };
|