首页 > 其他分享 >基于 alientek rv1126 快速启动调试那的写坑

基于 alientek rv1126 快速启动调试那的写坑

时间:2023-12-06 15:35:10浏览次数:33  
标签:bin USB tb rv1126 alientek 修改 CONFIG 调试

基于 alientek rv1126 快速启动调试那的写坑

1. sdk 编制准备工作

1.1 编译配置修改

首先拿到 sdk 通过修改一下相关配置

1.1.1修改DDR 配置

cd /home/alientek/rv1126/rkbin/RKBOOT

vi RV1126MINIALL_EMMC_TB.ini

​ 修改相关内容如下

  [CHIP_NAME]
  NAME=RV1126
  [VERSION]
  MAJOR=1
  MINOR=4
  [CODE471_OPTION]
  NUM=1
  Path1=bin/rv11/rv1126_tpl_924MHz_ddr4_tb_v1.08.bin                                                                                                                                 
  Sleep=1
  [CODE472_OPTION]
  NUM=1
  Path1=bin/rv11/rv1126_usbplug_v1.20.bin
  [LOADER_OPTION]
  NUM=2
  LOADER1=FlashData
  LOADER2=FlashBoot
  FlashData=bin/rv11/rv1126_tpl_924MHz_ddr4_tb_v1.08.bin
  FlashBoot=bin/rv11/rv1126_spl_emmc_tb_v1.12.bin
  [OUTPUT]
  PATH=rv1126_spl_loader_v1.08.112.bin

1.1.2 修改固件打包脚本

cd device/rockchip/common/

vi mkfirmware.sh

修改如下

image

1.1.3 dts 修改

首先修改一下头文件 vi rv1126-evb-ddr3-v13-tb-emmc.dts

  7 #include "rv1126.dtsi"
  8 //#include "rv1126-evb-v13.dtsi"
  9 #include "rv1126-alientek.dtsi"
 10 #include "rv1126-thunder-boot-emmc.dtsi"
 11 #include "rv1126-evb-thunder-boot.dtsi"

  后面的外设 直接复制 rv1126-alientek.dts 该文件的 外设部分

注意:在采集图像的时候对导致dma 分配不出内存 修改一下内容

 365         linux,cma {
 366             compatible = "shared-dma-pool";
 367             inactive;
 368             reusable;
 369             size = <0x8000000>;     //修改这里
 370             linux,cma-default;
 371         };

1.1.4 驱动修改

大概说一下 修改imx415 驱动 另一个摄像头应该差不多 因为在快速启动的时候有一个驱动异步加载 这就和init_call 相关了 具体内容查看作者的 博客吧!

在imx415.c 文件中 修改内容如下:

2621 #ifdef CONFIG_ROCKCHIP_THUNDER_BOOT
2622 module_i2c_driver(imx415_i2c_driver);
2623 #else
2624 static int __init sensor_mod_init(void)
2625 { 
2626     return i2c_add_driver(&imx415_i2c_driver);
2627 } 
2628   
2629 static void __exit sensor_mod_exit(void)
2630 { 
2631     i2c_del_driver(&imx415_i2c_driver);
2632 } 
2633                          
2634 device_initcall_sync(sensor_mod_init);
2635 module_exit(sensor_mod_exit);
2636 #endif

还有修改什么 目前忘了 有不懂的可以评论!!!

1.2 usb 功能调试

这里还是有很多问题的 大概说一下作者只调试了u盘看文档修改了内容

首先在 buildroot里面修改

+BR2_PACKAGE_THUNDERBOOT_USE_EUDEV=y

将这个配置编译成固件

diff --git a/arch/arm/configs/rv1126-tb.config b/arch/arm/configs/rv1126-
tb.config
index 729df48a8cb0..34d7d40c6d82 100644
--- a/arch/arm/configs/rv1126-tb.config
+++ b/arch/arm/configs/rv1126-tb.config
@@ -1,4 +1,3 @@
-CONFIG_BLK_DEV_SD=y
+CONFIG_BLK_DEV_SD=y
CONFIG_BT=m
CONFIG_BT_HCIUART=m
CONFIG_CFG80211=m
@@ -24,8 +23,6 @@ CONFIG_ROCKCHIP_HW_DECOMPRESS=y
CONFIG_ROCKCHIP_RAMDISK=y
CONFIG_ROCKCHIP_THUNDER_BOOT=y
CONFIG_ROMFS_FS=y
-CONFIG_SCSI=m
+CONFIG_SCSI=y
-CONFIG_SCSI_MOD=m
+CONFIG_SCSI_MOD=y
# CONFIG_SLUB_SYSFS is not set
CONFIG_SND=m
CONFIG_SND_ALOOP=m
@@ -47,21 +44,21 @@ CONFIG_SOUND=m
CONFIG_STMMAC_ETH=m
CONFIG_STMMAC_PLATFORM=m
# CONFIG_TEE is not set
-CONFIG_USB=m
+CONFIG_USB=y
# CONFIG_USB_CONFIGFS_F_UAC1 is not set
# CONFIG_USB_CONFIGFS_F_UAC2 is not set
# CONFIG_USB_CONFIGFS_F_UVC is not set
# CONFIG_USB_CONFIGFS_RNDIS is not set
-CONFIG_USB_DWC3=m
-CONFIG_USB_DWC3_OF_SIMPLE=m
-CONFIG_USB_DWC3_ROCKCHIP_INNO=m
-CONFIG_USB_EHCI_HCD=m
-CONFIG_USB_EHCI_HCD_PLATFORM=m
+CONFIG_USB_DWC3=y
+CONFIG_USB_DWC3_OF_SIMPLE=y
+CONFIG_USB_DWC3_ROCKCHIP_INNO=y
+CONFIG_USB_EHCI_HCD=y
+CONFIG_USB_EHCI_HCD_PLATFORM=y
CONFIG_USB_HID=m
# CONFIG_USB_NET_DRIVERS is not set
-CONFIG_USB_OHCI_HCD=m
-CONFIG_USB_OHCI_HCD_PLATFORM=m
-CONFIG_USB_STORAGE=m
+CONFIG_USB_OHCI_HCD=y
+CONFIG_USB_OHCI_HCD_PLATFORM=y
+CONFIG_USB_STORAGE=y
CONFIG_USB_XHCI_HCD=m
CONFIG_USB_XHCI_PLATFORM=m

还是很文档不一样的

最后在开发版可以看见 ls /dev/sda1

如果需要usbmount自动挂载请查看这篇文档

《rv1126 —— udev机制、增加U盘识别功能、usbmount实现USB设置自动挂载》 - 一个不知道干嘛的小萌新 - 博客园 (cnblogs.com)

2. 编译SDK

./build.sh BoardConfig-tb-v13.mk && ./build.sh

最后烧录到开发板 启动 可以看见 屏幕上有摄像头录制的内容。

必须烧录update.img,原子哥告诉我的。

就这么多 调试不易

标签:bin,USB,tb,rv1126,alientek,修改,CONFIG,调试
From: https://www.cnblogs.com/Austin7/p/17879654.html

相关文章

  • JS反调试VMdebugger
    今天干活的时候,要在前端调试找token值,打开“源代码”选项卡的时候,就不断步入“VMXXX”格式的源码当中,在查询了一些资料之后,发现Node.js反调试的一种手段,网上有说是Googlechrome加载evel()函数,应该是存在这种的情况的,不过在测试的过程当中大多数应该都是反调试的这种。该反调试的......
  • [OpenVR] OpenVR 驱动开发调试的方法小记
    OpenVR驱动开发调试方法VR也许是下一个风口,也许只是一场耀眼的烟花晚会。这年轻的平台还有许多未成形的构建,其中恰好就包括一个完整的调试架构。这使得VR开发,尤其是驱动层的开发,变得十分得痛苦。因为我个人的习惯,我会尽可能避免调用VisualStudio.但是由于在Windows下开......
  • uniapp开发——创建安卓自定义调试基座,实现热更新调用原生功能
    一.生成本地包:选中项目,头部菜单栏“发行"-"生成本地打包App资源"打包成功二.打包完成,复制App资源包到安卓studio项目中uniapp项目根目录下,找到unpackage目录,打开resources目录,复制下边的_UNI_XXXXX格式的目录三.把App资源包粘贴到Androidstudio项目中,目录路径为:app-sr......
  • 基于泰凌微TLSR8355的无线灯光智能控制系统解决方案调试总结
    前记 随着新技术的不断发展,在灯控市场。使用无线和传感器技术让灯的利用变得更加环保和智能是一个相对时尚的选择。最近跟几个客户做了一些此类的产品。发掘了一些有趣的功能和应用。这里做一个梳理。特色梳理 原理:这类产品一般是使用无线来控制灯光的状态和开关......
  • 国产API调试插件:Apipost-Helper
    前言Idea是一款功能强大的集成开发环境(IDE),它可以帮助开发人员更加高效地编写、调试和部署软件应用程序,Idea还具有许多插件和扩展,可以根据开发人员的需要进行定制和扩展,从而提高开发效率,今天我们就来介绍一款国产的API调试插件:Apipost-Helper什么是Apipost-Helper?Apipost-Helper......
  • 代码写完直接调试!IDEA插件还能这么用
    IDEA是一款功能强大的集成开发环境(IDE),它可以帮助开发人员更加高效地编写、调试和部署软件应用程序。我们在编写完接口代码后需要进行接口调试等操作,一般需要打开额外的调试工具。今天给大家介绍一款IDEA插件:Apipost-Helper-2.0。代码写完直接编辑器内调试、还支持生成接口文档、接......
  • 代码写完直接调试!IDEA插件还能这么用?
    IDEA是一款功能强大的集成开发环境(IDE),它可以帮助开发人员更加高效地编写、调试和部署软件应用程序。我们在编写完接口代码后需要进行接口调试等操作,一般需要打开额外的调试工具。今天给大家介绍一款IDEA插件:Apipost-Helper-2.0。代码写完直接编辑器内调试、还支持生成接口文档、......
  • 代码写完直接调试!IDEA插件还能这么用
    IDEA是一款功能强大的集成开发环境(IDE),它可以帮助开发人员更加高效地编写、调试和部署软件应用程序。我们在编写完接口代码后需要进行接口调试等操作,一般需要打开额外的调试工具。今天给大家介绍一款IDEA插件:Apipost-Helper-2.0。代码写完直接编辑器内调试、还支持生成接口文档、......
  • 基于泰凌微的TLSR8355芯片的2.4G无线私有协议PCBA设计调试总结
    一前记经常做物联网的类的产品,TLSR8355凭借着它的射频距离远,功能强大等优点成为很多客户的首选。TLSR8355系列专用于2.4GHz射频系统芯片解决方案,如零售/物流、专用网络、Beacon应用程序、无线鼠标、无线USB加密狗等。它集成了2.4GHz射频系统片上应用开发所需的全系列片上外围......
  • 聊一聊 .NET高级调试 中的一些内存术语
    一:背景1.讲故事在高级调试的旅程中,经常会有一些朋友问我什么是工作集(内存),什么是提交大小,什么是VirtualSize,什么是WorkingSet。。。截图如下:既然有很多朋友问,这些用口头也不怎么好描述,刚好上午有时间就系统的聊一下吧。二:内存术语解读1.VirtualSize是什么可......