05 2013 档案

摘要:SDIO的master board info:---------------------------------------------------------------------------------------------------------#define SD0_DETECT_GPIO 101//驱动器所占资源【host寄存器所占用的AP地址,及大小,探测GPIO/中断等】static struct resource sprd_sdio_resource[][3] = { SDIO_RESOURCE_BUILDER(SPRD_SDIO0_BASE, SPRD_SDIO0_SIZ 阅读全文
posted @ 2013-05-22 13:44 天地不仁 阅读(4114) 评论(0) 推荐(0) 编辑
摘要:内存映射结构:1.32位地址线寻址4G的内存空间,其中0-3G为用户程序所独有,3G-4G为内核占有。2.struct page:整个物理内存在初始化时,每个4kb页面生成一个对应的struct page结构,这个page结构就独一无二的代表这个物理内存页面,并存放在mem_map全局数组中。3.段式映射:首先根据代码段选择子cs为索引,以GDT值为起始地址的段描述表中选择出对应的段描述符,随后根据段描述符的基址,本段长度,权限信息等进行校验,校验成功后。cs:offset中的32位偏移量直接与本段基址相累加,得出最终访问地址。0-3G与mem_map的映射方式:因linux中采用的段式映射为 阅读全文
posted @ 2013-05-15 13:53 天地不仁 阅读(7302) 评论(1) 推荐(0) 编辑
摘要:spi slave驱动spi slave驱动在kernel中可以主要参考spidev.c,这是一个字符驱动,可以匹配kernel中的多个名称为“spidev”的spi设备,分析这个文件,主要有以下几个重点:1. 如何编写多设备公用驱动2. 如何封装读写请求到spi框架层3. spi message请求如何分发到master自spi_board_info或者spi master注册后,两者就已经完成了匹配的工作,spi slave驱动不关心任何匹配的细节,它只需要完成与spi slave的匹配,就可以通过slave进而找到master。这里是通过spi_register_driver(& 阅读全文
posted @ 2013-05-14 22:10 天地不仁 阅读(8000) 评论(1) 推荐(0) 编辑

点击右上角即可分享
微信分享提示