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

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


wiki:blueshark_sw

Различия

Здесь показаны различия между выбранной ревизией и текущей версией данной страницы.

Ссылка на это сравнение

wiki:blueshark_sw [2012/11/20 19:14] (текущий)
Строка 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 (внешнее изменение)