You are on page 1of 6

COMO RECUPERAR OVISLINK 1120 MORTO SEM O BOOTLOADER.

muito comum a perda do bootloader, tanto por caso de atualizao de firmware mal sucedida ou pela simples variao eltrica sendo que o produto final o mesmo para ambos os casos: peso de papel ! O bootloader, para quem no sabe, , a grosso modo dizer, o disquete de boot do sistema sendo ele o encarregado e iniciar as interfaces seriais, memria, lan, etc, preparando o sistema para receber o firmware propriamente dito. Quando o bootloader est ativo (todos os leds vermelhos acendem ao ligar a fonte) mas o firmware est corrompido, ou no est presente, a podemos fazer um cabo serial e enviar novamente o firmware, mas e se o bootloader morrer, o que fazemos ? Uma opo seria comprar um gravador de eprom (para regravar o flash tsop48), uma estao de solda (para retirar e recolocar o flash), alguma prtica em como gravar flash tsop48 e muita pacincia, o que acaba por inviabilizar a empreitada pelo seu alto custo.Uma outra maneira montar, ou comprar, um cabo jtag para fazer esta tarefa sem que seja necessrio remover o flash do lugar. Algum tempo atrs existia uma limitao em usar o jtag porque o programa no suportava a verso EJTAG que o padro do processador RTL8181 (Lexra) mas isso foi contornado com uma verso modificada do openwince-jtag feita pelo Marek Michalkiewicz (http://www.amelek.gda.pl/rtl8181/jtag). Agora no somente possvel mas tambm o custo de montagem do cabo no passa de R$ 10,00 sendo at mais barato que a montagem do cabo serial. Para isso necessrio seguir as instrues de montagem do cabo JTAG passivo feito pelo Lightbulb lembrando que voc vai necessitar de um cabo de impressora paralela, ou um conector DB25 macho, e mais 4 resistores de 100 ohm. Baixe o manual em http://www.ranvik.net/prosjekterprivat/jtag_for_wrt54g_og_wrt54gs/HairyDairyMaid_WRT54G_v22.pdf lembrando que as instrues de montagem so as mesmas do wrt54g e no ser necessrio usar os pinos VCC e TRST. O que interessa para ns so os pinos TDI, TDO, TMS e TCK alm do GND

Os pinos TDO, TDI, TMS e TCK esto diretamente ligados aos pinos do processador RTL8181: 6 TDO 9 TMS 11 TDI 64 CLK Uma vez montado o cabo necessrio identificar no ovislink 1120 a pinagem correta. Abra o ovislink e identifique os seguintes pinos no conector JP1:

JTAG connector (JP1): 1 2 3 4 5 6 7 8 9 +3.3V TRST# TDI TDO TMS GND TCK RESET# GND

Agora necessrio aitvar o modo JTAG no processador RTL8181. Para fazer isso necessrio jumpear (deixar em curto) o pino R17 (parte de trs da placa) que equivalente ao pino 205 do RTL8181. Note que enquanto voc estiver trabalhando no modo JTAG o R17 dever ficar em curto. Para voltar ao modo normal de trabalho, aps ter recuperado o bootloader, este jumper dever ser removido. Se no desejar soldar diretamente o R17 voc poder usar um pedao de papel alumnio para fazer o trabalho e depois remov-lo. Tambm necessrio fazer isso com o R8 para que a linha TDO acesse diretamente sem passar pelo resistor:

Agora que as conexes esto feitas necessrio instalar o software: baixe o arquivo em www.tuxap.com.br/download/jtagprog.tar.gz. Baixe tambm o pacote include em http://www.cipis.net/ovislink/1120AP/JTAG/include-0.4.2.tar.bz2 Para compilar faa: tar jxfv include-0.4.2.tar.bz2 cd cd include-0.4.2/ make install cd .. tar zxfv jtagprog.tar.gz cd jtagprog ./configure make make install

Verifique qual o endereo da sua porta LPT e execute o programa jtag. Antes de ativar o programa conecte o cabo na sua porta paralela e ligue o ovislink: root@Thor:/usr/src/jtagteste# 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. Execute agora o comando para selecionar o cabo. Troque o endereo 0x378 pelo endereo da sua porta LPT: jtag> cable parallel 0x378 DLC5 Initializing Xilinx DLC5 JTAG Parallel Cable III on parallel port at 0x378 Depois rode o comando detect: jtag> detect IR length: 5 Chain length: 1 Device Id: 00010101001010000000000000001101 Manufacturer: Lexra Part: LX5280 Stepping: 1 Filename: /usr/local/share/jtag/lexra/lx5280/lx5280 chain.c(110) Part 0 without active instruction chain.c(133) Part 0 without active instruction Se ao rodar o comando detect no mostrar a tela acima isso significa que o programa no achou as instrues de linha e no est conectado adequadamente ao ovislink. Verifique todas as conexes do cabo e tenha certeza que sua porta LPT est funcionando no endereo apropriado. Agora rode o comando para encontrar o flash MX29LV160: jtag> detectflash 0x3fc00000 ImpCode=00001010110000000000000111100000 EJTAG version: <= 2.0 EJTAG Implementation flags: R4k ASID_8 MIPS32 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: 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: 2097152 B (2048 KiB, 2 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: 4 Erase Block Region Information: Region 0: Erase Block Size: 16384 B (16 KiB) Number of Erase Blocks: 1 Region 1: Erase Block Size: 8192 B (8 KiB) Number of Erase Blocks: 2 Region 2: Erase Block Size: 32768 B (32 KiB) Number of Erase Blocks: 1 Region 3: Erase Block Size: 65536 B (64 KiB) Number of Erase Blocks: 31 Se no mostrar a tela acima desligue o ovislink, ligue novamente, rode o detect e depois o detectflash 0x3fc00000. Neste ponto voc j est apto a gravar no flash. Se no tiver a verso original do bootloader voc pode baixar em www.tuxap.com.br/download/imagens.zip. O arquivo bootloader.bin contm o bootloader original do ovislink 1120 e o arquivo imagem_full.bin contm todo o sistema desde o bootloader ao firmware propriamente dito. Para gravar no flash o bootloader rode o comando: jtag> flashmem 0x3fc00000 /tmp/bootloader.bin Chip: AMD Flash Manufacturer: Macronix Chip: MX29LV160B Protected: 0000 program: flash_unlock_block 0x3FC00000 IGNORE block 0 unlocked flash_erase_block 0x3FC00000 flash_erase_block 0x3FC00000 DONE erasing block 0: 0 flash_unlock_block 0x3FC04000 IGNORE block 1 unlocked flash_erase_block 0x3FC04000 flash_erase_block 0x3FC04000 DONE erasing block 1: 0 addr: 0x3FC04948 (done) verify:

addr: 0x3FC04946 Done. Como o processo de gravao do jtag demorado eu sugiro que grave somente o bootloader e depois via cabo serial transfira o restante do firmware mas se o tempo no for importante basta transferir todo o sistema (imagem_full.bin) que o ovislink ficar totalmente operacional. jtag> flashmem 0x3fc00000 /tmp/imagem_full.bin Depois de gravado retire os jumpers do R17 e R8 e voil ! Abraos e boa sorte. Andr Heringer. Links: http://wireless.org.au/~jhecker/rtljtag/ http://www.cipis.net/ovislink/1120AP/JTAG/ http://sourceforge.net/forum/forum.php?thread_id=1410326&forum_id=338328

You might also like