diff --git a/patch/kernel/archive/rockchip64-6.18/dt/rk3588-blueberry-r58-4x4.dts b/patch/kernel/archive/rockchip64-6.18/dt/rk3588-blueberry-r58-4x4.dts index 1299d5ddda..9c8cf898f9 100644 --- a/patch/kernel/archive/rockchip64-6.18/dt/rk3588-blueberry-r58-4x4.dts +++ b/patch/kernel/archive/rockchip64-6.18/dt/rk3588-blueberry-r58-4x4.dts @@ -14,6 +14,11 @@ model = "Mekotronics R58 4x4"; compatible = "mekotronics,r58-4x4", "rockchip,rk3588"; + aliases { + mmc0 = &sdmmc; // SD card + mmc1 = &sdhci; // eMMC + }; + chosen { stdout-path = "serial2:1500000n8"; }; @@ -46,6 +51,20 @@ regulator-max-microvolt = <1100000>; vin-supply = <&vcc5v0_sys>; }; + + vdd_3v3_sd: regulator-vdd-3v3-sd { + compatible = "regulator-fixed"; + regulator-name = "vdd_3v3_sd"; + gpios = <&gpio0 RK_PD5 GPIO_ACTIVE_HIGH>; + regulator-boot-on; + enable-active-high; + regulator-min-microvolt = <3300000>; + regulator-max-microvolt = <3300000>; + vin-supply = <&vcc12v_dcin>; + pinctrl-names = "default"; + pinctrl-0 = <&vdd_sd_en>; + // vendor: startup-delay-us = <100000>; + }; }; @@ -93,10 +112,10 @@ &pinctrl { vdd_sd { vdd_sd_en: vdd-sd-en { - rockchip,pins = <1 RK_PB6 RK_FUNC_GPIO &pcfg_pull_up>; + // khadas: rockchip,pins = <1 RK_PB6 RK_FUNC_GPIO &pcfg_pull_up>; + rockchip,pins = <2 RK_PC6 RK_FUNC_GPIO &pcfg_pull_none>; // from vendor }; }; - }; &sdhci { @@ -104,24 +123,26 @@ no-sdio; no-sd; non-removable; - mmc-hs400-1_8v; - mmc-hs400-enhanced-strobe; + max-frequency = <200000000>; // vendor + // hs400 causes immediate trouble, hs200 works at around 150mb/s + // mmc-hs400-1_8v; + // mmc-hs400-enhanced-strobe; + mmc-hs200-1_8v; status = "okay"; }; -/* &sdmmc { bus-width = <4>; cap-sd-highspeed; disable-wp; no-mmc; no-sdio; + max-frequency = <150000000>; // vendor sd-uhs-sdr104; - vmmc-supply = <&vdd_3v3_sd>; // @TODO: fix + vmmc-supply = <&vdd_3v3_sd>; vqmmc-supply = <&vccio_sd_s0>; status = "okay"; }; -*/ &spi2 { assigned-clocks = <&cru CLK_SPI2>;