From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mail-m82213657.xmail.ntesmail.com (mail-m82213657.xmail.ntesmail.com [8.221.36.57]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id ED6A8311959; Fri, 16 Jan 2026 01:01:23 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=8.221.36.57 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1768525286; cv=none; b=Ed4fTXj4dxuSSQT7jRatHLbhwiI7K5SeMWxHjgwm++eWhd04exkxzx+NtzqwWnezUf+Qq5F4hsQfwEQswTHYcGI2jGlMorIgHZ9gCt4JIK8TvQY4er1tgsqQXxP1LepDaZZjbiAbnpWv9HEEvQ5+i5jbPNWbOYXKfYnRsXPDeoM= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1768525286; c=relaxed/simple; bh=X0UfiKigxkqZLFmOKiSHfROsQYIxfeCEt6GG120ngQI=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References; b=X4TEYbCIoa9ZYRlvekVLucbBXM121Kr5EYFoMbjRIe/RUJ1ECQzRo22XwRMqLtmZZUg6V1mHDL10+P97RCGfYsG6RUMnNJdYdk7DU2FIuPpe/zyBMV+/MDKec55+gdfgQesALiUuuIKT2johfpNfj2tWNB+Q3qv27e1Q8gxMWUM= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=rock-chips.com; spf=pass smtp.mailfrom=rock-chips.com; dkim=pass (1024-bit key) header.d=rock-chips.com header.i=@rock-chips.com header.b=B41+5BNN; arc=none smtp.client-ip=8.221.36.57 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=rock-chips.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=rock-chips.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=rock-chips.com header.i=@rock-chips.com header.b="B41+5BNN" Received: from localhost.localdomain (unknown [58.22.7.114]) by smtp.qiye.163.com (Hmail) with ESMTP id 30d5a76e2; Fri, 16 Jan 2026 08:56:07 +0800 (GMT+08:00) From: Shawn Lin To: Heiko Stuebner , Ulf Hansson Cc: linux-rockchip@lists.infradead.org, linux-mmc@vger.kernel.org, devicetree@vger.kernel.org, FUKAUMI Naoki , Marco Schirrmeister , John Clark , Tianling Shen , Detlev Casanova , Shawn Lin Subject: [PATCH v4 4/5] arm64: dts: rockchip: Fix SD card support for RK3576 EVB1 Date: Fri, 16 Jan 2026 08:55:31 +0800 Message-Id: <1768524932-163929-5-git-send-email-shawn.lin@rock-chips.com> X-Mailer: git-send-email 2.7.4 In-Reply-To: <1768524932-163929-1-git-send-email-shawn.lin@rock-chips.com> References: <1768524932-163929-1-git-send-email-shawn.lin@rock-chips.com> X-HM-Tid: 0a9bc44d6d6709cckunm67a197c8691c66 X-HM-MType: 1 X-HM-Spam-Status: e1kfGhgUHx5ZQUpXWQgPGg8OCBgUHx5ZQUlOS1dZFg8aDwILHllBWSg2Ly tZV1koWUFDSUNOT01LS0k3V1ktWUFJV1kPCRoVCBIfWUFZGUMfTFZKShlISEkZGEpCHRlWFRQJFh oXVRMBExYaEhckFA4PWVdZGBILWUFZTkNVSUlVTFVKSk9ZV1kWGg8SFR0UWUFZT0tIVUpLSU9PT0 hVSktLVUpCS0tZBg++ DKIM-Signature: a=rsa-sha256; b=B41+5BNN8U8LwQOv+Cw+mwykc51TOmSanrzWjIkf+AuztK+zBGMyCYMDusIQnpezJc9l2GVRFCW51Z9IbVFrwbtsvCu5oOaj/ct/Wxfj+P2Imwz/ZSqR8HauPu0gtPN9gA2faDyc5RoN5+MaOXEWFqf1Acem2b8543axCxuy3J0=; s=default; c=relaxed/relaxed; d=rock-chips.com; v=1; bh=nq2tVcXmboBM5WaNxo3fVBNL6liOQSzqhx/PdcQP5Zg=; h=date:mime-version:subject:message-id:from; Precedence: bulk X-Mailing-List: devicetree@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: When runtime suspend is enabled, the associated power domain is powered off, which resets the registers, including the power control bit. As a result, the card loses power during runtime suspend. The card should still be able to process I/O with the help of mmc_blk_mq_rw_recovery(), which is suboptimal. To address this issue, we must use vmmc-supply with a GPIO based method to maintain power to the card. Also, add cd-gpios method to make hot-plug work correctly during idle periods. Fixes: f135a1a07352 ("arm64: dts: rockchip: Add rk3576 evb1 board") Signed-off-by: Shawn Lin --- Changes in v3: None Changes in v2: None arch/arm64/boot/dts/rockchip/rk3576-evb1-v10.dts | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/arch/arm64/boot/dts/rockchip/rk3576-evb1-v10.dts b/arch/arm64/boot/dts/rockchip/rk3576-evb1-v10.dts index 0789733..f5746bc 100644 --- a/arch/arm64/boot/dts/rockchip/rk3576-evb1-v10.dts +++ b/arch/arm64/boot/dts/rockchip/rk3576-evb1-v10.dts @@ -223,6 +223,18 @@ vin-supply = <&vcc_3v3_s3>; }; + vcc3v3_sd: regulator-vcc-3v3-sd { + compatible = "regulator-fixed"; + enable-active-high; + gpios = <&gpio0 RK_PB6 GPIO_ACTIVE_HIGH>; + pinctrl-names = "default"; + pinctrl-0 = <&sdmmc_pwren>; + regulator-name = "vcc3v3_sd"; + regulator-min-microvolt = <3300000>; + regulator-max-microvolt = <3300000>; + vin-supply = <&vcc_3v3_s0>; + }; + vcc_ufs_s0: regulator-vcc-ufs-s0 { compatible = "regulator-fixed"; regulator-name = "vcc_ufs_s0"; @@ -904,6 +916,12 @@ }; }; + sdmmc { + sdmmc_pwren: sdmmc-pwren { + rockchip,pins = <0 RK_PB6 RK_FUNC_GPIO &pcfg_pull_none>; + }; + }; + usb { usb_host_pwren: usb-host-pwren { rockchip,pins = <0 RK_PC7 RK_FUNC_GPIO &pcfg_pull_none>; @@ -958,11 +976,15 @@ bus-width = <4>; cap-mmc-highspeed; cap-sd-highspeed; + cd-gpios = <&gpio0 RK_PA7 GPIO_ACTIVE_LOW>; disable-wp; max-frequency = <200000000>; no-sdio; no-mmc; + pinctrl-names = "default"; + pinctrl-0 = <&sdmmc0_clk &sdmmc0_cmd &sdmmc0_det &sdmmc0_bus4>; sd-uhs-sdr104; + vmmc-supply = <&vcc3v3_sd>; vqmmc-supply = <&vccio_sd_s0>; status = "okay"; }; -- 2.7.4