发布时间:2016-09-03 14:13:39
摘要:一般的子系统架构都被划分为3层:核心层、总线层、设备层。具体的代码实现,请参考具体的子系统架构和实现,这里仅仅笼统的小结一下,总线驱动和设备驱动的区别和关系,使开发人员有有最起码的认识。总线驱动和设备驱动的关系? 总线驱动:在linux驱动架构中,几乎不需要驱动开发人员再添加bus,因为linux内.........【阅读全文】
发布时间:2016-09-03 12:36:29
摘要:本文小结一下设备驱动,这里的设备既包含soc外挂的外设,又包含集成在soc内部的设备。设备驱动 设备驱动的最底层驱动,其实都是寄存器级驱动,为什么这么说?这是因为几乎每一种外设设备都是通过读写设备上的寄存器来进行的,通常包括控制寄存器、状态寄存器和数据寄存器三大类,而外设的寄存器通常被CPU连续.........【阅读全文】
发布时间:2016-09-02 18:34:01
摘要:要想搞懂虚拟地址,物理地址,IO地址是什么?有什么区别?就要先搞懂MMU。1 什么是MMU? 我们通过百度百科中MMU的发展历史,来认识一下MMU。 许多年以前,当人们还在使用DOS或是更古老的操作系统的时候,计算机的内存还非常小,一般都是以K为单位进行计算,相应的,当时的程序规模也不大,所以内存.........【阅读全文】
发布时间:2016-09-02 18:20:53
微机 微机按指令集可分为精简指令集计算机(RISC)(如ARM)和复杂指令集计算机(CISC)(如X86)外设 IO空间 IO内存 X86体系架构中,除了物理地址空间外,为外设专门实现了一个单独地址空间,称为IO地址空间或IO端口空间,CPU通过设立专门的IO指令来访问。被称为“独立编址” RISC指令.........【阅读全文】
发布时间:2016-08-31 19:12:54
背景介绍:在gpio、uart、i2c、spi等驱动及应用程序开发中,不可避免的会涉及到platform总线,所以本文对platform做最精辟的介绍。1 platform bus是从Linux 2.6 kernel起,在Linux设备模型中引入的一个虚拟总线,设备用platform_device表示,驱动用platform_driver表示。相比usb bus、pci bus而言platform更加简洁,其“主.........【阅读全文】