Firefly开源社区

firefly-rk3399 spi1使用问题

115

积分

0

威望

0

贡献

技术小白

积分
115
发表于 2017-9-11 21:04:53     
sdk: firefly-rk3399 7.1(获取途径:firefly维基上获取 http://wiki.t-firefly.com/index. ... 9/Build_android_7.1)

硬件接口: spi1

测试代码: spidev_test.c  (源码自带,路径:kernel/Documentation/spi/  )


dtsi修改后spi1属性:
&spi1 {
    status = "okay";
    max-freq = <48000000>;
    dev-port = <1>;

    spidev0: spidev@10 {
        status = "okay";
        compatible = "linux,spidev";
        reg = <0x00>;
        spi-max-frequency = <48000000>;
    };
};


硬件操作:短接spi1 的 TX 和 RX 。


执行spidev_test   -D  /dev/spidev1.0
运行结果:
spi mode: 0x0
bits per word: 8
max speed: 500000 Hz (500 KHz)
RX | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00  | ................................

实在想不出哪里有问题,还请论坛大神指点一下。。。

回复

使用道具 举报

115

积分

0

威望

0

贡献

技术小白

积分
115
发表于 2017-9-11 21:11:41     
在3288上用spi0 使用spidev驱动测试过,没问题。  
3399开发板硬件确定没问题,因为在另一块板子上测结果一样。。。
回复

使用道具 举报

115

积分

0

威望

0

贡献

技术小白

积分
115
发表于 2017-9-12 10:22:57     
原因是uart4 和 spi1的rx和tx复用了,修改下 rk3399-firefly-port.dtsi +278 uart4节点属性即可,修改如下:
&uart4 {            
     current-speed = <9600>;
     no-loopback-test;
     //status = "okay";
     status ="disabled";
};


修改后执行 test_spi -D /dev/spidev1.0结果如下:
/test_spi -D /dev/spidev1.0
spi mode: 0
bits per word: 8
max speed: 500000 Hz (500 KHz)

FF FF FF FF FF FF
40 00 00 00 00 95
FF FF FF FF FF FF
FF FF FF FF FF FF
FF FF FF FF FF FF
DE AD BE EF BA AD
F0 0D
回复

使用道具 举报

36

积分

0

威望

0

贡献

技术小白

积分
36
发表于 2018-4-25 19:37:21     
想问下你内核配置SPI support中都打开了哪些选项?我的设备/dev/下找不到spidev1.0这个文件,怀疑是make menuconfig时,有些开关没打开
回复

使用道具 举报

15

积分

0

威望

0

贡献

技术小白

积分
15
发表于 2018-9-11 09:48:28     
借鉴下,谢谢!
回复

使用道具 举报

68

积分

0

威望

0

贡献

技术小白

积分
68
发表于 2018-11-17 17:10:43     
你好,想请教一个问题,就是源码中德spidev_test.c 为什么编译一直有错。同事生成的可执行文件如何copy进开发板中,同时如何执行的,能不能详细说一下谢谢
回复

使用道具 举报

39

积分

0

威望

0

贡献

技术小白

积分
39
发表于 2019-10-24 17:40:29     
学习学习
回复

使用道具 举报

16

积分

0

威望

0

贡献

技术小白

积分
16
发表于 2020-10-30 14:17:42     
驱动W25Q64 flash,手册里erase write enable 等CMD都需要在CMD发送后将CS脚拉高,在DTS里设置spi-cs-high,
在dmesg里看到如下错误:
[    0.972435] spi spi32766.0: setup: unsupported mode bits 4
[    0.972451] rockchip-spi ff1d0000.spi: can't setup spi32766.0, status -22
[    0.972461] spi_master spi32766: spi_device register error /spi@ff1d0000/w25q64@00
[    0.972473] spi_master spi32766: Failed to create SPI device for /spi@ff1d0000/w25q64@00
有大佬帮忙解答吗,
如何才能正确的erase write enable,
确认引脚没复用,write protect 脚拉高了,
能读到flash的全FF数据。
回复

使用道具 举报

*滑块验证:
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

友情链接 : 爱板网 电子发烧友论坛 云汉电子社区 粤ICP备14022046号-2
快速回复 返回顶部 返回列表