WarDriving , Wi-Fi HowTo Wi-Fi сети Краснодара Wi-Fi сети Краснодара
обновлено: 20.08.10 Форумы : Wi-Fi | Вардрайвинг | GPS


Восстановление работоспособности точки доступа D-Link DWL-2100AP с помощью JTAG


Cпасибо автору Sanek91, описавщему процедуру. Вопросы задавать в соответствующих темах раздела форума.

Хочу поделиться своими знаниями в этом деле. Есть люди кому это пригодиться!

Дело было так! Не так давно в руки мне попалась совсем мёртвая точка, у которой бесконечно долго моргал power. Какие либо попытки зайти в точку через COM порт не принесли каких либо положительных результатов. И тут я обратился на форум и мне посоветовали ознакомиться прошиванием через jtag.

Первое что я сделал-это собрал схему для подключения точки к LPT разъёму компьютера.

Я собрал второй вариант более простенький и отлично работает. Впаивал резисторы прямо в разъём. Этот вариант капризен к длине кабеля чем меньше тем лучше! И не больше 10 см!! Вторым концом припаиваемся к контактам помеченным J5 (у ревизии А3 и А4)

После того как спаяли принимаемся за дело на компьютере. Jtag работают тока с операционной системой Linux. Если таковой не иметься скачиваем программу cygwin с любого источника в Интернете и устанавливаем в корень диска С. Далее чтобы не мучаться с jtag я собрал архив в котором иметься папка bin и usr.

Скачать Jtag.zip

Разархивируйте и скопируйте в C:\cygwin с заменой. Наша программа готова к использованию.

Подключаем нашу точку к LPT компьютера и включаем питание. ЛУЧШЕ ВСЕГО ЧТОБЫ ТОЧКА И КОМПЬЮТЕР БЫЛИ ПОДКЛЮЧЕННЫ ЧЕРЕЗ UPS. Иначе скачки напряжения в сети приведёт к ошибкам в прошивание.

Так далее у нас всё готово подключили точку к LPT компа, подключили питания к точке, всё питание точки и компьютера через UPS.

И так приступим.

Заходим в программу.

Вводим:

root@server ~

$ usr\local\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

Manufacturer: Atheros

Part: ar2312

Stepping: 1

Filename: /usr/local/share/jtag/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=00f9 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 (n

ull)

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: 16 us

Typical timeout for maximum-size multi-byte program: 0 us

Typical timeout per individual block erase: 1024 ms

Typical timeout for full chip erase: 0 ms

Maximum timeout for byte/word program: 512 us

Maximum timeout for multi-byte program: 0 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: 1

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>eraseflash 0x1fc00000 128

процесс очистит всю флешку

Определимся что будем прошивать

Качаем что вам нужно:

- загрузчик 2100.boot ( 320 килобайт )

- образ флэшки fullflash.rar ( 2.55 мегабайт )

Кидаем в файл в корень программы C:\cygwin

В программе продолжаем писать

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.

если шьём fullflash то аналогично

jtag> flashmem 0x1fc00000 /fullflash.bin

после того как мы залили fullflash без ошибок мы увидим в точке старенькую прошивку.

У меня fullflash шился почти 2 дня. 2100.boot 5 часов у всех по-разному. Кстати просле прошивки смените mac адрес точки на родной свой! Через Acowatelnet-alpha-set mac all 00:00:00:00:00:00 вместо нулей ваш mac потом reboot. Остальное настройка за вами.

Удачи.



  VladMay, Krasnodar. 2010

© Копирование на другие сайты с разрешения автора. При цитировании ссылка на страницу обязательна.