The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



"Запуск Linux на телефоне с SD карты."
Вариант для распечатки  
Пред. тема | След. тема 
Форум Портативные устройства, платы и ноутбуки (Смартфоны на базе Linux)
Изначальное сообщение [ Отслеживать ]

"Запуск Linux на телефоне с SD карты."  +/
Сообщение от Аноним (0), 13-Дек-22, 19:34 
Я эксперементирую с Xiaomi Redmi8, пытаюсь запустить arm64 Debian bullseye с SD карты. Загрузщик разблокирован и иммеется файл firmware соответствующий прошивке телефона.
Моя идея заключается в том, чтобы использовать kernel из прошивки, и rootfs на SD карте.

Распаковываю boot.img из firmware:


unpack_bootimg.py  --boot_img boot-xiaomi.img
boot magic: ANDROID!
kernel_size: 15407296
kernel load address: 0x80008000
ramdisk size: 0
ramdisk load address: 0x81000000
second bootloader size: 0
second bootloader load address: 0x80f00000
kernel tags load address: 0x80000100
page size: 2048
os version: 10.0.0
os patch level: 2021-09
boot image header version: 1
product name:
command line args: console=ttyMSM0,115200,n8 androidboot.console=ttyMSM0 androidboot.hardware=qcom msm_rtb.filter=0x237 ehci-hcd.park=3 lpm_levels.sleep_disabled=1 androidboot.bootdevice=7824900.sdhci earlycon=msm_serial_dm,0x78B0000 androidboot.usbconfigfs=true loop.max_part=7 buildvariant=user
additional command line args:
recovery dtbo size: 0
recovery dtbo offset: 0x0000000000000000
boot header size: 1648

Упаковываю с теми же параметрами снова, чтобы быть уверенным, что перепаковка не вызывает ошибок:

mkbootimg.py \
--header_version 1 \
--os_version 10.0.0 \
--os_patch_level 2021-09 \
--kernel out/kernel \
--board '' \
--cmdline 'console=ttyMSM0,115200,n8 androidboot.console=ttyMSM0 androidboot.hardware=qcom msm_rtb.filter=0x237 ehci-hcd.park=3 lpm_levels.sleep_disabled=1 androidboot.bootdevice=7824900.sdhci earlycon=msm_serial_dm,0x78B0000 androidboot.usbconfigfs=true loop.max_part=7 buildvariant=user' \
-o boot-xiaomirepack.img

Загружаю получившийся образ:

fastboot boot boot-xiaomirepack.img
Sending 'boot.img' (15050 KB)                      OKAY [  0.552s]
Booting                                            OKAY [  2.683s]
Finished. Total time: 3.353s

Телефон успешно загружается в Android.

Теперь упаковываю с параметрами kernel для загрузки с раздела root=/dev/mmcblk1p2 init=/init:


mkbootimg.py \
--header_version 1 \
--os_version 10.0.0 \
--os_patch_level 2021-09 \
--kernel out/kernel \
--board '' \
--cmdline 'selinux=0 androidboot.hardware=qcom msm_rtb.filter=0x237 ehci-hcd.park=3 lpm_levels.sleep_disabled=1 earlycon=msm_serial_dm,0x78B0000 androidboot.usbconfigfs=true loop.max_part=7 buildvariant=user root=/dev/mmcblk1p2 rw init=/init' \
-o boot-tiny.img

Загружаю получившийся образ

fastboot boot boot-tiny.img
Sending 'boot.img' (15050 KB)                      OKAY [  0.497s]
Booting                                            OKAY [  2.694s]
Finished. Total time: 3.322s

/init в самом начале должен оставить файл метку на fs, что была попытка запуска, но ничего не происходит.

Мне подозрителен параметр fastboot:


fastboot getvar secure
secure: yes
Finished. Total time: 0.000s

Вобщем, с SD карты в качестве rootfs грузиться не получается.
Подскажите пожалуйста в чем может быть дело?
Спасибо.

Ответить | Правка | Cообщить модератору

Оглавление

Сообщения [Сортировка по ответам | RSS]

1. Сообщение от Аноним (1), 13-Дек-22, 23:41   +/
В родном образе какие-то модули содержатся? Может быть кардридер без них не определяется.
Ответить | Правка | Наверх | Cообщить модератору
Ответы: #2

2. Сообщение от GOrilla (?), 14-Дек-22, 04:49   +/
> В родном образе какие-то модули содержатся? Может быть кардридер без них не
> определяется.

Нет, смотрел конфигурацию ядра из  /proc/config.gz,  все скомпилено статически, модулями ничего нет, dtb приклеены к ядру. Может только инициализация дисков долгая, надо поиграться с  wait root, или вообще с initrd.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #1


Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру