zoukankan      html  css  js  c++  java
  • linux AM335x嵌入式平台spi驱动调试

    使用的是kernel4.4.12内核,已经不需要arch/arm/boot/dts/boar-XXX板级文件了,直接使用设备树注册板级文件

    所以,在这需要修改的文件有 

    1.arch/arm/boot/dts/am33xx.dtsi

    2.arch/arm/boot/dts/am335x-ariio5702.dts

    一、配置menuconfgi  使板子支持spi  配置如下

    二、修改设备树

    在  arch/arm/boot/dts/am33xx.dtsi  中增加索引

    修改设备树  arch/arm/boot/dts/am335x-ariio5702.dts

    按照自己的使用修改设备树 例如spi1

    这里最主要就是pin脚的配置 spi_pins

    spi1_pins: pinmux_spi1_pins {
           pinctrl-single,pins = <
           0x190 (PIN_INPUT_PULLUP | MUX_MODE3) /* spi1-sclk gpio3_14*/
      0x194 (PIN_INPUT_PULLUP | MUX_MODE3) /* spi1-do gpio3_15*/
      0x198 (PIN_INPUT_PULLUP | MUX_MODE3) /* spi1-di gpio3_16*/
      0x19c (PIN_INPUT_PULLUP | MUX_MODE3) /* spi1-cs0 gpio3_17*/
      >;
    };

    修改的compitable要和driver/spi/spidev.c 里面的设备树匹配列表一致  才可以保证匹配到

    driver/spi/spidev.c

    static const struct of_device_id spidev_dt_ids[] = {
      { .compatible = "rohm,dh2228fv" },
      { .compatible = "xxxx" },
      {},
    };

    然后编译内核  烧录镜像

    在开发板中就可以查看到设备节点

    接着 使用   kernel/Documentation/spi/spidev_test.c   测试spi  这里只需要把这个spidev_test.c 交叉编译即可

    测试如下

    spi_test -D /dev/spidev1.0 -s 48000000 -p "aaaaaa"

     

    既可以看到测试结果 

    到这里 spi驱动添加成功

    参考  https://www.veryarm.com/15778.html

  • 相关阅读:
    MySql自定义函数-关于保留小数位的特殊需求
    MySQL-时区导致的时间前后端不一致
    [计算机基础] 汇编学习(3)
    [计算机基础] 汇编学习(2)
    [计算机基础] 汇编学习(1)
    [安全] metasploit(2)
    [安全] Kali Linux安装TheFatRat
    [安全] metasploit(1)
    [安全] tcpdump使用
    [安全] netcat和socat的使用
  • 原文地址:https://www.cnblogs.com/ChenChangXiong/p/11157769.html
Copyright © 2011-2022 走看看