diff --git a/Software/Development/OperatingSystem/Linux/KernelDriver/Linux_SPI_子系统_x86平台.md b/Software/Development/OperatingSystem/Linux/KernelDriver/Linux_SPI_子系统_x86平台.md index abf57d2..4847a9b 100644 --- a/Software/Development/OperatingSystem/Linux/KernelDriver/Linux_SPI_子系统_x86平台.md +++ b/Software/Development/OperatingSystem/Linux/KernelDriver/Linux_SPI_子系统_x86平台.md @@ -184,7 +184,13 @@ module_exit(spidev_exit); ## 对于开发的一些简单指导 -基于当前的 SPI 子系统框架,一般有两种类型的设备驱动需要开发——SPI 控制器驱动和 SPI 从设备驱动。SPI 控制器驱动一般由芯片供应商或开源社区会提供,下游的开发者只需要实现 SPI 从设备驱动即可。对于 SPI 控制器驱动,可以参考 pxa2xx 这个驱动程序;对于 SPI 从设备驱动可以参考 spidev 这个驱动程序。 +基于当前的 SPI 子系统框架,首先要有办法感知或声明 SPI 控制器以及从设备的存在,然后开发对应的驱动程序。 + +系统一般是通过总线枚举、Device Tree 或 ACPI 表来感知或声明设备存在。 + +有两种类型的设备驱动需要开发——SPI 控制器驱动和 SPI 从设备驱动。SPI 控制器由总线号匹配,SPI 从设备由 name 字段匹配。 + +SPI 控制器驱动一般由芯片供应商或开源社区会提供,下游的开发者只需要实现 SPI 从设备驱动即可。对于 SPI 控制器驱动,可以参考 pxa2xx 这个驱动程序;对于 SPI 从设备驱动可以参考 spidev 这个驱动程序。 ## 总结