十u-boot调试--串口修改

kele-dad kele-dad     2022-11-10     321

关键词:

  uboot 烧写进 norflash 进行调试

12.1 烧写后 串口不使能

  内存不能使能

  遍历代码,可以发现,在SDRAM 初始化之前,我们并没有设置时钟,但是SDRAM初始化后,我们已经开始用内存控制器了,这是不合理的,操作器件之前,我们必须把时钟给初始化。

  在源代码中,内存控制器初始化之前,并没有进行时钟的设置。加上时钟的设置。

  内存控制器的时钟 为MPLL,我们要把 MPLL 的初始化放入到 start.S 中进行初始化,取消board_init_f 执行的链表 init_sequence_f 的 board_early_init_f 函数中对MPLL 的设置即可。

  源代码的时钟的设置在 board_init_f 执行的链表 init_sequence_f 的 board_early_init_f 函数中,我们要把这些代码移动到 _start.S 中执行,在内存控制器初始化之前。

  还有就是必须关闭掉 终端的 静态显示:配置宏为CONFIG_CONSOLE_RECORD

12.1.1 修改 start.S 中的代码

  技术分享图片

12.1.2 注释掉 jz2440.c 对MPLL 的设置

  board_early_init_f 中

  技术分享图片

12.1.3 编译烧写

  技术分享图片

12.2 调试方法

  打开 openjtag 工具:

  技术分享图片

  点击 connect,然后点击 telnet,进入 telent 中运行:

  reset halt,

  技术分享图片

  halt

  技术分享图片

  读写前 4个 字节 ,与 uboot.bin 的二进制进行对比:

  技术分享图片  

  uboot.bin 中的字节:

  技术分享图片

  可以看出读取的数据是正确的。

  从 step 0 开始执行,一步一步 查看数据是否正确:

  技术分享图片

  这样运行很慢,我们也可以将 uboot 文件进行 objdump 转码成 uboot.dis 文件,然后设置断点。

  在 board_init_f_alloc_reserve 这里设置断点,因为执行完了内存控制器初始化后,就开始执行此函数:

  uboot.dis  文件中的地址:

  技术分享图片

  技术分享图片

  我们在 0008444 那里设置一个硬件断点:

  技术分享图片

  然后  resume 继续执行:

  技术分享图片

  可以看出在 0x00008444 处暂停了,此时 内存已经初始化完了,应该是可以访问内存的。

  读内存:mdw 0x30000000

  技术分享图片

  写内存:mww 0x30000000 0x12345678,写完之后读取内存 mdw 0x30000000

  技术分享图片

12.1.2

  技术分享图片

 

    

 

 

  

am335xuart1输入u-boot调试信息代码修改

 AM335x调试信息UART1输出代码修改1. 关于pin_mux 的配置代码修改位置:/board/forlinx/ok335x/mux.c1voidenable_uart0_pin_mux(void)2{3configure_module_pin_mux(uart0_pin_mux_spl);4configure_module_pin_mux(uart1_pin_mux) 查看详情

ubuntu上面有没有串口调试工具

参考技术A如果项目中使用的bootloader为u-boot,那么在用minicom向目标板传送kernel时会发生一些错误。故若您使用的是u-boot,建议您使用kermit。尽管与u-boot的组合中会有问题,但minicom仍然是一款非常受欢迎的终端,且在很多讲解终端... 查看详情

瑞芯微rv1109sdk定制与调试总结笔记(代码片段)

...rv1126_defconfig1、修改路径:rv1126_rv1109_linux_sdk_v1.8.0_20210224/u-boot/configs/rv1126_defconfig2 查看详情

调试 u-boot 崩溃

】调试u-boot崩溃【英文标题】:Debuggingu-bootcrash【发布时间】:2018-04-2710:24:45【问题描述】:我在u-boot中遇到了一些数据中止并且无法找到问题的根本原因。谁能告诉我如何在这里跟踪日志或如何调试和解码这些日志。在u-boot中... 查看详情

rk3399修改调试串口(代码片段)

rk3399修改调试串口rk3399可以修改调试串口为任意板载的uart由于厂家的一级loader没有开源,因此更改调试串口后,一级loader的打印无法再看到了手里面有一块rockpi4b的板子其pin脚如下,从官方的uart改为下图中的uart4官方支持的bsp代... 查看详情

u-boot命令行调试lcd简单记录

...uboot下面lcd为例,简单说说命令行调试。 平台:am335x,u-boot2010.09,linux3.10问 查看详情

使用 u-boot 通过串口更新文件

】使用u-boot通过串口更新文件【英文标题】:Updatefilesoverserialportusingu-boot【发布时间】:2021-12-2507:01:41【问题描述】:我正在使用CycloneVHPS,我的应用程序文件现在从SD卡启动。由于某些原因,我的SD卡现在固定在板上,无法从插... 查看详情

ccs编译u-boot

CPU选用TI出的am335x,为方便调试采用CCS编译U-boot。准备Uboot源码包,交叉工具链,CCS安装包。1.打开CCS,选择File->newproject,选择“Makefileprojectwithexistingcode”2.下一步,选择Uboot源码包,选择"CrossGCC"工具链3.更改环境变量... 查看详情

u-boot.bin(自己移植的)烧写进flash后为啥没有反应

...uboot的编译时间,第二行是DRAM大小),而从仿真器上加载u-boot(编译uboot源代码可以生成u-boot.bin和u-boot,仿真器加载的是u-boot)却能正常启动。请用过u-boot的高手帮忙分析下原因,我都调试好久了,由于是新手,不知道是什么原... 查看详情

u-boot2011.09开启debug调试

 以前做过,现在刚才又想不起来了,这个错误非常的严重。在这里记一下。debug调试信息的开启在include/common.h有如下宏定义:1#ifdefDEBUG2#definedebug(fmt,args...)printf(fmt,##args)3#definedebugX(level,fmt,args...)if(DEBUG>=level)printf(fmt,##args 查看详情

uboot是啥?

U-Boot,全称UniversalBootLoader,是遵循GPL条款的开放源码项目。U-Boot的作用是系统引导。U-Boot从FADSROM、8xxROM、PPCBOOT逐步发展演化而来。其源码目录、编译形式与Linux内核很相似,事实上,不少U-Boot源码就是根据相应的Linux内核源程... 查看详情

串口调试工具kermit安装和配置

参考技术A在windows系统中,使用USB转UART串口工具调试时,需要安装对应的串口驱动。如果直接在网上下载驱动,可能会安装很多垃圾软件,让人防不胜防。本文介绍在Ubuntu18.04系统中kermit的安装和配置。操作系统:Ubuntu18.04安装... 查看详情

i.mx62014u-boot测试修改

/**************************************************************************I.MX62014u-boot测试修改*说明:*为了能够测试是否ParallelLCD在u-boot这个版本上的是否可行,做了如下*修改。**2016-8-26深圳南山平山村曾剑锋*********************************** 查看详情

u-boot下延时程序失效的bug调试

...STM32跑裸机程序,另一块AM335x跑Linux系统),但是发现在u-boot有时无法启动成功,需要通过一个GPIO的状态来判断,具体来说就是本来上电后端口默认高阻抗,先利用程序先拉低大概100ms,然后在使用程序拉高100ms,然后STM32程序检... 查看详情

修改u-boot的开机logo及显示过程

本文转载自;http://blog.csdn.net/voice_shen/article/details/6789424[u-boot: Git://git.denx.de/u-boot.git][tag:v2011.09-rc1]修改u-boot的开机logo其实很简单。请见下面步骤。1.获取一张BMP的图片,修改之,让其色深为8位,即256色,如果用24位,则显示出... 查看详情

u-boot移植---代码修改---时钟修改sdram

...现在就需要做的是代码的修改,配置成适合目标板使用的u-boot。一、时钟修改  在代码流程分析中,我们知道,系统的启动是:设置CPU为管理员模式关闭看门狗屏蔽中断设置启动参数:时钟 FCLK:HCLK:PCLK=1:2:4   FCLK... 查看详情

tiny210(s5pv210)移植u-boot(基于2014.4版本号)——移植u-boot.bin(打印串口控制台)

...信息打印。在上节。我们看到调用relocate_code重定位。在u-boot的帮助文档doc/README.arm-relocation中对重定位有说明。u-boot为了生成位置无关码,在链接时指定了-pie选项,这个选项在u-boot-2014.04/arch/arm/config.mk中指定: 查看详情

修改smdk6410的调试串口为普通串口(wince系统)

...RCS、CTS),老板又不愿买新的模块。所以考虑将调试串口COM1改为普通串口来用(飞凌开发板上也就这1个5线串口)。在网上找了些资料,然后让师弟测试摸索了下,发现网上现有资料都无法修改成功,... 查看详情