mmc_init函数流程分析

源码参考九鼎科技X210开发板捆绑的BSP中提取的uboot

int mmc_init(struct mmc *host)

函数定义在uboot/drivers/mmc/mmc.c中


1. 调用s3c_hsmmc_init()
在s3c_hsmmc_initialize()中进行过初始化,把函数指针赋值给mmc->init

err = host->init(host);

主要作用是reset emmc controller, 及对emmc controller相关寄存器进行赋值,最后设置时钟为400Khz

2. 发送命令进行Card初始化

emmc controller给card发送命令的方式是先进行结构体填充,再用mmc_send_cmd函数进行发送

结构体填充

struct mmc_cmd {
    ushort opcode;
    uint resp_type;
    uint
  • 1
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值