[Tiptoi-hw] QEmu Model und Ghidra

Björn kalle71 at online.de
So Nov 22 23:03:12 CET 2020


Hallo,

anbei ein SVD für den ZC3202N.

Die Register sollten weitestgehend komplett sein, bzgl. der Bedeutung 
der einzelnen Bits fehlt noch einiges (das einzutragen ist ECHT viel 
Arbeit). Wenn die detaillierte Beschreibung der Bits als SVD hilfreich 
ist, könnte man das SVD ja noch entsprechend ergänzen.

Der Import in Ghidra erfolgt am besten über das Script "SVD-Loader.py".

Viel Spaß und Erfolg noch!
Björn




Am 22.11.2020 um 15:35 schrieb Sven A. Huerlimann via tiptoi-hw:
> Salü Björn
> 
> Eine brauchbare Register-Beschreibung wäre Gold wert. Ich kann das dann
> relativ schnell im Modell nachzimmern (hüstel - berühmte letzte Worte).
> 
> Bez. Ghidra: Bin ich Anfänger. Ich hab bislang nur den Decompiler und
> das gesteppe benutzt. Da lern ich gerne noch mehr, offen für Inputs.
> 
> Gruss
> 
> Shue
> 
> On 22.11.20 15:26, Björn via tiptoi-hw wrote:
>> Hi Sven,
>>
>> dann werde ich mich mal weiter um die Register kümmern und die
>> "finale" (haha!) Beschreibung als SVD hochladen, so dass sie sich
>> leicht in Ghidra importieren lässt.
>>
>> Weißt Du, ob die Beschreibung der einzelnen Bits eines Registers in
>> Ghidra Vorteile hat, so dass man bei Bit-Operationen auf Registern
>> nicht immer in separaten Tabelle nachschlagen muss?
>>
>> Grüße
>> Björn
>>
>>
>> Am 22.11.2020 um 13:48 schrieb Sven A. Huerlimann via tiptoi-hw:
>>> Hoi Björn
>>>
>>> Ich hab das jetzt einfach rausgehauen, da das bei mir schon viel
>>> zulange auf der Festplatte gärt..
>>>
>>> Ich hab nur halbwegs die Übersicht welche Peripherie sich wo im
>>> Memory versteckt (und der blöde Chip verweigert sich so ziemlich
>>> allen Standards)
>>>
>>> Was ich mit Sicherheit sagen kann:
>>>
>>> 0x04000000 -> System-Controller, GPIO und Pin-Mux
>>> 0x04036000 -> UART
>>> 0x0404A000 -> NAND-Controller
>>>
>>> 0x04010000 -> L2 Config
>>>
>>> Dann hörts aber auch schon auf mit meinem Latein.
>>>
>>> Im Moment hab ich einen generischen PL351 NAND controller im Model,
>>> der ist es aber offensichtlich nicht.. Auch der UART ist momentan nur
>>> "dummy" (wobei wir da die register alle kennen und eine emulation
>>> eigentlich nur Fingerübung ist)
>>>
>>> Zugeschnitten ist noch gar nix :) Im Moment besteht das Model aus
>>> einem ARM arm926 Core und 32k ROM und 192k RAM, einem PL351 NAND
>>> controller und einem Cadence UART (bis auf das ROM/RAM ist alles
>>> falsch). Aber Hey: Ich kann Code steppen!
>>>
>>> Die relevanten Dateien im git sind:
>>>
>>> https://github.com/rhesus-ltd/qemu-chomptech/blob/chomptech/hw/arm/chomptech.c
>>>
>>>
>>> und
>>>
>>> https://github.com/rhesus-ltd/qemu-chomptech/blob/chomptech/hw/misc/chomp_slcr.c
>>>
>>>
>>> Eben: release eary and often :) Es gibt noch viel zu tun.
>>>
>>> Gruss Sven
>>>
>>> On 22.11.20 13:27, Björn via tiptoi-hw wrote:
>>>> Hallo Sven,
>>>>
>>>> das, was du da machst, sieht ja sehr gut aus!
>>>>
>>>> Ich habe kürzlich versucht zu verstehen und unter Ghidra abzubilden,
>>>> welche SOC-Register auf welchen Adressen liegen, habe aber noch ein
>>>> paar Unstimmigkeiten bzw. ungeklärte Bereiche.
>>>> Wie hast Du das gelöst?
>>>>
>>>> Ist das Setup auf GitHub generisch für den Anyka AK1090 oder auf die
>>>> Chomptech-Firmware zugeschnitten?
>>>>
>>>> VG
>>>> Björn
>>>>
>>>>
>>>> Am 22.11.2020 um 12:47 schrieb Sven A. Huerlimann via tiptoi-hw:
>>>>> Hallo zusammen
>>>>>
>>>>> Ich bin mir nicht sicher, ob diese Liste noch bespasst wird, aber
>>>>> versuchs einfach mal:
>>>>>
>>>>> Ich hab einen rudimentären Qemu-GDB-Ghida Workflow gebastelt und
>>>>> möchte
>>>>> diesen gerne mit euch teilen.
>>>>> Alles noch seeehr in den Kinderschuhen (Aber: Release early and often)
>>>>>
>>>>> Den Code findet Ihr unter:https://github.com/rhesus-ltd/qemu-chomptech
>>>>>
>>>>> Ein kleines Video (macht man heute ja so) gibts hier:
>>>>> https://www.youtube.com/watch?v=PLC3PlmwEQ0
>>>>>
>>>>> Doku folgt.
>>>>>
>>>>> Es würde mich freuen, wenn da weitere Leute mitentwickeln würden,
>>>>> also:
>>>>> Freiwillige gesucht.
>>>>>
>>>>> Beste Grüsse aus der Quarantäne
>>>>> Sven
>>>>>
>>>>>
>>>>>
>>>>> _______________________________________________
>>>>> tiptoi-hw mailing list
>>>>> tiptoi-hw at lists.nomeata.de
>>>>> https://lists.nomeata.de/mailman/listinfo/tiptoi-hw
>>>>
>>>>
>>>> _______________________________________________
>>>> tiptoi-hw mailing list
>>>> tiptoi-hw at lists.nomeata.de
>>>> https://lists.nomeata.de/mailman/listinfo/tiptoi-hw
>>>
>>> _______________________________________________
>>> tiptoi-hw mailing list
>>> tiptoi-hw at lists.nomeata.de
>>> https://lists.nomeata.de/mailman/listinfo/tiptoi-hw
>>>
>>
>>
>> _______________________________________________
>> tiptoi-hw mailing list
>> tiptoi-hw at lists.nomeata.de
>> https://lists.nomeata.de/mailman/listinfo/tiptoi-hw
> 
> _______________________________________________
> tiptoi-hw mailing list
> tiptoi-hw at lists.nomeata.de
> https://lists.nomeata.de/mailman/listinfo/tiptoi-hw
> 

-------------- nächster Teil --------------
Ein Dateianhang mit Binärdaten wurde abgetrennt...
Dateiname   : Anyka AK1090 (Snowbird2).svd
Dateityp    : text/xml
Dateigröße  : 56771 bytes
Beschreibung: nicht verfügbar
URL         : <https://lists.nomeata.de/pipermail/tiptoi-hw/attachments/20201122/54f9bc37/attachment.xml>


Mehr Informationen über die Mailingliste tiptoi-hw