我想知道从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“内存地址”)?
答案 0 :(得分:0)
使用ioremap
将物理内存映射到指针dst
。这意味着mtd_read
读取设备from
上的地址范围from + len
到mtd
,并通过指针0x80000000
将其写入物理地址dst
。 / p>