Собираю Ubuntu-14.04 для Mele A2000G (телеприставка на ARM'е). По инструкциям sunxi собрал ядро, загрузчик, debootstrap'нул файловую систему, но собрать всё воедино не получается.
Попробовал оттолкнуться от того что имею, взял готовый рабочий образ SD'шки с Ubuntu-12.10, посмотрел тамошний boot.scr. И вот теперь сижу и думаю, что же всё это значит.
Во-первых, что это за параметр такой LOADADDR, который нужно установить при сборке ядра? И в какое значение? sunxi его вообще не указывают, в интернете обычно встречается
LOADADDR=0x40008000 make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- uImage modules
Далее. sunxi пишут такой boot.cmd:
setenv bootargs console=ttyS0,115200 root=/dev/mmcblk0p2 rootwait panic=10 ${extra}
fatload mmc 0 0x43000000 script.bin || ext2load mmc 0 0x43000000 boot/script.bin
fatload mmc 0 0x48000000 uImage || ext2load mmc 0 0x48000000 uImage boot/uImage
bootm 0x48000000
ext2load mmc 0 0x46000000 uImage
ext2load mmc 0 0x49000000 sun4i-a10-a1000.dtb
env set fdt_high ffffffff
bootm 0x46000000 - 0x49000000
Что это за числа после mmc 0 и bootm? Почему они различаются и какие они должны быть?
Я пробовал положить ядро linux-sunxi/experimental/3.10 и его модули в образ Ubuntu-12.10, но ОС не загрузилась. Возможно не только загрузчик неправильно настроил, но ещё и некоторые параметры ядра надо было включить. Однаков вопрос с магическими числами остаётся открытым.