Как загрузить образ, созданный Yocto на устройствах MX6 SABER

Вопрос: какого результата следует ожидать от core-image-minimal платформы U-boot, работающей на четырехъядерном наборе Sabre i.MX6?

Я вижу заставку с логотипом Freescale, но затем дисплей гаснет. Я ожидал какой-то последовательности загрузки и командного интерфейса U-Boot>.

Я также вижу в uboot_mx6x.pdf следующее: По умолчанию U-Boot настроен на отображение командной строки и получение последовательного ввода с клавиатуры на определенных портах UART с настройками 115 200-8-N-1.

Вопрос: где это определяется? Как мне это изменить? Как мне это послушать?

Я последовал руководству на форумах NXP, чтобы начать понимать Yocto и u-boot. Я установил и выполнил процедуры из здесь.

Я использовал команду:

$ bitbake core-image-минимальный

Loading cache: 100%     |#######################################| Time: 0:00:00
Loaded 2274 entries from dependency cache.
NOTE: Resolving any missing task queue dependencies

Build Configuration:
BB_VERSION           = "1.36.0"
BUILD_SYS            = "x86_64-linux"
NATIVELSBSTRING      = "universal"
TARGET_SYS           = "arm-fslc-linux-gnueabi"
MACHINE              = "imx6qdlsabresd"
DISTRO               = "fslc-framebuffer"
DISTRO_VERSION       = "2.4"
TUNE_FEATURES        = "arm armv7a vfp thumb neon callconvention-hard"
TARGET_FPU           = "hard"
meta                 
meta-poky            = "HEAD:fdeecc901196bbccd7c5b1ea4268a2cf56764a62"
meta-oe              
meta-multimedia      = "HEAD:dacfa2b1920e285531bec55cd2f08743390aaf57"
meta-freescale       = "HEAD:d6141ea291a1ac9ab8fb1dd1110d408f840fda57"
meta-freescale-3rdparty = "HEAD:62de01743c9233ea718de22991c47b73a78b4857"
meta-freescale-distro = "HEAD:0ec6d7e206705702b5b534611754de0787f92b72"

Initialising tasks: 100%     |###################################| Time: 0:00:04
NOTE: Executing SetScene Tasks
NOTE: Executing RunQueue Tasks
NOTE: Tasks Summary: Attempted 3032 tasks of which 2366 didn't need to be     rerun and all succeeded.
NOTE: Writing buildhistory

$ wic создать imx-uboot-spl-bootpart -e core-image-minimal

INFO: Building wic-tools...

Previous bitbake instance shutting down?, waiting to retry...
Loading cache: 100% |###################################| Time: 0:00:00
Loaded 2274 entries from dependency cache.
NOTE: Resolving any missing task queue dependencies

Build Configuration:
BB_VERSION           = "1.36.0"
BUILD_SYS            = "x86_64-linux"
NATIVELSBSTRING      = "universal"
TARGET_SYS           = "arm-fslc-linux-gnueabi"
MACHINE              = "imx6qdlsabresd"
DISTRO               = "fslc-framebuffer"
DISTRO_VERSION       = "2.4"
TUNE_FEATURES        = "arm armv7a vfp thumb neon callconvention-hard"
TARGET_FPU           = "hard"
meta                 
meta-poky            = "HEAD:fdeecc901196bbccd7c5b1ea4268a2cf56764a62"
meta-oe              
meta-multimedia      = "HEAD:dacfa2b1920e285531bec55cd2f08743390aaf57"
meta-freescale       = "HEAD:d6141ea291a1ac9ab8fb1dd1110d408f840fda57"
meta-freescale-3rdparty = "HEAD:62de01743c9233ea718de22991c47b73a78b4857"
meta-freescale-distro = "HEAD:0ec6d7e206705702b5b534611754de0787f92b72"

Initialising tasks: 100% |#####################################| Time: 0:00:00
NOTE: Executing SetScene Tasks
NOTE: Executing RunQueue Tasks
NOTE: Tasks Summary: Attempted 380 tasks of which 380 didn't need to be rerun and all succeeded.
NOTE: Writing buildhistory
INFO: Creating image(s)...

INFO: The new image(s) can be found here:
  ./imx-uboot-spl-bootpart-201804091703-mmcblk.direct

The following build artifacts were used to create the image(s):
  ROOTFS_DIR:                   /media/mattis/7228221d-c3f3-424e-8443-8e97176c6a6d/sandbox/fsl-community-bsp/tmp.wic.yc_b166n/rootfs_copy
  BOOTIMG_DIR:                  /media/mattis/7228221d-c3f3-424e-8443-8e97176c6a6d/sandbox/fsl-community-bsp/build/tmp/work/imx6qdlsabresd-fslc-linux-gnueabi/core-image-base/1.0-r0/recipe-sysroot/usr/share
  KERNEL_DIR:                   /media/mattis/7228221d-c3f3-424e-8443-8e97176c6a6d/sandbox/fsl-community-bsp/build/tmp/deploy/images/imx6qdlsabresd
  NATIVE_SYSROOT:               /media/mattis/7228221d-c3f3-424e-8443-8e97176c6a6d/sandbox/fsl-community-bsp/build/tmp/work/armv7at2hf-neon-fslc-linux-gnueabi/wic-tools/1.0-r0/recipe-sysroot-native

INFO: The image(s) were created using OE kickstart file:
  /media/mattis/7228221d-c3f3-424e-8443-8e97176c6a6d/sandbox/fsl-community-bsp/sources/meta-freescale/wic/imx-uboot-spl-bootpart.wks

Наконец, я использую команду:

dd if = imx-uboot-spl-bootpart-201804091703-mmcblk.direct of = / dev / sdb

После этого процесса я беру SDCard и подключаю ее к моему набору разработчика saber, затем загружается заставка, после чего ничего не происходит.

Заставка


person Mattis Asp    schedule 09.04.2018    source источник


Ответы (1)


Чтобы ответить на ваши вопросы:

  1. Вы должны ожидать увидеть вывод u-boots, затем вывод консоли ядра и, наконец, приглашение для входа в систему.

  2. Консоль определяется SERIAL_CONSOLES переменная. Вы можете послушать это, подключив последовательный кабель к плате и используя такую ​​программу, как minicom.

Немного ознакомившись с вашими вопросами, я считаю, что изображение, которое вы помещаете на SD-карту, не сработает. Я мало что знаю о imx-uboot-spl-bootpart, кроме того, как это описано в файл кикстарта, и не могу точно сказать, с какими платами он совместим.

Вы должны иметь возможность использовать образ wic по умолчанию, который создается после завершения сборки. Похоже, вы строите из Yocto 2.4 Rocko, поэтому после завершения сборки у вас будут два файла, расположенные здесь:

$BUILD_DIR/tmp/deploy/images/imx6qdlsabresd/...  
core-image-minimal-imx6qdlsabresd.wic  
core-image-minimal-imx6qdlsabresd.wic.bmap

Если эти файлы не существуют, вы можете создать их, добавив эту строку в свой файл local.conf:

IMAGE_FSTYPES += "wic wic.bmap"

Я бы рекомендовал использовать bmap- tools вместо dd, так как это сэкономит вам много времени.

В вашем примере команда должна выглядеть так:

 bmaptool copy /path/to/core-image-minimal-imx6qdlsabresd.wic /dev/sdb

Этот образ должен загрузиться, и вам будет предоставлена ​​возможность остановить u-boot и приземлиться в приглашении u-boot.

Похоже, что изображение Freescale по умолчанию в настоящее время - wic.gz, с которым также должны работать bmap-tools.

person Stephano    schedule 09.04.2018
comment
Я не могу найти файлы core-image-minimal-imx6qdlsabresd.wic или core-image-minimal-imx6qdlsabresd.wic.bmap, но я нашел core-image-minimal-imx6qdlsabresd.wic.gz. Стоит ли разархивировать его, или мне нужно добавить какие-то другие настройки для достижения желаемого результата? - person Mattis Asp; 09.04.2018
comment
См. Мой отредактированный ответ. Я не знал, что Freescale по умолчанию использует wic.gz. - person Stephano; 09.04.2018
comment
Разве bmaptool не обрабатывает сжатые архивы? - person Nayfe; 10.04.2018
comment
@Nayfe да, на странице руководства: IMAGE может быть сжат, и в этом случае bmaptool распаковывает его на лету. manpages.ubuntu.com/manpages/xenial/man1/bmaptool.1. html - person Mattis Asp; 10.04.2018
comment
Решил это. Когда вы видите экран-заставку, он, вероятно, работает, так что моя исходная команда dd, вероятно, была в порядке. Чего я не знал, так это того, что U-boot выводит на COM-порт, а не на экран HDMI. Устройство FTDI уже работает на устройстве saber, подключите USB-кабель от вашего компьютера к usb-micro-порту в углу saber, затем следуйте процедурам Stephano. Большое спасибо Стефано - person Mattis Asp; 10.04.2018