Linux 内核 EISA 总线】的更多相关文章

扩展 ISA (EISA) 总线是一个对 ISA 的 32-位 扩展, 带有一个兼容的接口连接器; ISA 设备板可被插入一个 EISA 连接器. 增加的线在 ISA 接触之下被连接. 如同 PCI 和 MCA, EISA 总线被设计给无跳线的设备, 并且它有和 MCA 相同的特性: 32- 位地址和数据线, 多主 DMA, 和共享中断线. EISA 设备被软件配置, 但是它们不需要任 何特殊的操作系统支持. EISA 驱动已经存在于 Linux 内核给以太网驱动和 SCSI 控制器. 一个 E…
linux内核SPI总线驱动分析(一)(转) 下面有两个大的模块: 一个是SPI总线驱动的分析            (研究了具体实现的过程) 另一个是SPI总线驱动的编写(不用研究具体的实现过程) SPI总线驱动分析   1 SPI概述      SPI是英语Serial Peripheral interface的缩写,顾名思义就是串行外围设备接口,是Motorola首先在其MC68HCXX系列处理器上定义的.SPI接口主要应用在 EEPROM,FLASH,实时时钟,AD转换器,还有数字信号处…
另一个对 ISA 的扩展是 VESA Local Bus(VLB) 接口总线, 它扩展了 ISA 连接器, 通过 添加第 3 个知道长度的槽位. 一个设备可只插入这个额外的连接器(不用插入 2 个关联 的 ISA 连接器), 因为 VLB 槽位从 ISA 连接器复制了所有的重要信号. 这样"独立"的 VLB 外设不使用 ISA 槽位是少见的, 因为大部分设备需要伸到后面板, 使它们的外部连 接器是可用的. VESA 总线比 EISA , MCA, 和 PCI 总线在它的能力方面更加限制…
任何在 PCI 总线上的设备有参数 name 和 SUBSYSTEM 环境变量设置为值 pci. PCI 子系 统也一直添加下面 4 个环境变量: PCI_CLASS 设备的 PCI 类号, 16 进制. PCI_ID 设备的 PCI 供应商和设备 ID, 16 进制, 结合成这样的格式 供应者:设备. PCI_SUBSYS_ID PCI 子系统供应商和子系统设备 ID, 以 子系统供应者:子系统设备 的格式结合. PCI_SLOT_NAME PCI 插口"名", 内核给予这个设备的.…
另一个有趣的, 但是几乎被忘记的, 接口总线是 NuBus. 它被发现于老的 Mac 计算机(那 些有 M68K CPU 家族的). 所有的这个总线是内存映射的(象 M68K 的所有东西), 并且设备只被地理式寻址. 这对 Apple 是好的和典型的, 因为更老的 Apple II 已经有一个类似的总线布局. 不好的是几 乎不可能找到 NuBus 的文档, 因为 Apple 对于它的 Mac 计算机一直遵循的封锁任何东 西的政策(不像之前的 Apple II, 它的源码和原理图用很少的代价即可得…
微通道体系(MCA)是一个 IBM 标准, 用在 PS/2 计算机和一些笔记本电脑. 在硬件级别, 微通道比 ISA 有更多特性. 它支持多主 DMA, 32-位地址和数据线, 共享中断线, 和地理 式寻址来存取每块板的配置寄存器. 这样的寄存器被称为可编程选项选择(POS), 但是它 们没有 PCI 寄存器的全部特点. Linux 对 微通道的支持包括输出给模块的函数. 一个设备驱动可读整数值 MCA_bus 来看是否它在一个微通道计算机上运行. 如果这个符 号是一个预处理宏, 宏 MCA_b…
简而言之,SPI驱动的编写分为: 1.spi_device就构建并注册  在板文件中添加spi_board_info,并在板文件的init函数中调用spi_register_board_info(s3c_spi_devs,ARRAY_SIZE(s3c_spi_devs)); spi_register_board_info(s3c_spi_devs,ARRAY_SIZE(s3c_spi_devs));//注册spi_board_info.这个代码会把spi_board_info注册到链表board…
本文主要有两个大的模块:一个是SPI总线驱动的分析 (研究了具体实现的过程): 另一个是SPI总线驱动的编写(不用研究具体的实现过程). 1 SPI概述 SPI是英语Serial Peripheral interface的缩写,顾名思义就是串行外围设备接口,是Motorola首先在其MC68HCXX系列处理器上定义的.SPI接口主要应用在 EEPROM,FLASH,实时时钟,AD转换器,还有数字信号处理器和数字信号解码器之间.SPI是一种高速的,全双工,同步的通信总线,并且在芯片的管脚上只占用四…
转自Linux中国 驱动程序是使内核能够沟通和操作硬件或协议(规则和标准)的小程序.没有驱动程序,内核不知道如何与硬件沟通或者处理协议(内核实际上先发送指令给BIOS,然后BIOS传给硬件). Linux的内核代码在驱动程序文件夹中以源代码的形式包含了许多驱动程序.驱动文件夹中的每个文件夹会在下面说明.在配置和 编译内核时,这样有助于你了解驱动程序.否则,用户可能会在编译时加入不必要的或者漏掉重要的驱动.驱动代码通常会包含一个单行注释来指出驱动的目的. 比如,tc的驱动代码,有一行的注释说是用于…
转自:http://www.lai18.com/content/432194.html 驱动程序是使内核能够沟通和操作硬件或协议(规则和标准)的小程序.没有驱动程序,内核不知道如何与硬件沟通或者处理协议(内核实际上先发送指令给BIOS,然后BIOS传给硬件). Linux的内核代码在驱动程序文件夹中以源代码的形式包含了许多驱动程序.驱动文件夹中的每个文件夹会在下面说明.在配置和 编译内核时,这样有助于你了解驱动程序.否则,用户可能会在编译时加入不必要的或者漏掉重要的驱动.驱动代码通常会包含一个单…