Skip to content

v1.4 — обновление по воздуху, загрузка с eMMC, Bluetooth не роняет ядро

Choose a tag to compare

@mamaich mamaich released this 28 Sep 18:48
· 0 commits to 0c8b640dbca983fca9e095368c2249365e1cef1f since this release

GammaOS Next (LineageOS 21 / Android 14) для карманной консоли AISLPC RG52 Mini на Rockchip RK3562. Выкладывается полный образ SD-карты и — впервые — пакет обновления по воздуху.

Архив GammaOSCore-RG52Mini-20260928-2122.img.xz, 1,70 ГиБ
Пакет обновления GammaOSCore-RG52Mini-20260928-2122-ota.zip, 1,62 ГиБ
sha256 архива 353392ea1c29aad842bbcf6ec3cb9925def4c2962389b98b1752eadbd5b3f8c2
sha256 образа cba09f527d9b94ff59d32f3f83b3e0961b0f63824b8a278e203c5190f918bee2
Ядро Linux 5.10.226, kernel_rk3562_rg52mini
Загрузчик u-boot-rk3562-rg52mini

Что нового

Обновление по воздуху наконец работает. Если у вас v1.3 — карту вынимать не нужно: приложение обновлений само найдёт сборку, скачает и поставит, показывая ход записи на экране. Это первый выпуск, к которому приложен пакет: механизм чинился в v1.3, и получить его по воздуху устройства с v1.2 всё равно не смогли бы.

Bluetooth больше не роняет ядро. Драйвер AIC8800 освобождал буфер, который уже освободила hci_recv_frame() — та владеет им и на каждом своём пути ошибки освобождает сама. При выключении устройства это происходило пачками, по полторы-две сотни раз за одну остановку, разрушая списки памяти ядра; падало потом в стороне — в сетевом коде или прямо внутри распределителя. Та же строка есть во всех копиях этого драйвера, которые удалось найти, включая самые свежие.

Выбранный режим производительности переживает перезагрузку. Раньше он на каждой загрузке выбирался по источнику питания и перебивал выбранное вручную. Прежнее поведение осталось — снимите галку «Remember performance mode across reboots».

Перезагрузка в систему на внутренней памяти. Включите в GammaOS Toolbox «Allow reboot to eMMC», и в меню выключателя, сразу за «Restart», появится «Reboot to eMMC»: устройство поднимется не с карты, а с eMMC. Флаг одноразовый, обычная перезагрузка возвращает на карту. Пригодится тем, у кого на внутренней памяти стоит вторая система.

Swap Mode больше не затирает ручную настройку. Появился пункт «Custom»: если размеры заданы в Toolbox, меню это показывает и ничего не меняет. Раньше любое состояние округлялось до ближайшего режима, и первый же заход в меню его стирал.

Из апстрима. Яркость перестала сбрасываться к умолчанию на каждой загрузке, убраны две вспышки подсветки при старте, звук в эмуляторах запускается втрое быстрее.

Как поставить

С v1.3 — по воздуху. Приложение обновлений, кнопка проверки. Ход записи виден на экране, устройство перезагрузится само.

С нуля или с версий до v1.3 — записать образ на карту. Распакуйте архив или скормите его прямо программе записи: Balena Etcher и Raspberry Pi Imager читают .xz сами, WinRAR его тоже открывает. Карта от 8 ГБ. При первой загрузке userdata растягивается на всю карту — это две загрузки подряд.

Необязательно: память на 928 МГц

Штатные 798 МГц — настройка загрузчика, а не предел микросхем. На нашем экземпляре память устойчиво работает на 928 МГц: +13 % пропускной способности. В образе этого нет и быть не может — код инициализации памяти запускается с внутренней eMMC, а не с карты. Кто захочет — как это сделать, проверить и откатить.


Полное описание выпуска, с разбором решений и замерами: https://github.com/mamaich/GammaOSNext-RG52mini/blob/develop/doc/rg52mini/release-v1.4.md