用自带的configs/stm32f429-discovery_defconfig进行的编译,然后就直接调试了。 二,问题记录 问题1:board_init_f进入fdt初始化就进入hang。 答:因为fdt是分离的但是我并没有下载到某个地址,于是先配置为嵌入到uboot来解决。 问题2:serial_init初始化一路调用直到configure_clocks函数中,最后while1卡死 /* Enable...
PLATFORM_RELFLAGS += -ffunction-sections -fdata-sections \ - -fno-common -ffixed-r8 -msoft-float + -fno-common -ffixed-r9 -msoft-float # Support generic board on ARM __HAVE_ARCH_GENERIC_BOARD := y diff --git a/arch/arm/cpu/armv7/lowlevel_init.S b/arch/arm/cpu/armv7/lowle...
前面我们讨论了board_init_f调用的调用时机,此函数主要是对init_sequence_f中的函数进行回调。 common/board_f.c static const init_fnc_t init_sequence_f[] = { #ifdef CONFIG_SANDBOX setup_ram_buf, #endif setup_mon_len, #ifdef CONFIG_OF_CONTROL fdtdec_setup, #endif #ifdef CONFIG_TRACE trace_e...
一、board_init_f(common/board_f.c) 该函数位于common/board_f.c文件: voidboard_init_f(ulongboot_flags) { #ifdef CONFIG_SYS_GENERIC_GLOBAL_DATA/** For some archtectures, global data is initialized and used before * calling this function. The data should be preserved. For others, * CONFI...
uboot board_init_f 函数 https://www.codenong.com/cs110875874/ 初始化一系列外设,比如串口、定时器,或者打印一些消息等 voidboard_init_f(ulong boot_flags) { gd->flags = boot_flags; gd->have_console =0; if (initcall_run_list(init_sequence_f))...
2、调用board_init_f。在这里会初始化串口、timer、计算重定位的位置等。3、调用relocate_code将uboot...
介绍u-boot启动流程中和具体版型(board)有关的部分,也即board_init_f/board_init_r所代表的、board有关初始化过程。该过程将持续u-boot的整个生命周期,直到main_loop(即传说中的命令行)。 注1:由于u-boot后初始化过程,基本上涉及到了所有的软件模块,因此本文不能一一分析,基本原则就是捡看着顺眼的、熟的下手...
(2)在能正常启动的uboot源码中davinci.h头文件中添加一个宏定义#define CONFIG_SKIP_LOWLEVEL_INIT,不让cpu初始化(网上这么说的),重新编译uboot源码,然后在ccs下把该工程导入,链接板子,并加载相应的uboot.bin和uboot文件。 (3) 加载完uboot.bin和uboot文件,将寄存器中的pc指针指向/board/davinci/config.mk...
* Set up initial C runtime environment and call board_init_f(0). */* **1.设置栈指针***#ifdefined(CONFIG_SPL_BUILD)&&defined(CONFIG_SPL_STACK)ldr sp,=(CONFIG_SPL_STACK)#elseldr sp,=(CONFIG_SYS_INIT_SP_ADDR)#endif **2.sp低3位清0,目的是8字节对齐**#ifdefined(CONFIG_CPU_V7M)...
关于uboot移植LCD驱动,调试过程卡死问题? 我在uboot阶段自己添加Lcd驱动,步骤如下: 1.lcd端口配置,(board/ti/mux.c) static struct module_pin_mux lcd_pin_mux[] = { {OFFSET(lcd_data0), (MODE(0) | PULLUDDIS)}, {OFFSET(lcd_data1), (MODE(0) | PULLUDDIS)},...