All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v2 0/2] mfd: rsmu: fixes and new IC support
@ 2026-04-29  7:20 Matthew Bystrin
  2026-04-29  7:20 ` [PATCH v2 1/2] mfd: rsmu: fix page register setup Matthew Bystrin
                   ` (2 more replies)
  0 siblings, 3 replies; 4+ messages in thread
From: Matthew Bystrin @ 2026-04-29  7:20 UTC (permalink / raw)
  To: Lee Jones, Richard Cochran, Min Li; +Cc: linux-kernel, netdev

Hi!

First patch fixes Renesas 8A34002 SPI driver.

In my setup 8A34002 is connected to VisionFive2 (via SPI or I2C). I've
discovered that upstream driver does not work:

[    4.728771] 8a3400x-phc 8a3400x-phc.0.auto: 4.8.7, Id: 0x4002  HW Rev: 5  OTP Config Select: 0
[    4.737389] 8a3400x-phc 8a3400x-phc.0.auto: requesting firmware 'idtcm.bin'
[    4.744462] 8a3400x-phc 8a3400x-phc.0.auto: Direct firmware load for idtcm.bin failed with error -2
[    4.753547] 8a3400x-phc 8a3400x-phc.0.auto: Failed at line 1273 in idtcm_load_firmware!
[    4.761576] 8a3400x-phc 8a3400x-phc.0.auto: loading firmware failed with -2
[    4.769411] 8a3400x-phc 8a3400x-phc.0.auto: No wait state: DPLL_SYS_STATE 0
[    4.776374] 8a3400x-phc 8a3400x-phc.0.auto: Continuing while SYS APLL/DPLL is not locked
[    4.785206] 8a3400x-phc 8a3400x-phc.0.auto: Unsupported MANUAL_REFERENCE: 0x00
[    4.796930] 8a3400x-phc 8a3400x-phc.0.auto: PLL2 registered as ptp0

This being caused by a piece of code in rsmu_write_page_register() function:

if (reg < RSMU_CM_SCSR_BASE)
	return 0;

All addresses in include/linux/mfd/idt8a340_reg.h are less than
RSMU_CM_SCSR_BASE so functions was returning early, before any modifications to
the page register. Valid read of versions - is just a coincidence, because
default value of the page register is zero.

There were 2 separate patch series which had to be merged in one time: mfd and
ptp. The latter have been merged, the former [1] have not. As result we've got a
broken driver.

This patch can be reverted later when the second part will be ready (of course
if it is planned to do so). Any comments, Min? I could support with testing.

Second patch just adds support for 8A34002, which is compatible with 8A34001. As
I can see there is no need to update bindings, everything is already being done.

Link [2] to v1.

Changes in v2:
- Fix page register issue in rsmu_i2c
- Add support for 8a34002 in rsmu_i2c

Link [1]: https://lore.kernel.org/netdev/LV3P220MB1202F8E2FCCFBA2519B4966EA0192@LV3P220MB1202.NAMP220.PROD.OUTLOOK.COM/
Link [2]: https://lore.kernel.org/netdev/20260421090710.395591-1-dev.mbstr@gmail.com/
Signed-off-by: Matthew Bystrin <dev.mbstr@gmail.com>

Matthew Bystrin (2):
  mfd: rsmu: fix page register setup
  mfd: rsmu: add 8a34002 support

 drivers/mfd/rsmu_i2c.c | 8 +++-----
 drivers/mfd/rsmu_spi.c | 7 +++----
 2 files changed, 6 insertions(+), 9 deletions(-)

-- 
2.53.0


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

end of thread, other threads:[~2026-05-07 15:02 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-04-29  7:20 [PATCH v2 0/2] mfd: rsmu: fixes and new IC support Matthew Bystrin
2026-04-29  7:20 ` [PATCH v2 1/2] mfd: rsmu: fix page register setup Matthew Bystrin
2026-04-29  7:20 ` [PATCH v2 2/2] mfd: rsmu: add 8a34002 support Matthew Bystrin
2026-05-07 15:02 ` [PATCH v2 0/2] mfd: rsmu: fixes and new IC support Lee Jones

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.