嵌入式开发者社区

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

作者: hefeislb2000    时间: 2014-12-15 16:50
标题: 关于uboot 启动参数
OMAP-L138 当内存为128MByte 需配置如下:' a& e' Y4 n, i1 Z8 j
mem=32M@0xc0000000 mem=64M@0xc4000000; }* V: U9 {, b& G1 _% M$ \
这个代表DSP使用32MByte;ARM使用96MByte,请教一下这个怎么来的,上面的mem=32M@0xc0000000 代表什么意思,mem=64M@0xc4000000代表什么意思阿?; G9 e; @9 D7 a* V& }1 B. k2 E9 C
8 y& H  E5 `( H- N
+ [- W1 I; Y) k, B! J

作者: tenny    时间: 2014-12-15 17:12
OMAP-L138 当内存为128MByte 需配置如下:mem=32M@0xc0000000 mem=64M@0xc4000000& S# y4 M# p/ v5 u4 U% d
...+ A: E. P" A9 H; K
“这个代表DSP使用32MByte;ARM使用96MByte”
+ z  s# Z4 L8 ^7 A这个理解有问题,mem 选项配置是 Uboot 传给 linux 内核的启动参数,是对 ARM Linux 的内存配置,当前配置含义是:将从 0xc0000000 开始的 32M 和 从 0xc4000000 开始的 64M 分配 ARM Linux 使用。
4 r: O2 }% x- @/ }! a& L! G...- d8 D, Y) c/ }1 g, v) W
而中间空出来的从 0xc200000 到 0xc4000000 的这 32M 是给 DSP 和 ARM 使用 TI SysLink 进行核间通信的时候使用(涉及内存共享)。
" f' `% P+ ]% `; o" x' q
作者: tenny    时间: 2014-12-15 17:12
OMAP-L138 当内存为128MByte 需配置如下:mem=32M@0xc0000000 mem=64M@0xc4000000
8 s. L+ }' }- h" a- ?1 T6 ~1 a( }..." e# h9 v7 F. y5 U0 S
“这个代表DSP使用32MByte;ARM使用96MByte”
8 X% e9 e# a7 B; r这个理解有问题,mem 选项配置是 Uboot 传给 linux 内核的启动参数,是对 ARM Linux 的内存配置,当前配置含义是:将从 0xc0000000 开始的 32M 和 从 0xc4000000 开始的 64M 分配 ARM Linux 使用。0 i4 m' Z& n. c9 W. O2 E- E
...8 N2 T# \6 m% t0 i! Y
而中间空出来的从 0xc200000 到 0xc4000000 的这 32M 是给 DSP 和 ARM 使用 TI SysLink 进行核间通信的时候使用(涉及内存共享)。: L# \8 E, i4 D9 I7 k6 Z3 a

作者: tenny    时间: 2014-12-15 17:14
本帖最后由 tenny 于 2014-12-15 17:18 编辑 4 x3 ~* _- V: e) [; \) y- W$ D
( s' b) |/ X: c9 N
如果不进行核间通信的话,DSP 就能独立使用所有的那空出的 32M 的内存了  z$ l3 Q' U0 O" O- {, M, s& i
: @7 r) w$ H& ~; ^/ ]' [

作者: hefeislb2000    时间: 2014-12-15 17:17
谢谢你及时的回复,已经清楚了!& o5 ?& H; q; w5 E. G4 `

作者: hefeislb2000    时间: 2014-12-15 17:21
本帖最后由 hefeislb2000 于 2014-12-15 17:22 编辑
1 {, w; u8 N# O0 H  g% \9 T1 R/ A/ G9 V' F3 V0 d4 `
追问一下,一般dsp32M够用吗?  ARM 为什么不用连续的内存空间,而DSP的内存空间要设置在ARM中间呢? ! R' w- D% o- G1 I( b+ W# B- |; ^
  是不是只要给DSP32M空间地址从那开始无所谓阿?1 U* I- T2 F) E  \6 H

6 S* V7 J) |! B( Q
作者: tenny    时间: 2014-12-16 09:58
本帖最后由 tenny 于 2014-12-16 10:07 编辑 2 @/ [, m9 ?; j/ Z0 ?
) U. |0 Z! L6 {# L  w
“dsp 32M 是否够用” 看具体程序了# {9 ^/ C- u- K) k# V
可以连续,使用 SysLink 的时候保留 8M 以上的内存就可以了
* D  Y3 T# c0 g9 c  L, S$ W使用这样的内存分配(或者说内存映射)是因为我们在 omapl138上用到 mcsdk 组件时,官方 syslink example 里面的双核通信例程的内存映射是那样的(具体原因暂不明),所以出厂设置是那样了" M4 C' N# F+ l0 n& N

5 [) B) G. `; K2 N* `




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