uboot 之uboot.lds分析

发布者:乡村乐园最新更新时间:2024-07-26 来源: cnblogs关键字:uboot  lds 手机看文章 扫描二维码
随时随地手机看文章

//下面是Uboot/board/tc2410/u-boot.lds
OUTPUT_FORMAT('elf32-littlearm', 'elf32-littlearm', 'elf32-littlearm')
//指定输出可执行文件是elf格式,32位ARM指令,小端*/
OUTPUT_ARCH(arm)
//指定输出可执行文件的平台为ARM*/
ENTRY(_start)
//指定函数入口点为_start。cpu/arm920t/start.S中定义。
SECTIONS
{
//指定可执行image文件的全局入口点,通常这个地址都放在ROM(flash)0x0位置。必须使编译器知道这个地址,通常都是修改此处来完成*/
   . = 0x00000000;             //从0x0位置开始*/
   . = ALIGN(4);                //代码以4字节对齐*/
   .text    :
   {
   cpu/arm920t/start.o (.text) //代码的第一个代码部分*/
   *(.text)                       //其它代码部分*/
   }
   . = ALIGN(4);
   .rodata : { *(.rodata) }    //指定只读数据段*/
   . = ALIGN(4);
   .data : { *(.data) }           //指定读/写数据段*/
   . = ALIGN(4);
   .got : { *(.got) }          //指定got段, got段式是uboot自定义的一个段, 非标准段*/
   . = .;
                                     //把__u_boot_cmd_start赋值为当前位置, 即起始位置*/
   __u_boot_cmd_start = .; 
                                     //指定u_boot_cmd段, uboot把所有的uboot命令放在该段.*/
   .u_boot_cmd : { *(.u_boot_cmd) } 
                                     //把__u_boot_cmd_end赋值为当前位置,即结束位置*/
   __u_boot_cmd_end = .;
   . = ALIGN(4);
   __bss_start = .;             //把__bss_start赋值为当前位置,即bss段的开始位置*/
   .bss : { *(.bss) }          //指定bss段*/
   _end = .;                   //把_end赋值为当前位置,即bss段的结束位置*/
}

关键字:uboot  lds 引用地址:uboot 之uboot.lds分析

上一篇:S3C6410 LCD Overlay Test Program
下一篇:u-boot移植步骤详解

推荐阅读最新更新时间:2024-11-13 06:35

使uboot支撑 S3C6410的SD启动
这里运用 的uboot并非uboot官方揭晓的uboot代码,而是为三星定制的一个uboot版本s3c-u-boot-1.1.6,其代码作者就包含了三星的程序员与denx的员工。这个版本支撑 SD启动,不过默认是nand启动,使它支撑 uboot须要 做以下事情:   1、 虽然支撑 uboot启动,但是uboot代码里不叫SD启动形式,而是叫movinand启动形式 ,在incluede/configs/smdk6410.h中就有这个选项,所以在这个文件里关上 nand启动,打开movinand启动就能够 了:   //#define CONFIG_BOOT_NOR   //#define CONFIG_BOOT_NAND
[单片机]
智能化汽车新型EE电气架构下的线束系统
随着以技术驱动为核心的产业重塑和以新生代不断涌入、新思潮的不断涌现,汽车工业和汽车作为消费品的内延和外延正发生着巨大而深刻的变化,而2021上海车展将再次印证汽车行业必将成为推动全球经济复苏的一个强劲的引擎、一个充满活力的中国市场正迸发出源源不断的发展动力。2021上海车展的主题定为“拥抱变化”。面对汽车电动化,智能化,网联化的快速发展,汽车线束系统的设计策略是低碳节能、轻量小型、智能集成,曼德电气系统同步推出了新型FPC柔性扁平线束、FPC柔性扁平保险盒和LDS激光镭雕线束。 ■ 让车辆减轻负重,扁平化的柔性线束 曼德电气系统推出柔性扁平线束具有体积小、重量轻、结构柔软的特点,适用于线束在狭小空间的布线,如汽车顶棚、车门
[汽车电子]
智能化汽车新型EE电气架构下的线束系统
S3C6410之uboot回炉再造(2)地址无关性
这一篇写得有点慢,期间为了弄清楚一些细节的问题耽搁了,不过写得也会更详细。 1 /* 2 ************************************************************************* 3 * 4 * CPU_init_critical registers 5 * 6 * setup important registers 7 * setup memory timing 8 * 9 ************************************************************************* 10 */ 11 /* 12 * we
[单片机]
Molex MediSpec MID/LDS 利用先进技术创新紧凑式3D封装
适用于高密度医疗器械的集成式小螺距。 (新加坡 – 2014 年12月4日) Molex 公司首次发布MediSpec™ 成型互连设备/激光直接成型 (MID/LDS) 产品,满足创新性的 3D 技术的开发要求,将先进的 MID 技术与 LDS 天线的专业知识结合到一起,在一个单独的成型封装中可以实现集成的小螺距 3D 电路,极其适用于高密度的医疗器械,符合医疗级别的严格指导原则要求。 Molex 的集团产品经理 Steve Zeilinger 表示:“MediSpec MID/LDS 3D 保护电路性能超出现有的 2D 技术,可供医疗器械的设计人员将高度复杂的电气与机械功能集成到极为紧凑的应用当中。”。
[医疗电子]
Molex MediSpec  MID/<font color='red'>LDS</font> 利用先进技术创新紧凑式3D封装
OK6410光盘里的uboot不能用TFTP下载文件
无论用ping命令还是tftp命令,都显示 CS8900 Ethernet chip not found?! 看了uboot1.1.6/include/configs/smdk6410.h,里面确实是配置为网卡使用CS8900,什么时候发布个配置为DM9000的uboot源码啊?或者发个补丁也行 此问题已解决 方法很简单,给用飞凌S3C6410的朋友一个参考。   a.用\u-boot-1.1.6-TQ6410\drivers\目录下的dm9000x.c和dm9000x.h替换OK6410的u-boot里的同名文件   b.用\u-boot-1.1.6-TQ6410\include\configs\tq6410.h里配置网卡的几行
[单片机]
uboot启动后在内存中运行裸机程序hello
如题,实现过程中发现3额问题,先写下来,待解答: 1、uboot启动后再dnw上打印许多信息,我想改变其中的打印信息或加上自己的打印信息以证明程序运行到何处。修改完后重新编译uboot.bin。 在DNW下执行dnw 50008000 USB下载uboot.bin到内存50008000处, go 50008000,从内存50008000处运行我刚下载的程序,发现我修改的内容并未显示。 重新执行dnw 50008000,nand erase 0 100000,nand write.uboot 50008000 0 100000,后从nand直接启动,发现我修改的内容被打印出来了。 总结:可能的原因:1、程序下载到50008000
[单片机]
uboot-2011.12移植到S3C2440(序五)——ARM寄存器说明
参考《ARM应用系统开发详解》 ARM体系结构的寄存器R0~R15主要有三类: @未分组寄存器R0~R7 @分组寄存器R8~R14 @PC寄存器R15 未分组寄存器 同一个寄存器名在ARM微处理器内部只有一个独立的物理寄存器与之对应。 分组寄存器 每一个物理寄存器分别与不同的处理器模式相对应。对于R8~R12来说,每个寄存器对应两个不同的物理寄存器,当使用fiq模式时,访问寄存器R8_fiq~R12_fiq;当使用除fiq模式以外的其他模式时,访问寄存器R8_usr~R12_usr。对于于R13、R14来说,每个寄存器对应6个不同的物理寄存器,其中的一个是用户模式与系统模式共用,另外5个物理寄存器对应于其他5种不同的运行
[单片机]
友善之臂mini2440 烧录uboot的方法
利用Minitools工具将uboot.bin 文件烧录进mini2440开发板的步骤: 1、用USB线将开发板和电脑相连,开发板的S2开关拨到NOR一侧,打开minitools,打开开发板电源,即可显示“已连接开发板(S3C2440 400MHz......)” 2、勾选‘Linux’-- 'linux bootloader' 3、选择uboot.bin目录 4、点击“开始烧写”即可将uboot.bin烧录到开发板的nandflash中。 启动: 关闭电源,将S2拨动开关拨回NANDFlash一侧,上电。uboot配置正确的话链接串口即可打印出相关信息。
[单片机]
友善之臂mini2440 烧录<font color='red'>uboot</font>的方法
小广播
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

电子工程世界版权所有 京ICP证060456号 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved