2012-02-02 26 views
7

U-Boot (2009.03) trên MS104-SH4 có bản đồ bộ nhớ RAM được hiển thị bên dưới.Cách thay đổi bản đồ bộ nhớ U-Boot

0x8c000000 Không sử dụng (4KB)
0x8c001000 cho Linux kernel & hệ thống tập tin gốc (3MB)
0x8c400000 cho Linux quá trình (28MB)

Đối với tôi, 3MB cho kernel hệ thống tập tin & gốc Linux là quá nhỏ vì Hạt nhân Linux & ramdisk có dung lượng tương ứng là 1MB và 3,5MB. Vì vậy, tôi muốn thay đổi trên bản đồ bộ nhớ, ví dụ như được hiển thị bên dưới.

0x8c000000 Không sử dụng (4KB)
0x8c001000 cho Linux kernel & hệ thống tập tin gốc (16MB)
0x8cf60000 cho Linux quá trình (16MB)

Trong đoán của tôi, tôi phải thay đổi mã nguồn uboot, nhưng không thể tìm thấy nơi Tôi nên sửa đổi. Có ai đó nói với tôi nếu nó có thể sửa đổi bản đồ bộ nhớ khởi động u? Nếu có, vui lòng cho tôi biết cách thực hiện. Cảm ơn bạn đã giúp đỡ!

Tôi đã tìm thấy câu hỏi tương tự trên How to find the memory map of a device?, nhưng mẫu SH4 của tôi trống (0 kích thước) trông giống như chủ đề khác.

Trả lời

10

Có thể sửa đổi bản đồ bộ nhớ khởi động U. bạn cần phải sửa đổi mã nguồn của U-boot. U-boot/include/configs/<board_name.h> là nơi bạn có thể cấu hình bản đồ bộ nhớ. trong đó <board_name.h> là tệp kiến ​​trúc cụ thể của bạn và có các mục nhập #define mà bạn có thể thay đổi thành các giá trị mong muốn. u-boot/arch/<architecture_name>/lib/board.c thực hiện khởi tạo bản đồ bộ nhớ.

+0

Cảm ơn bạn đã trả lời nhanh và câu hỏi này được giải quyết! –

+0

rất vui khi được nghe tôi đã giúp .. :) –