ЗАО «ЗЭО»

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

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

Новости:

Автор Тема: Автоматизация прошивки linux на Тион-Про v2  (Прочитано 3150 раз)

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

vitvrn

  • Newbie
  • *
  • Оффлайн Оффлайн
  • Сообщений: 34

Пришлось загружать в большое количество Тионов U-boot, ядро linux и КФС - сделал на скорую руку автоматизацию .
  • С помощью правил udev (платы подключал через переходники COM-USB) вызывается скрипт, который прошивает U-boot (версию, поддерживающую скрипты)
  • С помощью chat-скриптов даются команды U-boot'у залить ядро и КФС
Но chat-скрипт почему-то аварийно прекращает работу пока прошивается КФС (около 20 минут). Пробовал разные опции, тайм-ауты (для chat и для socat) - не разобрался до конца. Остановился на том, что просто запускается терминал после такого аварийного завершения, на который и приходит финальное "done". Возможно, лучше было бы использовать скриптовый язык, встроенный в minicom (man runscript) или что-то еще.
Скрипты рассчитаны на одновременную прошивку двух экземпляров (можно сделать больше) с одного компьютера под linux (использовался Debian 6).
По первой части (загрузка U-Boot). При подключении переходника COM-USB запускается утилита download и выводится всплывающая подсказка о начале прошивки с помощью notify-send (которому что-то нужно знать о сессии текущего пользователя, кроме переменной DISPLAY, поэтому перед работой просто экспортировал все переменные окружения в файл с помощью скрипта EXPORT-ENVIRONMENT.sh). Если по истечении интервала (минута) прошивка не произошла, download завершается принудительно и выводится сообщение об ошибке.
Короче, для прошивки U-Boot нужно из папки uboot-load архива:
  • Скопировать содержимое папки uboot-load из архива в корень файловой системы (расположение uboot_load_udev_USB0.sh прописано в 71-test-ttyUSB-run.rules и его можно изменить
  • Перезагрузить правила udev: udevadm control --reload-rules
  • Запустить EXPORT-ENVIRONMENT.sh
Для прошивки ядра и КФС и установки системного времени:
  • Запустить tftp-сервер
  • Настроить порт на скорость 57600
  • Запустить loadlinux_chatsocat_usb$PORTNUM.sh (PORTNUM={0,1})
  • Минут через 20 увидеть в терминале "done" и выйти из него
  • Запустить loadlinux_chatsocat_usb$PORTNUM_finish.sh

Скрипты прилагаю в архиве - может, пригодится кому.
« Последнее редактирование: 28 Сентября, 2012, 16:05:35 от vitvrn »
Записан

asv

  • Hero Member
  • *****
  • Оффлайн Оффлайн
  • Сообщений: 1405
Re: Автоматизация прошивки linux на Тион-Про v2
« Ответ #1 : 31 Июля, 2012, 16:06:48 »

Tcl/Tk, expect, но запись ядра и КФС не доделана.
Записан

vitvrn

  • Newbie
  • *
  • Оффлайн Оффлайн
  • Сообщений: 34
Re: Автоматизация прошивки linux на Тион-Про v2
« Ответ #2 : 01 Августа, 2012, 11:52:04 »

На expect хотел глянуть, но когда уже партию почти прошил, с Tcl/Tk тоже не сталкивался. Спасибо, возьму на заметку.
Записан