Запуск Linux на планшете с SoC Allwinner A10 на борту

Приобрел я себе планшет на SoC Allwinner A10 (Sun4i — кодовое название процессора AllWinner A10 ARMv7-A архитектуры семейства Cortex ядро A8 ). Сначала игрался с ним на Android 2.x потом на 4.x, но со временем мне стало этого мало. Да еще начали выпускать миникомпьютеры на основе этой SoC с Linux на борту. Я подумал: «Хм, а чем мой планшет хуже?» и занялся делом. Как оказалось, за меня уже все сделали, И дела делать не пришлось :

Ядро оптимизировали для данной платформы Загрузчик оптимизировали к этой платформе Вышел новый порт debian armhf.

Система — ArchLinux x86-64. Где найти и как устанавливать окружение для сборки описывать не буду, в интернете и так достаточно этой информации. Да и большинству это не зачем, я приложу все необходимое собранным.

    qemu-user-static — чтобы можно было chroot’иться в rootfs, в репах не было, пришлось из репозитория debian доставать и собирать свой пакет. Все это дело необходимо для запуска arm elf исполняемых файлов на машине с другой архитектурой, в данном случае — на моей. gcc version 4.6.1 (Sourcery CodeBench Lite 2011.09-70) — Кросскомпилятор GCC ARM. Может и старый, но не подводит пока меня. Вам же советую поставить свеженький кросскомпилятор от linaro.
    Brom ( ищет загрузчик в mmc, nand, usb называемый boot0 (the SPL — Second Program Loader: sun4i-spl. bin). Boot0 (the SPL — Second Program Loader: sun4i-spl. bin) инициализирует устройства SPL (boot0) загружает u-boot (boot1) U-boot (boot1) инициализирует оставшиеся устройства и создает абстракции для аботы с «железом» Подгружает конфигурационный файл «железа» ( script. bin. evb. bin, mele. bin sys_config. bin) рядом с u-boot подобно initrd. u-boot загружает ядро.

Согласно документации к загрузчику allwinner-uboot структура SD карты должна выглядеть таким образом: