所以debug宏就是空。 所以这个函数就是打印了uboot的标牌version_string。 U_BOOT_VERSION在uboot中找不到定义,这个字符串实际上时在makefile中定义的。在主makefile中,会设置变量U_BOOT_VERSION,然后将该变量写入到一个文件中。当make后,会在include目录下生成一个文件version_autogenerated.h,这个文件中就定义了...
usb_debug 在烧录或启动过程中,若遇到烧录失败或启动失败大致挂死在 usb 相关模块,但又不确定具体位置,这时可以打开usb_debug进行调试,开启usb_debug后有关 usb 相关的运行信息会被较详细打印出来。打开usb_debug的方式:打开usb_base.h文件,将其中的#defineSUNXI_USB_DEBUG宏定义打开,打开后重新编译 U-Boot 并打...
(int)simple_strtol(s,NULL,10) :CONFIG_BOOTDELAY; debug("### main_loop entered: bootdelay=%d\n\n",bootdelay); bootretry_init_cmd_timeout(); //暂时中断启动 //选中altbootcmd函数并返回 if(bootcount_error()) s=env_get("altbootcmd"); else //返回bootcmd这个变量的地址 s=env_get("b...
通过跳转到其定义,可以看到源码是通过宏定义CONFIG_FLASH_CFI_LEGACY配置的,在smdk2440.h文件中搜索一下,可以看到被定义,所以flash_detect_legacy相关方法启用: 在函数的源码中,有一句调试信息通过debug语句输出,可以通过该条语句来查看读取出的三个ID值: 默认情况下,debug函数是被关闭的, 在该文件最开始开启debug的...
37. reloc_fdt,数用于重定位 fdt,没有用到。 38. setup_reloc,设置 gd 的其他一些成员变量,供后面重定位的时候使用,并且将以 前的 gd 拷贝到 gd->new_gd 处。需要使能 DEBUG 才能看到相应的信息输出: image 可以看出,uboot 重定位后的偏移为 0X18747000,重定位后的新地址为 0X9FF4700,新的 gd 首地址...
问题2:在include/log.h中添加#define DEBUG后,编译出错,说超过了sram定义的空间大小 image.png 想要快速看懂linux框架代码,不方便像单片机这样单步走或者打断点看callstack,当然linux可以通过gdb,但是最常用的方法还是通过打印信息。并且debug函数早已经添加入了,为什么不用呢!通过debug进入后,发现需要开启DEBUG宏。修改...
debug ("### main_loop: bootcmd=\"%s\"\n", s ? s : "<UNDEFINED>"); if (bootdelay >= 0 && s && !abortboot (bootdelay)) { // abortboot()主要是判断bootdelay的时间内,是否有按键输入。 …… run_command (s, 0); //如果没有输入就执行bootcmd指令 ...
接下来,调用函数reserve_trace(),该函数用于留出uboot跟踪内存调试的地方,由于i.mx6ul的相关配置文件中没有定义相关宏,因此并没有分配出此块内存。 程序继续往下运行,将调用函数reserve_uboot(),该函数的定义如下所示: staticintreserve_uboot(void)
#ifdef DEBUG_PARSER printf ("token: \"%s\"\n", token); #endif /* find macros in this token and replace them */ process_macros (token, finaltoken); /* Extract arguments */ if ((argc = parse_line (finaltoken, argv)) == 0) { ...
void autoboot_command(const char *s){debug("### main_loop: bootcmd=\"%s\"\n", s ? s : "<UNDEFINED>");if (stored_bootdelay != -1 && s && !abortboot(stored_bootdelay)) {bool lock;int prev;lock = IS_ENABLED(CONFIG_AUTOBOOT_KEYED) &&!IS_ENABLED(CONFIG_AUTOBOOT_KEYED_CTRLC);...