使用ioremap从MTD flash中读取块

时间:2016-02-02 15:38:04

标签: linux-kernel ioremap

我想知道从MTD闪存中读取块数据的预期结果,按照下面的代码:

#define PHY_ADDR 0x80000000   // certain physical memory location
void *dst;
dst = ioremap(PHY_ADDR,len);  // ioremapping
mtd_image->_read(mtd, from, len, retlen, dst);  // reading from MTD flash to dst buffer with len length

这段代码会将读取数据写入物理内存地址“0x80000000”吗?或者只是将数据放在指针dst中?我在哪里可以找到物理内存中的读取数据(例如使用gdb x / 16x“内存地址”)?

1 个答案:

答案 0 :(得分:0)

使用ioremap将物理内存映射到指针dst。这意味着mtd_read读取设备from上的地址范围from + lenmtd,并通过指针0x80000000将其写入物理地址dst。 / p>