IMX6ULL嵌入式Linux驱动开发学习
以下内容是我在学习正点原子IMX6ULL
开发板alpha
中记录的笔记,部分摘录自正点原子IMX6ULL开发手册
。
一、地址映射
因为
linux
使用MMC
,因此在驱动开发时,不能直接对寄存器物理地址进行读写操作。在
more >>linux
里面操作的都是虚拟地址,所以需要先得到物理地址对应的虚拟地址。获得物理地址对应的虚拟地址使用va = ioremap(cookie,size)
函数,第一个参数是物理地址起始地址,第二个参数就是要转换的字节数量,返回的是申请到的虚拟地址。卸载驱动的时候使用iounmap(va)
;