Abo
  • Services:
Anzeige
Linux auf einem Digital-Oszilloskop
Linux auf einem Digital-Oszilloskop (Bild: Christer Weinigel)

Register auslesen

Als Nächstes schreibe ich ein kleines Skript für OpenOCD, um den Inhalt der SoC-Register über JTAG auszulesen. Die folgenden OpenOCD-Kommandos zeigen zum Beispiel die Konfiguration des GPIO-Port C an:

> mdw phys 0x56000020
0x56000020: aaaa56aa
> mdw phys 0x56000024
0x56000024: 0000000c
> mdw phys 0x56000028
0x56000028: ffffffff

Allein mit dem Blick auf die Register gibt es schon Einiges zu entdecken. Die Registerdaten zusammen mit dem Datenblatt für den SoC helfen mir, herauszufinden, wie die Hardware konfiguriert ist.

Anzeige

An der Adresse 0x56000020 steht das GPIO-C-Control-Register (GPCCON). Es legt fest, wie die GPIO-Pins konfiguriert sind. Jedem Pin im Register sind zwei Bits zugewiesen. Der Wert 00 heißt, der Pin ist ein Input-Pin, 01 ein Output-Pin und 10 weist dem Pin eine spezielle Funktion zu. Die Pins 5, 6 und 7 sind als Output definiert, die übrigen mit speziellen Funktionen. Bei Port C heißt das, sie werden für die Videoausgabe benutzt. Das Register an Adresse 0x56000024 (GPCDAT) zeigt den aktuellen Zustand der Pins dieses Ports und 0x56000028 (GPCUDP) steuert aktiviert Pull-up- beziehungsweise Pull-down-Widerstände an den Pins.

Die Belegung für die Videoausgabe-Pins habe ich mir notiert:

GPC0    2 LEND      Video Line End
GPC1    2 VCLK      Video Clock
GPC2    2 HSYNC     Video Horizontal Sync
GPC3    2 VSYNC     Video Vertical Sync
GPC4    2 VDEN      Video Data Enable
GPC5    1 Output
GPC6    1 Output
GPC7    1 Output
GPC8:15 2 VD[0:7]   Video Data[0:7]

Ein Großteil der Pins an den Ports C und D steuert das LCD an. Indem ich die Register des Display-Controllers im SoC auslese, erhalte ich die LCD-Konfiguration: Länge des Sync-Signals, Videotaktrate und so weiter.

Mit Port A funktioniert es genauso:

> mdw phys 0x56000000
0x56000000: 0f7f6f5c
> mdw phys 0x56000004
0x56000004: 00010003
> mdw phys 0x56000008
0x56000008: 00000000

Jeder Pin benutzt aber nur ein Bit in 0x56000000 (GPACON). Die 0 steht für einen Output-Pin, 1 entspricht einer Spezialfunktion.

Die Pins GPA17 bis 22 dienen zur Ansteuerung des NAND-Flash-Speichers, wie er auch auf dem Mainboard verbaut ist. Allerdings scheinen andere, wie GPA 25 und 26, weniger sinnvoll. Sie sind für eine Spezialfunktion konfiguriert. Die Pins (DQM2 und 3) sollten mit 32 Bit breiten SDRAM verwendet werden, aber der verbaute Hynix SRAM ist nur 16 Bit breit. Entweder handelt es sich dabei um die Standardkonfiguration des Chips oder der Firmware-Code enthält Überbleibsel aus früheren Versionen.

Wenn Pins als Output konfiguriert sind, ist es auch lehrreich, einfach ihren Zustand zu ändern. Schalte ich GPA1 oder GPA2, höre ich ein Klickgeräusch im Inneren des Oszilloskops. Wahrscheinlich schalten sie Relais im Analog-Frontend. Das ist praktisch, wenn mit der Zustandsänderung ein Geräusch verbunden ist, die anderen Pins muss ich dagegen durchmessen, um zu sehen, was sie tatsächlich tun.

Der erste Versuch mit Linux

Praktisch habe ich jetzt alles, was notwendig ist, um Linux für das Oszilloskop zu portieren. Mit den Registerdaten dauert es nur drei Abende, Linux auf dem Oszilloskop mit einer seriellen Konsole und einer Busybox-Shell zu starten.

Linux unterstützt den SoC und die meisten seiner Funktionen bereits. Ich werde nicht zu tief in die Details gehen, aber im Prinzip geht es allein darum, die Werte aus den Registern in die existierenden Treiber einzubauen.

 Flash-Speicher auslesenTrotzdem ist es nicht ganz einfach 

eye home zur Startseite
grslbr 22. Nov 2016

+1 Mehr davon und ich abonniere auch. Und wie laoladabamba sagt, die Weltraumartikel...

grslbr 22. Nov 2016

Aber ehrlich. Wenn's nur News über neue Grafikkarten gibt heulen die selben Leute über...

cherubium 22. Nov 2016

ich seh das ja auch immer mit einem zwinkernden Auge. Entwickler sollen entwickeln und...

maze_1980 22. Nov 2016

Die Chancen dass es ein Linux ist sind relativ gross. Würde es mich interessieren hätte...

okidoki 22. Nov 2016

Hier kann man mal sehen, was Fachkraft wirklich bedeutet. *Davon* haben wir zu wenige.



Anzeige

Stellenmarkt
  1. Hessisches Landeskriminalamt, Wiesbaden
  2. spectrumK GmbH, Berlin
  3. DERMALOG Identification Systems GmbH, Hamburg
  4. Detecon International GmbH, Dresden


Anzeige
Blu-ray-Angebote
  1. 49,99€ mit Vorbesteller-Preisgarantie

Folgen Sie uns
       


  1. Apple iOS 11 im Test

    Alte Apps weg, Daten weg, aber sonst alles gut

  2. Bitkom

    Ausbau mit Glasfaser kann noch 20 Jahre dauern

  3. Elektroauto

    Nikolas E-Trucks bekommen einen Antrieb von Bosch

  4. HHVM

    Facebook konzentriert sich künftig auf Hack statt PHP

  5. EU-Datenschutzreform

    Bitkom warnt Firmen vor Millionen-Bußgeldern

  6. Keybase Teams

    Opensource-Teamchat verschlüsselt Gesprächsverläufe

  7. Elektromobilität

    In Norwegen fehlen Ladesäulen

  8. Metroid Samus Returns im Kurztest

    Rückkehr der gelenkigen Kopfgeldjägerin

  9. Encrypted Media Extensions

    Web-DRM ist ein Standard für Nutzer

  10. TP Link Archer CR700v

    Einziger AVM-Konkurrent bei Kabelroutern gibt auf



Haben wir etwas übersehen?

E-Mail an news@golem.de


Anzeige
Banana Pi M2 Berry: Per SATA wird der Raspberry Pi attackiert
Banana Pi M2 Berry
Per SATA wird der Raspberry Pi attackiert
  1. Die Woche im Video Mäßige IT-Gehälter und lausige Wahlsoftware
  2. Orange Pi 2G IoT ausprobiert Wir bauen uns ein 20-Euro-Smartphone

Inspiron 5675 im Test: Dells Ryzen-Gaming-PC reicht mindestens bis 2020
Inspiron 5675 im Test
Dells Ryzen-Gaming-PC reicht mindestens bis 2020
  1. Android 8.0 im Test Fertig oder nicht fertig, das ist hier die Frage
  2. Logitech Powerplay im Test Die niemals leere Funk-Maus
  3. Polar vs. Fitbit Duell der Schlafexperten

Mini-Smartphone Jelly im Test: Winzig, gewöhnungsbedürftig, nutzbar
Mini-Smartphone Jelly im Test
Winzig, gewöhnungsbedürftig, nutzbar
  1. Leia RED verrät Details zum Holo-Display seines Smartphones
  2. Smartphones Absatz in Deutschland stagniert, Umsatz steigt leicht
  3. Wavy Klarna-App bietet kostenlose Überweisungen zwischen Freunden

  1. Re: AI gibt es nicht.

    wlorenz65 | 03:52

  2. Re: Wieso gehts dann anderswo?

    Greys0n | 03:48

  3. Re: Ist doch alles ganz einfach... LTE High Speed...

    Greys0n | 03:46

  4. Re: Armes Deutschland

    medium_quelle | 03:36

  5. Re: Macht das überhaupt Sinn, eTrucks?

    Onkel Ho | 03:28


  1. 19:04

  2. 18:51

  3. 18:41

  4. 17:01

  5. 16:46

  6. 16:41

  7. 16:28

  8. 16:11


  1. Themen
  2. A
  3. B
  4. C
  5. D
  6. E
  7. F
  8. G
  9. H
  10. I
  11. J
  12. K
  13. L
  14. M
  15. N
  16. O
  17. P
  18. Q
  19. R
  20. S
  21. T
  22. U
  23. V
  24. W
  25. X
  26. Y
  27. Z
  28. #
 
    •  / 
    Zum Artikel