компилировать Загрузка сервераадрес:Downloads | GNU-A Downloads – Arm Developer[1]
Текущая последняя версия v2023.04-rc2 скачатьадрес:https://github.com/u-boot/u-boot/archive/refs/tags/v2023.04-rc2.tar.gz[2]
Настраиваем кросс-компилятор:
export CROSS_COMPILE=arm-none-linux-gnueabihf-
Скомпилировать конфигурацию:
make nanopi_neo_defconfig
Скомпилировать:
make -j8
Столкнулся с проблемой:
решать:
sudo apt install python3-pip
pip3 install setuptools
Скомпилируйте продукт:
Гореть:
sudo dd if=u-boot-sunxi-with-spl.bin of=/dev/sdc bs=1024 seek=8 oflag=direct
Начать тест:
Согласно информации о загрузочной печати, вы можете видеть, что размер DDR правильный. По сравнению с uboot на изображении, предоставленном NanoPi, он имеет большую поддержку сети.
Проверьте, нормально ли распознается SD-карта:
Просмотр информации о сетевой карте:
Установите IP-адрес сетевой карты:
setenv ipaddr 192.168.0.110
setenv gatewayip 192.168.0.1
setenv netmask 255.255.255.0
saveenv
Сетевая связь, нормальная:
Это гораздо удобнее. Вы можете настроить службу TFTP на ПК, а затем использовать uboot для получения ядра и дерева устройств для запуска через tftp. Однако в этой статье по-прежнему используется метод запуска с SD-карты. Заинтересованные читатели могут прочитать мой. статья imx6ull.
текущий stable Версия 6.1.11 скачатьадрес:https://cdn.kernel.org/pub/linux/kernel/v6.x/linux-6.1.11.tar.xz[3]
Настраиваем кросс-компилятор:
export ARCH=arm
export CROSS_COMPILE=arm-none-linux-gnueabihf-
Скомпилировать конфигурацию:
make sunxi_defconfig
Скомпилировать:
make -j16
Скомпилируйте продукт:
Замените образ zImage и файл дерева устройств первого загрузочного раздела исходной SD-карты.
sudo mount /dev/sdb1 /mnt
sudo cp arch/arm/boot/zImage /mnt/zImage
sudo cp arch/arm/boot/dts/sun8i-h3-nanopi-neo.dtb /mnt/sun8i-h3-nanopi-neo.dtb
sync
sudo umount /mnt
Вставьте SD-карту в плату разработки для перезагрузки, введите командную строку uboot и напрямую извлеките ядро для запуска:
fatload mmc 0 0x46000000 zImage
fatload mmc 0 0x48000000 sun8i-h3-nanopi-neo.dtb
setenv bootargs "console=ttyS0,115200 earlyprintk root=/dev/mmcblk0p2 rootfstype=ext4 rw rootwait"
bootz 0x46000000 - 0x48000000
rootfs Используйте на основе ubuntu20.04 пересадкаиз:i.MX6ULL Система пересадки | на основе ubuntu base 20.04 Построить корневую файловую систему
Ядро Версия:
Версия дистрибутива:
Информация о процессоре:
Сеть нормальная:
[1]
Downloads | GNU-A Downloads – Arm Developer: https://developer.arm.com/downloads/-/gnu-a
[2]
https://github.com/u-boot/u-boot/archive/refs/tags/v2023.04-rc2.tar.gz: https://github.com/u-boot/u-boot/archive/refs/tags/v2023.04-rc2.tar.gz
[3]
https://cdn.kernel.org/pub/linux/kernel/v6.x/linux-6.1.11.tar.xz: https://cdn.kernel.org/pub/linux/kernel/v6.x/linux-6.1.11.tar.xz