LINUX.ORG.RU
ФорумTalks

Debian Stretch Для Mediatek MT6589 (UMI-X2)

 , , , needs testers


2

1

Сейчас покопавшись в хламе понял, что есть несколько убитых старых аппаратов на mt6589. В общем поковырялся, собрал/портанул кастомное ядро (медиатек это ад и израиль, конечно, повключать всякие нужные systemd фичи превратилось в увлекательное приключение), в итоге запустил debian stretch (не chroot, а честно через минимальное initrd с busybox). Итого имеем headless систему с сетью по usb, с 4мя и 8мью ядрах арма соответственно.

Кому надо - качаем бесплатно без смс и регистрации первый превью билд: https://yadi.sk/d/fFOhlM-r3L74Qt

Сделано для UMI-X2, но в теории будет работать и на других аппаратах на MT6589, разве что preloader и lk.bin можно попробовать дернуть из стоковой прошивки.

Что есть/работает:

  • Кастомное ядро, выключено ограничение на доступ к сети только отдельным группам, добавлены фичи, которые необходимы жизненно systemd. Работает UART, usb client, emmc, степпинг по частоте. Остальное не проверялось
  • Кастомное initrd на основе busybox с поддержкой простого «режима восстановления».
  • Минимальная корневая ФС Debian Stretch
  • Вычещена таблица разделов, максимально удалены ненужные разделы типа recovery/usrdata и т.п., только отжирающие место на eMMC

Последовательность загрузки

  • INITRD Включает usb в комбо-режим (флешка + посл. порт + сеть (eem)) и ждет 10 секунд логина на вирт. ком-порту. Это на случай, если загрузка не проходит и необходимо вручную выполнить реанимационные мероприятия
  • Если никто не залогинился, то монтируется корневая фс и начинается загрузка Debian
  • Debian настроен на получение IP адреса на usb интерфейсе по DHCP (ждет IP до 5 минут), соответственно на хост-системе необходимо добавить этот интерфейс в мост и/или разадавать IP адреса.
  • На вирт. последовательном порту будет так же доступен шелл после окончания загрузки

Для входа в систему используем:

Логин: root

Пароль: 12345678

Система загружается даже если кнопка питания не нажималась. Т.е. втыкаем батарейку, втыкаем кабель и оно загрузилось.

Дополнительный софт можно установить штатно через apt-get, через него же и обновлять систему.

Прошиваем через flashtool с полным форматом

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



Последнее исправление: ncrmnt (всего исправлений: 3)

А что, под квалкомы проще что то пилить чем под mtk? Хм, у меня валялся китаец на mtk6589, посмотрим.

karton1 ☕☕
()

медиатек это ад и израиль

Злостные проприентарщики. Почти всегда ложат хер на GPL. Как и другие китайцы.

Meyer
()

таки изобретение БИОСа ИБМом было величайшим инженерным достижением прошлого столетия.

Deleted
()
Ответ на: комментарий от MikeWortin

Нема аппаратов на qualcomm, и с ним должно быть проще, ибо там выкладывают исходники, и, говорят, такой наркомании, как у медитека, там нет. В принципе, если есть аппарат и интересно, если:

1. Соберешь ядро и кухню для сборки boot.img

2. Напишешь простой скрипт, который настраивает usb клиент в комбо (acm+ethernet+ums) режиме

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

ncrmnt
() автор топика
Последнее исправление: ncrmnt (всего исправлений: 2)
Ответ на: комментарий от timdorohin

wifi есть, и неплохие. А вот с bt большие вопросы, ибо он там к дроеду не через bluez, а через костыль. Хотя если аппаратно интерфейс hci на каком-нибудь уарте, то тоже есть шанс.

ncrmnt
() автор топика
Ответ на: комментарий от ncrmnt

Да, оно самое, просто доки спросонок читал, так и запамятовал...

timdorohin
()

Выложи конфиг ядра и инструкцию как образ собирал, прошивал. Я давно хочу под mtk6577 такое запилить.

sergej
()
Ответ на: комментарий от sergej

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

См. инструкции по сборке https://4pda.ru/forum/index.php?showtopic=583114

Из конфига где-то в mediatek/config/mt6589/autoconfig/kconfig/platform убираешь CONFIG_ANDROID_PARANOID_NETWORK

В конфиг для конкретного проекта добавляешь параметры из README systemd. В принципе вот и все.

ncrmnt
() автор топика
Ответ на: комментарий от timdorohin

апдейт: шансы завести wifi хорошие, написал тулу включающую питание, он определился на sdio, надо только сконпельнуть модуль. Есть даже неплохие шансы завести дисплей.

ncrmnt
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.