如何更改 U-Boot 内存映射
MS104-SH4 上的 U-Boot(2009.03) 具有如下所示的 RAM 内存映射。
0x8c000000 未使用 (4kB)
0x8c001000 用于 Linux 内核 &根文件系统(3MB)
0x8c400000 用于 Linux 进程 (28MB)
对我来说,3MB 用于 Linux 内核和根文件系统太小,因为 Linux 内核与ramdisk 分别有 1MB 和 3.5MB。所以我想 更改上面的内存映射,例如如下所示。
0x8c000000 未使用 (4KB)
0x8c001000 用于 Linux 内核 &根文件系统(16MB)
0x8cf60000 for Linux process (16MB)
我猜,我必须修改uboot源代码,但找不到在哪里 我应该修改一下有人告诉我是否可以修改 u-boot 内存映射? 如果是的话,还请告诉我该怎么做。感谢您的帮助!
我在 如何查找 a 的内存映射上发现了类似的问题设备?,但我的 SH4 iomem 是空的(0 大小),所以看起来像其他主题。
The U-Boot(2009.03) on MS104-SH4 has the RAM memory map shown below.
0x8c000000 Not for use (4kB)
0x8c001000 for Linux kernel & root file system (3MB)
0x8c400000 for Linux process (28MB)
For me, 3MB for Linux kernel & root file system is too small because
Linux kernel & ramdisk has 1MB and 3.5MB respectively. So I'd like to
change above memory map, for example like shown below.
0x8c000000 Not for use (4KB)
0x8c001000 for Linux kernel & root file system (16MB)
0x8cf60000 for Linux process (16MB)
In my guess, I have to modify uboot source code, but cannot find where
I should modify. Does somebody tell me if it is possible to modify u-boot memory map?
If yes, please also tell me how to do it. Thanks for your help!
I found a similar question on How to find the memory map of a device?, but my SH4 iomem is empty (0 size) so looks like other topic.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
可以修改 U-boot 内存映射。需要修改U-boot的源码。
U-boot/include/configs/
是配置内存映射的地方。其中
是您的架构特定文件,并且具有您可以更改为所需值的#define
条目。u-boot/arch//lib/board.c
执行内存映射初始化。It is possible to modify U-boot memory map. you need to modify source code of U-boot .
U-boot/include/configs/<board_name.h>
is the place where you can configure memory map . where<board_name.h>
is your architecture specific file and has#define
entries which you can change to desirable values.u-boot/arch/<architecture_name>/lib/board.c
perform the memory map initialization.