[Berlin-wireless] jtag zum flash beschreiben
Sven-Ola Tuecke
mail2news
Mo Aug 29 10:48:12 CEST 2005
Hallo Ulf,
KnowHow zum Thema JTAG ist leider nicht allzuweit verbreitet. Nach meinen
Erfahrungen mit den Linksys-Geraeten kann ich folgendes beitragen:
- Offenbar ist das Kabel soweit korrekt. Sonst bekommt man gar keine Antwort
- An sich muss man der CPU/dem Chipset mit einem Befehl mitteilen, dass es
die Klappe halten soll. Nur dann bekommt man ueberhaut was sinnvolles und
verifizierbares aus dem Flash gelesen bzw. hineingeschrieben. Es gibt
Geraetetypen (z.B. Linksys WRT54G ver1.0 + ver1.1) die reagieren nicht auf
den Reset/Raushalten-Befehl. Ich erzwinge in solchen Faellen einen Absturz
mit einem Kurzschluss irgendwo auf D0-D7 (einfach was metalliges uber die
Flash-Chip-Beine halten, Geraet einschalten, gucken ob irgendwelche LEDs den
CPU-start angkuendigt. Wenn tot ==> JTAG-Flash-Ready)
- Die Auto-Erkennung des Flashtyps klappt bei dem
"Hairydaymed"-Linksys-JTAG-Flashprogramm oft nicht. Gottseidank ist das als
C-File schnell hackbar und die Aufschrift auf dem Flash-Chip ist in jedem
Fall die bessere Geraete-Kennung. Dein Tool hat ja ganz richtig
4-MB-AMD-Flash (xxx320) entdeckt:
xxx-160==2 Mbyte Chips
xxx-320==4 Mbyte Chips (scheint also ok zu sein)
- Bevor du den Inhalt des Flash-Chips nicht auslesen kannst, wuerde ich die
Finger vom Brennen/Erasen lassen. Auslesen ist unkomplizierter und erst wenn
es klappt kann man sich einigermassen sicher sein, dass das Tool ueberhaupt
mit dem Chip umgehen kann.
- Generelle JTAG-Spielzeuge sind was fuer Ingenieurbuden mit
Embedded-Controller-Entwicklungsabeitung. Wird wohl auch in der Fertigung
eingesetzt, dieser Boundary-Scan verifiziert die Geraete-Funktion in der QS.
Als echte Investitionsgueter sind solche Programme recht teuer und AFAIK
nicht im P2P Foren zu finden. Ich wuerde also erstmal weiter probieren, ob
diese Opensource-Soft es nicht auch tut.
Grusz, Sven-Ola
"ulf kypke" <u.kypke at gmail.com> schrieb im Newsbeitrag
news:be663514050827091270a02a86 at mail.gmail.com...
hallo liste,
ich benötige technische hilfe zum thema jtag.
ich habe ein funktionierendes setup:
parallelport via adapter zu jtag dann zum dwl 7000 accesspoint
ich bekomme auch (hurra) infos via jtag:
dex:/home/ulf# jtag
JTAG Tools 0.5.1
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: 7
Chain length: 1
Device Id: 00001001001001110111000000010011
Manufacturer: Intel
Part: IXP425
Stepping: A0
Filename: /usr/share/jtag/intel/ixp425/ixp425
jtag> detectflash 0
detectflash: syntax error!
jtag> detectflash
buswidth: 16
CFI query: 000000aa, 98
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: 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
nun ist aber das problem das auf dem board ein amd flashchip am29lv320
ist, unterstützt wird am29lv160 und am29lv640, da schau her, eine
gewisse logik tut sich auf, 160..320..640
nun da ich nicht der super coder bin komme ich nicht wirklich weiter.
eine alternative wäre das ganze mit einem windows basiertem jtag
tool/adapter zu probieren, leider kosten diese tool weit über 1000
euro, bzw. ich habe keines gefunden was free ist, und an einem wiggler
adapter funktionert.
vielleicht gibt es ja einen hier in der liste, der auf arbeit, oder
sonst wie ein solches spielzeug hat, bzw mir einen tip geben kann,
gruss ulf
ps. das ganze soll einem dwl7000 den redboot loader ins flash
schreiben. vorger war vxworks drin, das aber gibt es nach div.
flashversuchen nicht mehr :)
_______________________________________________
Berlin mailing list
Berlin at olsrexperiment.de
http://www.olsrexperiment.de/cgi-bin/mailman/listinfo/berlin
_______________________________________________
Berlin mailing list
Berlin at olsrexperiment.de
http://www.olsrexperiment.de/cgi-bin/mailman/listinfo/berlin
Mehr Informationen über die Mailingliste Berlin