Содержание
ПО для процесорного модуля BlueShark v3 OMAP35xx
Требования
ПО для модуля BlueShark можно скомпилировать лишь в ОС Linux. Практики компиляции под Windows (Cygwin) пока нет.
- ОС Ubuntu или Fedora Core 11 (и выше)
- Компилятор ARM Linux GCC arm-2009q1 (желательно установить его в папку «/opt»). Инструкции по установке
- Утилита git
- Утилита quilt
- MMC (или обычная SD) карта
Компиляция x-loader
Для BlueShark v3 потребуется x-loader с небольшими изменениями, связанными с аппаратной конфигурацией модуля, а именно организации ОЗУ. На v3 используется один чип памяти с одним банком 32бит. На v1 использовался один чип с двумя банками по 32бит.
Скачайте x-loader:
git clone git://gitorious.org/x-load-omap3/mainline.git xloader cd xloader/
Скачайте патч для модуля BlueShark v3:
wget http://www.mentorel.ru/downloads/blueshark/xload_bsv3.patch
Зайдите в директорию x-loader и примените патч:
cd xloader patch -p1 < ../xload_bsv3.patch
Скомпилируйте x-loader. Для этого в переменных окружения должен быть путь к arm-none-linux-gnueabi-gcc: это делается командой «export PATH=/opt/arm-2009q1/bin:$PATH»
make distclean make blueshark_config make ARCH=arm CROSS_COMPILE=/opt/arm-2009q1/bin/arm-none-linux-gnueabi-
Для модулей с NAND, имеющим размер сектора 256к и страницей 4к, задайте конфигурацию с помощью команды:
make blueshark_nand4k_config
Модули BlueShark могут иметь 128М или 256М DDR памяти. Это необходимо явно указать через определения в файле include/configs/blueshark.h:
/* Choose memory amount for BlueShark v3 */ //#define CFG_BSV3SDRAM_128M 1 #define CFG_BSV3SDRAM_256M 1
Нужно оставить включенным один из «define» и пересобрать x-loader.
Создание MLO файла
Для создания MLO файла необходимо подписать x-loader специальной утилитой signGP.
signGP x-load.bin
Полученный файл 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) Скачиваем исходники:
git clone git://www.denx.de/git/u-boot.git u-boot-2010.03 cd u-boot-2010.03 git checkout ca6e1c136ddb720c3bb2cc043b99f7f06bc46c55
2) Скачиваем набор патчей для OMAP3 платформ
Данный набор патчей взят из OpenEmbedded «openembedded/recipes/u-boot/u-boot_git.bb». Помимо BlueShark из этих исходников можно скомпилировать u-boot для Overo, Beagleboard, OMAP3EVM
wget http://mentorel.ru/downloads/blueshark/bs_uboot2010.patches.tgz
3) Распаковываем архив патчей в корень u-boot
tar xzf bs_uboot2010.patches.tgz
4) Применяем все патчи к исходникам:
quilt push -a
5) Непосредственно компиляция
make omap3_blueshark_config make CROSS_COMPILE=/opt/arm-2008q1/bin/arm-none-linux-gnueabi-
Для модулей с NAND, имеющим размер сектора 256к и страницей 4к, задайте конфигурацию с помощью команды:
make omap3_blueshark_nand4k_config
В результате получаем бинарник, который необходимо записать на SD-карту (партицию FAT32) и можно загружать платформы, основанные на модуле BlueShark.
Скомпилированный u-boot |
---|
http://mentorel.ru/downloads/blueshark/boot_v3/u-boot.bin |