Инструменты пользователя

Инструменты сайта


wiki:beagleboard-ezsdk

Компиляция релиза BeagleBoardSDK 05.05.01.00 для SomIQ-AM37

Пресобранные файлы

Пресобранные двоичные файлы:

Модуль 256M
MLO (x-loader) MLO 36k
u-boot u-boot.img 261k
Модуль 512M
MLO (x-loader) MLO 36k
u-boot u-boot.img 261k
Ядро Linux
uImage uImage 2.8M

Требования к системе

Данные инструкции были реализованы на ПК с ОС Ubuntu Linux 10.10 (32-bit).

Для выполнения инструкций вам потребуется компилятор arm-2010q1 - как установить описано здесь: arm-gcc

Для изменения конфигурации ядра Linux потребуется библиотека ncurses. Установите её командой:

sudo apt-get install libncurses5-dev

Описание

За основу берем официальный релиз BeagleBoardSDK 05_05_01_00 от Texas Instruments: Linux EZ Software Development Kit (EZSDK) for Sitara™ ARM® Microprocessors, доступный по адресу http://www.ti.com/tool/linuxezsdk-sitara. Для модуля SomIQ-AM37 подойдет сборка для отладочной платы Beagleboard-XM: http://software-dl.ti.com/dsps/dsps_public_sw/am_bu/sdk/BeagleBoardSDK/latest/index_FDS.html. Список изменений (release note) доступны здесь: http://processors.wiki.ti.com/index.php/Sitara_SDK_5.05.01_Release_Notes

Что было добавлено для SomIQ-AM37:

  1. ядро Linux: добавлен режим hd720 (== 1280x720MR-16@60)
  2. ядро Linux: установка МАК-адреса сетевого контроллера, полученного из u-boot

Для работы отладочной платы Somiqboard и модуля SomIQ-AM37 необходимо скомпилировать файлы MLO, u-boot.img, uImage. Файловую систему мы возьмем готовую из SDK.

Исходные тексты

Скачайте исходные тексты загрузчика u-boot и ядра Linux для модуля SomIQ-AM37: http://www.mentorel.ru/downloads/somiq-am37/ezsdk/somiq-am37-sdk-src-05.05.01.00.tar.gz. Это точная копия архива от TI, но с уже добавленной поддержкой SomIQ-AM37.

$ wget http://www.mentorel.ru/downloads/somiq-am37/ezsdk/somiq-am37-sdk-src-05.05.01.00.tar.gz
$ tar xzf somiq-am37-sdk-src-05.05.01.00.tar.gz
$ cd somiq-am37-sdk-src-05.05.01.00
$ ls -l
-rw-r--r-- 1 maxx maxx    110523 2012-12-26 10:50 linux-3.3.7-r115.patch
-rw-r--r-- 1 maxx maxx 102829293 2012-12-26 10:55 linux-3.3.7-r115.tar.gz
-rw-r--r-- 1 maxx maxx     53822 2012-12-26 10:04 u-boot-2012.04.01.patch
-rw-r--r-- 1 maxx maxx  12176196 2012-12-26 10:08 u-boot-2012.04.01.tar.gz

Что находится в архиве:

  1. linux-3.3.7-r115.tar.gz - исходники ядра Linux 3.3.7 с поддержкой SomIQ-AM37
  2. linux-3.3.7-r115.patch - файл с исправлениями исходного ядра из SDK (файл добавлен для примера, не использовать!)
  3. u-boot-2012.04.01.tar.gz - исходники u-boot (SPL) 2012.04 с поддержкой SomIQ-AM37
  4. u-boot-2012.04.01.patch - файл с исправлениями исходного u-boot (SPL) из SDK (файл добавлен для примера, не использовать!)

Компиляция MLO и u-boot

Распакуем архив u-boot из предыдущего шага:

$ tar xzf u-boot-2012.04.01.tar.gz
$ cd u-boot-2012.04.01
$ ls -l
api    boards.cfg  COPYING  doc       fs       MAINTAINERS  mkconfig  net          README           spl
arch   common      CREDITS  drivers   include  MAKEALL      mmc_spl   onenand_ipl  rules.mk         tools
board  config.mk   disk     examples  lib      Makefile     nand_spl  post         snapshot.commit

Для последующей компиляции необходимы пути к компилятору в переменных окружения:

$ export PATH=/opt/arm-2010q1/bin:$PATH

Очищаем исходники от предыдущей конфигурации (на всякий случай):

$ make ARCH=arm distclean

Теперь у вас есть возможность скомпилировать u-boot для двух видов модулей: SomIQ-AM37 (ОЗУ 256M) и SomIQ-AM37D (ОЗУ 512М)
Настраиваем сборку на SomIQ-AM37 (256M):

$ make somiq_am37_config
Configuring for somiq_am37 - Board: somiq_am37, Options: DDRSIZE_256M

Настраиваем сборку на SomIQ-AM37D (512M):

$ make somiq_am37d_config
Configuring for somiq_am37d - Board: somiq_am37, Options: DDRSIZE_512M

Непосредственно компиляция:

$ make ARCH=arm CROSS_COMPILE=arm-none-linux-gnueabi-

На выходе вы должны получить два файла: MLO и u-boot.img. Эти файлы записываете на SD карту, раздел /boot (сначала файл MLO!). Как подготовить карту описано здесь: somiq-am35-sd. Отмонтируем карту и теперь можно загружать плату Somiqboard

Пример загрузки u-boot на модуле SomIQ-AM37D

12.04.01 (Nov 08 2012 - 17:08:42)
Texas Instruments Revision detection unimplemented
OMAP SD/MMC: 0
reading u-boot.img
reading u-boot.img


U-Boot 2012.04.01 (Nov 08 2012 - 17:08:42)

OMAP36XX/37XX-GP ES1.2, CPU-OPP2, L3-165MHz, Max CPU Clock 1 Ghz
SomIQ board + LPDDR/NAND
I2C:   ready
DRAM:  512 MiB
NAND:  128 MiB
MMC:   OMAP SD/MMC: 0
*** Warning - bad CRC, using default environment

In:    serial
Out:   serial
Err:   serial
Die ID #1d2200029e3800000168682f08011014
MAC address EUI-48 is 00:04:a3:36:16:35
Hit any key to stop autoboot:  0 
OMAP3 # 

Компиляция ядра Linux

Распакуем исходники ядра Linux:

$ tar xzf linux-3.3.7-r115.tar.gz
$ cd linux-3.3.7-r115

Очищаем исходники от предыдущей конфигурации (на всякий случай):

$ make ARCH=arm mrproper

Настраиваем файлы конфигурации на компиляцию для SomIQ-AM37:

make ARCH=arm tisdk_somiq_am37_defconfig

Непосредственно компиляция:

make ARCH=arm CROSS_COMPILE=arm-none-linux-gnueabi- uImage

После завершения процесса компиляции у вас появится файл ядра: “arch/arm/boot/uImage”. Этот файл запишите на SD карту, раздел FAT32.

Запуск файловой системы

Файловую систему скачайте по ссылке: http://software-dl.ti.com/dsps/dsps_public_sw/am_bu/sdk/BeagleBoardSDK/latest/exports/beagleboard-sdk-bin-05.05.01.00.tar.gz. Обратите внимание, что данный архив содержит не только саму файловую систему, но и загрузчики с ядром Linux для AM3517EVM. Последние нам не понадобятся.

Файловая система, поставляемая в сборке от TI, содержит систему запуска приложений Matrix, основанную на HTML5. Описание здесь: http://processors.wiki.ti.com/index.php/Matrix_Users_Guide

Распакуйте архив из SDK:

$ tar xzf beagleboard-sdk-bin-05.05.01.00.tar.gz 
$ ls -1
u-boot-beagleboard.img
uImage-beagleboard.bin
MLO-beagleboard
tisdk-rootfs-beagleboard.tar.gz

Нам понадобится только файл tisdk-rootfs-beagleboard.tar.gz, остальные можно удалить. Монтируйте SD карту, раздел для файловой системы ext3. Если в вашей системе после монтирования путь к разделу будет, например, “/media/sdc2”, то команда для записи файловой системы на раздел будет (права супер-пользователя обязательны!):

cd /media/sdc2
sudo tar xzf tisdk-rootfs-beagleboard.tar.gz

Далее отмонтируйте все разделы SD карты, вставьте её в слот P3 на плате Somiqboard, подключите дисплей, мышь, USB кабель для вывода консольных сообщений и подайте питание.

wiki/beagleboard-ezsdk.txt · Последние изменения: 2013/01/13 01:03 (внешнее изменение)