From patchwork Tue Nov 21 21:29:41 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Sam Edwards X-Patchwork-Id: 13463612 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id 9F523C61D90 for ; Tue, 21 Nov 2023 21:30:42 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender: Content-Transfer-Encoding:Content-Type:List-Subscribe:List-Help:List-Post: List-Archive:List-Unsubscribe:List-Id:MIME-Version:References:In-Reply-To: Message-ID:Date:Subject:Cc:To:From:Reply-To:Content-ID:Content-Description: Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID: List-Owner; bh=s1Q+bYnrkyuLeMPX30uhA7Dn2rOepxLR8dBHZ0gqVvk=; b=2AE2wRwC/R9q+W ye5dRKx48wXNSCYrC+e1b8vauxZSJoVPTN5YTqT1vGKrTGOrjd257mmBq9Fmngpj5rvrgUMu8Qrmv Lsx+da0qLY8RQg9496v1lVBliWyCv9nSQ8KUYDlfFJMtiCWhIcfPpbRGeEO7u609LuAeEhB/eap3I iiHgUkMGEKa1wF1XBS4/inZ7jU4unUl2KdzNagk8gduu4o17KOvk79xRqD5/fVR7EUVOzS+aYSmDx ZQvm4NjHupuBMKNcbYai8yPibf3q02tVV0dZ9MUbO3C0NwPYntss8zCr9QifLfdh2+ODcdoT+Ugcb OEIxceWzn5IsNsoe5JjQ==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.96 #2 (Red Hat Linux)) id 1r5YK1-00079p-0A; Tue, 21 Nov 2023 21:30:17 +0000 Received: from mail-pl1-x633.google.com ([2607:f8b0:4864:20::633]) by bombadil.infradead.org with esmtps (Exim 4.96 #2 (Red Hat Linux)) id 1r5YJu-00077W-1S; Tue, 21 Nov 2023 21:30:11 +0000 Received: by mail-pl1-x633.google.com with SMTP id d9443c01a7336-1cf59c07faeso19413425ad.2; Tue, 21 Nov 2023 13:30:08 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1700602207; x=1701207007; darn=lists.infradead.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=LYftztaNvPp9AiycXxFsDD/pusJZO5VD4GKLxnNaenc=; b=SiHxQzr/fKP8Ak8ggd+SNcwnAghaPKXjJUmwg4kghuhzocpVjd8gyIrw19d7dMt2dG w7ibExZ+/X/U+iy7W5zGamoZzmBvK1PVvY+QFpaPWK3vqR1eFHExBM1VIiAuBHZeMWX1 0ZaZGAsrdj3xpxjU0ebUrZyj7OQyEsWL15Cz4O+T3/ka6UwxUl4OgX+DcShOpyXjXDg5 hhn7fX+OvAB1OiPdI5DcsuMSSP99RgOTjvXoCAVaYVkBV586l5IsA/QgCqe+fhXB7OGC SJpn0w4ctp/0kgDbhaK0uJg1qvIHLy15jLziBAccVa+pPG3SWmDDFogKSQrig4S5td9D a+ag== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1700602207; x=1701207007; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=LYftztaNvPp9AiycXxFsDD/pusJZO5VD4GKLxnNaenc=; b=fjfKTlz5X6Rx7Kzs9FGX7qQJmYkebPzasj6LmogHHYwfZDxZD1qtuGcFMRk55v75cm bDiHz8ygDe0j8viQy7zwkKmELg/7KcioyEFGGLL9PAklLgLANSDJswA/GJVLpFyCb1zQ i+dpNTUSlnV/UT4THTmfY5d4aqnFlEc7aTeIvIVgkOHWLnOckHD0J/n8qFAz4pu+su3l u2a8E2gMLRtF+GnnQu12GzZ3ESUw9wExrDDY9UYEhkmOOrI/SyyE0Mx2ShkpZ5wQlRwD rxh0UEo1oMmVSBQJDiwuCDWxJEz+KJicSpkg6CKsq31okqccCJZynB6AZXm9Ha+gE/Nt Qr0Q== X-Gm-Message-State: AOJu0YwAg3uktrbipN0qNGF8PMYcr0jc66SxDXZkO4NA9HGAdntGg+2u SK/04UZRPRwovDKS6DXiLa8= X-Google-Smtp-Source: AGHT+IG0k767577DEtl9DqETp58uM/MD4C4W6mI4eHWwOiQmbjfCmcbOeVYtVXSVgRTFvKchqFGWeQ== X-Received: by 2002:a17:902:ecc6:b0:1cf:6bb1:fcce with SMTP id a6-20020a170902ecc600b001cf6bb1fccemr437108plh.46.1700602207395; Tue, 21 Nov 2023 13:30:07 -0800 (PST) Received: from localhost.localdomain (static-198-54-134-172.cust.tzulo.com. [198.54.134.172]) by smtp.gmail.com with ESMTPSA id w20-20020a170902d71400b001c726147a45sm8355317ply.190.2023.11.21.13.30.06 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 21 Nov 2023 13:30:06 -0800 (PST) From: Sam Edwards X-Google-Original-From: Sam Edwards To: Heiko Stuebner , Rob Herring Cc: linux-rockchip@lists.infradead.org, linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, devicetree@vger.kernel.org, =?utf-8?q?Daniel_?= =?utf-8?q?Kukie=C5=82a?= , Sven Rademakers , Lokesh Poovaragan , Sam Edwards Subject: [PATCH] arm64: dts: rockchip: Fix eMMC Data Strobe PD Date: Tue, 21 Nov 2023 13:29:41 -0800 Message-ID: <20231121212941.53873-2-CFSworks@gmail.com> X-Mailer: git-send-email 2.41.0 In-Reply-To: <20231121212941.53873-1-CFSworks@gmail.com> References: <20231121212941.53873-1-CFSworks@gmail.com> MIME-Version: 1.0 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20231121_133010_490305_CE9A95AD X-CRM114-Status: GOOD ( 15.35 ) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org JEDEC standard JESD84-B51 defines the eMMC Data Strobe line, which is currently used only in HS400 mode, as a device->host clock signal that "is used only in read operation. The Data Strobe is always High-Z (not driven by the device and pulled down by RDS) or Driven Low in write operation, except during CRC status response." RDS is a pull-down resistor specified in the 10K-100K ohm range. Thus per the standard, the Data Strobe is always pulled to ground (by the eMMC and/or RDS) during write operations. Evidently, the eMMC host controller in the RK3588 considers an active voltage on the eMMC-DS line during a write to be an error. The default (i.e. hardware reset, and Rockchip BSP) behavior for the RK3588 is to activate the eMMC-DS pin's builtin pull-down. As a result, many RK3588 board designers do not bother adding a dedicated RDS resistor, instead relying on the RK3588's internal bias. The current devicetree, however, disables this bias (`pcfg_pull_none`), breaking HS400-mode writes for boards without a dedicated RDS, but with an eMMC chip that chooses to High-Z (instead of drive-low) the eMMC-DS line. (The Turing RK1 is one such board.) Fix this by changing the bias in the (common) emmc_data_strobe case to reflect the expected hardware/BSP behavior. This is unlikely to cause regressions elsewhere: the pull-down is only relevant for High-Z eMMCs, and if this is redundant with a (dedicated) RDS resistor, the effective result is only a lower resistance to ground -- where the range of tolerance is quite high. If it does, it's better fixed in the specific devicetrees. Fixes: d85f8a5c798d5 ("arm64: dts: rockchip: Add rk3588 pinctrl data") Signed-off-by: Sam Edwards --- arch/arm64/boot/dts/rockchip/rk3588s-pinctrl.dtsi | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/arch/arm64/boot/dts/rockchip/rk3588s-pinctrl.dtsi b/arch/arm64/boot/dts/rockchip/rk3588s-pinctrl.dtsi index 63151d9d2377..30db12c4fc82 100644 --- a/arch/arm64/boot/dts/rockchip/rk3588s-pinctrl.dtsi +++ b/arch/arm64/boot/dts/rockchip/rk3588s-pinctrl.dtsi @@ -369,7 +369,7 @@ emmc_cmd: emmc-cmd { emmc_data_strobe: emmc-data-strobe { rockchip,pins = /* emmc_data_strobe */ - <2 RK_PA2 1 &pcfg_pull_none>; + <2 RK_PA2 1 &pcfg_pull_down>; }; };