找回密码
 注册
关于网站域名变更的通知
查看: 267|回复: 1
打印 上一主题 下一主题

u-boot-2010-06在mini2440上的移植

[复制链接]
  • TA的每日心情

    2019-11-20 15:22
  • 签到天数: 2 天

    [LV.1]初来乍到

    跳转到指定楼层
    1#
    发表于 2020-9-21 11:15 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

    EDA365欢迎您登录!

    您需要 登录 才可以下载或查看,没有帐号?注册

    x

    + B  F" t, X( l: e+ h/ B3 [1 o一.u-boot移植准备工作
    6 Z" e8 W$ p( U' I+ F& F" E; o  b
    1.1 移植环境介绍
    0 S: Q4 q- R) g. p% d2 h
    0 D2 C; M2 h8 e* X+ B. L8 @: b5 EU-boot版本:u-boot 2010-6
    , p9 O, w0 E8 o. H0 L" O; w/ e( o, P. l5 A2 {
    Linux平台:虚拟机下fedora 13
    / ?; I7 a( g7 C
    ) a; J! @4 c7 i# y" D交叉编译工具:gcc-4.4.3* q6 O  v) B6 `* f' m0 N) V

    4 r: [$ L6 j0 E! x6 [9 mARM开发板:mini2440(CPU:S3C2440 ,SDRAM:64M,Nor Flash:2M,Nand Flash:256M,网卡:DM9000EP)$ y. a8 l# g8 l3 q0 v$ I, M
    % V' _  j  k7 j5 ^; Y9 s4 A
    1.2 删减u-boot文件3 g. S) [8 |) u9 k9 x7 p

    3 t8 [0 ^7 f. u/ ?删除arch目录下除arm目录以外的所有目录,arm/cpu目录下除arm920tmulu以外的所有目录,arch/arm/cpu/arm920t录下除s3c24x0目录以外的所有目录(该目录下的文件不要删),arch/arm/include/asm目录下除arch‐s3c24x0目录以外的所有arch‐xxxx目录(该目录下的文件不要删) 删除board目录下除samsung目录以外的所有目录,board/samsung目录下除smdk2410目录以外的所有目录 删除include/configs目录下除smdk2410.h文件以外的所有头文件。& g- ?. M! W% D; @2 L3 |# D

    + u0 d# p* ?/ Y) y, ~/ e % s. L' o( l* b3 ]/ G* P

    6 _  I- X9 ^' |6 G1.3 修改顶层Makefile文件
    ) v+ E3 R7 {1 I4 r. C) k9 N  _
    ! O/ K+ V( d3 h% @; A+ X) @( a+ x# set default to nothing for native builds
    7 l; G: ^" {9 X2 E4 ?# w
    , u1 s- c) L& G0 f4 y% R: Sifeq ($(HOSTARCH),$(ARCH))
    4 {1 Z9 q" z; _) ^4 Y/ A0 h* Q) q- t* ^
    #CROSS_COMPILE ?=# `, E) e3 d: r9 O5 X2 A; i

    # S4 |3 b  B; V% m6 b' j+ _, |#=========指定交叉编译工具========$ M+ Z& C0 }3 r6 [( h
      b3 P% F1 i5 ~
    CROSS_COMPILE ?= arm-linux-gcc 8 X  h1 o9 `! S

    5 g4 g: y1 ^! x+ X, g! o' [Endif; c4 g) z" N% f- \: |2 ^

    # C+ H; ]3 b/ |8 {1 E , i  [0 G7 X( R
    " P. R: ]. ^/ |3 o+ h0 K
    smdk2410_config   :      unconfig
    : C  F6 T+ ?: X
    5 C% W, r: D" Y( d9 o- o) d       @$(MKCONFIG) $(@:_config=) arm arm920t smdk2410 samsung s3c24x07 n. d' j* X% O" H/ o; K

    # U; }5 J6 D# ~. c# K$ m0 }#仿照smdk2410,配置自己的开发板
    3 e5 n' Q1 q6 J( [6 X1 t& {, ]0 i: Y0 @" f
    mini2440_config   :      unconfig5 B4 j, D; Q6 V2 \6 u8 m

    ; H5 }$ W" u% y0 k' ?) e: M       @$(MKCONFIG) $(@:_config=) arm arm920t mini2440 s3c24x0# p" A$ s+ Z- Q8 G$ |- ?/ D+ |

    0 u" [8 @( t. h/ u0 j" \8 R
    ( a; ]+ U2 u+ S" x  A. p+ J
    4 s% D- n9 o8 T! s开发板配置选项中各项的含义如下:
    , g6 k" t# {. f( \' J4 ]% v
    . g. _+ j% S  Aarm
    8 \, P5 b( l( t9 |8 O' k$ g1 e$ w8 M, \6 h
    CPU 的类型(CPU)
    ) e, }# T" k' N0 N) J; \" D/ p# c: Y* \) G0 N4 z
    arm920t  D8 j* x) l9 V8 o; j  v

    % [8 ]) h; ~6 [其对应于cpu/arm920t 子目录9 g% J. v8 p! X

    ! _, {, Q0 N& O4 t3 Lzcrarm' m3 g+ @9 e# F4 a, J

      V4 ^% O: i' _开发者/或经销商(vender),对应于board/zcrarm目录
    % J% E2 P5 ~9 V$ S& R1 o# T9 c7 o4 H9 K. j: x; @
    mini2440
    7 |! [; U% b' t3 F+ Q: }) _
    6 d+ R: D2 i0 b! X1 @) t开发板的型号(BOARD),对应于board/ zcrarm /mini2440 目录
    / s: X9 V& g0 T% B# y. q$ a5 w! ]! a: D5 a
    s3c24x0; H; }6 |1 ]# x3 {7 f$ _" x9 V" c
    6 g" |" A- Y9 O
    片上系统(SOC)定义5 F# s5 _  x9 l" g+ [

    7 X# I# n: U- b0 D& K% k
    ! d0 |3 V2 t/ I  X( w9 Q, u: z) U  s& i$ m" b+ J# y. p" j
    1.4 在/board 中建立mini2440 目录和文件0 m1 M' ]5 O$ }( B0 T8 u, J
    ! t5 e. J/ X0 |$ ]5 q/ v
    #cd board) F; ]2 U- f0 K9 w7 W3 @! M
    7 b0 T6 ~2 |9 d2 D* j
    #mkdir -p mini2440
    * _% W, o  L; A$ C( f# w/ Q* ?' A# N$ ~* A$ {/ h% G
    #cp -aRF  samsung/smdk2410/* samsung/mini2440/
    7 W5 J) z' T2 j5 ^% `, v+ W1 `* ^9 y# w: h2 ~
    #cd mini2440/
    8 Q. N4 g# y) k$ f" {( o2 e' Q' ]% r3 T% W
    #mv smdk2410.c mini2440.c: R6 r, D& R$ U7 G1 q- {
    9 y& o8 X! C. _' m9 _3 g6 G
    + R5 t9 \& A3 I+ G: l" l

    - a1 e/ G4 a2 E& r; s1.5 修改mini2440 目录下的Makefile文件
    . G+ Q; ~9 V9 }' l2 u2 x" H
    0 A7 G$ e8 A& D$ TLIB = $(obj)lib$(BOARD).a
    2 I1 {" e# G! `  n4 |! q( Q8 u- R2 e7 u6 o/ [* x! ~& }
    #COBJS := sbc2410x.o flash.o8 E8 |  j( L: b

    ! ]- A: |6 q( U! E. BCOBJS := mini2440.o flash.o+ L- o1 s& y! p- |& V% Y

    5 N) f, r/ ?& u3 k3 ]SOBJS := lowlevel_init.o
    , F- r, L  s; M5 }, _$ l# P' i, h; H! T4 G, H3 P& b) v; c
    SRCS := $(SOBJS:.o=.S) $(COBJS:.o=.c)
    6 x4 n) e. G2 h' S0 _
    4 |! I7 r" X! H2 a" @' G
    0 h6 q" n8 S8 U" i& h* O
    , w& W- k6 f% H1.6 在include/configs/中建立开发板配置文件
    + t/ |$ {% w: j5 R
    + ~5 l2 u, A" T8 q#cp include/configs/smdk2410.h include/configs/mini2440.h$ L$ ?4 T! i( f: B9 e" y3 O8 o
    - m  k4 l5 t- U8 Q( Z$ X! h

    , l8 }8 |3 @3 Z# b% c. A' r! h, E9 y" P/ U3 i. [' w: r. y
    1.7 测试编译环境(此问题在以前移植u-boot时出现)( r& g9 _( o( t% ]7 f% Q' |
    + U8 o0 |5 f3 _0 }7 c( d1 K2 G
    至此,最基本的配置已经完成。" m8 ]# r/ q; Y, K
    5 u! X+ ]+ b9 a, i7 t  u
    [root@angel u-boot-2009.11]# make mini2440_config7 B1 o) U" f! b: ]

    / k% k& Y8 ~' YConfiguring for mini2440 board...
    ( a9 I: B$ E. c! z: e5 L
    ; p- M* N, B8 P& ?, b# Jln: 创建符号链接 “asm”: 不支持的操作
    4 V. q5 x8 W' |- x9 L5 c9 o, r
    ' M2 F' F3 ]! b; u) wmake: *** [mini2440_config] 错误 1' I+ C5 ^6 i. H5 |

    & J7 B( G! V# K6 e2 m/ @  x出现错误了,会是什么原因呢?测试一下U-boot本身附带的配置:
    0 x; X! f" F5 _  R! S
    : \! o+ a* l) F- ?! J0 o' ?[root@angel u-boot-2009.11]# make smdk2410_config$ y5 n- O$ g" J. G

    ' l1 h. R+ C) Z' B. [Configuring for smdk2410 board...
    # T4 s# O( G+ z9 f. X. r! i! V0 |; a& w" q
    ln: 创建符号链接 “asm”: 不支持的操作5 x9 [& Q6 u7 x% u' H  n2 q, o7 ^: X8 t

    , A/ i9 O+ m- x% V# mmake: *** [smdk2410_config] 错误 1+ g" a3 ^: R/ T! d% F5 p- |( O. Z

    3 z; h2 c0 q$ Q8 s% h$ Y依然是这个错误,于是猜测错误原因不是在自己的配置上,上网查了下,发现错误原因是:在Windows分区使用此命令,Windows分区不支持linux上的链接。
    # s: Y3 s: ~3 l& j6 c) C: e, J# O  G
    恍然大悟啊,自己把U-boot解压在虚拟机的共享文件夹下了,修改文件夹路径,编译……OK.
    * I2 J9 m0 i/ w& H. r6 ?; h! K9 I# N9 v

    / }& F  w/ B3 D# z& E今天先写这么多,待会继续整理........
  • TA的每日心情

    2019-11-29 15:37
  • 签到天数: 1 天

    [LV.1]初来乍到

    2#
    发表于 2020-9-21 13:19 | 只看该作者
    u-boot-2010-06在mini2440上的移植
    您需要登录后才可以回帖 登录 | 注册

    本版积分规则

    关闭

    推荐内容上一条 /1 下一条

    EDA365公众号

    关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )

    GMT+8, 2025-11-25 01:04 , Processed in 0.156250 second(s), 23 queries , Gzip On.

    深圳市墨知创新科技有限公司

    地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

    快速回复 返回顶部 返回列表