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 ★★★★★
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.