From nobody Sat Sep 26 11:01:15 2026 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-alma10-1.taild15c8.ts.net [100.103.45.18]) (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 728533C8C77; Wed, 2 Sep 2026 07:03:36 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=100.103.45.18 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1788332617; cv=none; b=skPL0Il+FEEh2F8gFZccNAvsrlR0Wd+DK2hJlytWQGnBIoMOC5m+FXnpDykcPgqYH4bzlCoi2qQuZlpNxIXJEHqWog/pNjJJ7VSFlix5Rx773oQ59dSku8/tMORFU7QBgIIOwlyiSV6xAbwh2yZaYle5Dtksbba4/54oybNkws4= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1788332617; c=relaxed/simple; bh=xh+jDtZb+F1rSKor4ynd2B/GftrqAkME5NTX9HEOTTM=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=LwCRaIHMZBslf968GgBTznW13zhyQKDcnV4pZTaluKSI2i8rY1vrVUQt33QRuVZ0vlTWjLPWVaw+u/x3sXTqlVZLiXnb2IkLvhdh2Sb50t5aHcIH56x6I0WJfZcnLKQ/28vkTjGJvmjZkgmLtllrETVkwrM63oAxVUvuhDDJlPE= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=iDb8Hkeo; arc=none smtp.client-ip=100.103.45.18 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="iDb8Hkeo" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 2BA1D1F00A3A; Wed, 2 Sep 2026 07:03:34 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=kernel.org; s=k20260515; t=1788332616; bh=WZyEXHqrqaseoXVmYy3LcvGU81uk8IViuMFIaeZn8bo=; h=From:Date:Subject:References:In-Reply-To:To:Cc; b=iDb8HkeoXvFrYa9Fxf7JboXclgGnS9WD6g/Usmqg0bQr3GGxKpwk0sZgiVu6bBLpd yiGfd9+m14tMiyeS2VqizbgD4LxUdVWOPhEpG9NdNyceRb/f3umsLOeP77BsW1OAck W8BNkrm65jA6py2op1ZzffjQ7i8zA8c5UbotPY92sydS7vIRJgUPc9wZdmksH6pLH3 lx0FNQuyEh+EAPIzSHtC7ckw6ckd/HKyP0V79cK2rWzFQgYzekQvKaeENaewjeJmwo GRbWrYoEqbM19sX34wz65fq15u8Sew3LnOucqDeiNTFPwU9X0WDdXFCFTY59LKt5os PYj6itKpL8Daw== From: Yixun Lan Date: Wed, 02 Sep 2026 07:03:12 +0000 Subject: [PATCH 1/4] dt-bindings: mmc: spacemit-sdhci: Add clock-frequency property Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20260902-07-k3-sdhci-dts-v1-1-4e7909cf4233@kernel.org> References: <20260902-07-k3-sdhci-dts-v1-0-4e7909cf4233@kernel.org> In-Reply-To: <20260902-07-k3-sdhci-dts-v1-0-4e7909cf4233@kernel.org> To: Ulf Hansson , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Adrian Hunter Cc: Long Wan , linux-mmc@vger.kernel.org, devicetree@vger.kernel.org, linux-riscv@lists.infradead.org, spacemit@lists.linux.dev, linux-kernel@vger.kernel.org, Yixun Lan X-Mailer: b4 0.16.0 X-Developer-Signature: v=1; a=openpgp-sha256; l=1225; i=dlan@kernel.org; h=from:subject:message-id; bh=0s33+SIAIsSvRrJal5a7lf5iGDthVMJEuouJO+809F0=; b=owEB6QIW/ZANAwAKATGq6kdZTbvtAcsmYgBql8o2RCCXdV8uWXJPuCAhkAJ9KDdYto2E9X4qU 74INxSxYsqJAq8EAAEKAJkWIQS1urjJwxtxFWcCI9wxqupHWU277QUCapfKNhsUgAAAAAAEAA5t YW51MiwyLjUrMS4xMiwyLDJfFIAAAAAALgAoaXNzdWVyLWZwckBub3RhdGlvbnMub3BlbnBncC5 maWZ0aGhvcnNlbWFuLm5ldEI1QkFCOEM5QzMxQjcxMTU2NzAyMjNEQzMxQUFFQTQ3NTk0REJCRU QACgkQMarqR1lNu+2oOQ//X0/Z5/emiJ1f33hhcm/usHUp48sRwGjB/fZNmOKhiyvrNaS7ISJy8 eg3rIRUN414M9jtencsfJz/M7hb/7XwHf+12Yk5afXbyhOX8U3S2qAJ+eVFRWY7U5EJrc+0rQVa II7dxork7DCiB4lHlRju0bz/YrX8bWx9Cjh57921mm8lEPON17/9U41dXYc0vICDmjuImT99DuH hv9s1LHi9CkKkpKujwZlGf/EsICPQu4ISge+T3JC4/d2z15HiQ1vTFueWeUnZBiaeNS4EDVUSXd uipWCp3IDxo/bfFKooiS0pVFQwJyOcBYcYSEgihd7D4FLCn3k7+Nm2Qe9zkQXfPNOyshfOyD9dx 6DJA0y08t2/2IUmymoOX//9zHGo2qRiElzsbJAcxOJlzpk+juwwyuPzeBsYvVj7ooydMa3AoVfP u7gX9seAT1GlpKEa+LIrMXPiyP1HHifTpK/nCAGzYM1bhw0xdeldh4zRHLYob6DXtdctpGMbcam PAVkpD5/NF5p9SHBB2OyxRELXThBt03Wx02S8wP2SUgBlBRiN+uoPd8L8OgJKvc6Q8ON592D3rQ YA/qcWUC0crlHgcL8MXzrPiHJzqJiNYPs2WCZf3XrAgu5VJfb3unc9X2qgrVIoK/sLfooZ8iLQT Etx8g1YXeuMgU1pZOogm6RWOvxPMOE= X-Developer-Key: i=dlan@kernel.org; a=openpgp; fpr=50B03A1A5CBCD33576EF8CD7920C0DBCAABEFD55 From: Long Wan Add a clock-frequency property to set the rate of io clock, according to various host controller mode it require different initial clock frequency, and also match to the board's layout actually validated at. Signed-off-by: Long Wan Signed-off-by: Yixun Lan --- Documentation/devicetree/bindings/mmc/spacemit,sdhci.yaml | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/Documentation/devicetree/bindings/mmc/spacemit,sdhci.yaml b/Do= cumentation/devicetree/bindings/mmc/spacemit,sdhci.yaml index 34d202af909f..f35bf7ce08dd 100644 --- a/Documentation/devicetree/bindings/mmc/spacemit,sdhci.yaml +++ b/Documentation/devicetree/bindings/mmc/spacemit,sdhci.yaml @@ -29,6 +29,13 @@ properties: - description: core clock, used by internal controller - description: io clock, output for SD, SDIO, eMMC device =20 + clock-frequency: + $ref: /schemas/types.yaml#/definitions/uint32 + description: + Rate of the io clock in Hz. When present the io clock is programmed = to + this rate, allowing a board to select the rate its layout was valida= ted + at. + clock-names: items: - const: core --=20 2.55.0 From nobody Sat Sep 26 11:01:15 2026 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-alma10-1.taild15c8.ts.net [100.103.45.18]) (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 CFE3C3D411A; Wed, 2 Sep 2026 07:03:39 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=100.103.45.18 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1788332621; cv=none; b=RIT5NxtsPJVpq665PkftvvL6RF5fIgEcgv8YHXis7OV72vejt2JtgUdVtFG2jBNh4xIVLieumEcTuEuh+PUYmhmOLSKx3i21H5iO1fLo49itRzLJNv8GdZwTye1Pn3Qxo1iyFtR6Yb4Yw3ytDa/fBgVBJSHDJwLW2uynQM54g18= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1788332621; c=relaxed/simple; bh=UlPuyeu94UyM29/6tBi6TPYapfESbDa6UB/FugcBTgk=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=uXacFItDMwpKv4flHvatSH7QcATJeQPV/9lRFISDEJRNOFoRegSmX+FkyVX8h4geowkM8zhCUS1609CrSayDs9QxSo+d4TWP3gigy1Yd13CKqs0rhHeevgdYcG8Sew1pigicHxZJURJtbshMCkHTrgykf+4QDLW8fFrAnJXplus= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=UiVvmcVW; arc=none smtp.client-ip=100.103.45.18 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="UiVvmcVW" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 792FE1F00A3D; Wed, 2 Sep 2026 07:03:36 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=kernel.org; s=k20260515; t=1788332619; bh=ADWDnrTMdSyIzp5BL5L3Cq8dXeGxwG3/LxsyTlSUayI=; h=From:Date:Subject:References:In-Reply-To:To:Cc; b=UiVvmcVW37V2AEY+lW/6cB2m+DZQe/ityzpRDUakEHWKYsLKWLowcwJSxtwXvLwV8 iqXowvMTcWVz9dXQN2yD09FfAfpTbcE6vE45KS5VUw/UTZnt/MKwJssAhuYtdPesBG /LN2iEjdIbrym7gj6YAVM7BIw8lusYowPU/SR2/XoVkz+8dEqKLvL8RBauWtC3BeVV Jc32ZMP8I8gkH1KRg48jwfiVusX+xY23vTrmAFmXUH6ADhkfnbM0n9O+xotNE8HmJi dkEsHjzftr1ZklYT+3uT+dOic9d2RuHQ9UTxDqE/DqRa8bFck7c/4c0dKC01LvroOd c7oCWOVcIPjWQ== From: Yixun Lan Date: Wed, 02 Sep 2026 07:03:13 +0000 Subject: [PATCH 2/4] dt-bindings: mmc: spacemit,sdhci: Add tx delay property Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20260902-07-k3-sdhci-dts-v1-2-4e7909cf4233@kernel.org> References: <20260902-07-k3-sdhci-dts-v1-0-4e7909cf4233@kernel.org> In-Reply-To: <20260902-07-k3-sdhci-dts-v1-0-4e7909cf4233@kernel.org> To: Ulf Hansson , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Adrian Hunter Cc: Long Wan , linux-mmc@vger.kernel.org, devicetree@vger.kernel.org, linux-riscv@lists.infradead.org, spacemit@lists.linux.dev, linux-kernel@vger.kernel.org, Yixun Lan X-Mailer: b4 0.16.0 X-Developer-Signature: v=1; a=openpgp-sha256; l=1384; i=dlan@kernel.org; h=from:subject:message-id; bh=tKK/nlQHRnas6UGu8eqQ6yK4XJJKgs+znczKLewdiy0=; b=owEB6QIW/ZANAwAKATGq6kdZTbvtAcsmYgBql8o50i812oFbAhr2Jofm+9kGBHm6vbVkx1dUT F5oz5CiGSuJAq8EAAEKAJkWIQS1urjJwxtxFWcCI9wxqupHWU277QUCapfKORsUgAAAAAAEAA5t YW51MiwyLjUrMS4xMiwyLDJfFIAAAAAALgAoaXNzdWVyLWZwckBub3RhdGlvbnMub3BlbnBncC5 maWZ0aGhvcnNlbWFuLm5ldEI1QkFCOEM5QzMxQjcxMTU2NzAyMjNEQzMxQUFFQTQ3NTk0REJCRU QACgkQMarqR1lNu+14fA//QuSck89nvcqi/+KpW02jct5qiKpEAQzlBc+h7N9JWR1fExF1+OAbs IOguEw+LXb2/6/V7DidmNaGHX7XbkUtXWIUt8ES6HAJOLvSLLueblKjVMWrm8RxgS0yh3o5RatM wYzX9917qeu841xafn3OGjE/Z+2QZiHrbAJo6/WDDAb1ngkNCsDyuI1HTkQqzfyUtekqH0WAJsH d0/yt8Ln+9pHqg/WX4H6LGqoTg81CiE4B3FrIUHb0PTu5OdT666G7QOHdGC4nksGYKuOBYpcL2A cp+/I2IqVZAhEExvWJXLGPOOZpo688Z2aOCw8gKYErbA116Yenv7S5Ks8fa0E9igshDRSqlD9zA Mo+f57OWCpVAibsMI2hH8i8yEtPsg9v+GBGV3mPR7eQk4/DVZJ/OKIIJZz9J2aWdvi9eyVB/jiK YGQhdf+0BnG5nU2ofbBehFAtoSzx/SzWTQdA4sKuM+rDzGiaeCRZ4ltZEPgcc5bHMbp3+tMajPl M7F2ifQKmBG2NgtL6D+pejatp2MsLYMWWEzlxqJW3WCUiUs2SBousnoP08+ADPWuG1dF1TL8R/J lHnSf9dY1dqAvvfzcmFwawWoPcCv3uSD996INPlWW8Uzkzg80LZ2s86V+pqORtvAAdCM2Txr7g2 gKyvJ7bFy3SD6YVd3dQxVohYgdKypE= X-Developer-Key: i=dlan@kernel.org; a=openpgp; fpr=50B03A1A5CBCD33576EF8CD7920C0DBCAABEFD55 From: Long Wan Introduce a vendor specific property to configure the step count of TX delay line which should be applied before RX tuning, compensating for board level trace differences. The TX delay line result comes from test out of real board which vary from different hardware layout. Signed-off-by: Long Wan Signed-off-by: Yixun Lan Acked-by: Conor Dooley --- Documentation/devicetree/bindings/mmc/spacemit,sdhci.yaml | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/Documentation/devicetree/bindings/mmc/spacemit,sdhci.yaml b/Do= cumentation/devicetree/bindings/mmc/spacemit,sdhci.yaml index f35bf7ce08dd..3399a2d076dc 100644 --- a/Documentation/devicetree/bindings/mmc/spacemit,sdhci.yaml +++ b/Documentation/devicetree/bindings/mmc/spacemit,sdhci.yaml @@ -63,6 +63,16 @@ properties: pinctrl-1: description: Optional pinctrl state for 1.8V UHS operation with "uhs" = name =20 + spacemit,tx-delay: + $ref: /schemas/types.yaml#/definitions/uint32 + minimum: 0 + maximum: 255 + description: + TX delay line setting applied before RX tuning, compensating for + board level trace differences. This is a delay line step count with + no fixed time-per-step conversion; determined empirically per board + specific, used on SD/SDIO hosts. + required: - compatible - reg --=20 2.55.0 From nobody Sat Sep 26 11:01:15 2026 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-alma10-1.taild15c8.ts.net [100.103.45.18]) (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 AF5FA3AEF50; Wed, 2 Sep 2026 07:03:42 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=100.103.45.18 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1788332623; cv=none; b=BC/N87lrejmgosrURJ2N9PfGJG04UGAOkWR9qaa2MhVlZ/NRv/5+ary+/75Rh+5ioPf8EVnBA1VD9AKfUehjpacwocuyzynzSfLuYG8KjaBSooXdn1mENs2MM4pfM+f5srdxxhsx97GrVRgrnG38reEBj6OJTOVa0TNtIuaR5oY= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1788332623; c=relaxed/simple; bh=wNnXMrDdOxHejNmyQRFidvrM5LD4N1jh6TmhbacrzSQ=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=tUF87HU1PYYNTNLrhAnekggY32f6ITzrd7endyI441gBBzR6FhL2VzjjfxphO3sZP4k2l4ns9+3/rKobhsisdxaFGaTeYSWu0/LPmW3FjMsIP84CXK9624Ed72PDACJy1fYpQi4/1/ztdVKxte5rBoj2UG7dKCPkL9c7ZQhORbo= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=I24mCWb/; arc=none smtp.client-ip=100.103.45.18 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="I24mCWb/" Received: by smtp.kernel.org (Postfix) with ESMTPSA id D5D161F000E9; Wed, 2 Sep 2026 07:03:39 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=kernel.org; s=k20260515; t=1788332622; bh=lUttOokVdaj+xlO1pDebMWBeyODxm2bzShBudFtyHbM=; h=From:Date:Subject:References:In-Reply-To:To:Cc; b=I24mCWb/BPe5tiVm1lrby+PVvZO5BE9EtKZsXibdWR0uKT1lgovPgUpjyeVowbFf0 wKnF5CdGtd1WkXsIuN9BQ892LSdpHkuaTFfcpFT1o7P2x7zoplLETHDKHBaIC8BqIo 6LDNuaTJ0LTcp8q4n3ca21WqfaBxzH2KVa6od56Io8KGiDvtBXyoUEFBshd6HO+HFa 4CNfZSqrNHy3iWMqkxmAe6nHbLgzIAn/40I3pYJTZJyBYiMmYEokpTqZaKxOEC7ljL EigvMjV3qeiVwXEZi1gtjgovNJzbR9rkeCphraCdA32Zv8htPEDr70SfdNNEdJ4Cen JnqU9/WoqPbWQ== From: Yixun Lan Date: Wed, 02 Sep 2026 07:03:14 +0000 Subject: [PATCH 3/4] mmc: sdhci-of-k1: Set clock-frequency of io clock Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20260902-07-k3-sdhci-dts-v1-3-4e7909cf4233@kernel.org> References: <20260902-07-k3-sdhci-dts-v1-0-4e7909cf4233@kernel.org> In-Reply-To: <20260902-07-k3-sdhci-dts-v1-0-4e7909cf4233@kernel.org> To: Ulf Hansson , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Adrian Hunter Cc: Long Wan , linux-mmc@vger.kernel.org, devicetree@vger.kernel.org, linux-riscv@lists.infradead.org, spacemit@lists.linux.dev, linux-kernel@vger.kernel.org, Yixun Lan X-Mailer: b4 0.16.0 X-Developer-Signature: v=1; a=openpgp-sha256; l=1164; i=dlan@kernel.org; h=from:subject:message-id; bh=xLGXanQt+d9K9+P5rpjtsNcl/WcWw+QwPd2e++Q7VjM=; b=owEB6QIW/ZANAwAKATGq6kdZTbvtAcsmYgBql8o8rJIxMWXSKnNvhZvGCO0ghhMa9Q6qdWv73 oR2x/igg3qJAq8EAAEKAJkWIQS1urjJwxtxFWcCI9wxqupHWU277QUCapfKPBsUgAAAAAAEAA5t YW51MiwyLjUrMS4xMiwyLDJfFIAAAAAALgAoaXNzdWVyLWZwckBub3RhdGlvbnMub3BlbnBncC5 maWZ0aGhvcnNlbWFuLm5ldEI1QkFCOEM5QzMxQjcxMTU2NzAyMjNEQzMxQUFFQTQ3NTk0REJCRU QACgkQMarqR1lNu+31TBAAhWDD4M27o3x0ygiN+MRZ3wkdJUMBRSV00di/rNxC8ItISahX2JFZz Eewi8vTxlD53D24Wmli7vui+zsTOZWZi6AZcJr5g75vl69dHSAaWCKzRh6SGqwPrEOVc2hWwJWI tu89GCmhM/6EMwSLqifEJA3FWkje5Y+/TbNvQXXYFWKt2PEMYdvH+rtFIp/0yi/eBZRxBdpxWV4 mZvHXW5E8hwi9eSUENGi27OHRm54oITiea2JnRY67SvW7scoUUljYBkWLVUOz5SF8DIgLiYYRHD cLcwOg36UYvNYYaCyf2YFDy5ESlhcp0YlEXZSwX+MWUJUjrq66/0SX6xO1zLH7oiUb3OiHjqx8R HQE5NQciAwGjBGW+8aa/czQxa0ZmjTPVKJPUlT0z641LQDgMj0pjt6yrjFb8SJcBWXiG7iVzqzg 5NDb2ruX1D5wsL9eJ6GicvzcGsZX+06S2KyxoRNTJU6mOgsTAlPZXYUcSkqVdqDayGEQBhYJQYB fFb5W5NMcE8L437V20M5G1wtmfRl7ZrvMjkoYwa+KgwJw7rEcDMD4/Un2WWn+Ob2PpKd1Z+rvFp 4nDimBhzbNzcVartgA8fvDCpkqMAYdDaXDBw78tGE4ow6LZhbApKF3hmiOGVV36YkV2Posz13Lf vFns3EmN3Pu301Q+4o6nhrNFj8xI0M= X-Developer-Key: i=dlan@kernel.org; a=openpgp; fpr=50B03A1A5CBCD33576EF8CD7920C0DBCAABEFD55 From: Long Wan Add a clock-frequency property to set the rate of io clock, for SDIO case, a clock frequency need to propagate down early. Signed-off-by: Long Wan Signed-off-by: Yixun Lan Reviewed-by: Troy Mitchell --- drivers/mmc/host/sdhci-of-k1.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/drivers/mmc/host/sdhci-of-k1.c b/drivers/mmc/host/sdhci-of-k1.c index 37b0911e7cf2..e6ab40c9a555 100644 --- a/drivers/mmc/host/sdhci-of-k1.c +++ b/drivers/mmc/host/sdhci-of-k1.c @@ -438,6 +438,8 @@ static inline int spacemit_sdhci_get_clocks(struct devi= ce *dev, struct sdhci_pltfm_host *pltfm_host) { struct spacemit_sdhci_host *sdhst =3D sdhci_pltfm_priv(pltfm_host); + struct device_node *np =3D dev->of_node; + u32 freq; =20 sdhst->clk_core =3D devm_clk_get_enabled(dev, "core"); if (IS_ERR(sdhst->clk_core)) @@ -447,6 +449,9 @@ static inline int spacemit_sdhci_get_clocks(struct devi= ce *dev, if (IS_ERR(sdhst->clk_io)) return -EINVAL; =20 + if (!of_property_read_u32(np, "clock-frequency", &freq)) + clk_set_rate(sdhst->clk_io, freq); + pltfm_host->clk =3D sdhst->clk_io; =20 return 0; --=20 2.55.0 From nobody Sat Sep 26 11:01:15 2026 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-alma10-1.taild15c8.ts.net [100.103.45.18]) (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 CA93C3CB2DB; Wed, 2 Sep 2026 07:03:44 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=100.103.45.18 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1788332626; cv=none; b=cxY2dYSRMK3t/Szde1C3Vx+CXXdq+jWSOgBAgCJHCcWlOOvOFRDSzREyDTUM3fxDjnpvlyLQCDaNY22NykeHG+1xixm9I+BzKm9NgWEtQMtKzbBbh+XpPhwzO+gLXtoPsJOg7BOOm44gEHkBJnGTJkkjPGxWxKP9are2j7/gqng= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1788332626; c=relaxed/simple; bh=N+onsIpN7i1t2Coa7S6kLlV/TfAA5dYVZFHJST7H/6M=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=ASum2RSNvROjz+GIzzRAYSIMUfLjUs2gxEnPIOqupipq+Xd/63284ujy2ZLWrGrFLIHS8mLmQE13SymgKmJjSjFyuTABZ5k5kLJ0Ay4qHbIogaDN3Ul6/ckxGFgWobbfMXwK3xzGXLToMrGvLVddl+bgrB3K2BsEOQ/Jeyn/ecU= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=C5xrr/1y; arc=none smtp.client-ip=100.103.45.18 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="C5xrr/1y" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 84F771F00A3A; Wed, 2 Sep 2026 07:03:42 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=kernel.org; s=k20260515; t=1788332624; bh=ECyP0docozOqo+POubZUdu/wkpSW+1NuQQaSDOlyVC4=; h=From:Date:Subject:References:In-Reply-To:To:Cc; b=C5xrr/1ytXtYzOmQDkgsxEFgVBO+EWwU9xcwkIINV7+NLq1Xg47oKjjSGhS4JCym7 omNmZdEE2Pbof35cuFbQrZhddQceCJsvO0oNx/gp1Y5L77sZYDPw3fVQ49Bo45cKrw ETGVENA7PG+B6Wh8jQtP1b7IpRdHECG4sYNQ1rDZ9lVHEU6RRQ4mTFfdFnfMOHu1jI TetpSEelH97jEo0fMMT0aj4DK4gu3bNL8b0IrydnTQeMvB2Ib8YOk0RYnA0+IjnfZT 2ZDZbLpLQb3Odr8eOG0xr+8OynLbi2bAcENvtB1cIXAjVXLfsWn4Lu4l3kOGyoR/Xm BTb31PpUhObSQ== From: Yixun Lan Date: Wed, 02 Sep 2026 07:03:15 +0000 Subject: [PATCH 4/4] mmc: sdhci-of-k1: Add TX tuning parameter Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20260902-07-k3-sdhci-dts-v1-4-4e7909cf4233@kernel.org> References: <20260902-07-k3-sdhci-dts-v1-0-4e7909cf4233@kernel.org> In-Reply-To: <20260902-07-k3-sdhci-dts-v1-0-4e7909cf4233@kernel.org> To: Ulf Hansson , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Adrian Hunter Cc: Long Wan , linux-mmc@vger.kernel.org, devicetree@vger.kernel.org, linux-riscv@lists.infradead.org, spacemit@lists.linux.dev, linux-kernel@vger.kernel.org, Yixun Lan X-Mailer: b4 0.16.0 X-Developer-Signature: v=1; a=openpgp-sha256; l=2977; i=dlan@kernel.org; h=from:subject:message-id; bh=3uz4FJ0LT6upjBL2hQH3AOnAQaSXZgnr5H5kakl7pJA=; b=owEB6QIW/ZANAwAKATGq6kdZTbvtAcsmYgBql8pA1dlln4e0W6rHtxupS1J3C+SpP1K97YWff YcOa8a104yJAq8EAAEKAJkWIQS1urjJwxtxFWcCI9wxqupHWU277QUCapfKQBsUgAAAAAAEAA5t YW51MiwyLjUrMS4xMiwyLDJfFIAAAAAALgAoaXNzdWVyLWZwckBub3RhdGlvbnMub3BlbnBncC5 maWZ0aGhvcnNlbWFuLm5ldEI1QkFCOEM5QzMxQjcxMTU2NzAyMjNEQzMxQUFFQTQ3NTk0REJCRU QACgkQMarqR1lNu+2Qyw/+P1hdoqOlwCmm3uJT+I5lCO8Bt/fEREJT4Rdm37SMw2fikHVs3ykU2 zULPpfPbm2pKJak2kUVTGsakdZjEMPOuoZzU4p/ce7j4o0claO/JUp6pqOlTtqGI9qCjwKDhdTK rZjXl/aIEYXiBWr1wT48J4CoZz0gniWbbYihkNFk9Bd8iS2pQkUvqSXQK25uagF9kwmO13ZC/Kz 6M62CAq1bnw0lovsov7sKAz3eAH1ZXLgjnu6aqXmqgeWKnflBmv4nbnDVGlbd0WkSLjkgE8sp+t 25x763BDANXUPZP4JdcdSVjIIElVSTF1PMJldG57BXUc73NbMc2XvOIMittkgeUo7rFacwX/wd/ OQbcoJxrUAHSnrYqjCf3+3BcsNVpqaGVCc6dozgNuMjdhsG6pVJ+wj1UNKvqlwj55yRkD4Jdk49 BtRcAUt2Fzg1hbWPgRW/16n4iwHhx7oHAmR8ymQ34KxeoxHLWuK2ViQXpMIcQJR9eyyvaCz360O zEg+zeSpaSbjxIPi4DGnTiJmfuVHxv7aKy1RYj5kkUidd5exYF0r6sNPWuhVIZvzHabc6VcX35O fG485+YjnM4nvPWMQliHOLUEWarqeRU9A/qOLthC+KI1OuMUZOuAw0F5i6Q2MispEg1d3vzeshY OzJ2/6eAwKnc/Zimv4deW6kRitcPDM= X-Developer-Key: i=dlan@kernel.org; a=openpgp; fpr=50B03A1A5CBCD33576EF8CD7920C0DBCAABEFD55 From: Long Wan Instead of setting the TX delay code via hardcoded parameter, configuring it via device tree property, which make it able to adapt according to board specific tuning requirement. Signed-off-by: Long Wan Signed-off-by: Yixun Lan --- drivers/mmc/host/sdhci-of-k1.c | 25 +++++++++++++++++++++++-- 1 file changed, 23 insertions(+), 2 deletions(-) diff --git a/drivers/mmc/host/sdhci-of-k1.c b/drivers/mmc/host/sdhci-of-k1.c index e6ab40c9a555..6cab06332747 100644 --- a/drivers/mmc/host/sdhci-of-k1.c +++ b/drivers/mmc/host/sdhci-of-k1.c @@ -97,6 +97,7 @@ struct spacemit_sdhci_host { struct pinctrl *pinctrl; struct pinctrl_state *pinctrl_default; struct pinctrl_state *pinctrl_uhs; + u8 tx_delaycode; }; =20 /* All helper functions will update clr/set while preserve rest bits */ @@ -263,6 +264,7 @@ static int spacemit_sdhci_execute_tuning(struct sdhci_h= ost *host, u32 opcode) int max_pass_len =3D 0, max_pass_start =3D 0; struct mmc_host *mmc =3D host->mmc; struct mmc_ios ios =3D mmc->ios; + struct spacemit_sdhci_host *sdhst =3D sdhci_pltfm_priv(sdhci_priv(host)); u8 final_delay; int ret =3D 0; int i; @@ -279,11 +281,11 @@ static int spacemit_sdhci_execute_tuning(struct sdhci= _host *host, u32 opcode) =20 if (mmc->caps2 & MMC_CAP2_NO_MMC) { spacemit_sdhci_set_tx_dline_reg(host, SPACEMIT_TX_TUNING_DLINE_REG); - spacemit_sdhci_set_tx_delay(host, SPACEMIT_TX_TUNING_DELAYCODE); + spacemit_sdhci_set_tx_delay(host, sdhst->tx_delaycode); spacemit_sdhci_tx_tuning_prepare(host); =20 dev_dbg(mmc_dev(host->mmc), "TX tuning: dline_reg=3D%d, delaycode=3D%d\n= ", - SPACEMIT_TX_TUNING_DLINE_REG, SPACEMIT_TX_TUNING_DELAYCODE); + SPACEMIT_TX_TUNING_DLINE_REG, sdhst->tx_delaycode); } =20 spacemit_sdhci_prepare_tuning(host); @@ -496,6 +498,23 @@ static inline void spacemit_sdhci_get_pins(struct devi= ce *dev, sdhst->pinctrl_default, sdhst->pinctrl_uhs); } =20 +static void spacemit_sdhci_get_tuning_params(struct device *dev, + struct sdhci_pltfm_host *pltfm_host) +{ + struct spacemit_sdhci_host *sdhst =3D sdhci_pltfm_priv(pltfm_host); + u32 val; + + sdhst->tx_delaycode =3D SPACEMIT_TX_TUNING_DELAYCODE; + + /* Override from DT property */ + if (!device_property_read_u32(dev, "spacemit,tx-delay", &val)) { + if (val <=3D U8_MAX) + sdhst->tx_delaycode =3D val; + else + dev_warn(dev, "ignoring invalid tx delay: %u\n", val); + } +} + static const struct sdhci_ops spacemit_sdhci_ops =3D { .get_max_clock =3D spacemit_sdhci_clk_get_max_clock, .reset =3D spacemit_sdhci_reset, @@ -571,6 +590,8 @@ static int spacemit_sdhci_probe(struct platform_device = *pdev) =20 spacemit_sdhci_get_pins(dev, pltfm_host); =20 + spacemit_sdhci_get_tuning_params(dev, pltfm_host); + host->mmc_host_ops.start_signal_voltage_switch =3D spacemit_sdhci_start_s= ignal_voltage_switch; =20 ret =3D spacemit_sdhci_get_clocks(dev, pltfm_host); --=20 2.55.0