Android010 MMC SD卡 驱动初始化通讯相关

一、官方标准原图如下:

二、源码流程分析如下:

三、方法解释(待补充):

2.1 SD卡插拔检测
  1. sdhci_irq:中断信号
  2. mmc_gpio_cd_irqt:判断插拔
  3. mmc_detect_change
  4. mmc_rescan
  5. mmc_rescan_try_freq
     1. mmc_power_up
     2. mmc_hw_reset_for_init
     3. sdio_reset:CMD52
     4. mmc_go_idle:CMD0
     5. mmc_send_if_cond:CMD8
     6. mmc_attach_sdio:CMD5
     7. mmc_attach_sd
2.2 检测到SD卡,初始化:mmc_attach_sd
    1. mmc_send_app_op_cond:ACMD41
    2. mmc_attach_bus
    3. mmc_select_voltage
    4. mmc_sd_init_card
    5. mmc_release_host
    6. mmc_add_card
    7. mmc_claim_host
    8. mmc_init_clk_scaling
    
2.3  mmc_sd_init_card 过程
    1. mmc_sd_get_cid
       1. mmc_go_idle:CMD0
       2. mmc_send_if_cond:CMD8
       3. mmc_send_app_op_cond:ACMD41
       4. mmc_set_signal_voltage:CMD11
       5. mmc_all_send_cid:CMD2
    2. mmc_send_relative_addr:CMD3
    3. mmc_sd_get_csd
       1. mmc_send_csd:CMD9
       2. mmc_decode_csd
    4. mmc_set_dsr:CMD4
    5. mmc_select_card:CMD7
    6. mmc_sd_setup_card
       1. mmc_app_send_scr:CMD51
       2. mmc_decode_scr
       3. mmc_read_ssr:ACMD13
       4. mmc_init_erase
       5. mmc_read_switch
          1. mmc_sd_switch:CMD6
       6. mmc_sd_get_ro
       7. mmc_card_set_readonly
    7. mmc_sd_init_uhs_card
       1. mmc_app_set_bus_width:ACMD6
       2. mmc_set_bus_width

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值