当前位置: 首页>新闻资讯>技术问答

T113 SDC2配置问题排查

SD NAND-贴片式TF卡-贴片式SD卡-免费测试2025-10-138

这个问题很典型,是T113平台SDC2控制器配置问题。当SD卡无法识别而自动跳转到eMMC时,通常是软件配置导致的。以下是解决方案:

1. 检查设备树配置

1.1 确认SDC2控制器状态

// 在设备树中检查sdc2节点
&sdc2 {
    status = "okay";  // 必须为okay
    bus-width = <4>;
    cap-sd-highspeed;
    sd-uhs-sdr12;
    sd-uhs-sdr25;
    sd-uhs-sdr50;
    sd-uhs-sdr104;
    max-frequency = <150000000>;
    no-mmc;  // 重要:禁止MMC功能
    no-sdio; // 禁止SDIO功能
    // cd-gpios = <&pio PH 12 6>; // 根据实际硬件调整CD引脚
    cd-used-24M;
    /* cd-inverted; */ // 根据实际CD极性调整
};

1.2 检查引脚复用配置

&sdc2_pins_a {
    allwinner,pins = "PC2", "PC3", "PC4", "PC5", "PC6", "PC7";
    allwinner,function = "sdc2";
    allwinner,muxsel = <3>;
    allwinner,drive = <3>;
    allwinner,pull = <1>;
};

2. 内核配置检查

确保内核配置正确:

# 检查内核配置
make menuconfig

# 确保以下配置开启:
Device Drivers --->
    MMC/SD/SDIO card support --->
        <*> Sunxi SD/MMC Host Controller support
        [*]   Sunxi MMC DDR52 mode support
        [*]   Sunxi MMC HS200 mode support
        [*]   Sunxi MMC HS400 mode support

3. 调试步骤

3.1 检查驱动加载

# 查看MMC控制器状态
cat /sys/kernel/debug/mmc0/ios
cat /sys/kernel/debug/mmc1/ios
cat /sys/kernel/debug/mmc2/ios

# 查看SD卡检测
cat /sys/kernel/debug/gpio

# 检查驱动加载日志
dmesg | grep -i sdc
dmesg | grep -i mmc

3.2 强制识别SD卡

# 重新扫描SD卡槽
echo 1 > /sys/bus/mmc/devices/mmc2:0001/uevent

# 或者强制移除再添加
echo 1 > /sys/bus/mmc/devices/mmc2:0001/remove
echo 1 > /sys/bus/mmc/drivers/mmcblk/rescan

4. 常见问题排查

4.1 时钟配置问题

// 在设备树中检查时钟配置
&sdc2 {
    max-frequency = <150000000>;
    /* 确保时钟源正确 */
    clocks = <&ccu CLK_BUS_MMC2>, <&ccu CLK_MMC2>;
    clock-names = "ahb", "mmc";
};

4.2 电源管理配置

// 检查SD卡电源控制
&sdc2 {
    vmmc-supply = <&reg_dcdc1>; // 确保电源控制正确
    vqmmc-supply = <&reg_ldo2>; // IO电压
};

5. 软件强制方案

如果硬件检测有问题,可以软件强制指定:

// 在驱动中强制设置卡类型
static int sunxi_mmc_scan(struct mmc_host *host)
{
    // 强制设置为SD卡
    host->caps |= MMC_CAP_SD_HIGHSPEED;
    // 禁用eMMC检测
    host->caps &= ~MMC_CAP_MMC_HIGHSPEED;
    
    return mmc_rescan(host);
}

6. 验证步骤

  1. 编译更新设备树

  2. 重启系统

  3. 检查日志:

dmesg | grep -i "sdc|mmc"

4.查看设备节点:

ls /dev/mmcblk*

按照以上步骤排查,应该能解决SDC2无法识别T卡的问题。重点是设备树配置和确保eMMC相关配置被正确禁用。

热门标签:SD NAND FLASH 贴片式TF卡 贴片式SD卡 SD FLASH NAND FLASH


下一篇:没有了!

SD NAND-贴片式TF卡-贴片式SD卡-免费测试

深圳市芯存者科技有限公司

联系我们

电话:176-6539-0767

Q Q:135-0379-986

邮箱:1350379986@qq.com

地址:深圳市南山区后海大道1021号C座

商务咨询
商务咨询
技术支持
技术支持