2014年(37)
发布时间:2014-04-02 17:08:59
使用scatterlist的原因就是系统在运行的时候内存会产生很多碎片,比如4k,100k的,1M的,有时候对应磁盘碎片,总之就是碎片。而在网络和磁盘操作中很多时候需要传送大块的数据,尤其是使用DMA的时候,因为DMA操作的物理地址必须是连续的。假设要1M内存,此时可以分配一个整.........【阅读全文】
发布时间:2014-04-02 17:08:00
本文作为i2c驱动分析的第一部分,主要讲述:
1、I2C总线原理。
2、I2C架构概述。
3、I2C代码在内核中的结构。
4、Algorithm中的传输函数master_xfer。
5、总线驱动注册和探测函数。......【阅读全文】
发布时间:2014-04-02 17:07:00
本文作为i2c驱动分析的第三部分,从驱动和应用层分析了i2c中的I2c-dev模块,此模块在"/dev/"目录下创建设备节点,应用层可以通过此节点操作i2c设备。文章第一部分讲解了i2c-dev驱动程序,第二部分讲解了应用层操作I2c的方法,提供了应用层的测试程序。......【阅读全文】
发布时间:2014-04-02 17:06:50
本文继续 《Linux I2C驱动分析(一)----I2C架构和总线驱动》部分,首先讲述了板级设备的注册,为讲述函数i2c_scan_static_board_info(adap)打下基础,接着又描述了I2C数据传输过程中所调用的接口函数,本文和《Linux I2C驱动分析(一)----I2C架构和总线驱动》是一种继承的关系。......【阅读全文】