- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我试图了解如何在基于powerpc mpc8313处理器的板上完成uboot的移植。在此过程中,我遇到了名为uboot.lds的文件(链接描述文件)。
我需要了解这个文件。我的意思是提到的内容的意义以及uboot软件包中定义的实际地址。
例如;在“部分”中,我可以找到以下信息的重要性:
/* Read-only sections, merged into text segment: */
. = + SIZEOF_HEADERS;
.interp : { *(.interp) }
.hash : { *(.hash) }
.dynsym : { *(.dynsym) }
.dynstr : { *(.dynstr) }
.rel.text : { *(.rel.text) }
.rela.text : { *(.rela.text) }
.rel.data : { *(.rel.data) }
.rela.data : { *(.rela.data) }
.rel.rodata : { *(.rel.rodata) }
.rela.rodata : { *(.rela.rodata) }
.rel.got : { *(.rel.got) }
.rela.got : { *(.rela.got) }
.rel.ctors : { *(.rel.ctors) }
.rela.ctors : { *(.rela.ctors) }
.rel.dtors : { *(.rel.dtors) }
.rela.dtors : { *(.rela.dtors) }
.rel.bss : { *(.rel.bss) }
.rela.bss : { *(.rela.bss) }
.rel.plt : { *(.rel.plt) }
.rela.plt : { *(.rela.plt) }
.init : { *(.init) }
.plt : { *(.plt) }
.text :
{
cpu/mpc83xx/start.o (.text)
*(.text)
*(.fixup)
*(.got1)
. = ALIGN(16);
*(.rodata)
*(.rodata1)
*(.rodata.str1.4)
*(.eh_frame)
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
.dtors : { *(.dtors) }
/* Read-write section, merged into data segment: */
. = (. + 0x0FFF) & 0xFFFFF000;
_erotext = .;
PROVIDE (erotext = .);
.reloc :
{
*(.got)
_GOT2_TABLE_ = .;
*(.got2)
_FIXUP_TABLE_ = .;
*(.fixup)
}
__got2_entries = (_FIXUP_TABLE_ - _GOT2_TABLE_) >> 2;
__fixup_entries = (. - _FIXUP_TABLE_) >> 2;
.data :
{
*(.data)
*(.data1)
*(.sdata)
*(.sdata2)
*(.dynamic)
CONSTRUCTORS
}
_edata = .;
PROVIDE (edata = .);
. = .;
__u_boot_cmd_start = .;
.u_boot_cmd : { *(.u_boot_cmd) }
__u_boot_cmd_end = .;
. = .;
__start___ex_table = .;
__ex_table : { *(__ex_table) }
__stop___ex_table = .;
. = ALIGN(4096);
__init_begin = .;
.text.init : { *(.text.init) }
.data.init : { *(.data.init) }
. = ALIGN(4096);
__init_end = .;
__bss_start = .;
.bss :
{
*(.sbss) *(.scommon)
*(.dynbss)
*(.bss)
*(COMMON)
}
_end = . ;
PROVIDE (end = .);
}
最佳答案
要移植u-boot,可以在cpu目录而不是board目录中使用u-boot.lds。换句话说,可能不需要移植此文件。但是,如果有的话,这里是一个概述。
您可以在LD documentation中找到很多信息。
通常,LD脚本允许您执行的操作是覆盖GCC工具链在运行时将其放置在内存中的默认位置。编译应用程序时,将处理源代码并创建包含机器代码的目标代码文件。在链接过程中,各种目标文件被组合成一个文件,例如ELF可执行文件,并且文件头放置在文件中,以告知OS每个目标文件应在内存中的位置,以便在需要时可以找到它(全局变量,电话等)
如果要将代码放置在编译器/链接器无法预期的特定位置,则需要自定义脚本。这样做有很多原因,我将尝试列出。
关于linker - 了解uboot.lds,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4375908/
我设置了 Kamikaze 工具链(来自 openwrt),并为 AMCC PPC405ex kilauea 编译了 Linux 2.6.30.x 内核。引用板。但是,由于某种原因,我在 uBoot
我在尝试在 uBoot 中保存环境变量并让它们在重新启动后持续存在时遇到问题,请参见下面的跟踪。这是 U-Boot 2009.08-00000-g19b0e8d-dirty(2012 年 5 月 29
我已经搜索了验证 u-boot 的演示文稿和文档,并有几个问题。我会尝试引导任何用户了解我所处的位置,因为我怀疑我不是唯一一个在理解验证 u-boot 的过程时遇到一些轻微困难的人。 我有一个已编译的
我正在尝试在 UBOOT 中使用“fatload”。它以文件路径作为参数。我无法通过任何空格。 示例输入: fatload mmc 0:1 0x70800000 /somedir/file name
我想用闪烁的 LED 显示 Uboot 的进度。为此,我需要延迟,它不会使用 while 循环(非阻塞),而是使用中断。 Uboot内部有定时器的实现吗?我看了一下,没有发现非阻塞延迟。我是否需要从头
在一些 uboot 文件中我看到了这样的声明: DECLARE_GLOBAL_DATA_PTR 就在包含内容的正下方...有谁知道这是做什么/为什么这样做的? 谢谢,vj 最佳答案 这是一个宏声明,资
我使用uboot,并在其中添加了tftpboot命令。但是效果不太好,虽然可以传输数据,但在整个传输过程中总是出现超时。控制台显示如下 我的以太网拓扑是:带有uboot的板连接到我的路由器,我的PC连
我非常了解本地和嵌入式系统上的 Linux。我已将 BSP 移植到 mini2440 和 Pandaboard。我还为 x86 和 arm board 交叉编译了几个包,包括从源代码定制 VLC。 好
我希望找到一种方法来从 uBoots 命令提示符增加 RAM 中的值。 简而言之,我设备上的地址 0xc4000000 是我需要递增的临时变量 想法? 我可以将该值放入一个环境变量中并将其添加到那里吗
uboot/kernel开发中uboot从哪里获取flash、RTC、RAM的信息 最佳答案 如果您正在寻找董事会特定的内容,请检查 .../include/configs/yourboard.h 关
我在 u-boot 中测试我的 i.MX6 板上的以太网连接 我使用了以下命令: setenv ipaddr xx.xx.xx.xx setenv serverip xx.xx.xx.xx seten
我开始在飞思卡尔 mx5x 板上研究嵌入式设备,现在正在探索该板的启动模块。根据所选的启动模式,需要正确的 uboot 镜像。对于mmc boot-mod,镜像是uboot-no-padding.bi
硬件:BeagleBoneBlack 操作系统:Debian Jessie 内核:4.4.30-ti-r64 U-Boot: U-Boot 2016.11-rc3-00002-g73df7f7(201
我需要使用命令 mkimage在我的 Centos 7 32 位系统中。 我试图以 root 身份安装 uboot-tools使用命令 yum install ubool-tools但这不可用。 有没
Closed. This question does not meet Stack Overflow guidelines。它当前不接受答案。 想要改善这个问题吗?更新问题,以便将其作为on-topi
我正在尝试使用在 imx51 飞思卡尔板上运行的 linux rootfs 获取 linux 内核。 我编译了 linux 内核、根文件系统和 u-boot 并将镜像复制到 SD 卡:分区 0:引导分
我正在尝试使用 buildroot 和 uboot 让 initramfs 在嵌入式 linux 设备上工作。我一直在按照指南在 buildroot 和内核配置中设置 initramfs。然而,据我所
我试图覆盖 uboot bootcmd 环境变量,但它继续使用默认设置。我知道我可以在 uboot 提示符中设置它,它将永久保存,但我希望能够通过代码自动设置它。 在我的主板配置文件中 #includ
我正在使用运行 Arago 项目的定制达芬奇板。我使用的是模拟视频输出 (PAL),尽管 OLED 显示屏通过 uboot 启动,但在内核完成加载之前不会出现图像。我想在uboot启动时立即显示 Lo
我的 SOC 上有两个核心 PPC476。在一个内核上,我能够运行 linux 内核。 谁能建议我如何将第二个内核放入 uboot 的自旋循环中,然后将其取出并将其映射到 linux 内核中。 问候。
我是一名优秀的程序员,十分优秀!