Трион-Про-270 - прошивка по JTAG Olimex arm-usb-ocd.

37 просмотров
Перейти к первому непрочитанному сообщению

yantux

не прочитано,
14 мар. 2009 г., 08:22:0714.03.2009
– tion_sbc
пробую прошить загрузчик u-boot в Трион-Про-270 по JTAG в MS
WindowsXP, софт установил с компакт диска Olimex.

tion-pro-270.bat:
openocd-ftd2xx.exe -f ./configs/olimex-arm-usb-ocd.txt -f ./configs/
tion-pro270.txt -f ./configs/reflash.txt

reflash.txt:
flash write_image erase C:\gccfd\openocd\bin\uboot.bin

Ошибки:
C:\gccfd\openocd\bin>tion-pro-270.bat

C:\gccfd\openocd\bin>openocd-ftd2xx.exe -f ./configs/olimex-arm-usb-
ocd.txt -f ./configs/tion-pro270.txt -f ./configs/reflash.txt

Info: openocd.c:93 main(): Open On-Chip Debugger (2007-09-05 09:00
CEST)
Info: configuration.c:50 configuration_output_handler(): Command
write_image
not found

Error: jtag.c:1461 jtag_init(): No valid jtag interface found
((null))
Error: jtag.c:1462 jtag_init(): compiled-in jtag interfaces:
Error: jtag.c:1465 jtag_init(): 0: ft2232

C:\gccfd\openocd\bin>rem openocd-ftd2xx.exe -f ./configs/olimex-arm-
usb-ocd.txt
-f ./configs/tion-pro270.txt

Правильно ли я запускаю процесс прошики?
Какую доку мне надо прочитать, чтобы процесс прошивки прошёл
нормально?

yantux

не прочитано,
14 мар. 2009 г., 08:48:1714.03.2009
– tion_sbc
Попытка прошить в ОС Линукс, дистрибудитв Debian Lenny:

Скрипт для прошивки:
debian:/home/yan/Development/Trion-Pro-270/Trion-Pro-270# cat ./
write_flash.sh
#!/bin/sh
#

openocd -f olimex-arm-usb-ocd -f tion-pro270 -f reflash


файл reflash:
debian:/home/yan/Development/Trion-Pro-270/Trion-Pro-270# cat ./
reflash
flash write_image erase /home/yan/Development/Trion-Pro-270/Trion-
Pro-270/u-boot.bin


результат запуска скрипта для прошивки:
debian:/home/yan/Development/Trion-Pro-270/Trion-Pro-270# ./
write_flash.sh
Open On-Chip Debugger 1.0 (2008-08-11-18:16) svn:unknown
$URL: http://svn.berlios.de/svnroot/repos/openocd/trunk/src/openocd.c
$
Info: options.c:50 configuration_output_handler(): Command set not
found
Info: options.c:50 configuration_output_handler(): Command set not
found
Info: options.c:50 configuration_output_handler(): Command set not
found
Info: options.c:50 configuration_output_handler(): jtag_khz: 2000,
2000
Info: options.c:50 configuration_output_handler(): Command jtag not
found
Info: options.c:50 configuration_output_handler(): Command set not
found
Error: target.c:1445 handle_target_command(): target 'create' not
found
Info: options.c:50 configuration_output_handler(): Syntax error:
Info: options.c:50 configuration_output_handler(): target target <cpu>
[reset_init default - DEPRECATED] <chainpos> <endianness> <variant>
[cpu type specifc args]
Info: options.c:50 configuration_output_handler(): Command $TARGETNAME
not found
Error: flash.c:239 handle_flash_bank_command(): target 0 not defined
Error: jtag.c:1338 jtag_examine_chain(): JTAG communication failure,
check connection, JTAG interface, target power etc.
Error: jtag.c:1543 jtag_init_inner(): trying to validate configured
JTAG chain anyway...
Error: jtag.c:1443 jtag_validate_chain(): Error validating JTAG scan
chain, IR mismatch, scan returned 0x00
Error: jtag.c:1443 jtag_validate_chain(): Error validating JTAG scan
chain, IR mismatch, scan returned 0x00
Error: jtag.c:1443 jtag_validate_chain(): Error validating JTAG scan
chain, IR mismatch, scan returned 0x00
Error: jtag.c:1443 jtag_validate_chain(): Error validating JTAG scan
chain, IR mismatch, scan returned 0x00
Error: jtag.c:1443 jtag_validate_chain(): Error validating JTAG scan
chain, IR mismatch, scan returned 0x00
Error: jtag.c:1443 jtag_validate_chain(): Error validating JTAG scan
chain, IR mismatch, scan returned 0x00
Error: jtag.c:1552 jtag_init_inner(): Could not validate JTAG chain,
exit
Error: jtag.c:1338 jtag_examine_chain(): JTAG communication failure,
check connection, JTAG interface, target power etc.
Error: jtag.c:1543 jtag_init_inner(): trying to validate configured
JTAG chain anyway...
Error: jtag.c:1443 jtag_validate_chain(): Error validating JTAG scan
chain, IR mismatch, scan returned 0x00
Error: jtag.c:1443 jtag_validate_chain(): Error validating JTAG scan
chain, IR mismatch, scan returned 0x00
Error: jtag.c:1443 jtag_validate_chain(): Error validating JTAG scan
chain, IR mismatch, scan returned 0x00
Error: jtag.c:1443 jtag_validate_chain(): Error validating JTAG scan
chain, IR mismatch, scan returned 0x00
Error: jtag.c:1443 jtag_validate_chain(): Error validating JTAG scan
chain, IR mismatch, scan returned 0x00
Error: jtag.c:1443 jtag_validate_chain(): Error validating JTAG scan
chain, IR mismatch, scan returned 0x00
Error: jtag.c:1552 jtag_init_inner(): Could not validate JTAG chain,
exit
Warning: telnet_server.c:624 telnet_init(): no telnet port specified,
using default port 4444
Warning: gdb_server.c:2015 gdb_init(): no gdb ports allocated as no
target has been specified
Error: jtag.c:1752 handle_reset_config_command(): invalid reset_config
argument, defaulting to none
Info: options.c:50 configuration_output_handler(): Command probe not
found
Info: options.c:50 configuration_output_handler(): Command write_image
not found
^C
debian:/home/yan/Development/Trion-Pro-270/Trion-Pro-270#

telnet localhost 4444 - работает, но в консоли не работают многие
воманды, например flash.

Все конфигурационные файлы взяты с wiki, отредактировал только reflash


Надо ли выставлять на Трион-Про-270 джамперы для прошивки через JTAG?

yantux

не прочитано,
14 мар. 2009 г., 12:05:5114.03.2009
– tion_sbc

Если надо, то есть лидокументация по этому поводу?

Roman

не прочитано,
14 мар. 2009 г., 14:27:4714.03.2009
– tion_sbc
Здравствуйте,

Да вы чего издеваетесь ? Если вам в выходные не ответили значит
инженера действительно отдыхают в свой выходной !!! а не торчат как
********** в интернете..... Джамперы снимать не надо ! это раз.... Во
вторых скачать желательно последнюю версию OpenOCD c сайта
разработчиков софта: ( http://openocd.berlios.de/web/ ) ,а в третьих
******** ну наконец то выучите название того ,что вы купили и с чем
работаете ... ! ..... если сложно.... то зайдите на сайт и посмотрите
как пишется ....

Sergey Alyoshin

не прочитано,
14 мар. 2009 г., 14:58:3114.03.2009
– tion...@googlegroups.com
2009/3/14 yantux <yan...@yandex.ru>:

Возьмите версию 0.1.0 http://developer.berlios.de/projects/openocd
Посмотрите созданные при установке директории, для LPT (я не пробовал
USB по Win) нужно было запускать драйвер.

Sergey Alyoshin

не прочитано,
14 мар. 2009 г., 15:15:3814.03.2009
– tion...@googlegroups.com
2009/3/14 yantux <yan...@yandex.ru>:

Видно, что происходят ошибки при анализе конф. файлов. Возможно, из-за
того что были изменения его переменных и функций. Я пользуюсь для этой
конфигурации OpenOCD версии svn 1213 (04 Dec 2008) и libftd2xx0.4.13.


> Надо ли выставлять на Трион-Про-270 джамперы для прошивки через JTAG?

Нет, сигналы напрямую к процессору.

Sergey Alyoshin

не прочитано,
14 мар. 2009 г., 15:16:4214.03.2009
– tion...@googlegroups.com
2009/3/14 Roman <fxd...@gmail.com>:

> Здравствуйте,
>
> Да вы чего издеваетесь ? Если вам в выходные не ответили значит
> инженера действительно отдыхают в свой выходной !!! а не торчат как
> ********** в интернете....

Ага

Sergey Alyoshin

не прочитано,
14 мар. 2009 г., 15:20:1114.03.2009
– tion...@googlegroups.com
2009/3/14 yantux <yan...@yandex.ru>:

> Надо ли выставлять на Трион-Про-270 джамперы для прошивки через JTAG?
> Надо ли выставлять на Трион-Про-270 джамперы для прошивки через JTAG?

За это могут забанить.

> Если надо, то есть лидокументация по этому поводу?

Документация в формате info (для Linux), но её не всегда успевают
привести в соответствие с кодом. Если установлены соотв. программы, то
можно и PDF создать при сборке.

yantux

не прочитано,
15 мар. 2009 г., 05:45:5515.03.2009
– tion_sbc
В конечно счёте получилось прошить загрузчик u-boot через JTAG во флеш
Тион-Про270.

По шагам, как это получилось.

Аппаратное обеспечение:
1. Тион-Про270
2. хост комупьютер
3. JTAG программатор Olimex ARM-USB-OCD
4. самопальный JTAG переходник с ARM-USB-OCD на Тион-Про270
(распиновка на странице wiki)

ПО:
1. ОС Линукс Debian Lenny, последнее обновление 14 марта 2009
2. установлены пакеты OpenOCD, minicom и другие
3. файл /etc/apt/sources.list:
deb http://ftp.debian.org/debian/ lenny main
deb-src http://ftp.debian.org/debian/ lenny main

deb http://security.debian.org/ lenny/updates main contrib
deb-src http://security.debian.org/ lenny/updates main contrib
# end of sorces.list

Конфигурация аппаратного обеспечения. Перемычки на Тион-Про270
соответствуют конфигурации нормального включения для загрузки Тион-
Про270.
Тион-Про270 подключается через JTAG к ARM-USB-OCD, затем ARM-USB-OCD к
хост, затем подключается питание на Тион-Про270.

На хост копьютере необходимы два конфигурационных файла olimex-arm-usb-
ocd(из wiki) и arm_osk.cfg(текст ниже, взят с сайта OpenOCD).
Запускаем демон openocd -f olimex-arm-usb-ocd -f arm_osk.cfg, в
результате должен написать текст, что нашёл устройство, не должно быть
текста об ошибках. Подключаемся к демону, т.е. в другом терминале
запускаем клиента telnet localhost 3333

В командной строке клиента набираем команду help, смотрим параметры
команды flash, пробуем запускать тестовые команды для получения
информации об оборудовании, для того чтобы бьть уверенным, что коннект
по JTAG нормальный.

Непосредственно для прошивки используется команда flash с различными
параметрами.
Последовательность прошивки с помощью команды flash:
1. снятие бита защиты нулевого банка памяти
2. проверить снятие защиты
3. прошивается файл u-boot.bin(из wiki) с очищением flash write_image
earse <параметры>
4. включение бита защиты

Отключение питание Тион-Про270, отключение разъёма JTAG от Тион-
Про270.
Подключение СОМ порта Тион-Про270 к хост компьютеру. На хост
компьютере запускается программа minicom, выставляются параметры
115200, 8N1, отключение управление апаратным потоком и т.д, чтобы СОМ
порт работал по трём проводам (Rx, Tx, GND), сохранение параметров. В
левую руку берётся выключатель питания Тион-Про270, права рука
истерично бьёт по клавиатуре в поисках клавиши <Enter>. Левая рука
включает питание Тион-Про270. Разработчик радостно наблюдает весёлые
сообщения загрузчика u-boot.

yantux

не прочитано,
15 мар. 2009 г., 05:48:2915.03.2009
– tion_sbc
Содержание файла arm_osk.cfg (взят с официального сайта OpenOCD для
PXA270):

# config for Intel PXA270
# not, as of 2007-06-22, openocd only works with the
# libftd2xx library from ftdi. libftdi does not work.

telnet_port 3333
gdb_port 4444

interface ft2232
ft2232_layout olimex-jtag
ft2232_vid_pid 0x15BA 0x0003
ft2232_device_desc "Olimex OpenOCD JTAG"
jtag_speed 0
# set jtag_nsrst_delay to the delay introduced by your reset circuit
# the rest of the needed delays are built into the openocd program
jtag_nsrst_delay 260
# set the jtag_ntrst_delay to the delay introduced by a reset circuit
# the rest of the needed delays are built into the openocd program
jtag_ntrst_delay 0

#use combined on interfaces or targets that can't set TRST/SRST
separately
reset_config trst_and_srst separate

#jtag scan chain
#format L IRC IRCM IDCODE (Length, IR Capture, IR Capture Mask,
IDCODE)
jtag_device 7 0x1 0x7f 0x7e

#target configuration
daemon_startup reset

target xscale little reset_halt 0 pxa27x

# maps to PXA internal RAM. If you are using a PXA255
# you must initialize SDRAM or leave this option off
working_area 0 0x5c000000 0x10000 nobackup

run_and_halt_time 0 30

#flash bank <driver> <base> <size> <chip_width> <bus_width>
# works for P30 flash
flash bank cfi 0x00000000 0x1000000 2 4 0

yantux

не прочитано,
15 мар. 2009 г., 05:54:2615.03.2009
– tion_sbc
В качестве разъёма JTAG для Тион-Про270 я использовал вилку IDC-10 на
шлейф. Шаг разъёма 2мм, шаг шлейфа 1мм. Этот разъём достаточно удобен
в разделке. Обошёлся тисками. т.е. без хитрых инструментов. Для
обжатия IDC использую руки и тиски. т.е. без хитрых инструментов.

Sergey Alyoshin

не прочитано,
15 мар. 2009 г., 06:15:1015.03.2009
– tion...@googlegroups.com
2009/3/15 yantux <yan...@yandex.ru>:

>
> Содержание файла arm_osk.cfg (взят с официального сайта OpenOCD для
> PXA270):

>  interface ft2232
>  ft2232_layout olimex-jtag
>  ft2232_vid_pid 0x15BA 0x0003
>  ft2232_device_desc "Olimex OpenOCD JTAG"

Вот эта часть в точности olimex-arm-usb-ocd (и его можно не
использовать), то есть в этом конф. файле объединены параметры
JTAG-адаптера и целевой платы.

Ответить всем
Отправить сообщение автору
Переслать
0 новых сообщений