Ник:
Пароль:

Контакты

E-mail: info@starterkit.ru
тел.: +7 922 680-21-73
тел.: +7 922 680-21-74
Телеграм: t.me/starterkit_ru
Партнеры:
otladka.com.ua - г.Киев

Способы оплаты

User Info


Добро пожаловать,
Guest

Регистрация или входРегистрация или вход
Потеряли пароль?Потеряли пароль?

Ник:
Пароль:

ПользователейПользователей:1
Поисковых ботовПоисковых ботов:3
ГостейГостей:1

ОбновитьПодробнееВсегоВсего:5
Форум » starterkit.ru » Процессорные модули » SK-iMX6ULL-NANO(-2E)
Загрузка SK-iMX6ULL-NANO с SD-карты
Pavel Ivanchenko
Добавлено 29.09.2020 10:48 Сообщение: 21
Pavel Ivanchenko
Admin
4.39

Пункты: 91385
Регистрация: 24.03.2009
Пол: Мужчина
Цитата
Цитата
Какой порядок загрузки у модулей без NAND? Если затереть QSPI память, загрузка начнется с sd карты?


Если выбор загрузки зашит через FUSE (штатный случай) и не найден загрузчик на носителе, процессор перейдет в режим ожидания загрузки через USB.
На imx6 так и происходит, на imx6ull не проверял т.к. на всех изделиях есть джампер для M2 (который его точно в режим загрузки по USB переводит не обращая внимания на FUSE).
Спуститься к концу Подняться к началу
Персональная информация
scrbkv
Добавлено 08.10.2020 22:44 Сообщение: 22
scrbkv
0

Пункты: 509
Регистрация: 06.09.2020
Можно подробный мануал по загрузке с sd карты?
Ядро пересобрал, в папке target лежит нужная фс. Создал на карте ext4 раздел и записал туда фс. Но загружается все равно дефолтное ядро.
В mfgtools менял zimage и перепрошивал QSPI.
Что я делаю не так?
Спуститься к концу Подняться к началу
Персональная информация
sasamy
Добавлено 08.10.2020 23:02 Сообщение: 23
sasamy
4.70

Пункты: 76994
Регистрация: 14.08.2009
Цитата
Можно подробный мануал по загрузке с sd карты?


http://starterkit.ru/html/index.php?name=forum&op=view&id=30323&num=1#30410
Спуститься к концу Подняться к началу
Персональная информация
scrbkv
Добавлено 09.10.2020 22:51 Сообщение: 24
scrbkv
0

Пункты: 509
Регистрация: 06.09.2020
Цитата
Цитата
Можно подробный мануал по загрузке с sd карты?


http://starterkit.ru/html/index.php?name=forum&op=view&id=30323&num=1#30410


Беда в том, что не получается остановить загрузку. А qspi сбрасывается каждый раз после перезагрузки. Т.е. после программного ребута после перепрошивки нормально загружается и отрабатывает загруженное ядро, но после аппаратного ребута снова загружается штатное ядро.
Спуститься к концу Подняться к началу
Персональная информация
Pavel Ivanchenko
Добавлено 12.10.2020 09:27 Сообщение: 25
Pavel Ivanchenko
Admin
4.39

Пункты: 91385
Регистрация: 24.03.2009
Пол: Мужчина
Цитата
Беда в том, что не получается остановить загрузку.

В момент старта загрузчика, в терминальной программе многократно нажимайте ESC или Ctrl+C.
Если не успеваете, можно исправить прямо в бинарнике uboot.imx - найти "bootdelay=" и исправить значение (в секундах).
Спуститься к концу Подняться к началу
Персональная информация
scrbkv
Добавлено 14.10.2020 03:42 Сообщение: 26
scrbkv
0

Пункты: 509
Регистрация: 06.09.2020
Цитата
Цитата

можно подробнее как из uboot с SF загрузить Linux с SD хотя бы вручную


остановить загрузку нажатиями любой клавиши - даже с нулевой задержкой можно остановить, надо сразу несколько раз нажимать как только питание подключили. Далее я напишу как загрузить если SD карта размечена стандартно - корневая на первом разделе, ФС ext4, ядро и dtb в директории /boot в корневой, модуль NANO с родной MB

setenv mmcdev 0
setenv mmcroot '/dev/mmcblk0p1 rootwait rootfstype=ext4'
run mmcargs
run loadfdt
run loadimage
bootz ${loadaddr} - ${fdt_addr}


Получилось загрузиться таким образом, но изменения в фс не пишутся на карточку. В чем может быть причина?
И еще в строку аргументов ядра не передается (Или не используется?) значение bootargs из загрузчика. Это удалось побороть указанием строки по умолчанию при сборке ядра, но все равно ведь не норма.
Спуститься к концу Подняться к началу
Персональная информация
sasamy
Добавлено 14.10.2020 13:27 Сообщение: 27
sasamy
4.70

Пункты: 76994
Регистрация: 14.08.2009
Цитата

Получилось загрузиться таким образом, но изменения в фс не пишутся на карточку. В чем может быть причина?


Вы какую карточку имеете ввиду ? Штатная корневая находится в initramfs те в ОЗУ, после перезагрузки все возвращается к тому что прошито в spi flash

После того как получилось остановить загрузку - установите переменную окружения для увеличения задержки чтобы в следующий раз было проще

setenv bootdelay 3

и сохраните переменные окружения

saveenv

чтобы не набирать команды которые я перечислил для загрузки с SD - можно создать свою переменную содержащую команды загрузки

setenv sdboot "setenv mmcdev 0;setenv mmcroot '/dev/mmcblk0p1 rootwait rootfstype=ext4';run mmcargs;run loadfdt;run loadimage;bootz ${loadaddr} - ${fdt_addr}"

после этого сохраните переменные окружения

saveenv

чтобы загрузиться с SD теперь достаточно остановить загрузку и выполнить

run sdboot

чтобы это выполнялось автоматически при каждой загрузке

setenv bootcmd "run sdboot"

saveenv

Дефолтный конфиг buildroot для NANO с qspi flash собирает ядро с initramfs поэтому даже если его записать на SD и загрузить оттуда ничего не изменится - корневая будет находиться в JPE и изменения не сохранятся. Вам нужно ядро и корневую на SD. Для этого соберите обычный минимальный конфиг

make imx6ullsk_min_defconfig

и допишите DTB своей платы чтобы он в корневой был

make menuconfig

Kernel --->
(imx6ull-sk-lcd-mb imx6ull-sk-mb imx6ull-sk-sb imx6ull-sk-nano) Device Tree Source file names

потом эту корневую запишите на SD.
Спуститься к концу Подняться к началу
Персональная информация
scrbkv
Добавлено 14.10.2020 22:28 Сообщение: 28
scrbkv
0

Пункты: 509
Регистрация: 06.09.2020
Цитата
Цитата

Получилось загрузиться таким образом, но изменения в фс не пишутся на карточку. В чем может быть причина?


Вы какую карточку имеете ввиду ? Штатная корневая находится в initramfs те в ОЗУ, после перезагрузки все возвращается к тому что прошито в spi flash

После того как получилось остановить загрузку - установите переменную окружения для увеличения задержки чтобы в следующий раз было проще

setenv bootdelay 3

и сохраните переменные окружения

saveenv

чтобы не набирать команды которые я перечислил для загрузки с SD - можно создать свою переменную содержащую команды загрузки

setenv sdboot "setenv mmcdev 0;setenv mmcroot '/dev/mmcblk0p1 rootwait rootfstype=ext4';run mmcargs;run loadfdt;run loadimage;bootz ${loadaddr} - ${fdt_addr}"

после этого сохраните переменные окружения

saveenv

чтобы загрузиться с SD теперь достаточно остановить загрузку и выполнить

run sdboot

чтобы это выполнялось автоматически при каждой загрузке

setenv bootcmd "run sdboot"

saveenv

Дефолтный конфиг buildroot для NANO с qspi flash собирает ядро с initramfs поэтому даже если его записать на SD и загрузить оттуда ничего не изменится - корневая будет находиться в JPE и изменения не сохранятся. Вам нужно ядро и корневую на SD. Для этого соберите обычный минимальный конфиг

make imx6ullsk_min_defconfig

и допишите DTB своей платы чтобы он в корневой был

make menuconfig

Kernel --->
(imx6ull-sk-lcd-mb imx6ull-sk-mb imx6ull-sk-sb imx6ull-sk-nano) Device Tree Source file names

потом эту корневую запишите на SD.


Висит на Starting kernel...
Спуститься к концу Подняться к началу
Персональная информация
sasamy
Добавлено 15.10.2020 03:14 Сообщение: 29
sasamy
4.70

Пункты: 76994
Регистрация: 14.08.2009
Цитата

Висит на Starting kernel...


если все по шагам делали как у меня - не должно висеть, я пишу то что я у себя сделал перед этим. Попробуйте в директории buildroot

make clean
make imx6ullsk_min_defconfig
make menuconfig
Kernel --->
(imx6ull-sk-lcd-mb imx6ull-sk-mb imx6ull-sk-sb imx6ull-sk-nano) Device Tree Source file names
make

после сборки

sudo ./mk-sd.sh /dev/sdb

или как у вас диск назыыватся на хост-системе

дальше вот мой лог

Цитата

U-Boot 2017.03 (Oct 15 2020 - 01:29:37 +0300)

CPU: Freescale i.MX6ULL rev1.1 696 MHz (running at 396 MHz)
CPU: Industrial temperature grade (-40C to 105C) at 30C
Reset cause: POR
Model: Starterkit i.MX6 ULL Board
Board: SK-IMX6ULL-NANO
DRAM: 256 MiB
MMC: FSL_SDHC: 0, FSL_SDHC: 1
SF: Detected mx25l12805 with page size 256 Bytes, erase size 64 KiB, total 16 MiB
In: serial
Out: serial
Err: serial
Net: eth0: ethernet@02188000 [PRIME]
Normal Boot
Hit any key to stop autoboot: 0
=> run sdboot
30012 bytes read in 82 ms (357.4 KiB/s)
4113192 bytes read in 264 ms (14.9 MiB/s)
Kernel image @ 0x80800000 [ 0x000000 - 0x3ec328 ]
## Flattened Device Tree blob at 83000000
Booting using the fdt blob at 0x83000000
Using Device Tree in place at 83000000, end 8300a53b
Modify /soc/aips-bus@02200000/epdc@0228c000:status disabled
ft_system_setup for mx6

Starting kernel ...

Booting Linux on physical CPU 0x0
Linux version 4.9.11 (sasa@sasa-Q500A) (gcc version 6.3.1 20170109 (Linaro GCC 6.3-2017.02) ) #1 PREEMPT Thu Oct 15 00:08:26 MSK 2020
CPU: ARMv7 Processor [410fc075] revision 5 (ARMv7), cr=10c53c7d
CPU: div instructions available: patching division code
CPU: PIPT / VIPT nonaliasing data cache, VIPT aliasing instruction cache
OF: fdt:Machine model: Starterkit i.MX6 ULL Board

Спуститься к концу Подняться к началу
Персональная информация
scrbkv
Добавлено 15.10.2020 09:44 Сообщение: 30
scrbkv
0

Пункты: 509
Регистрация: 06.09.2020
Все так и делал, на чистой виртуалке из архива. Только карточку писал через mfgtools. Это может быть связано с версией buildroot? Сегодня попробую скачать последнюю версию и собирать уже на хостовой машине
Спуститься к концу Подняться к началу
Персональная информация
Форум » starterkit.ru » Процессорные модули » SK-iMX6ULL-NANO(-2E)