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

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


wiki:blueshark_sw
no way to compare when less than two revisions

Различия

Показаны различия между двумя версиями страницы.


wiki:blueshark_sw [2012/11/20 19:14] (текущий) – создано - внешнее изменение 127.0.0.1
Строка 1: Строка 1:
 +====== ПО для процесорного модуля BlueShark OMAP3530 ======
 +===== Требования =====
 +ПО для модуля BlueShark можно скомпилировать лишь в ОС Linux. Практики компиляции под Windows (Cygwin) пока нет.
 +  * ОС Ubuntu или Fedora Core 11
 +  * Компилятор ARM Linux GCC [[http://www.codesourcery.com/sgpp/lite/arm/portal/package4571/public/arm-none-linux-gnueabi/arm-2009q1-203-arm-none-linux-gnueabi-i686-pc-linux-gnu.tar.bz2|arm-2009q1]] (желательно установить его в папку <</opt>>). [[arm-gcc|Инструкции по установке]]
 +  * Утилита git
 +  * Утилита quilt
 +  * MMC (или обычная SD) карта объемом не более 2ГБ
  
 +===== Подготовка MMC карты =====
 +Для подготовки MMC карты для загрузки программ с неё потребуется считыватель MMC/SD карт.
 +
 +  * Скачайте и проинсталлируйте утилиту под Windows
 +[[http://www.digitalsignagetechnology.com/forum/download/file.php?id=25&sid=bfbab0908f1a2f8434855c9f9b80e889]]
 +  * Вставьте карту в считывающее устройство
 +  * Откройте <<HP USB Disk Storage Format Tool>>
 +  * Выберите нужную карту
 +  * Выберите <<FAT32 as File System>>
 +  * Нажмите кнопку "Start" и затем "OK"
 +Теперь карта готова для записи файлов для BlueShark.
 +
 +//Примечание: файл MLO должен быть всегда самым первым на карте, поэтому всегда перед его записью на карточку выполняйте форматирование карты.//
 +===== x-loader для загрузки с MMC =====
 +**Скачайте** исходные тексты загрузчика первого уровня x-loader:
 +<code>
 +git clone git://gitorious.org/x-load-omap3/mainline.git xloader
 +cd xloader/
 +</code>
 +**Включите** поддержку MMC карты в файле "include/configs/omap3530beagle.h"
 +<code>
 +/* For X-loader to be flashed on to NAND disable the below macro */
 +#define CFG_CMD_MMC              1
 +</code>
 +**Компиляция x-loader**:
 +<code>
 +make distclean
 +make omap3530beagle_config
 +make
 +</code>
 +Чтобы использовать полученный x-loader необходимо сделать из него MLO файл. [[#Создание MLO файла|Перейти к описанию как..]]
 +===== x-loader для загрузки с NAND =====
 +**Скачайте** исходные тексты загрузчика первого уровня x-loader:
 +<code>
 +git clone git://gitorious.org/x-load-omap3/mainline.git xloader
 +cd xloader/
 +</code>
 +**Выключите** поддержку MMC карты в файле "include/configs/omap3530beagle.h"
 +<code>
 +/* For X-loader to be flashed on to NAND disable the below macro */
 +//#define CFG_CMD_MMC              1
 +</code>
 +**Компиляция x-loader**:
 +<code>
 +make distclean
 +make omap3530beagle_config
 +make
 +</code>
 +Чтобы использовать полученный x-loader необходимо сделать из него MLO файл. [[#Создание MLO файла|Перейти к описанию как..]]
 +===== Создание MLO файла =====
 +Для создания MLO файла необходимо подписать x-loader специальной утилитой [[http://beagleboard.googlecode.com/files/signGP|signGP]].
 +<code>
 +signGP x-loader.bin
 +</code>
 +Полученный файл x-loader.bin.ift переименовывают в "MLO" и копируют **первым** на карту MMC! Если вы ошиблись при копировании или на карточке уже есть какие-либо файлы, то самый простой способ это отформатировать раздел карты.
 +===== u-boot =====
 +Существуют два варианта u-boot для Beagleboard, которые взяты за основу u-boot для BlueShark:
 +  * Основной u-boot [[http://www.denx.de/wiki/U-Boot/WebHome]]
 +  * Экспериментальная версия от Steve Sakoman
 +
 +Обе версии имеют свои преимущества и недостатки, но конечному пользователю в принципе всё равно чем пользоваться, т.к. основная задача u-boot - загрузить ядро Linux. А с этой задачей справляется любая из выше обозначенных версий.
 +==== u-boot-omap3 ====
 +
 +Сначала рассмотрим версию от Steve, т.к. именно она используется в Angstrom Linux (stable). Данная версия подходит к Atoll-lite, т.к. не поддерживает MMC2 (Deluxe).
 +
 +**Возможности:**
 +  * Чтение MAC-адреса из EEPROM
 +  * Поддержка Ethernet
 +  * Только MMC1
 +
 +Сначала скопируйте на диск репозиторий u-boot:
 +<code>
 +git clone git://gitorious.org/u-boot-omap3/mainline.git u-boot-omap3
 +cd u-boot-omap3
 +git checkout --track -b omap3-dev origin/omap3-dev
 +git checkout d363f9cb0918a1b6b92e2e20d01543d0c4f53274
 +</code>
 +Теперь необходимо добавить изменения для архитектуры модуля BlueShark. Для этого скачайте патч: [[http://mentorel.ru/downloads/blueshark/bs_uboot_steve.patch]] и примените его к исходным кодам u-boot:
 +<code>
 +patch -p1 < bs_uboot_steve.patch
 +</code>
 +Непосредственно компиляция u-boot:
 +<code>
 +make omap3_blueshark_config
 +make -j2 CROSS_COMPILE=/opt/arm-2008q1/bin/arm-none-linux-gnueabi-
 +</code>
 +Скопируйте полученный u-boot.bin на SD- карту и можете использовать его либо с карты, либо запишите в NAND-flash.
 +^Скомпилированный u-boot|
 +| [[http://mentorel.ru/downloads/blueshark/demo/u-boot-omap3.tgz]] |
 +//Обратите внимание, что сетевой контроллер будет работать только с данной версией u-boot. U-boot от Angstrom-demo поддерживает только возможности Beagleboard.//
 +
 +==== u-boot 2010 ====
 +Данная версия включает в себя все самые новые возможности для платформы Beagleboard и Beagleboard-XM. Рекомендуется использовать именно данную версию, т.к. она позволяет работать с обеими MMC-слотами на Deluxe, а также более информативна.
 +
 +За основу взяты исходники www.denx.de/git/u-boot.git ревизии "ca6e1c136ddb720c3bb2cc043b99f7f06bc46c55". Именно эта версия компилируется в dev-ветке Angstrom Linux.
 +
 +1) Скачиваем исходники:
 +
 +<code>
 +git clone git://www.denx.de/git/u-boot.git u-boot-2010.03
 +cd u-boot-2010.03
 +git checkout ca6e1c136ddb720c3bb2cc043b99f7f06bc46c55
 +</code>
 +
 +2) Скачиваем набор патчей для OMAP3 платформ
 +
 +Данный набор патчей взят из OpenEmbedded "openembedded/recipes/u-boot/u-boot_git.bb". Помимо BlueShark из этих исходников можно скомпилировать u-boot для Overo, Beagleboard, OMAP3EVM
 +
 +<code>
 +wget http://mentorel.ru/downloads/blueshark/bs_uboot2010.patches.tgz
 +</code>
 +
 +3) Распаковываем архив патчей в корень u-boot
 +<code>
 +tar xzf bs_uboot2010.patches.tgz
 +</code>
 +
 +4) Применяем все патчи к исходникам:
 +<code>
 +quilt push -a
 +</code>
 +
 +5) Непосредственно компиляция
 +<code>
 +make omap3_blueshark_config
 +make CROSS_COMPILE=/opt/arm-2008q1/bin/arm-none-linux-gnueabi-
 +</code>
 +
 +В результате получаем бинарник, который необходимо записать на SD-карту (партицию FAT32) и можно загружать платформы, основанные на модуле BlueShark.
 +^Скомпилированный u-boot|
 +| [[http://mentorel.ru/downloads/blueshark/boot_v1/u-boot.bin]] |
 +
 +===== kernel =====
 +
 +Компиляция ядра описана здесь: [[angstrom_blueshark|Angstrom Linux для BlueShark]]
wiki/blueshark_sw.txt · Последнее изменение: 2012/11/20 19:14 — 127.0.0.1