You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

树莓派5上SDIO WiFi卡枚举失败,树莓派4正常工作求助

树莓派5 SDIO WiFi卡枚举失败的设备树问题求助

目标

我需要通过树莓派内置的microSD卡槽(TF卡槽)连接一块外部1.8V SDIO WiFi卡。选择该卡槽是因为40针GPIO header仅支持3.3V逻辑电平。

可正常工作的配置:树莓派4

在树莓派4上的配置可完美运行,SDIO WiFi卡可正确枚举。

设备树Overlay

使用自定义Overlay文件 emmc_wifi_rpi4.dts,内容如下:

/dts-v1/;
/plugin/;

/ {
    compatible = "brcm,bcm2711";

    fragment@0 {
        target = <&emmc2>;
        __overlay__ {
            status = "disabled";
        };
    };

    fragment@1 {
        target = <&soc>;
        __overlay__ {
            mmc@7e340000 {
                compatible = "brcm,bcm2835-sdhci";
                reg = <0x7e340000 0x100>;
                interrupts = <0x00 0x7e 0x04>;
                clocks = <&clocks 0x33>;
                pinctrl-names = "default";
                pinctrl-0 = <&emmc_gpio48>;
                bus-width = <4>;
                status = "okay";
                #address-cells = <1>;
                #size-cells = <0>;
                dma-names = "rx-tx";
                dmas = <&dma 11>;
                brcm,overclock-50 = <0>;
                sd-uhs-sdr104;
            };
        };
    };
};

失败的配置:树莓派5

将树莓派4的配置复制到树莓派5后运行失败,SDIO WiFi卡未被检测到,枚举失败。

设备树Overlay

创建了新的Overlay文件 emmc2-wifi_rpi5.dts,内容如下:

/dts-v1/;
/plugin/;

/ {
    compatible = "brcm,bcm2712";

    fragment@0 {
        target = <&sdio1>;
        __overlay__ {
            status = "disabled";
        };
    };

    fragment@1 {
        target = <&soc>;
        __overlay__ {
            mmc@fff000 {
                compatible = "brcm,bcm2712-sdhci";
                reg-names = "host\0cfg";
                reg = <0xfff000 0x260 0xfff400 0x200>;
                interrupts = <0x00 0x111 0x04>;
                clocks = <0x08>;
                pinctrl-names = "default";
                pinctrl-0 = <0x09 0x0a>;
                vqmmc-supply = <0x0b>;
                bus-width = <0x04>;
                status = "okay";
                #address-cells = <1>;
                #size-cells = <0>;
                sd-uhs-sdr104;
                cd-gpios = <0x0d 0x05 0x01>;
                supports-cqe = <0x01>;
            };
        };
    };
};

逻辑分析仪排查结果

通过逻辑分析仪调试发现关键差异:

  • 在树莓派4上,主机发送CMD5(IO_SEND_OP_COND)后,SDIO WiFi卡会返回有效响应。
  • 在树莓派5上,主机发送CMD5后,SDIO WiFi卡完全没有响应。

树莓派5上SDIO WiFi卡对CMD5无响应是枚举失败的核心原因,这可能指向电气接口问题(如电源/电压)。

问题与疑问

能否帮我理解树莓派5上枚举失败的原因?

我怀疑树莓派4(BCM2711)和树莓派5(BCM2712/RP1)之间存在显著架构差异,尤其是设备树处理pinctrl、clocks或电源供应(vqmmc-supply)的方式,但不确定Overlay文件需要做出哪些具体修改。

如果有助于调试,我可以提供所有四个DTS文件的内容。

提前感谢!

内容的提问来源于stack exchange,提问作者user31577988

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.12 00:45:07