• 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

  • 相关阅读:
    数字签名(代码签名)流程
    (转)__cdecl __fastcall与 __stdcall
    装修主材
    ATL 获取flash信息
    Windows结构化异常
    格式化HRESULT获取对应文本
    which type of VS files should be committed into a version control system
    读Windows核心编程-5-作业
    IE WebBrowser事件触发
    Windows 结构化异常
  • 原文地址:https://www.cnblogs.com/ChenChangXiong/p/11157769.html
Copyright © 2020-2023  润新知