Комплект разработчика TechNexion Thunderpack
Здравствуйте, дорогой читатель.
Недавно мне представилась возможность поработать с комплектом разработчика тайваньской компании» ООО «ТехНексион» ", называемый Thunderpack, включая SOM ( Система на модуле ) ТАО-3530 и плата Гром .
SOM основан на SoC ( Система на кристалле ) ТИ OMAP3530 от Texas Instruments и содержит 256 МБ оперативной памяти DDR, 512 МБ NAND Flash, ядро DSP TMS320C64+, а также может содержать модуль беспроводной локальной сети для поддержки Wi-Fi. В этом посте я хочу рассказать вам о своем опыте работы с этой платой.
Итак, начнем.
Установка Linux 2.6.37
После быстрого прочтения документация Собрав и включив Thunder, я начал установку Linux. Скажу сразу, что мне не удалось установить стандартным способом.Процедура установки постоянно перезапускалась.
Поэтому я зашел на сайт TechNexion и скачал, любезно подготовленный и опубликованный ими, изображение содержащий Linux 2.6.37. По инструкции, указанной в документации (раздел 9.4.1 Создание SD-карты с аварийным образом в среде Windows), я подготовил SD-карту для установки Linux 2.6.37 и завершил установку.
После установки система благополучно загрузилась, но я был разочарован, потому что.
сеть не работала.
Я начал искать информацию о сетевой карте.
В конце документации к плате приведены схемы Thunder (раздел 16.2 Схемы основной платы Thunder).
На схеме видно, что сетевая карта представляет собой преобразователь USB-Ethernet, собранный на контроллере.
SMSC LAN9500-ABZJ от Микрочипа.
Поискав драйвера на вновь установленную систему, я его не нашел.
Возможно забыли включить при сборке.
На сайте TechNexion помимо готовых образов выложены исходники для сборки образа вручную.
После скачивания «TAO-3530 Linux 2.6.37/TI PSP 04.02.00.07 XUKR Исходный код» оказалось, что драйвер для нужной мне сетевой карты присутствует и включен в сборку.
Остаётся только восстановить образ.
Сборка образа Angstrom Linux 2.6.37
Я собрал образ на Ubuntu 12.04, предварительно установив его на VirtualBox. В документации Thunder разработчики советуют выполнять сборку с использованием Toolchain Code Sourcery G++ 2010.09-50 (gcc 4.5.1).я хочу конвертировать ВНИМАНИЕ , что для сборки образа Angstrom Linux 2.6.37, предоставленного разработчиками TechNexion, необходимо развернуть именно Исходный код G++ 2010.09-50 .
Прежде всего, скачайте Arm-2010.09-50-arm-none-linux-gnueabi-i686-pc-linux-gnu.tar.bz2 или с сайта Наставник Графика и распакуйте его в папку /opt/codesourcery.
$cd /opt $sudo mkdir codesourcery $cd codesourcery $sudo wget ftp://ftp.ru.debian.org/gentoo-distfiles/distfiles/arm-2010.09-50-arm-none-linux-gnueabi-i686-pc-linux-gnu.tar.bz2 $sudo tar xvf arm-2010.09-50-arm-none-linux-gnueabi-i686-pc-linux-gnu.tar.bz2
Определите переменные среды.
Для этого добавьте в файл /etc/environment следующее: export ARCH=arm
export CROSS_COMPILE=/opt/codesourcery/arm-2010.09/bin/arm-none-linux-gnueabi-
Создайте папку files в корневом каталоге и скопируйте в нее исходные коды, чтобы создать образ Angstrom Linux 2.6.37. $cd /
$sudo mkdir files
$cd files
$sudo wget http://technexion.com/images/downloads/ARM_CPU_Modules/xukr-20131014-omap3.tar.xz
$sudo tar xvf xukr-20131014-omap3.tar.xz
Установите uboot-mkimage. $sudo apt-get install uboot-mkimage
Теперь вам нужно перезагрузить систему, чтобы переменные среды, которые мы установили, заработали.
Остаётся только подправить конфигурацию ядра, чтобы включить необходимые драйверы.
Поскольку я буду создавать образ платы Thunder, путь к нужному мне файлу конфигурации следующий: /opt/files/xukr-20131014-omap3/kernel/linux-2.6.37-tn/arch/arm/configs/taotdm_defconfig
Конфигурационный файл необходимо открыть в любом удобном редакторе и включить интересующие опции.
Редактировал стандартным редактором файлового менеджера Midnight Commander. Первое, что я посмотрел в файле конфигурации, это то, что драйвер сетевой карты SMSC95xx включен.
CONFIG_USB_NET_SMSC95XX=y
Затем я включил компиляцию драйверов USB-последовательного порта.
CONFIG_USB_SERIAL=y
И включена поддержка наиболее распространенных USB-чипов PL2303 и CP210x. CONFIG_USB_SERIAL_PL2303=y
CONFIG_USB_SERIAL_CP210X=y
Закройте редактор после сохранения изменений в файле.
Теперь все готово для сборки ядра.
Перейдите в каталог xukr-20131014-omap3. $cd /opt/files/xukr-20131014-omap3
И запускаем скрипт сборки с указанием названия платформы.
$sudo .
/Build.sh thunder
Этот скрипт соберет загрузчик, ядро ОС, скопирует все необходимые файлы в заранее подготовленную файловую структуру и т.д.
Затем очистите исходные коды от созданных объектных файлов.
$sudo .
/Clean.sh
И скрипт для построения изображения с указанием названия платформы.
$sudo .
/mk_nandimg.sh thunder
После успешного завершения вы можете поздравить себя с созданием образа Angstrom Linux 2.6.37. Само изображение будет находиться в папке
/opt/files/xukr-20131014-omap3/build/thunder.
Остаётся только подготовить установочный SD диск и установить.
Эти шаги описаны выше (см.
Установка Linux 2.6.37).
После установки собранной системы у меня теперь была сеть и поддержка usb-serial устройств.
Заключение
Разработчики TechNexion сделали очень удобный процесс сборки и создания образа загрузочного SD-диска, не требующий глубоких знаний и опыта сборки ядра Linux. Скрипты, которые они готовят, делают все автоматически.Единственное, как обычно, документация не поспевает за разработчиками.
Последняя, на момент написания статьи, версия документации (tao-3530-userguide-097.pdf) содержала описание сборки для старых исходников, которое немного отличается.
Спасибо за внимание.
В следующей статье я напишу о настройке Eclipse CDT для компиляции программ под руку, запуске приложения на Thunder и отладке программы в Eclipse. Увидимся.
Теги: #developertools #разработка на Raspberry Pi
-
Siri Защитит Украденный Iphone
19 Oct, 24 -
Музыкальный Набор Для Инди-Игры
19 Oct, 24 -
Вы Пойдете На Промежуточный Период?
19 Oct, 24 -
Гениальный Садовник
19 Oct, 24 -
Скучаете По Кпк?
19 Oct, 24