OK210 uboot 配置 笔记
来源:互联网 发布:淘宝上传的图片不清楚 编辑:程序博客网 时间:2024/05/14 13:55
U-Boot是universal bootloader,也就是通用的bootloader。
U-Boot 源码文件下包括一些目录文件和文本文件,这些文件可分为”与平台相关的文件”和”与平台无关的文件”,其中common文件夹下的文件就是与平台无关的文件;与平台相关的文件又分为CPU级相关的文件和与板级相关的文件:arch目录下的文件就是与CPU级相关的文件,而board、drivers、include等文件夹下的文件都是与板级相关的文件。我们在移植的过程中,需要修改的文件也就是这些与平台相关的文件。
内存采用了4片64Mbit x 16 I/Os的1Gb DDR2 SDRAM。
①解压源码后进入目录执行make forlinx_linux_config:
CURDIR 为 makefile 内嵌变量,即当前路径 参考http://qgjie456.blog.163.com/blog/static/354513672007629677779/
<span style="white-space:pre"></span>SRCTREE:= $(CURDIR)MKCONFIG:= $(SRCTREE)/mkconfigifneq ($(OBJTREE),$(SRCTREE))obj := $(OBJTREE)/src := $(SRCTREE)/else obj := src := endif export obj srcforlinx_linux_config :unconfig@$(MKCONFIG) $(@:_config=) arm s5pc11x smdkc110 samsung s5pc110 linux@echo "TEXT_BASE = 0xcc800000" > $(obj)board/samsung/smdkc110/config.mk</span>
等效于mkconfig forlinx_linux arm s5pc11x amdkc110 samsung s5pc110 linux
board/samsung/smdkc110/config.mk中内容为"TEXT_BASE = 0xcc800000"
②mkconfig分析:
#$0 $1 $2 $3 $4 $5 $6 $7#mkconfig forlinx_linux arm s5pc11x smdkc110 samsung s5pc110 linuxAPPEND=no# Default: Create new config fileBOARD_NAME=""# Name to print in make output#$#为参数个数,排除掉-- -a -n选项while [ $# -gt 0 ] ; docase "$1" in--) shift ; break ;;-a) shift ; APPEND=yes ;;-n) shift ; BOARD_NAME="${1%%_config}" ; shift ;;*) break ;;esacdone#BOARD_NAME 设置为 forlinx_linux[ "${BOARD_NAME}" ] || BOARD_NAME="$1"#参数个数即不小于4,也不大于7[ $# -lt 4 ] && exit 1[ $# -gt 7 ] && exit 1echo "Configuring for ${BOARD_NAME} board..."if [ "$SRCTREE" != "$OBJTREE" ] ; then#执行下方elsecd ./include#进入includerm -f asmln -s asm-$2 asm#设置asm-arm 指向 asmfirm -f asm-$2/archif [ -z "$6" -o "$6" = "NULL" ] ; thenln -s ${LNPREFIX}arch-$3 asm-$2/archelseln -s ${LNPREFIX}arch-$6 asm-$2/arch #设置arch-s5pc110 指向 asm-arm/arch fi# create link for s5pc11x SoCif [ "$3" = "s5pc11x" ] ; then rm -f regs.h ln -s $6.h regs.h#s5pc110指向regs.h rm -f asm-$2/arch ln -s arch-$3 asm-$2/arch#arch-s5pc11x 指向 asm-arm/archfiif [ "$2" = "arm" ] ; thenrm -f asm-$2/procln -s ${LNPREFIX}proc-armv asm-$2/proc#proc-armv指向asm-arm/procfi## Create include file for Make#echo "ARCH = $2" > config.mkecho "CPU = $3" >> config.mkecho "BOARD = $4" >> config.mk[ "$5" ] && [ "$5" != "NULL" ] && echo "VENDOR = $5" >> config.mk[ "$6" ] && [ "$6" != "NULL" ] && echo "SOC = $6" >> config.mk#./include/config.mk中的内容ARCH = armCPU = s5pc11xBOARD = smdkc110VENDOR = samsungSOC = s5pc110#if [ "$APPEND" = "yes" ]# Append to existing config filethenecho >> config.h#建立config.helse> config.h# Create new config filefiecho "/* Automatically generated - do not edit */" >>config.h#forlinx add if [ "$7" = "linux" ]thenecho "#define CONFIG_LINUX_FORLINX 1" >>config.helseecho "#define CONFIG_ANDROID_FORLINX 1" >>config.h#linux下输入这一句fi#echo "#include <configs/$1.h>" >>config.h#forlinx change for linux and android echo "#include <configs/smdkv210single.h>" >>config.h#输入#./include/config.h的内容/* Automatically generated - do not edit */#define CONFIG_LINUX_FORLINX 1#include <configs/smdkv210single.h>#
综上,即:
BOARD_NAME 设置为 forlinx_linux
设置./include/asm-arm 指向 ./include/asm
设置./include/arch-s5pc110 指向 ./include/asm-arm/arch 后又被替换
s5pc110指向regs.h
arch-s5pc11x 指向 asm-arm/arch
proc-armv指向asm-arm/proc
新建./include/config.mk中的内容
ARCH = arm
CPU = s5pc11x
BOARD = smdkc110
VENDOR = samsung
SOC = s5pc110
新建./include/config.h的内容
/* Automatically generated - do not edit */
#define CONFIG_LINUX_FORLINX 1
#include <configs/smdkv210single.h>
- OK210 uboot 配置 笔记
- forlinx ok210 uboot 分析
- UBOOT移植OK210开发板
- ok210 WINCEbootloader启动笔记
- 飞凌OK210学习笔记
- 飞凌OK210开发板UBOOT移植步骤
- 飞凌OK210开发板UBoot移植步骤
- UBOOT在OK210开发板移植知识点总结
- Uboot笔记
- uboot基础 配置编译uboot
- uboot的配置过程
- 配置uboot编译环境
- gec210 uboot 环境配置
- uboot配置编译
- uboot 环境变量配置
- uboot之配置分析
- uboot配置与编译
- uboot ddr配置
- java本地方法通过jni连接至c函数
- svn Eclipse插件实现,不能显示svn属性。 以及eclipse-luna_svn插件安装
- 数论
- 手机root也安全
- matlab7.0安装步骤(window7)
- OK210 uboot 配置 笔记
- iOS开发消息推送机制——本地推送。
- Bullet 刚体与软体的碰撞 collisions between rigidbody and softbody in Bullet
- VS2010出现fatal error C1902: 程序数据库管理器不匹配;请检查安装
- HttpUrlcon与HttpClinet(输入网络地址返回字符串,只实现Get方法)
- [Unity3D]Unity3D再叙NGUI之血条及技能冷却效果
- <include>标签和BaseActivity联合使用简化代码结构
- Android+NDK+OpenGLES开发环境配置
- ZOJ 3822Domination /2014牡丹江现场赛D题 (dp)