さて、もういいかげんなんかハックしなきゃと思いつつ、とりあえずSPIメモリのフルダンプを取ります。
この間リーダーを買ったので取り外して読んでもいいですが、
ここはひとつ、u-bootから読んでみます。
シリアルを接続し、u-bootの起動中にキー入力でコンソールに落ちます。
GK7102 # sf probe
で実装されているSPIフラッシュが確認できます。
GK7102 # sf read 0xc1000000 0 0x800000
で、RAM上に SPIフラッシュの 0番地から 8Mぶん(全部)を読み込み、
SDカードを認識させます。
GK7102 # fatinfo mmc 0
[PROCESS_SEPARATORS] fatinfo mmc 0
Interface: MMC
Device 0: Vendor: Man 035344 Snr 173110f7 Rev: 8.0 Prod: SU32G
Type: Removable Hard Disk
Capacity: 30436.5 MB = 29.7 GB (62333952 x 512)
Partition 1: Filesystem: FAT32 "VOLUME1 "
先ほど読み込んだ内容をSDカードに書き込みます。
GK7102 # fatwrite mmc 0:1 0xc1000000 dump.img 0x800000
[PROCESS_SEPARATORS] fatwrite mmc 0:1 0xc1000000 dump.img 0x800000
writing dump.img
8388608 bytes written
ちゃんと書かれているか確認します。
GK7102 #
GK7102 # fatls
[PROCESS_SEPARATORS] fatls
usage: fatls <interface> [<dev[:part]>] [directory]
GK7102 # fatls mmc 0
[PROCESS_SEPARATORS] fatls mmc 0
dcim/
system volume information/
lost.dir/
android/
139676 board.pdf
27 info.txt
8388608 dump.img3 file(s), 4 dir(s)
SDカードを流用しているので他のファイルも見えますが、正しく書き込めているようです。
これをWindowsに持って行って読んでみます。
読めてるっぽい。
binwalk結果、なんかエンディアンが32bit単位で逆になってたから直した後にかけた https://t.co/uwJNwT9xqw
— NV(*´ω`*) (@nvsofts) May 8, 2019
との結果も同じっぽいのでちゃんと読めてるっぽいな。