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

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


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

Различия

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


Предыдущая версия
Последняя версия
wiki:blueshark_v3_sw [2014/08/15 11:10] – [Компиляция x-loader] maxx
Строка 1: Строка 1:
 +====== ПО для процесорного модуля BlueShark v3 OMAP35xx ======
 +===== Требования =====
 +ПО для модуля 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) карта
  
 +===== Компиляция x-loader =====
 +Для BlueShark v3 потребуется x-loader с небольшими изменениями, связанными с аппаратной конфигурацией модуля, а именно организации ОЗУ. На v3 используется один чип памяти с одним банком 32бит. На v1 использовался один чип с двумя банками по 32бит.
 +
 +Скачайте x-loader:
 +<code>
 +git clone git://gitorious.org/x-load-omap3/mainline.git xloader
 +cd xloader/
 +</code>
 +
 +Скачайте [[http://www.mentorel.ru/downloads/blueshark/xload_bsv3.patch|патч]] для модуля BlueShark v3:
 +<code>
 +wget http://www.mentorel.ru/downloads/blueshark/xload_bsv3.patch
 +</code>
 +
 +Зайдите в директорию x-loader и примените патч:
 +<code>
 +cd xloader
 +patch -p1 < ../xload_bsv3.patch
 +</code>
 +
 +Скомпилируйте x-loader. Для этого в переменных окружения должен быть путь к arm-none-linux-gnueabi-gcc: это делается командой "export PATH=/opt/arm-2009q1/bin:$PATH"
 +<code>
 +make distclean
 +make blueshark_config
 +make ARCH=arm CROSS_COMPILE=/opt/arm-2009q1/bin/arm-none-linux-gnueabi-
 +</code>
 +
 +**Для модулей с NAND, имеющим размер сектора 256к и страницей 4к, задайте конфигурацию с помощью команды:**
 +<code>
 +make blueshark_nand4k_config
 +</code>
 +
 +Модули BlueShark могут иметь **128М** или **256М** DDR памяти. Это необходимо явно указать через определения в файле include/configs/blueshark.h:
 +<code>
 +/* Choose memory amount for BlueShark v3 */
 +//#define CFG_BSV3SDRAM_128M    1
 +#define CFG_BSV3SDRAM_256M      1
 +</code>
 +Нужно оставить включенным один из "define" и пересобрать x-loader.
 +
 +===== Создание MLO файла =====
 +Для создания MLO файла необходимо подписать x-loader специальной утилитой [[http://beagleboard.googlecode.com/files/signGP|signGP]].
 +<code>
 +signGP x-load.bin
 +</code>
 +Полученный файл x-loader.bin.ift переименовывают в "MLO" и копируют **первым** на карту MMC! Если вы ошиблись при копировании или на карточке уже есть какие-либо файлы, то самый простой способ это отформатировать раздел карты.
 +
 +===== 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_v3/u-boot.bin]] |
wiki/blueshark_v3_sw.txt · Последнее изменение: 2014/08/15 11:46 — maxx