当前位置:  技术问答>linux和unix

请教linux下spi驱动问题

    来源: 互联网  发布时间:2017-04-01

    本文导语:  我内核中添加了spi驱动相关选项,编译运行后 cat /proc/devices 显示已经有spi驱动设备节点。/sys/bus/platform/devices/ 目录下也已经有spi 但是/dev 目录下没有spi设备。请问我该怎么操作作呢?因为我需要在应用程序中操作...

我内核中添加了spi驱动相关选项,编译运行后 cat /proc/devices 显示已经有spi驱动设备节点。/sys/bus/platform/devices/ 目录下也已经有spi
但是/dev 目录下没有spi设备。请问我该怎么操作作呢?因为我需要在应用程序中操作spi接口(打开,读写等操作),用来与外部spi设备通信。请问我我该怎么实现?
我看网上有的说需要在添加内核驱动的时候选择 user mode spi device driver support  。我已经添加了,但还是不行。

root /$ find / -name '*spi*'
/sys/devices/platform/mxc_spi.0
/sys/devices/platform/mxc_spi.0/spi_master
/sys/devices/platform/mxc_spi.0/spi_master/spi1
/sys/devices/platform/mxc_spi.0/spi1.1
/sys/bus/platform/devices/mxc_spi.0
/sys/bus/platform/drivers/mxc_spi
/sys/bus/platform/drivers/mxc_spi/mxc_spi.0
/sys/bus/platform/drivers/lcd_spi
/sys/bus/platform/drivers/spi_imx
/sys/bus/spi
/sys/bus/spi/devices/spi1.1
/sys/bus/spi/drivers/spidev
/sys/class/spi_master
/sys/class/spi_master/spi1
/sys/class/spidev
/sys/module/spidev
/usr/src/linux/include/linux/spi
/usr/src/linux/include/linux/spi/spidev.h



|
不需要选择user mode spi device driver support,假如使用内核自带的SPI驱动的话,就需要选择user mode spi device driver support。
SPI子系统框架中注册spi_device 的注册需要在arch/arm/mach-xx/目录的版文件中添加spi_board_info(配置spi设备的基本特性包括频率,模式,片选信号),这样会在/sys/bus/spi/device/下产生spi设备节点,但是/dev目录下的设备节点需要自己手动创建或者在spi设备驱动中probe函数中添加自动创建设备节点的代码例如:
data_spi->devt = MKDEV(SPI_MAJOR,0); 
device_create(spi_class,&spi_dev->dev,data_spi->devt,data_spi,"mp");
spi_class = class_create (THIS_MODULE,"mp");
这样就会在/dev目录下产生mp设备节点



|
需要在arch/arm/mach-xx/目录的版文件中添加spi_board_info(主要是配置你的spi设备的基本特性包括频率,模式,片选信号),并注册,这样才会产生spi的设备节点。

|
有些设备文件可以手动添加。

|
可以看看 kernel下的Documentation下的spi文档

|
实在不行,把spi驱动做成char型驱动,直接操作硬件接口

    
 
 

您可能感兴趣的文章:

  • 请教有关linux驱动开发,按关机键关机时,驱动应作哪些结束工作?
  • 请教!关于linux字符驱动程序
  • 请教一下在驱动里怎么调用应用程序
  • 请教!linux设备驱动
  • 请教用户空间编写设备驱动
  • Linux新手请教声卡驱动!!!!!!!!!!!
  • 请教各位大大 怎样编写LINUX触摸屏的驱动程序?
  • 请教Linux设备驱动的具体应用(基于PC)
  • 请教linux驱动复杂,庞大的结构
  • 请教一个关于驱动测试程序的问题
  • 高分相送,请教cs5530芯片组声卡驱动的问题
  • 请教:怎么安装声卡驱动?
  • 请教关于linux开发驱动程序的方向
  • 巨难请教网卡驱动
  • 请教一个显卡问题:我是u5的机器,它的显卡是集成的吗?需要安装驱动吗?
  • 请教单片机驱动程序开发
  • 《DCAD-620U ADSL Modem》linux下没有驱动怎么办?高分请教(是usb的adsl modem)
  • 高分请教一个串口驱动模块加载的问题
  • sql server数据库有没有专门的jdbc驱动程序,若有,请教怎样获得?
  • 请教如何安装内猫的驱动程序
  • 请教本地硬盘安装问题请教本地硬盘安装问题
  • 请教,请教,这个问题是为什么????
  • ■请教■请教redhat最基本的问题!
  • 请教一个 shell 问题,我用下面这个 shell 语句总是失败,请教
  • 高分请教,各位大侠,请教一个问题,理论高手请进??谢谢
  • 请教象我这样的硬盘应如何安装Linux,我昨天试装了,但有问题。(老问题了,也看了前面的帖子,但还是来请教,请多指教)
  • 请教一个函数入口处的汇编问题(压栈问题)
  • 请教!出现这个提示是什么原因..是模块版本问题,还是其他问题..http://220.114.102.28/xitong/ProductShow.asp?ArticleID=82
  • 请教两个小问题:一个cgywin下使用vi的问题,另一个socket的问题
  • 请教一个opengl的问题
  • 请教两个redhat9问题
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • 请教Linux下pgadmin3-1.0.2的编译和安装!!高分请教!
  • 各位大虾,请教装了REDHAT9操作系统后,启动时无法引导到LINUX,请教该如何解决啊
  • 请教,请教,,,一定要看!!一定要看!!
  • 请教高手,小弟打印width=1500,height=600(A3纸)的Applet,在预览中是该区域是黑的,打印出来也是黑的,请教高手解决一下
  • :请教高手,小弟打印width=1500,height=600(A3纸)的Applet,在预览中是该区域是黑的,打印出来也是黑的,请教高手解决一下
  • 请教这种循环的执行过程
  • 请教如何在指定目录下查找包含指定文字的文件
  • 请教局域网中如何通过ip地址得到主机名
  • 请教,如何用虚拟订机安装liux
  • 【请教】LINUX 下SNMP的MIB开发
  • 请教两个shell
  • 请教高手:如何用gnome/gtk编写托盘程序
  • 菜鸟请教Linux
  • 请教semop()函数的用法、含义
  • 请教个,关于C编译器参数CFLAGS的问题(真诚请教,分不够了全部送出)
  • 请问如何在Redhat7.1下安装Ftp服务,如何开启Ftp帐号????请教!!!急急急急急急
  • Think in java 问题。(请教)
  • 请教下我的eth0为什么设置后重启会失败?
  • 请教:$PWD 这个东西是什么意思啊?谢谢!
  • 请教高手AIX中怎么删除行尾的字符^M


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,