ЗАО «ЗЭО»

Техническая поддержка пользователей => Windows CE, EBoot => Тема начата: lexaiu4 от 13 Мая, 2009, 11:39:50

Название: Переход с wince(eboot) на u-boot
Отправлено: lexaiu4 от 13 Мая, 2009, 11:39:50
Здравствуйте!
Не подскажите возможно ли без jtag перепрошить из eboot u-boot?
Название: Re: Переход с wince(eboot) на u-boot
Отправлено: Danila от 13 Мая, 2009, 12:59:21
Добрый день.
Возможно. Инструкция находится тут http://www.zao-zeo.ru/dokuwiki/doku.php/eboot#установка_загрузчика_eboot_или_u-boot_из_eboot (http://www.zao-zeo.ru/dokuwiki/doku.php/eboot#установка_загрузчика_eboot_или_u-boot_из_eboot)
Название: Re: Переход с wince(eboot) на u-boot
Отправлено: speculzzz от 14 Мая, 2009, 11:46:44
Добрый день.

У меня имеется плата Тион-Про, на которой изначально был установлен WinCE. Но так как для работы мне необходим Линукс, то установил на плату RedBoot - встал без проблем. А сейчас решил испробовать загрузчик U-Boot для загрузки Линукса и столкнулся с проблемой - при старте нет никаких сообщений в СОМ1. В документе "Руководство по программному освоению Тиона, Тиона-Про, Тиона-Про v2" (programming-v1.pdf) сказано:
Цитировать
Следует учитывать, что U-Boot не всегда может стартовать при включении питания или сбросе. Это связано с тем, что процессор производит опрос на наличие загрузчиков сначала в последовательной памяти, а затем — в параллельной. И, если в оследовательную Flash до этого устанавливался загрузчик (например, для загрузки Windows®), будет стартовать именно он. Поэтому, если при правильном выполнении всех указанных действий не наблюдается старт U-Boot, следует стереть или перезаписать последовательную Flash так, чтобы в первых байтах этой Flash не присутствовала сигнатура загрузчика.

Что собственно у меня и произошло. А как именно "стереть или перезаписать последовательную Flash" не указано   :(.

Пробовал создать файл null_spi.bin размером 256к, который "полностью заполнен" байтами 0xFF, и залить его в SPI:
    download.exe -s 2 -b 9600 null_spi.bin

Но это не помогло.
В документе, который Вы рекомендовали использовать выше, приведен только способ перехода c eboot на u-boot, а он в моем случае уже не подходит.

Могли бы подсказать как же завести мне U-Boot на Тион-Про?
Заранее благодарен за ответ.
Название: Re: Переход с wince(eboot) на u-boot
Отправлено: asv от 14 Мая, 2009, 12:19:23
> А как именно "стереть или перезаписать последовательную Flash" не указано   Грустный.
>
>Пробовал создать файл null_spi.bin размером 256к, который "полностью заполнен" байтами 0xFF, и залить его в SPI:
>    download.exe -s 2 -b 9600 null_spi.bin

Верно, но достаточно было бы и меньшего размера, чтобы удалить сигнатуру нужную EP93xx.

Если вы удалили эту сигнатуру, то процессор начинает загружаться из параллельной Flash.
Для записи U-Boot в парал. Flash следуйте инструкциям
http://www.zao-zeo.ru/dokuwiki/doku.php/linux-faq#как_записать_загрузчик_во_flash

Если ничего не будет на COM1, то напишите последовательность ваших действий подробнее.

В JTAG у вас нет никакой необходимости.
Название: Re: Переход с wince(eboot) на u-boot
Отправлено: speculzzz от 14 Мая, 2009, 13:29:38
> А как именно "стереть или перезаписать последовательную Flash" не указано   Грустный.
>
>Пробовал создать файл null_spi.bin размером 256к, который "полностью заполнен" байтами 0xFF, и залить его в SPI:
>    download.exe -s 2 -b 9600 null_spi.bin

Верно, но достаточно было бы и меньшего размера, чтобы удалить сигнатуру нужную EP93xx.

Если вы удалили эту сигнатуру, то процессор начинает загружаться из параллельной Flash.
Для записи U-Boot в парал. Flash следуйте инструкциям
http://www.zao-zeo.ru/dokuwiki/doku.php/linux-faq#как_записать_загрузчик_во_flash

Если ничего не будет на COM1, то напишите последовательность ваших действий подробнее.

В JTAG у вас нет никакой необходимости.

Если я Вас правильно понял, то мне надо вместо  download.exe uboot.bin использовать команду download.exe -s 2 -b 9600 uboot.bin?

А как можно восстановить сигнатуру, необходимую для ЕР93хх, чтобы загрузка начиналась с флеша, а не с ЕEПРОМа?

В моем случае получается, что я и RedBoot смогу поместить в EEPROM, и тем самым "сэкономить место" на флеше :)
Название: Re: Переход с wince(eboot) на u-boot
Отправлено: speculzzz от 14 Мая, 2009, 13:59:58
Вариант с download.exe -s 2 -b 9600 ubot.bin не помог...
Делаю следующее (тион-про выключен):
1. Снял перемычку BOOT0
2. Выполнил команду
D:\WORK\Tion\utils>download.exe -s 2 -b 9600 u-boot-1.3.3_svn349_tion-pro.binи включил питание на плату.
Результат
Successfully programmed 'u-boot-1.3.3_svn349_tion-pro.bin'.3. Выключил питание, надел перемычку BOOT0.
4. Включил питание... на СОМ1 - тишина.

Ладно... повтовторил описаную последовательность, только поменял пункт 2
D:\WORK\Tion\utils>download.exe u-boot-1.3.3_svn349_tion-pro.bin
Flash Manufacture ID:001f, Device ID:01c8
Successfully programmed 'u-boot-1.3.3_svn349_tion-pro.bin'.
Результат аналогичен - на СОМ1 тишина.

Пробую установить RedBoot:
D:\WORK\Tion\utils>download.exe redboot_322D.bin
Flash Manufacture ID:001f, Device ID:01c8
Successfully programmed 'redboot_322D.bin'.
В результате на СОМ1 имеем:
+**Warning** FLASH configuration checksum error or invalid key
Use 'fconfig -i' to [re]initialize database
EP93xx - no EEPROM, static ESA, or RedBoot config option.
No network interfaces found

RedBoot(tm) bootstrap and debug environment [ROMRAM]
Non-certified release, version UNKNOWN - built 16:31:15, May 28 2007

Platform: Cirrus Logic EDB9312 Board (ARM920T) Rev A
Copyright (C) 2000, 2001, 2002, 2003, 2004 Red Hat, Inc.
Copyright (C) 2003, 2004, 2005, 2006 eCosCentric Limited

RAM: 0x00000000-0x04000000, [0x00042e80-0x03fdd000] available
FLASH: 0x60000000 - 0x60800000, 64 blocks of 0x00020000 bytes each.
RedBoot>

Образ U-Boot брал с вашего сайта http://www.zao-zeo.ru/media/files/u-boot/u-boot-1.3.3_svn349_tion-ep93xx-series_bin.tar.gz (http://www.zao-zeo.ru/media/files/u-boot/u-boot-1.3.3_svn349_tion-ep93xx-series_bin.tar.gz). RedBoot - с диска, который с платой шел.
У Вас в документации указывается, что u-boot нельзя установить на флеш AT49BV322А, но в моем случае используется флеш AT49BV322D.
Или все же на Тион-Про нельзя установить u-boot?
Название: Re: Переход с wince(eboot) на u-boot
Отправлено: asv от 14 Мая, 2009, 17:41:34
> Если я Вас правильно понял, то мне надо вместо  download.exe uboot.bin использовать команду download.exe -s 2 -b 9600 uboot.bin?

Нет, U-Boot записывается в парал. Flash командой 'download uboot.bin'

> А как можно восстановить сигнатуру, необходимую для ЕР93хх, чтобы загрузка начиналась с флеша, а не с ЕEПРОМа?

Вам нужно чтобы в EPROM небыло сигнатуры. Если ее там нет, то выполняется попытка загрузки из парал. Flash.

> В моем случае получается, что я и RedBoot смогу поместить в EEPROM, и тем самым "сэкономить место" на флеше

Я не уверен, что при таком размещении RedBoot будет работать.
Название: Re: Переход с wince(eboot) на u-boot
Отправлено: asv от 14 Мая, 2009, 17:47:55
>Ладно... повтовторил описаную последовательность, только поменял пункт 2

Наконец-то

>Код:

> D:\WORK\Tion\utils>download.exe u-boot-1.3.3_svn349_tion-pro.bin
> Flash Manufacture ID:001f, Device ID:01c8
> Successfully programmed 'u-boot-1.3.3_svn349_tion-pro.bin'.

> Результат аналогичен - на СОМ1 тишина.

Скорость порта 57600 без управления потоком?

> У Вас в документации указывается, что u-boot нельзя установить на флеш AT49BV322А, но в моем случае используется флеш AT49BV322D.

На AT49BV322А не могу посмотреть, на AT49BV322D -- работает.

> Или все же на Тион-Про нельзя установить u-boot?

Можно, работает.
Название: Re: Переход с wince(eboot) на u-boot
Отправлено: speculzzz от 15 Мая, 2009, 09:31:01
Цитировать
> Если я Вас правильно понял, то мне надо вместо  download.exe uboot.bin использовать команду download.exe -s 2 -b 9600 uboot.bin?

Нет, U-Boot записывается в парал. Flash командой 'download uboot.bin'

> А как можно восстановить сигнатуру, необходимую для ЕР93хх, чтобы загрузка начиналась с флеша, а не с ЕEПРОМа?

Вам нужно чтобы в EPROM небыло сигнатуры. Если ее там нет, то выполняется попытка загрузки из парал. Flash.

Что-то я запутался :)... В техн. документации на Тион-Про написано "есть флеш на 8 Мб и параллельный флеш на 256 кб". В хелпе утилиты download указано, что она работает с NOR-флешом и SPI EEPROM. Как я понимаю SPI - это интерфейс доступа, EEPROM - ПЗУшка. Комбинация SPI EEPROM - это и есть параллельный флеш на 256кб или всеже "это 2 разных девайса"?
Так же в хелпе указано
Цитировать
  -s <device>   Program the specified image into storage device, the EEPROM
                or the NOR FLASH. (default is "1").  Valid
                values are 1 (NOR FLASH) and 2 (EEPROM).
Таким образом команда 'download uboot.bin' запишет образ в NOR-флеш а не в параллельный флеш.

На счет сигнатуры в ЕЕПРОМ... Редбут устанавливаю командой 'download redboot.bin', т.е. в nor-флеш, и он загружается ведь  :-\. Т.е. никаких сигнатур в ЕЕПРОМе нет. При этом еепром до этого в 0xFF 256кб записал... Каким образом сигнатуру из ЕЕПРОМа убрать (на всякий случай)?

Цитировать
>Код:

> D:\WORK\Tion\utils>download.exe u-boot-1.3.3_svn349_tion-pro.bin
> Flash Manufacture ID:001f, Device ID:01c8
> Successfully programmed 'u-boot-1.3.3_svn349_tion-pro.bin'.

> Результат аналогичен - на СОМ1 тишина.

Скорость порта 57600 без управления потоком?

57600 8N1 без управления потоком... Аналогичные настройки и у Редбута - и с ним все ок. Если бы даже я "не угадал со скоростью" и данные в СОМ1 выдавались - то я бы их все равно увидел... мусор сыпался бы в терминале. Но у меня вообще ничего нет. Может что-то с самим образом убута не то?  МОжет настроечные джампера на плате нужно другим образом замкнуть (сейчас замкнуты BOOT0, BOOT1 и ASD0 [ближний к BOOT1]) или я уже и не знаю в какой бубен стучать чтобы завелося :).
Название: Re: Переход с wince(eboot) на u-boot
Отправлено: asv от 15 Мая, 2009, 12:07:06
> Что-то я запутался Улыбающийся... В техн. документации на Тион-Про написано "есть флеш на 8 Мб и параллельный флеш на 256 кб".

Каюсь, документацию не читал.

8 MB -- NOR, параллельная.
256 kB -- SPI (Serial Peripheral Interface), EPROM, последовательная.

> Т.е. никаких сигнатур в ЕЕПРОМе нет. При этом еепром до этого в 0xFF 256кб записал... Каким образом сигнатуру из ЕЕПРОМа убрать (на всякий случай)?

Вы ее уже убрали, если записали туда единицы.
Если у вас запускается RedBoot, то и U-Boot должен работать.
Плата зеленым светодиодом не мигает?

> мусор сыпался бы в терминале.

Бывает и нет, зависит от терминала и сочетания скоростей.
Название: Re: Переход с wince(eboot) на u-boot
Отправлено: speculzzz от 15 Мая, 2009, 13:33:22
> Что-то я запутался Улыбающийся... В техн. документации на Тион-Про написано "есть флеш на 8 Мб и параллельный флеш на 256 кб".

Каюсь, документацию не читал.

8 MB -- NOR, параллельная.
256 kB -- SPI (Serial Peripheral Interface), EPROM, последовательная.

> Т.е. никаких сигнатур в ЕЕПРОМе нет. При этом еепром до этого в 0xFF 256кб записал... Каким образом сигнатуру из ЕЕПРОМа убрать (на всякий случай)?

Вы ее уже убрали, если записали туда единицы.
Если у вас запускается RedBoot, то и U-Boot должен работать.
Плата зеленым светодиодом не мигает?

> мусор сыпался бы в терминале.

Бывает и нет, зависит от терминала и сочетания скоростей.

Сам тоже ошибся :)...
Цитировать
8 Мб ПЗУ (Flash).Последовательное ПЗУ – 2МБит.
сорри.
Нет... лампочка зеленным не моргает. Такое я наблюдал, когда пробывал залить образ uboot при помощи FlashUtl.bat. ПРи этом при потытке очистить флеш командой 'е' возвращался код ошибки 69, а не 0 - как в документации указано. ЧТо значит эта ошибка в иннете узнать не удалось. А может uboot тупо в СОМ-порт ничего не выдает... а только на TFT все валит? (вериться в такое с трудом)
Название: Re: Переход с wince(eboot) на u-boot
Отправлено: asv от 15 Мая, 2009, 15:01:25
> Нет... лампочка зеленным не моргает. Такое я наблюдал, когда пробывал залить образ uboot при помощи FlashUtl.bat.

Значит процессор нашел что ему загрузить, и если вы очистили EPROM, то нашел он в парал. Flash.
Не знаю, в чем у вас дело. Перепроверил взятый с сайта U-Boot на Тион-Про с AT49BV322D, нормально запускается.

> А может uboot тупо в СОМ-порт ничего не выдает... а только на TFT все валит? (вериться в такое с трудом)

Было бы не плохо, только мы такого еще не делали.
Название: Re: Переход с wince(eboot) на u-boot
Отправлено: speculzzz от 15 Мая, 2009, 16:17:20

Перепроверил взятый с сайта U-Boot на Тион-Про с AT49BV322D, нормально запускается.


Файл: u-boot-1.3.3_svn349_tion-pro.bin (109380 байт)
MD5:  19e0cf39e695b043844e79034f68ab73
?

У меня 2 платы Тион-Про... на обоих uboot в СОМ1 ничего не валит... хоят зеленая лампочка горит не моргая... может кабель его не устраивает - а redboot на эт плевать :) ?
Название: Re: Переход с wince(eboot) на u-boot
Отправлено: asv от 15 Мая, 2009, 16:25:47
Как его кабель может не устраивать, там всего три провода.

Да, u-boot-1.3.3_svn349_tion-pro.bin
контр. сумму см. в файле md5.sum в архиве.

Попробуйте программой download стереть 512 kB из _параллельной_ Flash
(место для U-Boot с его переменными) а потом запишите туда U-Boot.
Название: Re: Переход с wince(eboot) на u-boot
Отправлено: speculzzz от 15 Мая, 2009, 16:33:10

Попробуйте программой download стереть 512 kB из _параллельной_ Flash

Что-то опции такой нету у утилиты... фаликом с 0xff чтоль воспользоваться?

посмотрел md5:
из архива             - 75ad271afd8906fd228c93515e98347e  ./u-boot-1.3.3_svn349_tion-pro.bin
в тотале посчитал - 19e0cf39e695b043844e79034f68ab73 *u-boot-1.3.3_svn349_tion-pro.bin

странно....
Название: Re: Переход с wince(eboot) на u-boot
Отправлено: speculzzz от 15 Мая, 2009, 16:41:08
Так и есть... Far, гнида, при копировании из архива файл сделал больше :)...
Теперь все вроде запустилось... СЕнкс!
Название: Re: Переход с wince(eboot) на u-boot
Отправлено: asv от 15 Мая, 2009, 17:25:33
> фаликом с 0xff чтоль воспользоваться?
Да

> посмотрел md5:
> из архива             - 75ad271afd8906fd228c93515e98347e  ./u-boot-1.3.3_svn349_tion-pro.bin
> в тотале посчитал - 19e0cf39e695b043844e79034f68ab73 *u-boot-1.3.3_svn349_tion-pro

http://downloads.activestate.com/contrib/md5sum/Windows/md5sum.exe

md5sum.exe -c md5.sum
./u-boot-1.3.3_svn349_tion-pro.bin: OK
./u-boot-1.3.3_svn349_tion.bin: OK
./u-boot-1.3.3_svn349_tion-pro2.bin: OK
Название: А как бы не связываясь с JTAG переехать с eboot на U-boot на 270м
Отправлено: Dimka от 16 Января, 2010, 16:09:57
По недосмотру досталась нам плата с WinCE. Сами виноваты. Но тем не менее сейчас нужен Линукс.
По инструкции на http://www.zao-zeo.ru/dokuwiki/doku.php/eboot можно зашить только другой eboot, потому как .bin формат который ему требуется ни разу не "сырой", а хитрый с секциями (как описано здесь: http://msdn.microsoft.com/en-us/library/ms924510.aspx). Образы U-boot что выложенные на сайте, что компилируемые вручную очевидно "сырые". Так что главный вопрос это есть ли у Вас U-boot в таком формате. Очень не хочется возиться с JTAG.
Название: Re: Переход с wince(eboot) на u-boot
Отправлено: asv от 16 Января, 2010, 17:13:01
> Так что главный вопрос это есть ли у Вас U-boot в таком формате.

Нет, но
http://srecord.sourceforge.net/
умеет msbin

Я не пробовал.
Название: Srecord
Отправлено: Dimka от 16 Января, 2010, 19:12:28
Действительно, последняя версия умеет.
Конвертировать очевидно лучше из srec-файла u-boot-1.3.3_svn381_tion-pro270.srec. Но srec_info говорит что в нём Data 0xA3F00000-0xA3F1C70F и Execution start address: 0xA3F00000.
Eboot.bin имеет Image start 0xBCA00000 и LaunchAddr 0xBCA01000.
Карту памяти (http://www.zao-zeo.ru/dokuwiki/doku.php/tion270_memory_addr) посмотрел. Какие тогда надо прописать адреса в .bin-файл чтобы правильно прошить U-boot?
Название: Re: Переход с wince(eboot) на u-boot
Отправлено: asv от 18 Января, 2010, 15:14:22
Я не знаю почему "Eboot.bin имеет Image start 0xBCA00000", это уже не RAM

Если Danila согласиться попробовать, то попробуем.

Тем не менее, было бы проще с JTAG и, возможно, что этим всё и закончится.
Название: Re: Переход с wince(eboot) на u-boot
Отправлено: Dimka от 18 Января, 2010, 15:29:21
С JTAG проще тем у кого есть программатор, переходник и настроенный софт. У нас есть программатор, а всё остальное требует времени, которого, к сожалению, катастрофически не хватает. Мне кажется было бы лучше единожды решить вопрос программно и внести метод в документацию на сайте.
P.S. с целью экономии чужого времени могу отдать в общую копилку кросс-компилятор x86_64-arm (EABI) и КФС с установленным и работающим Debian 5.0 armel (минимальная установка). Умеет ставить пакеты и обновляться через apt.
Название: Re: Переход с wince(eboot) на u-boot
Отправлено: asv от 18 Января, 2010, 22:03:19
> программатор

Какой?
Название: Re: Переход с wince(eboot) на u-boot
Отправлено: Dimka от 18 Января, 2010, 22:10:03
IAR J-trace валяется с давних времён. Коллега им AT91 в незапамятные времена прошивал. Что им можно прошиться -- нет сомнений. Но надо ставить софт, разбираться и паять переходник при полном отсутствии 2мм разъёмов и шлейфов. Если программно не удастся, то придётся. А пока хотелось бы верить в то что это необязательно.
Название: Re: Переход с wince(eboot) на u-boot
Отправлено: asv от 20 Января, 2010, 20:56:05
Попробовали, но без толку. Eboot использует виртуальные адреса, U-Boot -- нет: Eboot файл загружает и получаем ошибку о неверном вирт. адресе.
Название: Re: Переход с wince(eboot) на u-boot
Отправлено: Dimka от 21 Января, 2010, 14:57:37
Не сдаётся творение Билла Гейтса. Решил всё же заджтаггиться.
Segger J-trace поддерживает что угодно кроме семейства XScale. Т.е. J-link commander находит процессор, читает правильный ID, но потом сердится что Core unsupported.
Взял во временное пользование Olimex JTAG-ARM. Поставил openocd под линукс. Не работает. Не находит процессор вообще. Ввиду того что с первым программатором всё вобщем-то нормально, то думаю что переходник (по схеме с вашего сайта) правильный. Единственное что пока приходит в голову это сделать провода переходника как можно более короткими. Если и это не поможет, то наверное единственным вариантом будет приехать к вам и перешиться.
Название: Re: Переход с wince(eboot) на u-boot
Отправлено: asv от 21 Января, 2010, 16:50:54
OpenOCD собирали? Мы пользуемся Olimex JTAG-ARM и OpenOCD.
Название: Re: Переход с wince(eboot) на u-boot
Отправлено: Dimka от 21 Января, 2010, 23:29:51
Собирали. Вобщем сейчас с этим arm-jtag удалось понять следуещее: на всех линиях JTAG (кроме nTRST) при попытке соединиться сигналы есть, а вот на TDO -- тихо. Не хочет процессор откликаться...
Кстати судя по внутренностям arm-jtag в файле надо указывать parport_cable arm-jtag, а не parport_cable wiggler, потому как ntrst сидит у него на D0, а не D5.
Буду думать что ещё можно сделать.
Название: Re: Переход с wince(eboot) на u-boot
Отправлено: asv от 21 Января, 2010, 23:33:34
> файле надо указывать parport_cable arm-jtag, а не parport_cable wiggler

Как работало, так и написали.
Название: Re: Переход с wince(eboot) на u-boot
Отправлено: Dimka от 22 Января, 2010, 00:07:03
У меня к сожалению никак не работает.
Реален ли вариант приехать к вам и перешиться?
Название: Re: Переход с wince(eboot) на u-boot
Отправлено: asv от 22 Января, 2010, 09:31:55
> Реален ли вариант приехать к вам и перешиться?

Предупредите заранее и приезжайте.
Название: Re: Переход с wince(eboot) на u-boot
Отправлено: Dimka от 22 Января, 2010, 16:34:05
Мне было бы удобно завтра. Если завтра это невозможно, то скажем в понедельник утром.
Ехать я так понимаю надо к м. Отрадное.
Название: Re: Переход с wince(eboot) на u-boot
Отправлено: asv от 22 Января, 2010, 16:59:19
По "счастливой" случайности завтра тоже можно, часов в 12.

> Ехать я так понимаю надо к м. Отрадное
http://www.zao-zeo.ru/about/contacts.html
Название: Re: Переход с wince(eboot) на u-boot
Отправлено: Dimka от 22 Января, 2010, 17:04:46
Хорошо.
Я тогда ближе к 12ти позвоню по телефону в "Контактах" и уточню чего и как.
Название: Re: Переход с wince(eboot) на u-boot
Отправлено: vitvrn от 06 Августа, 2010, 11:53:42
Dimka
у Вас, я так понял, для Тион-Про 270 КФС с Debian. А для Тион-Про2 не собирали?