DebianOn is an effort to document how to install, configure and use Debian on some specific hardware. Therefore potential buyers would know if that hardware is supported and owners would know how get the best out of that hardware. The purpose is not to duplicate the Debian Official Documentation, but to document how to install Debian on some specific hardware. If you need help to get Debian running on your hardware, please have a look at our user support channels where you may find specific channels (mailing list, IRC channel) dedicated to certain types of hardware. |
Contents
What's not working
Camera doesn't work with kernels older than linux-7.1-sdm845 7.1~rc5-1.
The replacement IPS panel currently doesn't work with kernels older than linux-6.18-sdm845
usb-c OTG and usb-c ?DisplayPort (preliminary support will be likely available 7.2+)
- suspension is known to be broken in several aspects, e.g. increasing energy consumption, not resuming for a network event (call), breaking audio settings. See suspend section for workarounds
Support
If something isn't working for you, you can get in contact with Mobian developers and the Mobian community in various ways. All of them are listed here.
Installation
Obtain the Image
Pre-built images for your device are available from https://images.mobian.org/qcom/weekly/, packed in a file named
mobian-<family>-<graphical_shell>-YYYYMMDD.tar.xz
(where the <family> you are looking for is sdm845).
Verifying the images
See FAQ#How to check Mobian images' signature.
Preparing and flashing the device
WARNING: Flashing Mobian to your device will wipe your Android installation and all the data contained in it. If your device contains data you'd like to retain, please make a backup in advance. Installing a recovery software such as TWRP and making sure you understand how to recover your system before proceeding is also recommended, unless your device contains no valuable data and you know how to recover it.
It's recommended that you upgrade Android to the latest available version and install all system updates before installing Mobian, because Mobian uses FW files from Android partitions for enabling various peripherals.
Device's bootloader needs to be unlocked: the procedure varies depending on the device you own, then either refer to postmarketOS' installation guide for unlocking bootloader of SHIFT6mq or search the Internet for an unlock guide aimed at your specific device.
Mobian images are made of:
an Android bootimg containing the kernel, device-tree and initramfs named mobian-<processor>-phosh-YYYYMMDD.boot-<model>.img
an Ext4-formatted rootfs (using Android's sparse image format) named mobian-<processor>-phosh-YYYYMMDD.rootfs.img
Note: Up until 2023-10-22 the archives used to contain an additional image file named mobian-<processor>-phosh-YYYYMMDD.boot.img meant to be flashed to the system partition. This is no longer the case starting with the 2023-10-29 set of images.
As these devices have several variants, which differ only by the device-tree they need, and the DT being part of the bootimg, we provide one bootimg for each variant. You have to flash the one matching your device:
SHIFT 6mq: axolotl
Once you have uncompressed the tarball, boot your device into fastboot mode, connect it to your computer using a USB cable and run the following commands to install Mobian:
fastboot flash boot mobian-<processor>-phosh-YYYYMMDD.boot-<model>.img fastboot -S 100M flash userdata mobian-<processor>-phosh-YYYYMMDD.rootfs.img fastboot erase dtbo fastboot reboot
It is recommended to reboot the device after flashing via the "fastboot reboot" command, as the reboot is triggered after the writings to device's internal memory from previous steps are completed.
Default pin and password
The default user is mobian with password 1234 . See Mobian/FAQ#Default_pin_and_password .
Automatic resizing of your filesystem on first boot
After flashing the image and booting for the first time, Mobian will resize the root filesystem to take all possible space on the disk. This can take a while and will only happen on first boot. So grab a ${DRINK_OF_CHOICE} and be patient.
Notes:
- If the device becomes unresponsive after a fastboot command succeeded, power it off and boot into fastboot mode again, then execute the remaining commands.
Suspend
Suspension can be inhibited by enabling Caffeine quick setting in Phosh/Plasma. This needs to be done on every boot.
Installing to an SD Card
The installation above is to the internal memory (UFS). There can be many reasons why you want to install to an SD card:
- You want to swap an installation between different phones.
- The **installation to internal memory might be broken**.
- For old versions: The UFS implementation might be broken for your combination of kernel and device and lead to IO errors.
Before proceeding you must have installed the same version to the internal memory, as described above, but flashing the rootfs.img should be left out (can lead to confusion with the root image that will be installed to the SD card). The steps for installing to an SD card (recommended at least 16 GB):
- On a PC, add a partition number 1 with filesystem ext4 to your SD card.
Convert the root image from sparse to non-sparse format: simg2img mobian-<processor>-phosh-YYYYMMDD.rootfs.img mobian-<processor>-phosh-YYYYMMDD.rootfs.raw
Write the .raw file to partition 1, determine which letter you should use as N in sdN1 to access the mentioned SD card: sudo dd if=mobian-<processor>-phosh-YYYYMMDD.rootfs.raw of=/dev/sdN1 bs=1M status=progress
- Move the SD card from the PC to the phone.
- Start the phone.
Firmware
Firmware |
File |
Package |
Qualcomm WCN3990 Bluetooth NVM configuration |
qca/axolotl/crnv21.bin |
firmware-atheros |
Qualcomm Adreno 630 SDM845 ZAP |
qcom/sdm845/axolotl/a630_zap.mbn |
firmware-qcom-soc |
Qualcomm SDM845 audio firmware |
qcom/sdm845/axolotl/adsp.mbn |
firmware-qcom-soc |
Qualcomm SDM845 audio configuration |
qcom/sdm845/axolotl/adspr.jsn |
firmware-qcom-soc |
Qualcomm SDM845 audio configuration |
qcom/sdm845/axolotl/adspua.jsn |
firmware-qcom-soc |
Qualcomm SDM845 compute firmware |
qcom/sdm845/axolotl/cdsp.mbn |
firmware-qcom-soc |
Qualcomm SDM845 compute configuration |
qcom/sdm845/axolotl/cdspr.jsn |
firmware-qcom-soc |
??? |
qcom/sdm845/axolotl/ipa_fws.mbn |
N/A |
Qualcomm SDM845 modem firmware |
qcom/sdm845/axolotl/mba.mbn |
firmware-qcom-soc |
Qualcomm SDM845 modem firmware |
qcom/sdm845/axolotl/modem.mbn |
firmware-qcom-soc |
Qualcomm APQ8096 modem configuration |
qcom/sdm845/axolotl/modemr.jsn |
firmware-qcom-soc |
Qualcomm SDM845 modem configuration |
qcom/sdm845/axolotl/modemuw.jsn |
firmware-qcom-soc |
??? |
qcom/sdm845/axolotl/slpi.mbn |
N/A |
??? |
qcom/sdm845/axolotl/slpir.jsn |
N/A |
??? |
qcom/sdm845/axolotl/slpius.jsn |
N/A |
Qualcomm Venus |
qcom/sdm845/axolotl/venus.mbn |
firmware-qcom-soc |
??? |
qcom/sdm845/axolotl/wlanmdsp.mbn |
firmware-qcom-soc |
WiFi problems?
The stock firmware (as extracted by droid-juicer on the first boot) does not work with the mainline driver because of firmware internal bug. As a workaround you can:
1. patch the existing firmware using python script manually - until will be integrated into droid-juicer workflow or
2. grab older wlanmdsp.bin firmware from here and place it in /usr/lib/firmware/updates/qcom/sdm845/axolotl overwriting the existing stock-firmware. After a reboot you should be good to go.
