// SPDX-License-Identifier: (GPL-2.0+ OR MIT) /* * Copyright (c) 2019 Fuzhou Rockchip Electronics Co., Ltd */ /dts-v1/; #include #include #include "px30-firefly-jd4-core.dtsi" / { compatible = "firefly,px30-jd4-core-mb", "firefly,px30-jd4-core", "rockchip,px30"; model = "Firefly Core-PX30-JD4 on MB-JD4-PX30 baseboard"; aliases { ethernet0 = &gmac; mmc0 = &sdmmc; mmc1 = &sdio; mmc2 = &emmc; }; chosen { stdout-path = "serial2:115200n8"; }; dc_12v: regulator-dc-12v { compatible = "regulator-fixed"; regulator-name = "dc_12v"; regulator-always-on; regulator-boot-on; regulator-min-microvolt = <12000000>; regulator-max-microvolt = <12000000>; }; adc-keys { compatible = "adc-keys"; io-channels = <&saradc 2>; io-channel-names = "buttons"; keyup-threshold-microvolt = <1500000>; poll-interval = <100>; button-recovery { label = "Recovery"; linux,code = ; press-threshold-microvolt = <18000>; }; }; leds { compatible = "gpio-leds"; pinctrl-names = "default"; pinctrl-0 = <&blue_led>, <&green_led>; blue-led { color = ; default-state = "on"; function = LED_FUNCTION_HEARTBEAT; gpios = <&gpio1 RK_PB5 GPIO_ACTIVE_HIGH>; label = "px30-mb-jd4:blue:work"; linux,default-trigger = "heartbeat"; }; green-led { color = ; default-state = "on"; function = LED_FUNCTION_POWER; gpios = <&gpio1 RK_PB4 GPIO_ACTIVE_HIGH>; label = "px30-mb-jd4:blue:diy"; linux,default-trigger = "default-on"; }; }; sdio_pwrseq: sdio-pwrseq { compatible = "mmc-pwrseq-simple"; pinctrl-names = "default"; pinctrl-0 = <&wifi_enable_h>; /* * On the module itself this is one of these (depending * on the actual card populated): * - SDIO_RESET_L_WL_REG_ON * - PDN (power down when low) */ reset-gpios = <&gpio0 RK_PA2 GPIO_ACTIVE_LOW>; /* GPIO3_A4 */ }; vcc5v0_baseboard: regulator-vcc5v0-baseboard { compatible = "regulator-fixed"; regulator-name = "vcc5v0_baseboard"; regulator-always-on; regulator-boot-on; regulator-min-microvolt = <5000000>; regulator-max-microvolt = <5000000>; vin-supply = <&dc_12v>; }; }; &gmac { clock_in_out = "output"; phy-supply = <&vcc_rmii>; snps,reset-gpio = <&gpio2 13 GPIO_ACTIVE_LOW>; snps,reset-active-low; snps,reset-delays-us = <0 50000 50000>; status = "okay"; }; &pinctrl { leds { blue_led: blue-led { rockchip,pins = <1 RK_PB5 RK_FUNC_GPIO &pcfg_pull_none>; }; green_led: green-led { rockchip,pins = <1 RK_PB4 RK_FUNC_GPIO &pcfg_pull_none>; }; }; sdio-pwrseq { wifi_enable_h: wifi-enable-h { rockchip,pins = <0 RK_PA2 RK_FUNC_GPIO &pcfg_pull_none>; }; }; }; &sdmmc { bus-width = <4>; cap-mmc-highspeed; cap-sd-highspeed; card-detect-delay = <800>; sd-uhs-sdr12; sd-uhs-sdr25; sd-uhs-sdr50; sd-uhs-sdr104; vmmc-supply = <&vcc_sd>; vqmmc-supply = <&vccio_sd>; status = "okay"; }; &sdio { bus-width = <4>; cap-sd-highspeed; keep-power-in-suspend; non-removable; mmc-pwrseq = <&sdio_pwrseq>; sd-uhs-sdr104; status = "okay"; }; &u2phy { status = "okay"; u2phy_host: host-port { status = "okay"; }; u2phy_otg: otg-port { status = "okay"; }; }; &uart2 { pinctrl-names = "default"; pinctrl-0 = <&uart2m1_xfer>; status = "okay"; }; &usb20_otg { status = "okay"; }; &usb_host0_ehci { status = "okay"; }; &usb_host0_ohci { status = "okay"; };