Boot Loader
-
static int initf_dm(void)Boot Loader/U-BOOT 2019. 9. 30. 15:38
/common/board_f.c 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 static int initf_dm(void) { #if defined(CONFIG_DM) && defined(CONFIG_SYS_MALLOC_F_LEN) int ret; ret = dm_init_and_scan(true); if (ret) return ret; #endif #ifdef CONFIG_TIMER_EARLY ret = dm_timer_init(); if (ret) return ret; #endif return 0; } /drivers/core/root.c 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28..
-
환경변수 Environment VariablesBoot Loader/U-BOOT 2019. 9. 29. 23:18
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 12..
-
int arch_cpu_init(void)Boot Loader/U-BOOT 2019. 9. 27. 15:03
/arch/arm/cpu/armv7/s5p-common/cpu_info.c 1 2 3 4 5 6 7 8 #ifdef CONFIG_ARCH_CPU_INIT int arch_cpu_init(void) { s5p_set_cpu_id(); return 0; } #endif /arch/arm/mach-exynos/include/math/cpu.h 맞나? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 static inline void s5p_set_cpu_id(void) { unsigned int pro_id = readl(EXYNOS4_PRO_ID); unsigned ..
-
static int initf_console_record(void)Boot Loader/U-BOOT 2019. 9. 26. 22:06
/common/board_f.c 1 2 3 4 5 6 7 8 static int initf_console_record(void) { #if defined(CONFIG_CONSOLE_RECORD) && defined(CONFIG_SYS_MALLOC_F_LEN) return console_record_init(); #else return 0; #endif } CONFIG_CONSOLE_RECORD가 정의되어있지 않아 return 0;
-
int initf_malloc(void)Boot Loader/U-BOOT 2019. 9. 26. 22:03
/common/dlmalloc.c 1 2 3 4 5 6 7 8 9 10 int initf_malloc(void) { #ifdef CONFIG_SYS_MALLOC_F_LEN assert(gd->malloc_base); /* Set up by crt0.S */ gd->malloc_limit = CONFIG_SYS_MALLOC_F_LEN; gd->malloc_ptr = 0; #endif return 0; } CONFIG_SYS_MALLOC_F_LEN=0x400으로 정의되어있다. assert()는 false이면 프로그램을 중단시켜준다. board_init_f_init_reserve에서 gd->malloc_base에 값을 지정해주므로 중지되지않고 흘러간다.
-
int fdtdec_setup(void)Boot Loader/U-BOOT 2019. 9. 25. 23:12
/lib/fdtdec.c 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 int fdtdec_setup(void) { #if CONFIG_IS_ENABLED(OF_CONTROL) # ifdef CONFIG_OF_EMBED /* Get a pointer to the FDT */ gd->fdt_blob = __dtb_dt_begin; # elif defined CONFIG_OF_SEPARATE # ifdef CONFIG_SPL_BUILD /* FDT is at end of BSS unless it is in a different memory region */ if (IS_ENABLED(CONFIG_SPL_S..
-
static int setup_mon_len(void)Boot Loader/U-BOOT 2019. 9. 25. 22:36
/common/board_f.c 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 static int setup_mon_len(void) { #if defined(__ARM__) || defined(__MICROBLAZE__) gd->mon_len = (ulong)&__bss_end - (ulong)_start; #elif defined(CONFIG_SANDBOX) || defined(CONFIG_EFI_APP) gd->mon_len = (ulong)&_end - (ulong)_init; #elif defined(CONFIG_NIOS2) || defined(CONFIG_XTENSA) gd->mon_len = CONFIG_SYS_MONITOR_LEN; #elif defined(CONFI..