Зачем загружать uboot по определенному адресу в beagleoboard?

В Beagle Board воспитании мы используем этот конкретный адрес ниже, чтобы загрузить uImage и dtb?

loaduImage = fatload mmc 0: 1 0x80007fc0 uImage

loadfdt = fatload mmc 0: 1 $ {dtaddr} omap3-beagle-xm.dtb

Почему мы не можем использовать какой-то другой адрес? В техническом описании платы beagle указано, что адрес DRAM в плате beagle начинается с 0x80000000, так почему бы не выбрать какой-либо адрес?

Почему мы не можем загрузить uImage по какому-то адресу, а после 128 МБ загрузить dtb, как это предлагается в https://www.kernel.org/doc/Documentation/arm/Booting документации.

Цитирование по ссылке: Безопасное место находится чуть выше границы 128 МБ с момента запуска ОЗУ.

1 ответ

Решение

Заголовок равен 0x40, поэтому ядро ​​заканчивается размером 0x80008000, граница страницы 4 КБ. 0x80008000 - это просто соглашение, и если вы хотите, вы можете изменить адрес, но вам нужно соответствующим образом изменить код ядра.

http://processors.wiki.ti.com/index.php/HOWTO_Change_the_Linux_Kernel_Start_Address

Другие вопросы по тегам