SoC: Rockchip RK3308#
Основная платформа семейства: большие Capsule-14/15 и мини на Rockchip. Аудио-SoC: display-контуров в работе нет, зато встроенный кодек, PDM и VAD (детектирование голоса). 64-битный ARM (aarch64).
Спецификации#
| Параметр | Значение |
|---|---|
| CPU | 4× Cortex-A35 (armv8), GIC-400, PSCI 1.0 |
| Частоты (OPP) | 408 / 600 / 816 / 1008 / 1104 / 1200 / 1296 МГц max |
| Питание ядра | vdd_core (PWM-регулятор), top-OPP 1296 МГц @ 1,30 В |
| Встроенный кодек | rk3308-codec (тактирование vcc_1v8_codec) |
| Аудио-интерфейсы | I2S 8ch ×4 (ff300000–ff330000), I2S 2ch ×2 (ff350000/ff360000), PDM 8ch (ff380000), VAD (ff3c0000) |
| Debug UART | UART2_M1 (пады SDMMC_D2/D3), 1 500 000 8N1, fiq-debugger - см. UART |
| USB | OTG-gadget: MaskROM 2207:330e, loader 2207:330d, Linux-гаджет 2207:0006 |
Две ревизии кристалла: RK3308 и RK3308B#
Маркировка на корпусе у обеих - «RK3308»; различить можно чтением
регистра GRF+0x800: 0xcea - обычный RK3308, 0x3308 - RK3308B.
Главное отличие для софта: у RK3308B мукс GPIO2_A2/A3 живёт в
«plus»-полях GRF+0x608 - mainline-ядро без бэкпорта туда не пишет.
Одним образом (с бэкпортом пинмукса) обе ревизии обслуживаются общей
сборкой.
Флеш-подсистема#
RK3308 работает с параллельным NAND через собственный rknand-контроллер (не SPI!): 8-битная шина через резисторы ~22 Ом, страница 2 КиБ + OOB. Поверх чипа работает FTL-слой SFTL (суперблок в конце NAND): хост читает и пишет логические LBA, а физический idblock записью разделов не трогается. Подробнее - Разделы флеша.
Amlogic A113X (поздние мини)#
Поздние ревизии мини (плата MRC02B_Main) построены на Amlogic A113X:
видны как 1b8e:c003 в стадиях BootROM и u-boot burning gadget.
Стоковый u-boot не запаролен и поднимает фабричное download-окно
(~0,5 с) при каждом включении - инструмент ловит его сам. Разделы мини
на Amlogic - UBI с вендорской ECC, безопасная запись потребует
отдельной работы (см.
capsula-userspace-jailbreak).
TODO: подтвердить спецификации A113X по datasheet.