ЗАО «ЗЭО»

Пожалуйста, войдите или зарегистрируйтесь.

Расширенный поиск  

Новости:

Автор Тема: Linux 3.12.17 для Tion-Pro270  (Прочитано 1572 раз)

0 Пользователей и 1 Гость просматривают эту тему.

iap

  • Newbie
  • *
  • Оффлайн Оффлайн
  • Сообщений: 4
Linux 3.12.17 для Tion-Pro270
« : 15 Апрель, 2014, 02:59:28 »

Доброго времени суток!

Коллеги, если вдруг кому-нибудь окажется интересно, предлагаю вашему вниманию патч ядра Linux 3.12.17 для Тион-Про270.

Работает следующее железо:
  • CPU & RAM.
  • Flash, включая поддержку MTD.
  • FFUART, BTUART, STUART (с учетом хардварного бага в использовании аппаратного управления потоком BTUART).
  • DM9000 ethernet controller.
  • I2C bus.
  • M41T00 RTC.
  • SD/MMC.
  • USB в одной из следующих конфигураций:
    • USB Host 1;
    • Usb Host 1 + Usb Host 2 (включается в defconfig);
    • Usb Host 1 + Usb Device (без режима OTG).
  • AC97.
  • UCB1400 - аудиоинтерфейс и точскрин (Tion-Pro270 rev.1).
  • PWM backlight.
  • Управление питанием LCD на GPIO 44 (Tion-Pro270 rev.2).
  • Framebuffer в 18-битном режиме и VGA DAC.
  • LEDs на GPIO 54 и 107 (Tion-Pro270 rev.2).
  • PWMs 1, 2, 3, в том числе с управлением из userspace через SYSFS.
  • Кнопки на GPIO 93, 94, 96 (PXA direct keyboard interface; в defconfig отключено).
  • Аппаратный watchdog.

Дополнительная функциональность:
  • MAC-адрес для контроллера ethernet DM9000 может передаваться в ядро из U-Boot одним из 2 способов:
    • Через serial tag из переменной U-Boot ethaddr (аналогично ядру от "Завода электрооборудования").
    • Через параметр ядра tion270_ether_addr (имеет приоритет над serial tag).
  • PWM backlight включается с небольшой задержкой после подачи питания на LCD, управляемой GPIO 44, чтобы избежать мигания экрана (аналогично ядру от "Завода электрооборудования", но реализовано с использованием delayed work). Время задержки задается параметром ядра tion270_backlight_power_on_delay, который может как указываться в параметрах запуска ядра, так и быть изменен в рантайме через SYSFS.
  • VGA DAC можно отключить параметром ядра tion270_vga_dac_enable.
  • Сконфигурировано несколько предопределенных видеорежимов: 320x200, 640x480 и 800x600. Нужный видеорежим задается параметром ядра tion270_video_mode. Также в этом параметре можно указать "none", чтобы оставить драйвер фреймбуфера неинициализированным и увеличить объем доступной для использования оперативной памяти.

Следующая функциональность была реализована, может быть скомпилирована, но ее работоспособность не проверялась:
  • Power I2C bus.
  • SPI.
  • CAN (MCP2515 controller).

Не реализовано:
  • Поддержка WM97xx - актуально для Tion-Pro270 rev.2. Предположительно, трудоемкость реализации небольшая.
  • Поддержка PCMCIA - актуально для Tion270.
  • Функциональность, специфичная для Orion270.

Исходник поддержки платформы разделен на 2 части: tion270lib.c - библиотека процедур инициализации аппаратуры, и tion270.c - вызывающий код плюс процедуры обработки параметров tion270_video_mode и tion270_vga_dac_enable, инициализации кнопок и контроллера CAN.

Набор инициализируемой аппаратуры может быть изменен через menuconfig в разделе System Type > Intel PXA2xx/PXA3xx Implementations > ZEO Tion270/Tion-Pro270.

Патч тестировался на Tion-Pro270 rev.1. LEDs и управление питанием LCD тестировалось путем сборки специальной версии, в которой использовались доступные GPIO. Работа ядра проверялась на КФС, собранной Buildroot 2014.02.
Записан

asv

  • Hero Member
  • *****
  • Оффлайн Оффлайн
  • Сообщений: 1405
Re: Linux 3.12.17 для Tion-Pro270
« Ответ #1 : 15 Апрель, 2014, 19:51:41 »

Здорово! Спасибо.
Записан