[SRU][Q:raspi/N:raspi][PATCH 0/1] RP1's sdio controller requires sdhci-of-dwcmshc driver (LP: #2136415)

Juerg Haefliger juerg.haefliger at canonical.com
Mon Jan 12 11:01:54 UTC 2026


BugLink: https://bugs.launchpad.net/bugs/2136415

[ Impact ]

Summary:
----------------
The kernel config `CONFIG_MMC_SDHCI_OF_DWCMSHC` is not enabled. This is required by the RP1 peripheral controller so that the Raspberry Pi 5 leverages the SDIO bus.

Description:
----------------

The SD card attached to a Raspberry Pi Compute Module 5 via GPIOs 22-27 is not working properly, although the `sdio` / `sdio-pi5` overlay is present. In Raspberry Pi OS, everything works fine. I tried different kernels, distros, and configurations. I found out that the overlay loads, the clocks appear, but no MMC host binds. Finally, I discovered that the driver `CONFIG_MMC_SDHCI_OF_DWCMSHC` is not enabled in the Ubuntu kernel for Raspberry Pi devices, which is necessary for the RP1 SDIO controller.

Evidence:
----------------
The `rp1_mmc0` and `rp1_mmc1` nodes in RP1 dtsi (arch/arm64/boot/dts/broadcom/rp1.dtsi) are compatible with `raspberrypi,rp1-dwcmshc`. This is implemented by the `sdhci-of-dwcmshc` driver (drivers/mmc/host/sdhci-of-dwcmshc.c) and enabled by the kernel config `CONFIG_MMC_SDHCI_OF_DWCMSHC`.
Furthermore, the RP1 datasheet states that the `SDIO controller is a Synopsys MSHC peripheral v1.70a`.

Hardware:
----------------
- Raspberry Pi 5
- Raspberry Pi Compute Module 5

Ubuntu release:
----------------
Description:	Ubuntu 24.04.3 LTS
Release:	24.04

Package affected:
----------------
linux-raspi:
  Installed: (none)
  Candidate: 6.8.0-1043.47
  Version table:
     6.8.0-1043.47 500
        500 http://ports.ubuntu.com/ubuntu-ports noble-updates/main arm64 Packages
        500 http://ports.ubuntu.com/ubuntu-ports noble-security/main arm64 Packages
     6.8.0-1004.4 500
        500 http://ports.ubuntu.com/ubuntu-ports noble/main arm64 Packages

Proposed fix:
----------------
Set the kernel config `CONFIG_MMC_SDHCI_OF_DWCMSHC` to module by default. Patch attached.

Others:
----------------
- https://forums.raspberrypi.com/viewtopic.php?t=392105

[ Fix ]

Remove raspi annotations that disable the option.

[ Test Case ]

Verify module sdhci-of-dwcmshc.ko exists and is functional.

[ Where Problems Could Occur ]

This enables new modules which - as always with kernel - can crash/stall/hang a system when loaded. Should only affect systems that have the HW that needs the new module(s).

Juerg Haefliger (1):
  UBUNTU: [Config] raspi: Don't disable MMC_SDHCI_OF_DWCMSHC

 debian.raspi/config/annotations | 1 -
 1 file changed, 1 deletion(-)

-- 
2.51.0




More information about the kernel-team mailing list