首先说,今天是一个值得高兴的日子,因为经过四天的努力,终于把U-Boot1.3.4成功移植到了s3c2416上.板子要求是SD卡启动,以下具体的移植步聚:
一、SD起动首先要修改/include/configs/smdk2416.h头文件:
在365行左右,按如下修改:
//#define CONFIG_BOOT_NAND
#define CONFIG_BOOT_MOVINAND
说明:
CONFIG_BOOT_NANA是nandFlash启动方式,在此处要注释掉,因为我们要从SD卡启动,相应的 IG_BOOT_MOVINAND项要打开。
二、
#define CONFIG_SERIAL1 1
三、BootLoader一般分为两个阶段启动:第一阶段使用汇编来实现,它完成一些依赖于CPU体系结构的初始化,并调节器用第二阶段代码;第二阶段通常用C语言来实现。
第一阶段:
硬件设备初始化;(boardmsung/smdk2416/lowlevel_init.S,包括点亮测试灯,关闭看门狗、关闭main和sub中的中断、初始化系统时钟、初始化串口、初始化NandFlash,初始化MMU)
为加载Bootloader的第二阶段代码准备RAM空间;
复制Bootloader 的第二阶段代码到RAM空间中;(在汇编start.S 调用 void movi_bl2_copy(void))
设置好栈;
跳转到第二阶段代码的C入口点。(在u/s3c24xx/start.S中,通过ldr pc, _start_armboot调用lib_arm/board.c中的void start_armboot (void)进入第二阶段)
第二阶段:
初始化本阶段要使用到的硬件设备;
检测系统内存映射(memolry map);
将内核映象和根文件系统映象从Flash上读到RAM空间中;
为内核设置启动参数;
四、 编译U-boot
make distclean 编译之前先清除一下;
make smdk2416_config
make CROSS_COMPILE=交叉编译器的路径
关键字:s3c2416 U-Boot 移植
引用地址:
s3c2416 U-Boot移植笔记
推荐阅读最新更新时间:2024-03-16 16:18
[Linux 底层]U-boot ksz8081网络驱动调试
micrel公司一款优秀的PHY芯片,关于芯片的介绍参考: ksz8081数据手册解读 系统版本:Ubuntu18.04-64 编译器版本:gcc version 7.4.0 (Ubuntu/Linaro 7.4.0-1ubuntu1~18.04.1) uboot版本:2018.07 -linux4sam_6.0 板子型号:at91sama5d3x-xplained MCU型号:sama5d36 与ksz9031很相似,公众部分可参考: 1、如何找到uboot官网开发板默认配置文件路径 2、如何进行公共信息配置 3、如何核对开发板硬件的参数 4、如何对uboot功能进行裁剪 5、设
[单片机]
s3c2440 ads程序移植到keil中(三) 初步完成
如果我把参数配置发生改变呢 然后再一次编译 要包错误 如下所示 其实我们到这里离 在s3c2440 ads程序移植到keil中(二)中看到这个网友不值提供了方法 而且提供了几个文件的下载地址 http://download.csdn.net/detail/googlemi/5176844 我直接下载下来了 把其中的2440init.s文件直接拷贝复制替代我工作中的2440init.s 该错误消失了 但是出现了 这一个错误 反正修改就能解决 然后 提示了一个错误 意思 就nand.c和nand.h 没有加上去 让后加上去了 编译成功没有错误 这种方式到此结束
[单片机]
基于ARM-Linux的MiniGUI的仿真与移植
近几年,随着嵌入式系统的日益发展和32位嵌入式处理器以及图形显示设备的广泛应用,目标产品对GUI(图形用户界面)的需求越来越多。由于嵌入式系统一般实时性要求很高,所以嵌入式系统下的GUI需要具有轻量级型、占用资源少、高性能等特点。此外,嵌入式系统往往是一种定制设备,它对GUI的需求各不相同,因此,GUI必须也可以定制。而MiniGUI是一个非常适合实时嵌入式产品的高效、可靠、可定制、小巧灵活的图形用户界面支持系统,被广泛的应用于高端科技产品中。利用MiniGUI开发出良好的人机交互界面已成为嵌入式开发中的迫切需求。本文实现了在ARM-Linux环境下进行基于QVFB的MiniGUI的模拟开发、调试,通过在PC机上的仿真模拟,将
[单片机]
jz2440 ----移植自制的USB RTL8188EUS网卡驱动
1:google 下载rtl8188eus的网卡驱动源码 https://github.com/quickreflex/rtl8188eus 2.解压缩下载的文件,把驱动文件rtl8192_8188eus_linux_xxx.tar.gz(xxx是版本号)添加到要编译的内核树里面去 (1)假定你的内核位置为/root/linux-kernel,解压缩驱动文件,并且把解压缩后的驱动文件夹名改为rtl8192eus。 (2)把改好名字的驱动文件夹rtl8192eus复制到/root/linux-kernel/drivers/net/wireless/下。 (3)修改/root/linux-kernel/driver
[单片机]
基于ARM9的Linux代码移植
简介:介绍了嵌入式Linux移植的方法和过程,给出了嵌入式开发环境下基于硬件平台ARM9的bootloader、Linux内核移植的实现方案,该方案可为嵌入式系统的应用研究提供操作系统层面的支持。 摘要:介绍了嵌入式Linux移植的方法和过程,给出了嵌入式开发环境下基于硬件平台ARM9的bootloader、Linux内核移植的实现方案,该方案可为嵌入式系统的应用研究提供操作系统层面的支持。 O 引言 随着计算机技术、通信技术以及Internet的飞速发展。嵌入式系统已得到越来越广泛的应用。与此同时,嵌入式系统的复杂性也在不断增加,嵌入式操作系统已经成为其中最重要的组成部分。目前,市场上存在着众多的嵌入式操作系统,而在
[单片机]
mini2440一线总线移植tslib1.4
最近在学习中接触到了触摸库tslib,自己试着移植的时候发现网上分为两种方案,一种是使用2440自带AD的方案,另一种是友善的一线总线方案。我的液晶型号是TD35,默认的连接方案是一线总线,所以这里移植的是一线总线方案。 上网搜索的过程中发现网上可用的一线总线tslib并不是1.4版本的,但是编译后使用是没有问题的,抱着试一试的心态决定移植一下1.4版本的tslib到MINI2440,经过实验,成功将tslib的1.4版本移植到了mini2440. 移植主要是将友善提供的one_wire_ts_input.c文件添加到对应位置,修改配置文件就可以了。 下面列出补丁文件 diff -ru tslib/configur
[单片机]
u-boot-2009.08在mini2440上的移植 增加yaffs2文件系统
移植环境 1,主机环境:VMare下CentOS 5.5 ,1G内存。 2,集成开发环境:Elipse IDE 3,编译编译环境:arm-linux-gcc v4.4.3,arm-none-eabi-gcc v4.5.1。 4,开发板:mini2440,2M nor flash,128M nand flash。 5,u-boot版本:u-boot-2009.08 5.1,添加Yaffs2镜像烧写功能 由于现在很多使用Nand Flash 的系统,在Linux 下都用Yaffs2作为存储数据的文件系统,甚至是根文件系统。所以在BootLoader 下能够烧写Yaffs2 映像文件变得很必要。对于Yaffs2 映像烧写的支持其实
[单片机]
MiniGUI在HDTV SoC平台上的移植
1.引言
嵌入式系统功能的日益强大使得在嵌入式产品中包含图形界面功能成为一种趋势。但是嵌入式系统有着面向特定应用、实时、高效等特点,对系统资源的利用受自身条件的限制,对GUI有着轻型,高可靠性,高稳定性等要求。
高清数字电视解码平台HDTV SoC是由上海交通大学自行研究开发的,以数字电视机顶盒为应用背景的嵌入式单片系统。在硬件平台构建和操作系统移植的基础上,系统对友好的界面提出了更高的要求。在有限的系统资源和高效的实时性能等条件约束下,如何为该平台提供GUI的支持成为了一个难点。
MiniGUI是一种面向实时嵌入式系统的轻量级图形界面支持系统,具有小巧,高效,可移植性好等特点。针对HDTV SoC平台的硬件特点和Mi
[嵌入式]