运行平台:海思Hi3518EV300/ GK7202V300
第一次接触海思平台,花了一个月时间完成系统驱动调试,主要是把linux系统从GK7205换成GK7202,驱动从USBwifi换成SDIOwifi,摄像头sensor从imx307换成gc2053。有必要把几个关键问题总结和分享下。
问题1:运行自行编译的摄像头程序例如sample _venc ,rtsp-h264 时候报错,get venc stream time out,或者segmentation fault错误,并无法正常初始化摄像头设备.
解决方法:后来定位到原因是所编译的库文件版本不一致 libsns_gc2053.so libsns_gc2053.a。
在调试过程中可能需要查看摄像头是否有数据的命令:
cat /proc/umap/mipi_rx
cat /proc/umap/vi
cat /proc/umap/rc
问题2:./IspTool.sh -a gc2053 0 初始化摄像头失败
原因: 之前运行的wifi连接wpa_supplicant 软件出现 警告 和 Backtrace 错误,导致摄像头底层驱动出问题。
net/wirelsss/sme.c:738 -cfg80211_connect_result+0x2e4/0x400 [cfg80211]WARNING: CPU: Modules linked in: rtl8822cs
Backtrace:
解决:运行wpa_supplicant 参数时把wext 换成nl80211
例如: ./wpa_supplicant -B -c/etc/wpa.conf -iwlan0 -Dnl80211
问题3:wifi模块RTL8822cs初始化失败
现象:偶尔在开机启动时MMC1 能scan到wifi SDIO设备且不稳定,例如下信息
mmc1: mmc_rescan_try_freq: trying to init card at 400000 Hz
mmc1: new high speed SDIO card at address 0001
即使扫描到了sdio设备,后续加载驱动ko文件时候也会报错例如
rtl88x2cs mmc1:0001:1: rtw_sdio_raw_read: sdio read failed (-84)
rtl88x2cs mmc1:0001:1: rtw_sdio: READ use CMD53
解决方法:主控SDIO CLK脚是1.8v,但wifi模块的VDD_IO 给的电压是3.3v,硬件上飞线解决。后续硬件设计要严格按照标准,例如clk和cmd 脚走线等长,包地等要求。
其它:
Linux SDK 包路径:
GKIPCLinuxV100R001C00SPC030
GKIPCLinuxV100R001C00SPC030\GKIPCLinuxV100R001C00SPC030-cecport\Software\Document\IPC Linux SDK开发环境配置指南.pdf
摄像头芯片驱动相关路径:
GKIPCLinuxV100R001C00SPC030\source\gmp
GKIPCLinuxV100R001C00SPC030\source\gmp\modules\isp\user\sensor\gk7205v200\galaxycore_gc2053
加载摄像头驱动命令:
./loadgk7202v300 -i -sensor gc2053
运行摄像头官方测试程序,同时PC端要运行pq-tool,或者VLC:
cd /sd/pq-board-v1.0.0.0
./IspTool.sh -s gc2053 0
内核镜像制作软件ToolPlatform.exe
SPI烧录软件NeoProgrammer.exe
GPIO控制方法例子:
set GPIO1.5 as gpio: ./gkmm 0x120C0014 0x0102
set GPIO1.5 as output: ./gkmm 0x120b1400 0x20
set gpio1.5 high: ./gkmm 0x120b1080 0x20文章来源:https://www.toymoban.com/news/detail-478571.html
set gpio1.5 low: ./gkmm 0x120b1080 0x00文章来源地址https://www.toymoban.com/news/detail-478571.html
到了这里,关于调试摄像头驱动GC2053和wifi驱动RTL8822cs问题小结的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!