====== Описание работы модуля Blueshark v4.2 с Wifi модулем LSR Tiwi-R2 ======
**Все действия, описанные на данной странице выполнялись в среде операционной системы Ubuntu Linux 11.04**
====== Общее описание ======
//Примечания//
* **Требуется** последняя версия u-boot 2011.12-r3
* Ядро Linux версии 3.0.17-115с
* Утилиты iwlist iwconfig
Всё необходимое ПО было собрано с помощью скриптов Angstrom Linux:\\
[[http://www.angstrom-distribution.org/building-angstrom]]
Первоначально целевая платформа для сборки Beagleboard, затем ПО было портировано на BlueShark v4.2.
Что в итоге получилось:\\
===== u-boot =====
* SPL версия, включающая код X-loader (MLO)
* поддержка чтения EUI-48 (MAC-адреса) из EEPROM на модуле BlueShark
* передача MAC-адреса ядру Linux через boot-аргументы
* настройки PIN MUX процессора для работы WIFI модуля LSR Tiwi-R2 в режиме SDIO
Пресобранная версия u-boot 2011.12-r3:
^ Файл ^ Размер, кБайт |
| [[http://mentorel.com/downloads/blueshark/v4_wifi/MLO|MLO]] | 40к |
| [[http://mentorel.com/downloads/blueshark/v4_wifi/u-boot.img|u-boot.img]] | 271к |
===== Linux =====
* EUI-48 (MAC-адреса) из EEPROM на модуле BlueShark передается сетевому контроллеру Micrel KSZ8851
* Загружается WIFI модуль LSR Tiwi-R2
* Wifi модулю назначается MAC-адрес, сгенерированный на основе Die ID процессора (уникальный)
//Примечание//
Обнаружена регрессия скорости обмена сетевого контроллера Micrel KSZ8851 после обновления ядра до 3.0.17. В ядре 2.6.32 скорость обмена была выше на 25%.
Сравнение скорости обмена:
| Обмен | 2.6.32 | 3.0.17 |
^ Download | 1 МБ/сек | 750 кБ/сек |
^ Upload | сведений нет | сведений нет |
Поэтому, если сетевой обмен является для вас критичной задачей, то мы рекомендуем использовать ядро [[wiki:blueshark_v4_kernel|2.6.32]]. Однако ядро 2.6.32 не поддерживает беспроводной контроллер TI wl1271, установленный в модуль LSR Tiwi-R2.
Пресобранная версия Linux 3.0.17-115с:
^ Файл ^ Размер, кБайт |
| [[http://mentorel.com/downloads/blueshark/v4_wifi/uImage|uImage]] | 3277к |
| [[http://mentorel.com/downloads/blueshark/v4_wifi/modules-3.0.17+-r115c-beagleboard.tgz|modules-3.0.17+-r115c-beagleboard.tgz]] | 11000k |
| [[http://mentorel.com/downloads/blueshark/v4_wifi/defconfig|defconfig]] | 85k |
===== Файловая система =====
Для тестовых целей была собрана файловая система с консольным интерфейсом пользователя. Данная файловая система не имеет необходимых файлов загрузки для Wifi модуля, поэтому их необходимо скачать и установить вручную в данную файловую систему.
Пресобранная версия файловой системы с консольным интерфейсом:
^ Файл ^ Размер, кБайт |
| [[http://mentorel.com/downloads/blueshark/v4_wifi/console-image-beagleboard.tar.bz2|console-image-beagleboard.tar.bz2]] | 14000к |
====== Подготовка SD карты ======
**В последней версии uboot изменили процедуру загрузки ядра, поэтому данное описание следует прочитать.**
На SD карте должно быть два раздела: fat32 и ext2. В раздел fat32 записывают файлы MLO и u-boot.img. В раздел ext2 записывают ядро, файловую систему, модули ядра и бинарные загрузчики для Wifi чипа модуля Tiwi-R2.
===== Форматирование разделов карты SD =====
* fat32
sudo mkfs.vfat -F 32 -n "boot" /dev/sdc1
* ext2
sudo mke2fs -j -L "Angstrom" /dev/sdc2
Также вы можете воспользоваться скриптом [[http://mentorel.com/downloads/blueshark/omap3-mkcard.sh|mkcard.txt]] и передать ему в качестве аргумента файл устройства SD карты, например, /dev/sdc или /dev/sdd.
===== Запись файлов на карту =====
Чтобы записать файлы на SD карту необходимо подмонтировать разделы карты к директориям на жестком диске компьютера.
Для этого создадим необходимые директории:
sudo mkdir /media/boot
sudo mkdir /media/rootfs
Подключение разделов карты:
sudo mount -t vfat /dev/sdc1 /media/boot
sudo mount /dev/sdc2 /media/rootfs
**Перед записью MLO файла необходимо обязательно отформатировать первый раздел на SD карте!**
1) Первым файлом, записанным на раздел fat32 должен быть **MLO**
sudo cp MLO /media/boot
2) Затем записываем файл загрузчика u-boot:
sudo cp u-boot.img /media/boot
3) Сначала запишем файловую систему
cd /media/rootfs
sudo tar xjf /console-image-beagleboard.tar.bz2
4) Модули ядра
sudo tar xzf /modules-3.0.17+-r115c-beagleboard.tgz
5) Бинарные загрузчики Wifi чипа
В данной конкретной инсталляции необходимые загрузчики уже содержаться в архиве с модулями, но они могут устареть и вам потребуются новые. Последнюю версию бинарных загрузчиков для чипа wl1271 скачивают так:
git clone git://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git
Вы получите директорию с большим количеством различных загрузчиков для самых разных беспроводных чипов. Нас интересует только директория **ti-connectivity**, которую необходимо скопировать в директорию на карте SD: /lib/firmware. Для этого выполним команду:
sudo cp -a /ti-connectivity /media/rootfs/lib/firmware/
Теперь надо не забыть отмонтировать оба раздела SD карты и можно загружать плату:
cd
sudo umount /dev/sdc1 /dev/sdc2
===== Настройка сетевых интерфейсов в Linux =====
В данном разделе приводится описание по конфигурированию сетевых интерфейсов вручную. Если в системе установлен NetworkManager, то данная утилита настроит сетевые интерфейсы сама.
==== Ethernet ====
udhcpc -i eth0
==== Wifi ====
[[wlan-setup|Как настроить wifi на модуле BlueShark]]