首页问答详情

海思3559A EMMC读写API接口说明

   
硅天下科技
硅天下科技  发布于  2020-08-27 15:56:40
采纳率 0%
38个问答
一、Uboot阶段

1.1、mmc工具

uboot命令行阶段可以使用mmc命令进行读写
示例:(1)  read   

               mmc read 0 0x42000000 0x400  0x400

               md 0x42000000 0x100

           (2)write

               mmc write 0x42000000 0x0 0x800


1.2、 API接口

  参考cmd/mmc.c文件,有emmc的读写接口
示例:

struct mmc *mmc;

uint32_t *p =(uint32_t *)0x42000000;

uint32_t magic[10] = {0};

mmc = init_mmc_device(0x0, false);

blk_dread(mmc_get_blk_desc(mmc), 0x39800, 0x1, p);

printf("boot: read emmc magic =0x%x\n", *p);

二、Linux阶段

       由于EMMC是块设备,所以linux可以直接通过标准read write接口操作即可
eMMC 分区 读写样例

static int realrwdata(rwinfo *info)
{
    int device_fd = -1;
    device_fd = open(info->path, O_RDWR | O_SYNC);
    if (device_fd < 0) {
        return -1;
    }

    lseek(device_fd, info->rw_offset, SEEK_SET);

if(info->rw_type == DATA_W)
    info->data_size = write(device_fd, (char*)info->data_buf, info->rw_size);
else if(info->rw_type == DATA_R)
   info->data_size = read(device_fd, (char*)info->data_buf, info->rw_size);

    fsync(device_fd);
    close(device_fd);
    return info->data_size;
}

我来回答
2117
0
0
回答
1个
易百纳技术社区
wer 发布于2022-09-29 11:43:56

0x39800 是表示从哪开始呢 这个是从分区的第一个算?

0

Markdown 语法

  • 加粗 **内容**
  • 斜体 *内容*
  • 删除线 ~~内容~~
  • 引用 > 引用内容
  • 代码 `代码`
  • 代码块 ```编程语言↵代码```
  • 链接 [链接标题](url)
  • 无序列表 - 内容
  • 有序列表 1. 内容
  • 缩进 内容
  • 图片 ![alt](url)

Markdown 语法

  • 加粗 **内容**
  • 斜体 *内容*
  • 删除线 ~~内容~~
  • 引用 > 引用内容
  • 代码 `代码`
  • 代码块 ```编程语言↵代码```
  • 链接 [链接标题](url)
  • 无序列表 - 内容
  • 有序列表 1. 内容
  • 缩进 内容
  • 图片 ![alt](url)
+ 添加网盘链接/附件
或将文件直接拖到这里
悬赏:
EBC
网盘
* 网盘链接:
* 提取码:
悬赏:
EBC
相关问答
无更多相似问答 去提问
Loading...
易百纳技术社区
确定要删除此文章、专栏、评论吗?
确定
取消
易百纳技术社区
易百纳技术社区
在专栏模块发布专栏,可获得其他E友的打赏
易百纳技术社区
回答悬赏问答,被题主采纳后即可获得悬赏金
易百纳技术社区
在上传资料时,有价值的资料可设置为付费资源
易百纳技术社区
达到一定金额,收益即可提现~
收益也可用来充值ebc,下载资料、兑换礼品更容易
易百纳技术社区
活动规则
  • 1.周任务为周期性任务,每周周一00:00刷新,上周完成的任务不会累计到本周,本周需要从头开始任务,当前任务完成后才可以完成下一个任务
  • 2.发布的专栏与资料需要与平台的板块有相关性,禁止注水,专栏/资料任务以审核通过的篇数为准
  • 3.任务完成后,现金奖励直接打款到微信账户;EBC/收益将自动发放到个人账户,可前往“我的钱包”查看;其他奖励请联系客服兑换
  • 4.每周最后三个任务将会有以下奖品掉落:社区热卖开发板、小米音响、视频年度会员、京东卡、华为手机等等
易百纳技术社区
升级提醒
易百纳技术社区

恭喜您由入门

社区送出礼品一份

请填写您的收件地址,礼品将在3个工作日寄出

易百纳技术社区