基于linux3.0操作系统驱动分析——GPIO驱动
时间:04-26 13:49 阅读:5848次
*温馨提示:点击图片可以放大观看高清大图
简介:ZYNQ7000基于linux3.0操作系统驱动分析——GPIO驱动
ZYNQ7000系列是XILINX公司新推出的一款SOC芯片系列,最大的特点是实现了处理器(PS)和可编程逻辑(PL)的紧密集成,用XILINX的ISE工具不但可以实现可编程逻辑的常规设计,又可以针对处理器端进行优化定制,非常方便。大概指标如下:
双核 ARM Cortex™-A9 MPCore
高达 800MHz
可通过 NEON 扩展及单双精度浮点单元进行增强
32kB 指令及 32kB 数据 L1 缓存
统一的 512kB L2 缓存
256kB 片上存储器
DDR3、DDR2 以及 LPDDR2 动态存储控制器
2 个 QSPI、NAND Flash 以及 NOR 闪存控制器
2 个 USB2.0 (OTG)、2 个 GbE、2 个 CAN2、0B、2 个 SD/SDIO、2 个 UART、2 个 SPI、2 个 I2C、4 个32b GPIO
用于实现安全启动和安全配置的 AES 和 SHA 256b 加密引擎
双 12 位 1Msps 数模转换器
最多接受17对差分模拟输入
Advanced Low Power 28nm Programmable Logic:
28k 至 350k 个逻辑单元(约 430k 至 5.2M 个同等的 ASIC 门电路)
240KB 至 2180KB 的可扩展式 Block RAM
80 至 900 个 18x25 DSP Slice (58 至 1080 GMACS 的 DSP 峰值性能)
PCI Express® Gen2x8(最大器件中)
154 至 404 个用户 IO(多路复用和 SelectIO™)
4 至 16 个 12.5Gbps 收发器(最大器件中)
详细内容请登录http://china.xilinx.com/products/silicon-devices/epp/zynq-7000/index.htm查看。
从此篇起,开始分析ZYNQ7000基于linux3.0的一些常用驱动,欢迎各位大侠一起研究。首先是GPIO驱动。
ZYNQ7000主要有54个面向外设的GPIO信号脚,另外在处理器和可编程逻辑之间有192个gpio信号脚使用,具体是64个输入信号和128个输出信号。分别由4个bank管理。
从xilinx提供的官方bsp包可以看出,ZYNQ7000的GPIO驱动架构是在GPIOLIB中实现的。这样的实现好处是非常适合测试和应用程序调用,比如在测试阶段可以直接在shell下面输入命令达到测试控制GPIO输入输出的效果,非常方便。