Skip to main content
串行外设接口(SPI)是一种同步、全双工的 4 线制串行总线。

信号

各子系统的传输模式

接口组件

设备树源文件

API

软件配置

Linux 设备树示例

QUPAC 访问控制

配置步骤

1

启用内核配置

编辑 kernel_platform/kernel/arch/arm64/configs/qcom_defconfig:
2

在设备树中启用 SPI 节点

3

编译并刷写

编译内核和设备树更改,然后将镜像加载到设备上。

验证

1

编译 SPI 实用工具

spidev_test.c 实用工具位于 Linux 内核源码树的 tools/spi/ 目录下。它是一个使用 spidev 驱动的简单 SPI 测试程序,既可以在内核源码树中编译,也可以从独立副本编译。确保构建目录包含以下文件:
在 Ubuntu 构建主机上安装交叉编译器:
设置交叉编译环境:
编译 spidev_test:
2

将 spidev_test 传输到设备

3

运行测试

预期输出:

调试

故障排除

  • 确认设备树中 SPI 节点的 status 为 "okay"
  • 确认 QUPAC_Access.c 中设置了 QUPV3_PROTOCOL_SPI、AC_HLOS、bLoad=TRUE
  • 检查 GPIO 驱动强度和上下拉配置
  • 确认时钟相位和极性与目标设备匹配
  • 确认 CONFIG_QCOM_GPI_DMA=m
  • 检查设备树中的 dmas 和 dma-names
  • 确认 QUPAC_Access.c 中设置了 QUPV3_MODE_GSI

资源