SPI应用笔记
基本信息
- 来源: /工作相关/飞凌嵌入式imx6全部资料/原始下载资料/OKMX6DL、Q系列产品应用笔记/OKMX6DL&Q-S3-linux4.1.15应用笔记/SPI应用笔记.pdf
- 版本: V1.0 (2018.12.08)
- 页数: 8页
- 平台: 飞凌 OKMX6DL/Q-S3, Linux 4.1.15
核心内容
适用范围
本文适用于飞凌 OKMX6DL/Q-S3 平台 Linux 4.1.15 操作系统。
SPI接口配置步骤
1. 接口选择
- SPI接口采用 ecspi5
- 引脚分配(参考 IMX6DQRM.pdf Chapter 4):
- MISO: SD2_DAT0
- MOSI: SD2_CMD
- SCLK: SD2_CLK
- SS0: SD2_DAT1
2. 查找驱动和配置
2.1 查找ecspi驱动
在设备树文件 imx6q.dtsi 中搜索 ecspi5:
- 驱动匹配名:
fsl,imx6q-ecspi或fsl,imx51-ecspi - 驱动路径:
drivers/spi/spi-imx.c
2.2 配置内核选项
查看 drivers/spi/Makefile 确认配置选项:
- 需要将
CONFIG_SPI_IMX设置为y - 在
imx_v7_defconfig中添加配置
3. 添加设备树配置
在 imx6q-s3-sabresd.dts 中仿照 ecspi2 添加 ecspi5 配置。
在 imx6q.dtsi 的 &iomux 中添加引脚配置。
4. 查找spidev驱动
搜索 spidev:
- 驱动名:
"spidev" - 需要将
spi_spidev设置为y - 在
imx_v7_defconfig中修改配置
5. 编译验证
编译内核和设备树后,检查:
drivers/spi/下是否生成spi-imx.o和spidev.o- 生成说明已编译进内核
6. 烧写测试
- 替换烧写工具中的设备树和内核
- 重新烧写
- 开机选择刚替换的设备树
- 验证
/dev/spidev4.0节点存在
7. 测试方法
使用 /forlinx/cmdbin/ 下的 spidev_test:
./spidev_test -D /dev/spidev4.0注意事项
- ecspi5 和 ecspi2 使用同一个驱动设备
- 配置完成后需检查是否有其他复用冲突
- 参数需根据实际硬件调整
行动要点
- 修改设备树时注意检查引脚复用冲突
- 编译后验证.o文件是否生成
- 使用spidev_test进行环回测试