我正在尝试为 TV STB 重新编写固件,它基于 GX3201 芯片,该芯片基于 C-sky CPU(我认为是 CK610M)。
我被困在以下几点:
- 我无法正确识别 CPU 架构(可能是 MIPS)。
- 我无法正确识别复位向量地址以在 IDA pro 中加载引导加载程序。
有人对这些芯片有经验吗?
更新
更新 2
使用 CPU 的工具链并反汇编vectors.o
在 lib 目录中找到的内容给了我:
00000458 <__reset_vector>:
458: 711b lrw r1, 0xA2A25441
45a: 0f21 cmpne r1, r2
45c: e802 bf 0x462
45e: 1082 mfcr r2, ss2
460: 1093 mfcr r3, ss3
00000462 <skip_SS_ATAG>:
462: 0f21 cmpne r1, r2
464: e003 bt 0x46c
466: 7218 lrw r2, 0x0 // from address pool at 0x4c8
468: 35f3 bseti r3, r3, 31
46a: 9302 st r3, (r2, 0)
objdump -i
输出 :
elf32-csky-big
(header big endian, data big endian)
csky
elf32-csky-little
(header little endian, data little endian)
csky
elf32-little
(header little endian, data little endian)
csky
elf32-big
(header big endian, data big endian)
csky
srec
(header endianness unknown, data endianness unknown)
csky
symbolsrec
(header endianness unknown, data endianness unknown)
csky
verilog
(header endianness unknown, data endianness unknown)
csky
tekhex
(header endianness unknown, data endianness unknown)
csky
binary
(header endianness unknown, data endianness unknown)
csky
ihex
(header endianness unknown, data endianness unknown)
csky
elf32-csky-big elf32-csky-little elf32-little elf32-big srec
csky elf32-csky-big elf32-csky-little elf32-little elf32-big srec
symbolsrec verilog tekhex binary ihex csky symbolsrec verilog tekhex binary ihex