public inbox for linux-arm-kernel@lists.infradead.org
 help / color / mirror / Atom feed
* [PATCH 0/2] clk: sunxi-ng: d1: Fix halved MMC frequency
@ 2025-02-26 10:37 Andre Przywara
  2025-02-26 10:37 ` [PATCH 1/2] clk: sunxi-ng: mp: provide wrapper for setting feature flags Andre Przywara
  2025-02-26 10:37 ` [PATCH 2/2] clk: sunxi-ng: d1: Add missing divider for MMC mod clocks Andre Przywara
  0 siblings, 2 replies; 5+ messages in thread
From: Andre Przywara @ 2025-02-26 10:37 UTC (permalink / raw)
  To: Michael Turquette, Stephen Boyd, Chen-Yu Tsai, Jernej Skrabec,
	Samuel Holland
  Cc: Maxime Ripard, Kuba Szczodrzyński, linux-clk,
	linux-arm-kernel, linux-sunxi

Hi,

as Kuba reported, on an Allwinner T113-s3 based board the SD card
performance is only half of what we expect: ~11 MB/s instead of the
usual 23 MB/s.
Looking at our MMC mod clock definition, this seems to be due to a
missing fixed (and hidden) divider of 2, a "feature" of every other
Allwinner SoC from the last 10 years.

Patch 2/2 changes the MMC mod clock definition to carry this post_div
of 2, in line with the A64, H6, A100, and H616 SoCs.
Since the D1 clock driver describes clock parents using an array of
pointers, we need to use a new macro that allows both parent_data and
post_div to be specified. This is also needed by the new A523 clocks,
so I lifted the patch from there[1]. Chen-Yu reviewed that one already,
but I made some changes to make the macro more flexible, so I dropped
his tag.

I couldn't test this on a D1 board, so I'd be grateful if someone could
confirm that the SD card performance is now as expected. I simply used
"hdparm -t" to get a ballpark number of read performance, but any other
benchmark or even a timed file copy should do.

Thanks to Kuba for the report!

Cheers,
Andre

[1]
https://lore.kernel.org/linux-sunxi/20250214125359.5204-1-andre.przywara@arm.com/T/#m9adaa1fcea09185c561f3fd01ba895fa67af456c

Andre Przywara (2):
  clk: sunxi-ng: mp: provide wrapper for setting feature flags
  clk: sunxi-ng: d1: Add missing divider for MMC mod clocks

 drivers/clk/sunxi-ng/ccu-sun20i-d1.c | 43 ++++++++++++++++------------
 drivers/clk/sunxi-ng/ccu_mp.h        | 19 ++++++++++--
 2 files changed, 42 insertions(+), 20 deletions(-)

-- 
2.25.1



^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2025-02-26 16:09 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-02-26 10:37 [PATCH 0/2] clk: sunxi-ng: d1: Fix halved MMC frequency Andre Przywara
2025-02-26 10:37 ` [PATCH 1/2] clk: sunxi-ng: mp: provide wrapper for setting feature flags Andre Przywara
2025-02-26 16:00   ` Jernej Škrabec
2025-02-26 10:37 ` [PATCH 2/2] clk: sunxi-ng: d1: Add missing divider for MMC mod clocks Andre Przywara
2025-02-26 16:06   ` Jernej Škrabec

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox