嵌入式开发者社区

标题: 关于uboot 启动参数 [打印本页]

作者: hefeislb2000    时间: 2014-12-15 16:50
标题: 关于uboot 启动参数
OMAP-L138 当内存为128MByte 需配置如下:3 P  E& C6 r2 B. f. t! A6 n
mem=32M@0xc0000000 mem=64M@0xc40000007 U4 Y( M5 h% R. A) s
这个代表DSP使用32MByte;ARM使用96MByte,请教一下这个怎么来的,上面的mem=32M@0xc0000000 代表什么意思,mem=64M@0xc4000000代表什么意思阿?7 I5 E( l0 b( ?6 Y, @

& _/ R3 {+ \8 k2 y/ U' g- Z8 `
4 h5 B9 c5 s5 A& B1 ^( p, L9 V
作者: tenny    时间: 2014-12-15 17:12
OMAP-L138 当内存为128MByte 需配置如下:mem=32M@0xc0000000 mem=64M@0xc4000000$ T4 R+ v1 t) j. Z
...0 q: v2 @% S& J9 w- L6 d- X
“这个代表DSP使用32MByte;ARM使用96MByte”
9 E7 K& c. \# L9 G6 x3 Y6 w" ]: N$ P4 _这个理解有问题,mem 选项配置是 Uboot 传给 linux 内核的启动参数,是对 ARM Linux 的内存配置,当前配置含义是:将从 0xc0000000 开始的 32M 和 从 0xc4000000 开始的 64M 分配 ARM Linux 使用。. h; M1 y, q, \' `0 W
...
* H2 v7 j, v- w* ?3 l* U+ I而中间空出来的从 0xc200000 到 0xc4000000 的这 32M 是给 DSP 和 ARM 使用 TI SysLink 进行核间通信的时候使用(涉及内存共享)。! v1 M# J9 ?. J  X' V6 A

作者: tenny    时间: 2014-12-15 17:12
OMAP-L138 当内存为128MByte 需配置如下:mem=32M@0xc0000000 mem=64M@0xc4000000
2 @$ L2 ^0 r9 I5 G...% s  k3 h  q  T  e( F
“这个代表DSP使用32MByte;ARM使用96MByte”
6 }' J# l; @( G( ?2 Z4 S" v- ~( k) X这个理解有问题,mem 选项配置是 Uboot 传给 linux 内核的启动参数,是对 ARM Linux 的内存配置,当前配置含义是:将从 0xc0000000 开始的 32M 和 从 0xc4000000 开始的 64M 分配 ARM Linux 使用。+ z" K& |7 l& n7 X# w" O
...1 E' S  b3 n+ v" b/ G- e! s
而中间空出来的从 0xc200000 到 0xc4000000 的这 32M 是给 DSP 和 ARM 使用 TI SysLink 进行核间通信的时候使用(涉及内存共享)。
8 z4 b3 S$ z0 D+ X* i' M2 w
作者: tenny    时间: 2014-12-15 17:14
本帖最后由 tenny 于 2014-12-15 17:18 编辑 . a3 n  N$ T2 n* u

% _! ^8 T4 Y5 K( h如果不进行核间通信的话,DSP 就能独立使用所有的那空出的 32M 的内存了
+ S/ l! w' r7 }$ O; c! b5 B* s- g5 G- s! j6 \) h

作者: hefeislb2000    时间: 2014-12-15 17:17
谢谢你及时的回复,已经清楚了!
; o5 w' h8 x0 L+ [
作者: hefeislb2000    时间: 2014-12-15 17:21
本帖最后由 hefeislb2000 于 2014-12-15 17:22 编辑 1 I4 d# {+ x* b% {  O* C
& Z, n( C; \: _7 k& n( X
追问一下,一般dsp32M够用吗?  ARM 为什么不用连续的内存空间,而DSP的内存空间要设置在ARM中间呢?
# m6 q& V+ L# L& s: N8 g9 d  是不是只要给DSP32M空间地址从那开始无所谓阿?
; f7 s  n" s  G1 F: U8 a. B+ s' l  G% d1 J& v

作者: tenny    时间: 2014-12-16 09:58
本帖最后由 tenny 于 2014-12-16 10:07 编辑
( x1 p% Y& b$ U8 A$ B4 G) h9 R+ [$ Z, B, P' }; r- a
“dsp 32M 是否够用” 看具体程序了# [* P" s# f7 A3 m1 z
可以连续,使用 SysLink 的时候保留 8M 以上的内存就可以了- n' I& w: U' o
使用这样的内存分配(或者说内存映射)是因为我们在 omapl138上用到 mcsdk 组件时,官方 syslink example 里面的双核通信例程的内存映射是那样的(具体原因暂不明),所以出厂设置是那样了# O% M' M# p  e: a0 a! i
% {' S5 q. M" V7 x





欢迎光临 嵌入式开发者社区 (https://www.51ele.net/) Powered by Discuz! X3.4