UBOOT 移植操作(转1)

uboot移植步骤 Uboot移植具体步骤(本例子为Samsung origen板) 第一步:准备源码 网上下载现成的uboot开源代码:https://ftp.denx.de/pub/u-boot/ 在该网站中选择与板子兼容的uboot源文件(公司中一般咨询硬件工程师) 在Linux系统下解压 tar xf 压缩包名 第二步:修改源码 1.抄板:将和你板子兼容的文件复制一份文件 cd u-boot-2013.01/board/samsung/ cp origen fs4412 -r 2.直接执行make fs4412, 阅读详情
UBOOT 移植操作(转1)
2007-04-08 18:52

[0]目录结构
◆ board:和一些已有开发板有关的文件,比如Makefile和u-boot.lds等都和具体开发板的硬件和地址分配有关。
◆ common:与体系结构无关的文件,实现各种命令的C文件。
◆ cpu:CPU相关文件,其中的子目录都是以U-BOOT所支持的CPU为名,比如有子目录arm926ejs、mips、mpc8260和nios等,每个特定的子目录中都包括cpu.c和interrupt.c,start.S。其中cpu.c初始化CPU、设置指令Cache和数据Cache等;interrupt.c设置系统的各种中断和异常,比如快速中断、开关中断、时钟中断、软件中断、预取中止和未定义指令等;start.S是U-BOOT启动时执行的第一个文件,它主要是设置系统堆栈和工作方式,为进入C程序奠定基础。
◆ disk:disk驱动的分区处理代码。
◆ doc:文档。
◆ drivers:通用设备驱动程序,比如各种网卡、支持CFI的Flash、串口和USB总线等。
◆fs:支持文件系统的文件,U-BOOT现在支持cramfs、fat、fdos、jffs2和registerfs。
◆ include:头文件,还有对各种硬件平台支持的汇编文件,系统的配置文件和对文件系统支持的文件。
◆ net:与网络有关的代码,BOOTP协议、TFTP协议、RARP协议和NFS文件系统的实现。
◆ lib_arm:与ARM体系结构相关的代码。
◆ tools:创建S-Record格式文件 和U-BOOT images的工具。

==========================================================================================
[1]u-boot.1.1.2目录下有Makefile
1)设置编译器
可以看到这一项:
ifeq ($(ARCH),arm)
CROSS_COMPILE = arm-linux-

也就是说这里所用的交叉编译器是arm-linux-gcc,u-boot默认是用这个的,也有用arm-elf-gcc的,arm-elf-tools-20030314.sh,用它来编译,没有问题。如果最后MAKE的时候提示找不到arm-linux-gcc就是这错了,改一下。

arm-elf-gcc是用来编译uClinux内核的工具,arm-linux-gcc用来编译LINUX
2)加进自己板子的项目
搜索B2的这部分文件
B2_config       :       unconfig
        @./mkconfig $(@:_config=) arm s3c44b0 B2 dave

后面加上这部分:
TT_config        :       unconfig
        @./mkconfig $(@:_config=) arm s3c44b0 TT T2T
切记在@./mkconfig $(@:_config=) arm s3c44b0 TT T2T
前面的是Tab来的,TT_config        :       unconfig也是一样,不能用空格代替,因为它是靠这个来识别命令的

==========================================================================================

[2]在宿主机(PC机)上建立arm-elf-gcc交叉编译环境

1)建立arm-linux-gcc编译环境
在RedHat Linux系统下以root用户登录,
将cross-2.95.3.tar.bz2文件复制到/目录下,
安装:
# tar jxvf cross-2.95.3.tar.bz2
这个命令会在你的/usr/local/arm/2.95.3目录下安装 arm-linux-gcc 交叉编译程序,
然后在PATH变量中添加一项:/usr/local/arm/2.95.3/bin.
[root@localhost root]# export PATH=$PATH:/usr/local/arm/2.95.3/bin

或
把PATH=:$PATH:/usr/local/arm/2.95.3/bin添加到/ETC/bash_profile文件中

或者
在/etc/bashrc文件中添加一项:
export PATH=:$PATH:/usr/local/arm/2.95.3/bin
之后可以测试一下 echo $PATH

注意:PATH大小写不一样,另外LINUX下大小写是不同的,以后不特别声明。

注意:命令中的参数之间都由单个空格或者TAB隔开,命令前有的有# 代表命令行符,不用输入。

注意:不可在WINDOWS下用winRAR解压u-boot-1.1.2.tar.bz2或u-boot-1.1.2.tar.gz这种文件,会少文件,去LINUX下,另外解压的时候也不用非点用命令行操作,LINUX现在对GUI已经支持的非常好了,比如解压只要右键点文件,选解压到当前文件夹就可以,执行的时候只要双击再选“执行”

注意:我用的VMWARE(虚拟机)装的LINUX,要在LINUX和WIN中间传递文件用VM-》SETTING里的SHARE FOLDER
该功能是把WIN 下的一个文件夹共享给LINUX。
这个功能必须装VMWARE TOOLS才能用,
装VMWARE TOOLS方法:首先在VM-》SETTING里CDROM项里把光驱设置为装入VMWARE安装文件夹下的LINUX工具的.ISO,LUINUX下就出现CDROM了 拷贝 解压 安装不在话下。必须注意的是VMWARE TOOLS在每次重起LINUX之后还必须也重起一下,TMD,谁搞定不用重起告诉我一声
重起的方法:/etc/init.d/vmware-tools restart
就有消息出来了

注意:另外郁闷的是我的WIN与LINUX之间复制文字似乎也不顺畅,干脆在SHARE FOLDER里建立一个TXT,两个系统捣文字玩~~

测试:
把终端关闭,重新打开后执行如下命令:

# arm-linux-gcc –v

建立好交叉编译环境后可以试着编译u-boot了
2)也可以建立arm-elf-gcc
与上面类似,用周立功的编译包直接安装
会在/usr/local/bin下产生arm-elf-gcc只类的文件
然后设置路径
[root@localhost root]# export PATH=$PATH:/usr/local/arm-elf/bin
======================================================================================================
[3] 测试交叉编译器搞好没有
编译个44B0例子 在UBOOT包目录下执行一下命令,以下是编译的包自带的DAVE公司板子B2(名)
1)      Make distclean (清除以前编译的痕迹)
2)      Make B2_config(B2代表B2板子的,前面见到过)
3)      Make
没问题就可以进行下面了
注意:B2默认用arm-linux-gcc编译,要是前面安的arm-elf-gcc的话此时会报错 把UBOOT目录下的MAKEFILE按照前面说的改一下
注意:一般说来还会有个问题,怀疑是编译器的问题 提示什么abi=apcs-gnu只类的找不到吧~~记不住了
改UBOOT目录下config.mk (好象)
文件里改成如下
PLATFORM_CPPFLAGS +=$(call cc-option,-mapcs-32,$(call cc-option,-mabi=apcs-gnu,))
原来的行少了$(call cc-option,-mabi=apcs-gnu,) 具体在哪行忘了 CTRL+F搜索一下
其他应该没问题,有问题GOOGLE搜一下,不是通病就是自己安装的问题了
注意:
MAKE之后会生成三个文件:
u-boot——ELF格式的文件,可以被大多数Debug程序识别;
u-boot.bin——二进制bin文件,纯粹的U-BOOT二进制执行代码,不保存ELF格式和调试信息。这个文件一般用于烧录到用户开发板中;
u-boot.srec——Motorola S-Record格式,可以通过串行口下载到开发板中。

uboot移植LWIP实现FTP下载文件 本文主要介绍了如何在uboot基于LWIP协议栈实现对FTP功能的支持 阅读详情

相关推荐

Exynos4412 Uboot 移植(五)—— Uboot 移植过程

Uboot 版本:u-boot-2013.01 开发板:FS_4412 平台(Exynos4412,可以根据自己的板子修改,只要是4412的过程都是一样的) 一、建立自己的平台 1、下载源码 我们可以在下面这个网站上下载最新的和以前任一版本的uboot ftp://ftp.denx.de/pub/u-boot/ 这里我们使用的是u-boot-2013.01 2、解压u

知秋一叶 2万+

UBOOT 移植操作(1)

[0]目录结构◆ board:和一些已有开发板有关的文件,比如Makefile和u-boot.lds等都和具体开发板的硬件和地址分配有关。 ◆ common:与体系结构无关的文件,实现各种命令的C文件。 ◆ cpu:CPU相关文件,其中的子目录都是以U-BOOT所支持的CPU为名,比如有子目录arm926ejs、mips、mpc8260和nios等,每个特定的子目录中都包括cpu.c和interr

HP Studio 1252

十三.linux开发之uboot移植(十三)——三星官方uboot移植过程详解

2018/08/12 21:39 有道云地址:http://note.youdao.com/noteshare?id=9ab91347c6ce1b15ef0c3fa8e8a60605&sub=612AF77E36994945B6638F4B884E286C 太大了,这里就不高亮各处关键点了,详细查看有道云笔记。 一.VMware NAT方式 Ubuntu 14.04 联网 (转ht...

Mr.Wang的博客 4810

uboot内存操作命令

uboot内存操作命令命令用于直接对DRAM进行读写操作,常用命令有md、nm、mm、mw、cp、cmp。

qq_22870815的博客 2167

十四.linux开发之uboot移植(十四)——从UBOOT官方下载uboot移植详解

官方uboot2013.10版本的移植流程图(包括有道云笔记地址) http://note.youdao.com/noteshare?id=d78fd7030db099c8a1bed0f6b948bf75&sub=1287D105BC284AD887BC4E2A2A097C87 uboot官方版本下载地址:ftp://ftp.denx.de/pub/u-boot/ uboot下载版本...

Mr.Wang的博客 6901

移植Uboot2017到TINY4412<1>

移植uboot201705到tiny4412开发板,启用SPL。

Deadline_h的博客 2590

uboot命令使用学习(2)

学习目标: uboot命令使用学习(2) 学习内容: 学习使用了正点原子的I.MX6ULL教程及开发平台。 使用uboot的内存操作命令,直接对DRAM进行读写操作。 1、md 2、nm 3、mm 4、mw 5、cp 6、cmp 学习时间: 2022-05-29 学习产出: 一、md显示内存值 ”md“命令用于显示内存值,格式如下: md[.b,.w,.l] address [#of objects] 命令中的[.b,.w,.l]对应byte,word,long,也就是分别以1字节、2字节、4字节来显示内存

qq_41545736的博客 2533

Uboot是什么?如何获取?何为Uboot移植

什么是Uboot? uboot是一个复杂的裸机程序 uboot是一个bootloader,其作用是用于启动linux或其他系统。其中,最为重要的工作就是初始化DDR。因为linux是运行在DDR中的,因为芯片本身内存很小。 这里涉及一个问题linux系统巡行需要系统镜像文件zImage和设备树.dtb文件,那么这些文件最初是在emmc/nand/spi flash/sd卡等外部flash中,如何...

chillinght的博客 2450

U-Boot命令之内存操作命令

内存操作命令内存操作命令1、 md 命令2、 nm 命令3、 mm 命令4、 mw 命令5、 cp 命令6、 cmp 命令 内存操作命令 内存操作命令就是用于直接对 DRAM 进行读写操作的,常用的内存操作命令有 md、 nm、mm、 mw、 cp 和 cmp。 命令 描述 md 用于显示内存值 nm 用于修改指定地址的内存值 mm 用于修改指定地址的内存值 mw 用于使用一个指定的数据填充一段内存 cp 用于将 DRAM 中的数据从一段内存拷贝到另一段内存中,或者把 Nor

一只青木呀 4220

【工具使用】Keil常用的调试操作整理介绍

2、当选择了非0级优化时,调试可能会变得困难,具体表现在断点调试。该按钮是在进入了函数单步调试的时候,有时候你可能不必再执行该函数的剩余部分了,通过该按钮就直接一步执行完函数余下的部分,并跳出函数,回到函数被调用的置。:如果是在C语言窗口中,则是按单条语句执行,与单步调试不同的是,遇到函数不会进入函数内部,而是直接全速运行函数,并跳到下一条语句。但我的Keil软件中无法显示这个视图,并且通过修改系统试图,调试时,点击打开系统视图发生了闪退的现象,目前能想到的原因是:重新安装Keil,安装最新版本。

MEYOU_Cc 不吃香菜! 1万+

如何查看在电脑里登陆过的微信帐号的聊天记录

打开微信电脑版,点击左下角 "≡" 菜单 → 选择 "设置"进入 "账号与存储"(旧版为" 文件管理 ")选项卡在 "存储位置"一栏查看当前实际保存路径,可点击" 打开文件夹 " 直接访问查看电脑里登录过的微信账号聊天记录,首选官方客户端直接登录查看,操作简单且安全;若账号已退出,可通过备份恢复功能处理;仅需查看媒体文件时,可定位到FileStorage 文件夹直接访问。无论哪种方式,都需遵守隐私保护原则,并注意聊天记录的加密特性限制。

捷利迅分享的博客 4539

imx6 Uboot 移植小结

imx6 Uboot移植参考NXP(Freescale)官方文档《i.MX 6 BSP Porting Guide》 此次的uboot基于U-Boot v2014.04版本,参考板为imx6qsabreauto,目标板命名为myboard 1.在uboot源码中复制参考板级文件为目标板文件: $cp -R board/freescale/mx6qsabreauto board/fre

9527的博客 9698

大红球预警版-精选+自定义板块监控

这是一款简单易用的股票大单资金监控插件,兼容通达信软件,可嵌入分时图或定制版面。它以红绿圆球直观显示主力买卖情况(红球为买,绿球为卖),支持300万以上大单语音播报。插件提供实时资金流向分析、多股同时监控、自定义预警条件等功能,无需L2账号。用户可自由切换图形/列表模式,监控特定板块,并配合幻影软件实现自动交易。虽然上涨股通常红球占优,但需结合其他指标综合判断。该插件完全免费,包含详细视频教程,适合新手使用。

guleba的博客 1793

[uboot 移植]uboot 移植过程

uboot 移植具体过程

mllt_link 4284

tcl脚本语言之file的常见用法

这些命令覆盖了从文件属性获取、修改、复制、删除、路径处理等广泛的文件操作需求。命令用于处理文件系统操作。

hzmscut的博客 5149

VASP计算层错能(SFE)全攻略2

本文介绍了使用VASP计算纯镍(Ni)层错能(SFE)的具体步骤。首先构建Ni的FCC单胞并扩展为超胞,通过修改原子位置引入堆垛层错;随后分别计算完美晶体和含层错结构的能量;最后通过能量差与层错面积之比求得SFE值。计算需注意k点网格、截断能和超胞尺寸的收敛性测试,并推荐使用PAW赝势和ASE等工具辅助结构构建。

weixin_50519490的博客 1986

Linux驱动开发移植三巨头——Uboot移植

uboot是一个bootloader,作用是启动Linux或其他系统。由于Linux是运行在DDR里面的,所以uboot本质上就是初始化DDR。

qq_46526760的博客 2033

【OpenClaw从入门到精通】第73篇:30天OpenClaw实战挑战——从零搭建个人数字助理(Day15-21)万字超详细高阶实战版

经过前两周的基础部署与功能搭建,你已拥有可自动化干活的AI助理与数字员工团队,但距离“高阶精通”仍有差距。本文聚焦第三周(Day15-21)核心实战,围绕安全审计、语音能力接入、Token成本控制、Agent Loop优化、One-Liner指令五大核心模块,结合真实落地案例与踩坑经验,提供超详细实操指南。通过本文,你将掌握生产级安全加固方案、语音交互全流程配置、低成本高性价比使用策略、Agent自主闭环优化技巧,以及一句话搞定复杂任务的高效指令用法,同时完成中期复盘与最后九天冲刺规划

专注于人工智能、软件开发、工控自动化、工厂数字化及智能化等领域,希望和大家共同进步! 362

UBOOT学习1——UBOOT移植流程

imx6ull下Uboot移植流程

qq_44744004的博客 1563

PCL学习笔记(四)——点云曲面重建

文章目录一、凸包算法二、 单纯的点云数据固然很好,但仅仅是点的话仍是不够的,因为这不利于我们后续对实体对象的渲染与各种应用,如计算实体的表面积、体积等等,所以这就需要我们对实体进行点云的曲面重建。 一、凸包算法 在计算机图形学中,凸包是指在任意维空间中包含某一有限点集P的最小凸集,它由凸包顶点构成,在二维上其表现形式为一个凸多边形,而在三维上则表现为一个凸多面体。在二维层面上来讲,最常用的凸包算法有Graham扫描法和Jarvis卷包裹法,但前者并不适用于三维层面,后者倒是可以扩展到三维。除此之外,在

dayuhaitang1的博客 6912

29、集成电路测试技术解析

本文深入解析了集成电路测试技术,涵盖定制电路测试资源与策略、混合模拟/数字电路测试方法、数字测试模式生成难点与解决方案,以及可控性和可观测性的核心概念。同时详细讨论了固定故障、桥接故障和开路故障等主要故障模型及其检测方法。在测试技术的综合应用与优化方面,提出了合理配置测试资源、优化测试模式和设计测试流程的策略。最后展望了测试技术的发展趋势,包括集成化测试、自动化测试和智能化测试。通过全面掌握这些测试技术,可以有效提高集成电路的质量和可靠性,推动集成电路产业的发展。

work3的博客 204

uboot的移植——移植uboot官方的uboot到x210开发板(1)

以下内容源于朱有鹏嵌入式课程的学习与整理,如有侵权请告知删除。

主要记录嵌入式学习与开发过程。 2万+

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

嵌入式uboot移植之从uboot官方移植

注:以下内容来自朱老师物联网大讲堂课件 1. 选择合适的官方原版uboot 1.1 官方原版uboot的版本 (1)版本号。刚开始是1.3.4,后来变成2009.08 (2)新版和旧版的差别。uboot的架构很早就定下来了,然后里面普遍公用的东西(common目录下、drivers目录下、fs目录下等···)在各个版本之间几乎是完全一样的。差别最大的是board和cpu目录,这两个目录正是单板(开发板)相关的。越新的uboot版本支持越多的开发板(CPU),所以越新的uboot越庞大。 (3)并不是越新的版

donke_dong 1778

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

IMSL CNL 7.0.0 (x86-64)Crack

IMSL CNL 7.0.0 (x86-64)Crack intel的算法库破解文件,这是C++版本的破解文件

ARM uboot 的移植3 -从 uboot 官方标准uboot开始移植

一、选择合适的官方原版 uboot 1、官方原版 uboot 的版本 (1) 版本号。刚开始是 1.3.4 样式,后来变成 2009.08 样式。 (2) 新版和旧版的差别。uboot 的架构很早就定下来了,然后里面普遍公用的东西(common 目录下、drivers 目录下、fs 目录下等···)在各个版本之间几乎是完全一样的。 差别最大的是 board 和 cpu 目录,这两个目录正是单板(开发板)相关的。越新的 uboot 版本支持越多的开发板(CPU),所以越新的 uboot 越庞大。 (3) 并不

weixin_42109053的博客 2448

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

Uboot移植流程

linux-Bootloader(Uboot)移植流程 前言 最近在做ZigBee的温室大棚项目,将自己学习的过程和经验分享给大家。本文基于linux3.4.39内核版本,s5p6818开发板实现。 1、uboot启动简介 uboot启动的过程比较复杂,这里就只贴几张图片了,重点放在后面的uboot移植。。 补充:①Bootloader的两个阶段 ②内核传参:Bootloader启动完成后...

qq_41583666的博客 4536

uboot移植

一、我们知道uboot就是一个Bootloader。但是,arm不像我们的pc机一样,用一个老毛桃随便找一个网站下一个windows镜像就可以直接装了。 我们的uboot对应的就是老毛桃里面刷的引导程序。 虽然uboo支持很多架构很多不同的厂家的板子,但是UBOOT它不具备通用性。 跟我们的电脑不一样,电脑无论是华为的,小米的,华硕的老毛桃刷的底层引导程序都i是一样的。 所以uboot移植是要跟做手术一样对一些东西进行一些裁剪和配置。让uboot适配我们板子。 下面我们说一下移植的步骤。 1)首先肯定要去下

wzf_Cql 1574
上一篇: ztm语录
下一篇: uboot移植 之 2
一醉不醒
博客等级 码龄18年 15粉丝 43原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值