uboot 下MMC驱动

drivers\mmc
 
static const struct blk_ops mmc_blk_ops = {
 .read = mmc_bread,
#ifndef CONFIG_SPL_BUILD
 .write = mmc_bwrite,
 .erase = mmc_berase,
#endif
 .select_hwpart = mmc_select_hwpart,
};
 
U_BOOT_DRIVER(mmc_blk) = {
 .name  = "mmc_blk",
 .id  = UCLASS_BLK,
 .ops  = &mmc_blk_ops,
 .probe  = mmc_blk_probe,
};
需要注意函数:
int mmc_bind(struct udevice *dev, struct mmc *mmc, const struct mmc_config *cfg)
int mmc_unbind(struct udevice *dev)
 
 

static int mmc_blk_probe(struct udevice *dev) {  struct blk_desc *block_dev = dev_get_uclass_platdata(dev);  int dev_num = block_dev->devnum;  struct mmc *mmc = find_mmc_device(dev_num);

 if (!mmc)   return -ENODEV;  return mmc_init(mmc); }

 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值