IPB
X   Сообщение сайта
(Сообщение закроется через 2 секунды)
> Ваше меню

Здравствуйте, гость
( Вход | Регистрация )

> Заработай на форуме


Зарегистрируйтесь как вебмастер и следуйте инструкции по установке кода. Подробности можно узнать на форуме участников системы.

> Полезные ссылки






 
> D-Link DWL-2100AP, JTAG
УКРОП
сообщение 11.1.2008, 15:26
Сообщение #1


Администратор


Группа: Главные администраторы
Сообщений: 265
Регистрация: 7.1.2008
Из: вне
Пользователь №: 1



Восстановление работоспособности точки доступа D-Link DWL-2100AP когда точка абсолютно не подаёт признаков работоспособности (не светится ниодин светодиод, через COM-порт не видится), так бывает если отформатировать флэш через COM-порт или когда повреждается загрузчик. (мой случай ) Рассмотрено под ревизии A3 и A4.

В случае когда по разным причинам точка не подаёт никаких признаков жизни есть последний шанс восстановить точку - это подключиться через JTAG кабель и сделать необходимое.

Нам понадобится:
1. Компьютер с операционной системой Linux или FreeBSD (в моём случае я использовал Linux ASP11) имеющий LPT-порт для принтера.
2. JTAG-кабель по схеме WIGGLER. Отечественный аналог микросхемы 74HC244 - КР1564АП5
3. Источник бесперебойного питания (UPS) ОБЯЗАТЕЛЬНО! Через него обязательно подключать точку и желалательно компьютер, в противном случае от малейших импульсов в сети посыпятся ошибки при программировании! Процесс прошивки достаточно длительный поэтому лучше перестраховаться.
Прикрепленный файл  wiggler.gif ( 27.24 килобайт ) Кол-во скачиваний: 488

Я использовал упрощённый вариант без микросхемы
Прикрепленный файл  wiggler_mini.gif ( 7.86 килобайт ) Кол-во скачиваний: 444

Основной недостаток упрощённый схемы это критичность к длине кабеля, его длина должна быть менее 10 см! Если у Вас компьютер не АТХ то нужно учитывать и длину шлейфа от LPT разъёма до материнской платы!

Разъём подключаем к LPT-порту компьютера (не забудьте его включить в биосе на стандартное прерывание IRQ7, 0x378), а вторым концом припаиваемся к контактам помеченным J5 (у ревизии А3 и А4)
Прикрепленный файл  2100_j5.gif ( 3.85 килобайт ) Кол-во скачиваний: 397

3. Софт для работой через JTAG. Я использовал готовый пропатченый jtag Прикрепленный файл  jtag_bin.zip ( 887.32 килобайт ) Кол-во скачиваний: 1046

Распаковав папку jtag-bin.zip, заходим в папку, куда распаковали и копируем директорию share в директорию /usr/local/ Запускать JTAG следует обязательно от пользователя root.

И так, точка подуключена к LPT-порту, питание к точке включено, запускаем ./jtag и делаем следующее:
Код
[root@boss jtag_bin]# ./jtag
JTAG Tools 0.6-cvs-20051228
Copyright (C) 2002, 2003 ETC s.r.o.
JTAG Tools is free software, covered by the GNU General Public License, and you are
welcome to change it and/or distribute copies of it under certain conditions.
There is absolutely no warranty for JTAG Tools.

Warning: JTAG Tools may damage your hardware! Type ''quit'' to exit!

Type ''help'' for help.

jtag> cable parallel 0x378 WIGGLER
Initializing Macraigor Wiggler JTAG Cable on parallel port at 0x378
jtag> detect
IR length: 5
Chain length: 1
Device Id: 00000000000000000000000000000001
  Unknown manufacturer!
chain.c(110) Part 0 without active instruction
chain.c(133) Part 0 without active instruction
chain.c(110) Part 0 without active instruction
jtag> include atheros/ar2312/ar2312
jtag> poke 0x58400000 0x000e3ce1
ImpCode=01000000010000000100000000000000
EJTAG version: 2.6
EJTAG Implementation flags: R4k ASID_8 NoDMA MIPS32
jtag> detectflash 0x1fc00000
dev ID=007e man ID=0001
Using CFI flash chip detection, not jedec
Query identification string:
        Primary Algorithm Command Set and Control Interface ID Code: 0x0002
(AMD/Fujitsu Standard Command Set)
        Alternate Algorithm Command Set and Control Interface ID Code: 0x0000 (null)
Query system interface information:
        Vcc Logic Supply Minimum Write/Erase or Write voltage: 2700 mV
        Vcc Logic Supply Maximum Write/Erase or Write voltage: 3600 mV
        Vpp [Programming] Supply Minimum Write/Erase voltage: 0 mV
        Vpp [Programming] Supply Maximum Write/Erase voltage: 0 mV
        Typical timeout per single byte/word program: 128 us
        Typical timeout for maximum-size multi-byte program: 128 us
        Typical timeout per individual block erase: 1024 ms
        Typical timeout for full chip erase: 0 ms
        Maximum timeout for byte/word program: 256 us
        Maximum timeout for multi-byte program: 4096 us
        Maximum timeout per individual block erase: 16384 ms
        Maximum timeout for chip erase: 0 ms
Device geometry definition:
        Device Size: 4194304 B (4096 KiB, 4 MiB)
        Flash Device Interface Code description: 0x0002 (x8/x16)
        Maximum number of bytes in multi-byte program: 32
        Number of Erase Block Regions within device: 2
        Erase Block Region Information:
                Region 0:
                        Erase Block Size: 8192 B (8 KiB)
                        Number of Erase Blocks: 8
                Region 1:
                        Erase Block Size: 65536 B (64 KiB)
                        Number of Erase Blocks: 63

Порт JTAG очень медленный, например для заливки родного загрузчика размером 327 килобайт у меня ушло 9 часов, представьте сколько будет по времени литься образ флэшки в 4 мегобайта, я заново заливал образ по причине того что у меня накрылся раздел ''/fl'' и при подключении через COM-порт была строчка ''tffsDevCreate failed.''. На прошивку образа флэш у меня ушло 2,5-3 суток. У других процесс проходил намного быстрее (181 минута и 44 часа соответственно), причину пока не выяснил.

И так, нам надо определиться что будет прошивать, я делал 2 вещи: прошивал загрузчик и прошивал образ флэшки. Качаем что вам нужно:
- загрузчик Прикрепленный файл  2100.boot ( 320 килобайт ) Кол-во скачиваний: 506
- образ флэшки Прикрепленный файл  fullflash.rar ( 2.55 мегабайт ) Кол-во скачиваний: 3444


Заливка осуществляется командой ''flashmem 0x1fc00000 имя_файла''.
На примере заливки загрузчка это выглядит так:
Код
jtag> flashmem 0x1fc00000 2100.boot
program blocks:
Chip: AMD Flash
        Manufacturer: AMD
        Chip: Unknown (ID 0x007e)
        Protected: 0000
flash_unlock_block 0x1FC00000 IGNORE
block 0 unlocked
flash_erase_block 0x1FC00000
..flash_erase_block 0x1FC00000 DONE
erasing block 0 to program 8192 bytes, status: 0
flash_unlock_block 0x1FC02000 IGNORE
block 1 unlocked
flash_erase_block 0x1FC02000
.....flash_erase_block 0x1FC02000 DONE
erasing block 1 to program 8192 bytes, status: 0
flash_unlock_block 0x1FC04000 IGNORE
block 2 unlocked
flash_erase_block 0x1FC04000
........flash_erase_block 0x1FC04000 DONE
erasing block 2 to program 8192 bytes, status: 0
flash_unlock_block 0x1FC06000 IGNORE
block 3 unlocked
flash_erase_block 0x1FC06000
......flash_erase_block 0x1FC06000 DONE
erasing block 3 to program 8192 bytes, status: 0
flash_unlock_block 0x1FC08000 IGNORE
block 4 unlocked
flash_erase_block 0x1FC08000
...flash_erase_block 0x1FC08000 DONE
erasing block 4 to program 8192 bytes, status: 0
flash_unlock_block 0x1FC0A000 IGNORE
block 5 unlocked
flash_erase_block 0x1FC0A000
....flash_erase_block 0x1FC0A000 DONE
erasing block 5 to program 8192 bytes, status: 0
flash_unlock_block 0x1FC0C000 IGNORE
block 6 unlocked
flash_erase_block 0x1FC0C000
......flash_erase_block 0x1FC0C000 DONE
erasing block 6 to program 8192 bytes, status: 0
flash_unlock_block 0x1FC0E000 IGNORE
block 7 unlocked
flash_erase_block 0x1FC0E000
.......flash_erase_block 0x1FC0E000 DONE
erasing block 7 to program 8192 bytes, status: 0
flash_unlock_block 0x1FC10000 IGNORE
block 8 unlocked
flash_erase_block 0x1FC10000
.......................flash_erase_block 0x1FC10000 DONE
erasing block 8 to program 65536 bytes, status: 0
flash_unlock_block 0x1FC20000 IGNORE
block 9 unlocked
flash_erase_block 0x1FC20000
.........................................flash_erase_block 0x1FC20000 DONE
erasing block 9 to program 65536 bytes, status: 0
flash_unlock_block 0x1FC30000 IGNORE
block 10 unlocked
flash_erase_block 0x1FC30000
.......................................flash_erase_block 0x1FC30000 DONE
erasing block 10 to program 65536 bytes, status: 0
flash_unlock_block 0x1FC40000 IGNORE
block 11 unlocked
flash_erase_block 0x1FC40000
.......................................flash_erase_block 0x1FC40000 DONE
erasing block 11 to program 65536 bytes, status: 0
addr: 0x1FC50000 (done)
verify:
addr: 0x1FC50000
Done.
jtag>

прошивка фуллфлэш содержит 70 блоков
кстати после прошивки всех блоков идёт проверка "verify:", если торопитесь то её делать не обязательно, можно приостановить прошивку нажав Ctrl+C, отключить LPT разъём и сбросить точку по питанию.

И на последок повторюсь, чтобы не потерять драгоценное время подключите компьютер и точку доступа через источник бесперебойного питания, особенно если вы прошиваете фулфлэш. Удачи!
 
 
    Новая Тема
Ответов
archimed
сообщение 2.3.2011, 21:05
Сообщение #2


Новичок


Группа: Пользователи
Сообщений: 3
Регистрация: 2.3.2011
Пользователь №: 2,246



А вру. Вопрос есть. На схеме с микрухой PC_VCC - это что? По схеме, су lpt пины 2 по 9 - это data out.
И как запитывать микросхему (VCC, я так понимаю) в случае 12 пинового разъема?

01 nTRST
02 GND
03 TDI
04 GND
05 TDO
06 GND
07 TMS
08 GND
09 TCK
10 GND
11 nSRST
12 GND

Тут питающих контактов вроде нет


UPD: нашел и это :-D
Цитата
The buffer IC may take a Vcc from the PC LPT also. The DATA7 pin may be used for this purposes, so Wiggler software should provide aclive "1" at this pin.
 

Сообщений в этой теме
УКРОП   D-Link DWL-2100AP   11.1.2008, 15:26
kernell   Сделал WIGGLER MINI по вашей схеме, но он неработа...   3.6.2008, 9:36
УКРОП   Цитата(kernell @ 3.6.2008, 10:36) Сделал ...   3.6.2008, 17:45
EVS_KG   Цитата(УКРОП @ 3.6.2008, 22:45) это не пр...   13.6.2008, 14:39
kernell   Спасибо за ответ, перепутал эмитер c базой   3.6.2008, 21:42
УКРОП   Цитата(kernell @ 3.6.2008, 22:42) Спасибо...   4.6.2008, 8:00
kernell   Один раз заработал, прошить АР неудалось. Хотя с J...   4.6.2008, 9:03
УКРОП   jtag без буферного усилителя очень критичен к длин...   4.6.2008, 10:55
kernell   Цитатаjtag без буферного усилителя очень критичен ...   4.6.2008, 22:16
УКРОП   Цитата(kernell @ 4.6.2008, 23:16) AP у ме...   5.6.2008, 8:55
УКРОП   извиняюсь на ошибку в схеме, торопился - ошибся, с...   13.6.2008, 18:36
EVS_KG   Цитата(УКРОП @ 13.6.2008, 23:36) извиняюс...   14.6.2008, 6:47
УКРОП   скорее всего забыл сделать вот что ЦитатаРаспакова...   15.6.2008, 9:56
ZxAlex   Подскажите пожалуйста, труп или нет: при подключен...   1.7.2008, 6:21
УКРОП   думаю надо паять jtag, возможно загрузчик битый   2.7.2008, 17:25
ZxAlex   Никакие танцы не помогли. JTag выдал ошибку в одно...   8.7.2008, 8:17
УКРОП   а может попробовать флеш перепаять?   9.7.2008, 7:51
ZxAlex   Цитата(УКРОП @ 9.7.2008, 10:51) а может п...   10.7.2008, 8:41
S@N   Хотел уточнить резисторы на 110 Ом пойдут заместо ...   8.8.2008, 23:28
УКРОП   Цитата(S@N @ 9.8.2008, 0:28) Хотел уточни...   9.8.2008, 11:52
S@N   да вроде пошли, год назад убил другу точку dwl-32...   11.8.2008, 15:53
S@N   Вобщем как бы я не парился в винде так и несмог пр...   13.8.2008, 14:28
УКРОП   Цитата(S@N @ 13.8.2008, 15:28) Вобщем как...   13.8.2008, 19:58
S@N   В итоге слил с рабочей 2100AP fullflash и залил в ...   24.8.2008, 22:08
УКРОП   а что вообще даёт openwrt? какие плюсы и минусы? н...   25.8.2008, 7:53
brat002   Этот мануал сгодится для восстановления DWL-7100AP...   23.4.2009, 0:49
YuriyRuss   Извините, если тема ещё актуальна - Есть 7100 и DI...   4.8.2009, 2:26
anonymous   Добрый день, есть точка 2100, мигает power 1 длинн...   28.11.2009, 11:16
elfinfo   Доброго времени суток! У меня приключилась так...   7.12.2009, 10:13
УКРОП   хм.. даже не знаю, у меня такого тьфу тьфу пока не...   14.12.2009, 23:14
demenn   Спаял Jtag точка на детект ответила ,залился фулфл...   31.5.2010, 9:40
belokuriha   RE: D-Link DWL-2100AP   31.5.2010, 16:44
belokuriha   jtag> cable parallel 0x378 WIGGLER Initializing...   3.6.2010, 14:50
УКРОП   команда sysTffsFormat через ком порт форматирует ф...   5.6.2010, 16:31
TipsyBug   Раньше пытался восстановить точку при подключении ...   25.6.2010, 23:42
УКРОП   Цитата(TipsyBug @ 25.6.2010, 23:42) Раньш...   13.8.2010, 9:26
Aleksandr221   УКРОП помогите пожалуйста точку реанимировать чере...   11.8.2010, 21:11
Aleksandr221   Цитата(Aleksandr221 @ 11.8.2010, 21:11) У...   12.8.2010, 12:20
Aleksandr221   block 26 unlocked flash_erase_block 0x1FD30000 ......   14.8.2010, 18:08
УКРОП   Цитата(Aleksandr221 @ 14.8.2010, 18:08) b...   16.8.2010, 14:16
Aleksandr221   Цитата(УКРОП @ 16.8.2010, 14:16) всё норм...   16.8.2010, 19:57
УКРОП   да, для всех подойдёт, как фулфлэш прошьёшь, по пи...   17.8.2010, 14:33
Aleksandr221   Цитата(УКРОП @ 17.8.2010, 14:33) да, для ...   17.8.2010, 14:38
УКРОП   не помню уже, знаю что очень долго   18.8.2010, 17:19
Aleksandr221   Цитата(УКРОП @ 18.8.2010, 17:19) не помню...   19.8.2010, 13:38
УКРОП   RE: D-Link DWL-2100AP   19.8.2010, 22:13
Toxamash   to УКРОП А будет работать JTAG с процом RTL8186 н...   18.11.2010, 9:21
УКРОП   на RTL8186 G700 сделана, может эта тема поможет ht...   18.11.2010, 18:24
uu1dx   Пришла перезагружающаяся 2100ap, в терминале сыпет...   19.11.2010, 17:08
УКРОП   ИМХО поможет только jtag, перешить нужно только за...   22.11.2010, 21:26
doberman   Что делать boot device : S0 processor nu...   23.2.2011, 15:55
УКРОП   [Boot]:с boot device : tffs:0 processor number :...   26.2.2011, 10:14
archimed   Здравствуйте, тема животрепещущая, вольюсь Есть ...   2.3.2011, 17:43
archimed   Спасибо, вопрос снят. По ссылкам с оригинальной те...   2.3.2011, 18:01
qwer   а как дать команду чтоб считать не всю флеш а опре...   5.5.2011, 13:15
G@V@N   Подскажите пожалуйста как запустить софт JTAG на U...   27.8.2011, 17:45
G@V@N   И тут засада при установке первого пакета detect н...   27.8.2011, 18:14
G@V@N   Заливал фуллфлеш и в итоге ошибка верификации, что...   29.8.2011, 21:36
УКРОП   скорее всего проблема с флэшкой, не может записать...   8.9.2011, 17:58
G@V@N   Спасибо, я тоже так начал подозревать, отпишусь чт...   9.9.2011, 22:03
FartoviY   Добрый день. Ситуация аналогична слетела прошивка....   8.12.2011, 22:34


    Ответить    Новая Тема

 

                         
Текстовая версия Сейчас: 27.12.2011, 12:15