|
g_PhysCodecAddr找到了,是个共用体,描述了wince的物理内存结构体。
但VIRTUAL_ADDR_OFFSET是干什么用的呢?还是不懂!
从名字上看好像是虚拟地址偏移。
buffer_y存的应该是HalAllocateCommonBuffer()输出的物理地址,那么buffer_y再加上VIRTUAL_ADDR_OFFSET就变成虚拟地址了?这就是物理地址到虚拟地址的映射关系?不懂!为什么是0x70000000呢?为了正好映射到不带缓存(uncahced)的虚拟地址0xA0000000?
HalAllocateCommonBuffer(&Adapter2, Codec_Mem_Size, &g_PhysCodecAddr, FALSE);是DMA专用内存申请函数吗?其中的”&g_PhysCodecAddr“参数得到的是物理地址吧?
望前辈们指点迷津啊!!! |
|