|
Flash IPAQu bez použití kolébky (kabelu) přes JTAG. Vhodné pro flash "absolutních mrtvol"! |
|
|
Updatovali jste OS ve vašem IPAQu? Nepovedlo se a Váš |
| kapesní asistent nenaběhne ani do bootloaderu? | |
| Pokus o nápravu klasickým flashem nefunguje? Tak jste | |
| na správném místě. Ukážeme si, jak upravit a naflashovat | |
| Váš stroj bez potřeby sériového či USB kabelu. | |
| Nejdříve si povíme něco o komunikačním standardu | |
| IEEE 1149.1 (JTAG). | |
| Standard IEEE 1149.1, známý jako JTAG, je jednoduchý | |
| systém pro komunikaci se zařízením a jeho vzdálené | |
| testování. Často je součástí vývojových desek a obvodů | |
| FPGA. Tato testovací architektura byla vyvinuta | |
| Joint Test Action Group a později byla převzata organizací | |
| IEEE jako IEEE Standard Test Access Port and Boundary | |
| Scan a označena jako IEEE 1149.1 též známá jako JTAG. | |
| Tento standard představuje efektivní metodu testování užívající metody skenování rozhranní - boundary - scan | |
| technique. Nejčastěji se využívá v oblasti FPGA (Field Programmable Gate Array), kde umožňuje dálkové | |
| nahrávání dat, testování a řízení zařízení. JTAG komunikace je dnes mimo obvodů FPGA i součástí vývojových | |
| desek a kitů u kterých je nutné zajistit pohodlné a podrobné testování. JTAG například využívají i vývojové desky | |
| firmy Texas Instruments pro signálové procesory (DSP) pro komunikaci s PC pro návrh a testování algoritmů | |
| číslicového zpracování signálů. | |
| Teď již zhruba víme, co JTAG znamená, a ukážeme si jak "zpřístupnit" tohle rozhraní v našem IPAQu. | |
| Začneme připravením potřebných nástrojů, drátků a rozebráním stroje. Vyjmeme základní desku a najdeme si | |
| tři body (test points), které se nachází dole u CPU krytého kovovým štítkem (vedle Flash čipů E28F640J3A120). | |
![]() |
|
| Na tyto body připájíme vývody TP3 (TDO), TP2 (TDI) a TP5 (TRST), a dole třeba na tom větším štítku připájíme zem. | |
![]() |
|
| Desku otočíme a najdeme obdelníkový 3.686Mhz krystal, u něhož připájíme vývody na body TP1 (TCK) a TP4 (TMS). | |
![]() ![]() ![]() |
|
| Najdeme si kovový válcový krystal umístěný u mikrokontroléru Atmel AT90LS8535 a připájíme napájení VCC. | |
| Pokocháme se výtvorem (hlavně si poznačíme který vývod je který), a můžem zkompletovat PDA. | |
|
|
|
| Nyní si z 5 kusů 100Ohm odporů, protikusu k LPT (DB25M - samec) nějakého konektoru (protikus bude na PDA) | |
| vytvoříme LPT - JTAG redukci dle následujícího schématu. | |
|
|
|
| Jako software pro flash jsem použil jtag - 0.2.1 který jsem ovšem musel nejdříve zkompilovat a nahradit v jeho | |
| zdrojích soubory flash.c a sa1110.c | |
| Už zbývá jen ukázka flashe úplně vymazaného IPAQu, a přání mnoha úspěchů při oživování. | |
| jtag jtag 0.2.1 Copyright (C) 2002, 2003 ETC s.r.o. jtag 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. Warning: jtag may damage your hardware! Type "quit" for exit! Type "help" for help. jtag> cable parallel 0x378 DLC5 Initializing Xilinx DLC5 JTAG Parallel Cable III on parallel port at 0x378 jtag> detect Device Id: 10001001001001100001000000010011 Manufacturer: Intel Part: SA1110 Stepping: B4 Filename: /usr/local/share/jtag/intel/sa1110/sa1110 jtag> detectflash Note: Supported configuration is 2 x 16 bit only ROM_SEL: 32 bits 2 x 16 bit CFI devices detected (QRY ok)! CFI Query Identification String: Primary Vendor Command Set and Control Interface ID Code: 0x0001 (Intel/Sharp Extended Command Set) Address of Primary Algorithm extended Query table: P = 0x???? Alternate Vendor Command Set and Control Interface ID Code: 0x0000 (null) Address of Alternate Algorithm extended Query table: A = 0x???? CFI Query System Interface Information: Vcc Logic Supply Minimum Write/Erase voltage: 2700 mV Vcc Logic Supply Maximum Write/Erase voltage: 3600 mV Vpp [Programming] Logic Supply Minimum Write/Erase voltage: 0 mV Vpp [Programming] Logic Supply Maximum Write/Erase voltage: 0 mV Typical timeout per single byte/word write: 128 us Typical timeout for minimum-size buffer write: 128 us Typical timeout per individual block erase: 1024 ms Typical timeout for full chip erase: 0 ms Maximum timeout for byte/word write: 2048 us Maximum timeout for buffer write: 2048 us Maximum timeout per individual block erase: 16384 ms Maximum timeout for chip erase: 0 ms Device Geometry Definition: Device Size: 8388608 B Flash Device Interface description: 0x0002 (x8/x16) Maximum number of bytes in multi-byte write: 32 Number of Erase Block Regions within device: 1 Erase Block Region Information: Region 0: Erase Block Size: 131072 Number of Erase Blocks: 64 Manufacturer: Intel Chip: 28F640J3A jtag> print No. Manufacturer Part Stepping Instruction Register ---------------------------------------------------------------------------------------- 0 Intel SA1110 B4 EXTEST BSR jtag> flashmem 0 /home/bootldr-2.18.54.bin 0x00000000 Note: Supported configuration is 2 x 16 bit only ROM_SEL: 32 bits 2 x 16 bit CFI devices detected (QRY ok)! program: block 0 unlocked erasing block 0: 0 addr: 0x00033500 verify: addr: 0x00033500 Done. jtag> quit $ |
|
|
autor: albedo |
|