[From nobody Sat Aug 10 21:41:24 2019 X-Envelope-From: <aweiss@informatik.hu-berlin.de> X-Envelope-To: <linux-l@mlists.in-berlin.de> Received: from rantanplan.local (e178227155.adsl.alicedsl.de [85.178.227.155]) by mail.informatik.hu-berlin.de; Mon, 6 Mar 2006 22:07:08 +0100 (CET) From: Axel =?iso-8859-1?q?Wei=DF?= <aweiss@informatik.hu-berlin.de> Organization: =?iso-8859-1?q?Humboldt-Universit=E4t_zu?= Berlin To: linux-l@mlists.in-berlin.de Subject: Hardware ausspionieren (was: DVD Lese-speed begrenzen) Date: Mon, 6 Mar 2006 22:07:06 +0100 User-Agent: KMail/1.8.2 References: <20060228190019.7b3e0900.eggsperde@gmx.net> <1141638971.4083.9.camel@localhost.localdomain> <200603061211.38645.Dexter.Filmore@gmx.de> In-Reply-To: <200603061211.38645.Dexter.Filmore@gmx.de> MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable Content-Disposition: inline Message-Id: <200603062207.06971.aweiss@informatik.hu-berlin.de> X-Virus-Status: No (mail) Dexter Filmore schrieb: > Da m=FCsste ein findiger Mensch die ans ATA-Interface gesendeten Befehle > abfangen und schauen, was da passiert. > > Was br=E4uchte man da? Ein Programm, das die Befehle loggt. > Eine Befehls=FCbersicht der ATA-Kommandos. > Zeit. > Hirn. Da f=E4llt mir der Trick mit dem Dekodieren mitgeschnittener=20 Hardware-Kommandosequenzen (in diesem Fall war das JTAG) ein. Die=20 zwischen dem Evaluation-Board und dem Windows-Debugger ausgetauschten=20 Bytes lagen hexadezimal in Textform vor (von einem schnell=20 zusammengezimmerten FPGA-Analyzer in Dateien mitgeschrieben). Wie analysiert man das jetzt? Dateigr=F6=DFen: 92,4 - 268,6 kB. Mein erster= =20 Gedanke: awk. Als ich dann versucht habe, den JTAG-Automaten durch=20 awk-Code in den Daten zu finden, kam mir die Idee, das mit lex und yacc=20 (bzw. flex und bison) zu machen. Damit gings dann ganz schnell (=FCber=20 Nacht): =2D 67 loc f=FCr die lexikalische Analyse =2D 470 loc f=FCr den Parser =2D 1052 loc Registerliste (von der API geklaut) =2D 39 loc erweiterte Steuerlogik (Watchdog-Kommandos) Mit awk habe ich dann noch die Parserausgaben sch=F6ngemacht, und man=20 konnte genau nachlesen, was auf der JTAG-Schnittstelle passiert ist. Achja, gebraucht habe ich das f=FCr das von Infineon nicht dokumentierte=20 JTAG-Interface f=FCr den Tricore, das ich an gdb rangestrickt habe. (Bei=20 Interesse erz=E4hle ich auch Details). Gru=DF, Axel ]