netboot=echo Booting from net ...; run netargs; if test ${ip_dyn} = yes; then setenv get_cmd dhcp; else setenv get_cmd tftp; fi; ${get_cmd} ${loadaddr} ${image}; if test ${boot_fdt} = yes || test ${boot_fdt} = try; then if ${get_cmd} ${fdt_addr} ${fdt_file}...
包括动态链接rel_dyn部分。 第7~11行,比较源代码起始是否等于结束地址,如果相等则结束,不相等继续循环拷贝代码段、数据段以及数据段;每次从源代码地址中复制出8字节数据传入r10和r11寄存器,改变r1的地址,然后放到目标地址r0起始段,改变r0的地址,之后比较源代码首地址与结束地址,当相等时,结束循...
netboot=echo Booting from net ...; run netargs; if test ${ip_dyn} = yes; then setenv get_cmd dhcp; else setenv get_cmd tftp; fi; ${get_cmd} ${loadaddr} ${image}; if test ${boot_fdt} = yes || test ${boot_fdt} = try; then if ${get_cmd} ${fdt_addr} ${fdt_file...
netboot=echo Booting from net ...; run netargs; if test ${ip_dyn} = yes; then setenv get_cmd dhcp; else setenv get_cmd tftp; fi; ${get_cmd} ${imag}; if test ${boot_fdt} = yes || test ${boot_fdt} = try; then if ${get_cmd} ${fdt_addr} ${fdt_file}; then bootz...
netboot=echo Booting from net ...; run netargs; if test ${ip_dyn} = yes; then setenv get_cmd dhcp; else setenv get_cmd tftp; fi; ${get_cmd} ${imag}; if test ${boot_fdt} = yes || test ${boot_fdt} = try; then if ${get_cmd} ${fdt_addr} ${fdt_file}; then bootz...
原来的代码在连接时加了-pie选项这个选项会导致过于麻烦使得连接脚本里面多了(rel)(dyn)信息 ,使得程序非常大不利于从nand启动从定位之前的代码应该小于4k。参考以前的start.S init.c 修改代码。所以我们要要做的是把连接的地址定死启动的时候直接从flash中拷贝过去。
netboot=echo Booting from net ...; run netargs; if test ${ip_dyn} = yes; then setenv get_cmd dhcp; else setenv get_cmd tftp; fi; ${get_cmd} ${loadaddr} ${image}; if test ${boot_fdt} = yes || test ${boot_fdt} = try; then if ${get_cmd} ${fdt_addr} ${fdt_file...
netboot=echo Booting from net ...; run netargs; if test ${ip_dyn} = yes; then setenv get_cmd dhcp; else setenv get_cmd tftp; fi; ${get_cmd} ${image}; if test ${boot_fdt} = yes || test ${boot_fdt} = try; then if ${get_cmd} ${fdt_addr} ${fdt_file}; then ${...
ip=192.168.6.187 开发板地址 二、exynos-4412 Soc 启动顺序 要想了解exynos-4412的启动顺序,我们首先需要了解该soc的内存布局。 1. exynos-4412内存布局 通常一款soc的内存在厂家设计的时候就已经规定死了,对于使用者来说,我们无法改变。 我们只关心和启动相关的一个地址, ...
setenv gatewayip 192.168.1.1 ;网关 saveenv ;保存配置 加载内核和设备树 setenv bootcmd tftp 41000000 uImage\;tftp 42000000 exynos4412-fs4412.dtb\;bootm 41000000 - 42000000 bootcmd:uboot2启动之后,首先先执行找到这个参数,执行后面的命令。 从tftp服务器下载内核镜像uImage到地址41000000,设备树文件exynos4412...