spi子系统调用流程

原创 2016年08月30日 20:31:49

spi驱动:

1.注册platform_device

在arch/arm/mach-s3c24xx/smdk2440.c 中注册platform_device ,其中s3c2410_spi_info 作为platform_device.private_data. platform_device.name 为"s3c2410-spi".   

同时在在arch/arm/mach-s3c2440/mach-smdk2440.c 中注册spi_board_info(注册spi从设备的板级信息), 其中spi_board_info.bus_num=0/1, 与s2c2440_spi_info 中的bus_num 相同, 以后会通过bus_num 比对来匹配。


2:在driver/spi/spi-s3c24xx.c中调用module_platform_driver(s3c24xx_spi_driver);  注册了s3c24xx_spi_driver,其设备的名字为s3c2410-spi,此名字与arch/arm/mach-s3c2440/smdk2440.c 中注册platform_device中的设备名字一样,则匹配上了

3:如果匹配上就会调用spi控制器驱动中的s3c24xx_spi_probe函数,probe函数又会调用spi_bitbang_start函数,此函数调用spi_register_master函数来注册添加spi控制器,之后调用spi_match_master_to_boardinfo函数来匹配已经注册的从设备信息bus_num,如果如果设备的总线号bus_num与控制器的总线号相等,则spi_new_device来添加从机设备,然后从机设备又会通过设备名字与总线上的设备驱动进行匹配,匹配成功后调用从设备驱动总的probe函数,来进行从设备的硬件初始化以及注册字符设备驱动或块设备驱动来提供给用户接口函数使用。


相关文章推荐

LINUX驱动之SPI子系统之四spi_master的注册流程

LINUX驱动之SPI子系统之四spi_master的注册流程   平台设备的驱动,设备和总线的变量基本都直接静态变量或提前注册。比如目前的NAND, NAND的DEVICE是在ma...

linux SPI子系统驱动分析

  • 2012年10月24日 17:12
  • 69KB
  • 下载

基于Linux内核SPI子系统工作机制

基本思路,需要了解的知识点。 硬件方面:  1:什么是SPI  2:三星的ARM9 s3c2440 的SPI寄存器的使用  3:什么是CAN总线  4:CAN总线的传输及特点  5:MCP...
  • HAOMCU
  • HAOMCU
  • 2012年02月15日 14:43
  • 2648

基于S3C2440的嵌入式Linux驱动——SPI子系统解读(三)

转载自: http://blog.csdn.net/yj4231/article/details/7751279 该系列文章将分为四个部分:    第一部分,将对SPI子系统整...

基于S3C2440的嵌入式Linux驱动——SPI子系统解读(二)

转载自:http://blog.csdn.net/yj4231/article/details/7746643     本系列文章对Linux设备模型中的SPI子系统进行...

linu spi子系统驱动开发笔记之实例(2)

Linux SPI子系统驱动开发 介绍基于SPI子系统驱动开发框架,并以FS_S5PC100上的M25P10芯片为例(内核版本2.6.29),写了一个Linux SPI驱动实例。 实现流程:实现pla...

Linux驱动开发、20-SPI子系统分析

SPI总线 基础概念:   SPI(Serial Peripheral Interface,串行外围设备接口)总线,串行 主-从接口;很多集成与微控制器内部。   四线制,全双共模式,速度达...

二 spi 子系统(spidev.c)

一.spidev.c文件 看一个设备驱动的方法: 概览下重要的结构体spidev_data及全局变量device_list,bufsiz,SPIDEV_MAJOR... module_init标...
  • paomadi
  • paomadi
  • 2013年02月27日 14:50
  • 5491

linu spi子系统驱动开发笔记之实例(1)

linu spi子系统驱动开发实例 以W25Q32BV芯片为例子,介绍了 linu spi子系统驱动开发流程。platform_device设备定义及注册。platform_driver设备驱动实现。...

linux spi子系统驱动分析

原文网址 : http://blog.chinaunix.net/u2/66039/showart_1686204.html 2.6.18内核下已经添加了完整的spi子系统了,参考mtd的分析,...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:spi子系统调用流程
举报原因:
原因补充:

(最多只允许输入30个字)