Перейти к содержанию

Отладочный UART#

На платах Capsula есть отладочная UART-консоль: через неё видно всю загрузку (BootROM → u-boot → ядро) и можно вводить плату в режимы загрузки, не разбирая колонку с кнопкой Recovery. Распиновка и тестпоинты конкретных устройств - в карточках: Капсула (TP50/TP51, TP5, TP48/TP49), для мини - TODO.

Консоль#

  • Интерфейс - UART2_M1 (GPIO4_D2/D3, пады SDMMC_D2/D3), скорость 1 500 000 8N1.
  • Драйвер консоли ядра - fiq-debugger.
  • Штатные разъёмы J3 (3-pin, UART2) и J1 (4-pin, UART0) на платах не запаяны (DNP) - паяться к тестпоинтам.

Вход в режимы загрузки с консоли#

С подключённым OTG-кабелем:

Клавиши Режим На шине
Ctrl+D rockusb (loader) 2207:330d
Ctrl+B MaskROM 2207:330e

У мини это единственный способ без сенсорной кнопки; у больших Капсул есть ещё кнопка Recovery. Аппаратно гарантированный вход в MaskROM - замкнуть FLASH_D0 на GND.

Как отличить MaskROM от загруженного usbplug#

На RK3308 загруженный usbplug может ре-энумерироваться с тем же PID, что и MaskROM. Проверяйте состояние: rkdeveloptool td (ответ OK = loader-режим) или iProduct «USB-MSC» в lsusb -v (= usbplug уже загружен).

Короткое 2207:0006 при старте - не режим загрузки

Стоковый Linux поднимает USB-гаджет 2207:0006 меньше, чем на секунду (adbd из стока удалён). Инструменты проекта ждут именно 330d/330e и только логируют 0006.

Консоль ядра (serial-id)#

  • Большие Капсулы: сток выводит консоль на отладочный UART (serial-id = 2) - лог ядра виден сразу.
  • Мини: стоковый serial-id = 0 (uart0, не разведён на плате) - лог ядра теряется после earlycon; чтобы видеть лог, консоль fiq-debugger переключают на отладочный UART правкой DTB (serial-id = 2, правка того же размера).

Amlogic-мини#

У поздних мини (Amlogic A113X) UART нужен в основном для наблюдения: download-окно u-boot поднимается само при каждом включении (~0,5–1 с), вывод команд passthrough (capsula-jb aml) виден на UART. Окно закрывается независимо от identify - перед каждым запуском передёргивайте питание.