Chip123 科技應用創新平台

 找回密碼
 申請會員

QQ登錄

只需一步,快速開始

Login

用FB帳號登入

搜索
1 2 3 4
查看: 5074|回復: 9
打印 上一主題 下一主題

[問題求助] uboot 設定??

[複製鏈接]
跳轉到指定樓層
1#
發表於 2009-6-2 19:08:18 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
假設一個系統使用uboot2 K0 s. X" L7 O7 Z: G' ^
上頭已經有nor flash, nand flash, 也有網路  d, ^& K1 A% E1 o/ D
nor flash physical address = fe000000 有 32 MB* p+ t& Y2 M8 N4 P9 |4 `  q
nand flash physical address = fc000000 有 32 MB" F1 w% c+ @# Z9 \; f

+ g+ s3 g2 U0 W; s3 ?& [0 K0 m0 {請問那麼要如何設定開機使用?, ^3 b+ u0 D0 L5 ?1 s4 s2 G
% k. s) Z  b3 Q. X" c! F5 d
1) uImage+ramdisk 都在 nand flash 上' N6 E$ a; F3 i1 o- M  ]
2) uImage+ramdisk 都在 nor  flash 上
  R* A, G' y* ?; c, z3) uImage+ramdisk 都在 tftp server 上5 a5 S4 ~+ Z/ @
4) uImage在nand flash, ramdisk在nor flash
6 G2 e" B1 w" O; _, I5) uImage在 tftp server, ramdisk在 nand flash4 }0 T4 l6 @; L6 E7 u
6) uImage在 nor flash, rootfs使用nfs
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享分享 頂 踩 分享分享
2#
 樓主| 發表於 2009-6-24 11:00:08 | 只看該作者
uImage+ramdisk 都在 tftp server 上

5 _3 n0 |0 Y7 k4 G  q8 S5 _假設記憶體有512 MBytes" o9 a' S4 _& `; H$ v
3 P+ v( q" q+ E- l& ?( z
a. set bootargs  ~' o7 k1 D8 l$ o# r( F2 n
set bootargs root=/dev/ram0 rw console=ttySAC0,115200 mem=512M ramdisk=32768 initrd=0x2800000,20M init=/linuxrc) s9 H# Z8 Z/ C0 \0 ?2 \& Z
# _' O( W- c% D$ k
b. download uImage
1 H# f1 Y7 N6 r- ?# vtftpboot 0x2000000 uImage-test4 z5 ^. b; E- b& a/ j2 y8 P5 w

- m$ u; S0 x: |c. download ramdisk
4 p+ f9 }1 {( Q( L, C# a+ Ptftpboot 0x2800000 ramdisk.img
! b2 @$ s9 f8 n1 y- ~, s* `+ _. i" y& B: a* i' f: z) X
d. boot from memory
* @0 i3 O4 M: ^# a2 bbootm 2000000
3#
發表於 2009-10-13 20:06:00 | 只看該作者

回復 2# 的帖子

補充一下, 7 F5 n2 E8 U* H- k
gogojesse文中的 console=ttySAC0 是當target board的linux kernel為2.6.x版時,$ C1 \' g( |* s/ I3 c' G* ~9 ?0 h+ {
若為 2.4.x之前, 則要用 console=ttyS0
5 i7 Q9 h! F* M- [! e" T$ P& J7 R1 g. U4 g
[ 本帖最後由 sieg70 於 2009-10-13 08:14 PM 編輯 ]
4#
發表於 2009-11-27 09:29:08 | 只看該作者
why my linux2.6 ttyS0 works ok?
; a0 V- v: D/ k/ V/ h2.6.15
5#
 樓主| 發表於 2009-11-28 01:03:30 | 只看該作者
沒仔細深入這個問題
& G$ p: R3 M0 u3 F& ?不過印象中會用到哪個tty當作serial console可以分幾個步驟:1 @8 ]! Z+ X$ ~) z5 w2 a5 q/ F
: ?* U# |# ^5 y% p2 Y0 L
第一是 serial console 的 driver 在被 load 的時候開機訊息有時候可以看到是『console [ttyS0] enabled』,其實這個時候還不知道root files system裡頭的device node是對應到哪一個,對driver來說,她會指定服務某個(major, minor)的device node+ q! Y/ B0 F- j3 c$ t$ W- p. N
第二是 root file system有沒有對應這組(major, minor)的device node,萬一沒有的話,應該也會造成開起 serial console 失敗。+ F/ T, e% ?' S" ]* ]6 X) U
第三是 進入到root file system之後,init script還是有權力更改各種console的生成像是tty0, tty1等等。以前有些控制可以載 /etc/inittab 做,現在有些distribution已經改用其他機制。
6#
 樓主| 發表於 2009-11-28 01:14:33 | 只看該作者
nor flash physical address = fe000000 有 32 MB
, T7 W/ D7 D  W. D. n6) uImage在 nor flash, rootfs使用nfs

0 l1 i( m1 Q) Q, w  h
# @# Z) H' A. ja) 首先,必須將uImage拷貝到ram上某個位置' r# ]. y# b9 d, X/ E1 k( Y: V
b) 因為要用nfsroot所以網路也要先設置好
1 p+ o2 W! X& [1 Tc) Jump to uImage
0 ^# }7 @! B! g9 J
  x$ I# R8 k0 y: U1 F2 ?- z# cp.b 0xfe000000 0x800000 300000   (從flash放到RAM 0x800000的地方去)
$ @3 ^+ ?! s6 J8 ~7 D# dhcp  (取得ip或是直接用setenv ipaddr xx.xx.xx.xx), K* R# n# x. X: P  d
# setenv serverip oo.oo.oo.oo  (設定nfsroot server ip)
) v# g* ]2 b# x# {4 D6 k) i# setenv root=/dev/nfsroot rw nfsroot=oo.oo.oo.oo:/rootfs/
7#
 樓主| 發表於 2009-11-28 01:28:48 | 只看該作者
nand flash physical address = fc000000 有 32 MB
( j; g+ _' W% b
& b5 n. W/ ~& p7 y* Y5 m. L" h# P8 |1) uImage+ramdisk 都在 nand flash 上
9 a5 j% i9 z$ Q* t1 X+ ^' B
* x& S( Q$ s  y' j* _
假設uImage放在nand上offset 0x0的地方(size = 0x300000),ramdisk放在offset 0x300000的地方, size = 327682 `; t; w! j7 {; S, x) \; [
0 w; B; M5 z/ s' d/ ~
a) 先將uImage載入到 0x800000
8 q3 b; W, i" {! H. Y! U# nand read.jffs2 800000 0 300000. O$ |, o4 O: u! \$ J/ z2 C
$ t+ H' @1 ?" ^- h) s& G% C7 n7 c& T
b) 將ramdisk載入到 0x2800000 的位置0 {  y4 n5 M$ F+ q9 ^! d
# nand read.jffs2 2800000 0x300000 32768
: u* I5 \) s7 t/ x" r! l
: V1 t; K( m/ x' qc) 載入到memory,就如同load ramdisk的bootargs,可以參考之前% q( v* C0 A) ~  z2 d
bootargs root=/dev/ram0 rw console=ttySAC0,115200 mem=512M ramdisk=32768 initrd=0x2800000,20M init=/linuxrc
. L7 N% {" |# {1 K4 Z
6 y! C' u  y+ I" O  H下去修改使用
8#
 樓主| 發表於 2009-11-28 01:33:02 | 只看該作者
本帖最後由 gogojesse 於 2009-11-28 01:34 AM 編輯
7 w1 F- }! u, c0 @. v
nor flash physical address = fe000000 有 32 MB
/ s  c- C3 q& W! a, K2) uImage+ramdisk 都在 nor  flash 上
! @# H" i2 ~& N8 s( r+ {5 z
8 k. p. ]) `8 T/ L) h  Q: O
a) 先將uImage載入到 0x8000005 n) J" y! w& u
# cp.b 0xfe000000 0x800000 300000   (從flash放到RAM 0x800000的地方去)/ _/ {$ M% m) S  g
9 q3 i& o" G0 k5 ~& ?
b) 將ramdisk載入到 0x2800000 的位置/ q5 ~; P$ ~; c$ v8 P" l
# cp.b 0xfe300000 0x2800000 8000 (從flash放到RAM 0x2800000的地方去)$ ~: P- A2 q/ ~% D. |

/ u$ Z* k) v# u) H, \c) 參考uImage & ramdisk都在memory中的後續動作。
# Y0 e9 y% L0 X5 s
; a1 W2 {/ l7 x4) & 5)應該就呼之欲出,不再累述。
您需要登錄後才可以回帖 登錄 | 申請會員

本版積分規則

首頁|手機版|Chip123 科技應用創新平台 |新契機國際商機整合股份有限公司

GMT+8, 2024-6-6 08:41 PM , Processed in 0.125516 second(s), 18 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回復 返回頂部 返回列表