Temporary fixes that make Mobian work on sargo
Find a file
2024-08-18 14:45:04 +02:00
ansible always use the latest alsa-ucm-conf 2024-08-08 15:51:11 +02:00
.gitignore Initial commit 2024-07-16 17:44:34 +00:00
IMAGE.md replace commands for compilng the kernel now that "debian/rules" is fixed 2024-08-18 14:45:04 +02:00
LICENSE Initial commit 2024-07-16 17:44:34 +00:00
README.md formatting 2024-08-14 00:39:27 +02:00

sargo-temp

Temporary fixes that make Mobian work on sargo.

Please note that the MIT license does not apply to qcom-firmware.

What to do

Build Image

Instructions can be found in IMAGE.md in this repo.

Flash image

First flash the image. Boot the phone.

Connect via SSH: ssh mobian@10.66.0.1

Accept the host key.

Roll out workarounds using Ansible

You have to have ansible-playbook installed.

Go to the Ansible folder: cd ansible

Roll out workarounds: ./workarounds.sh

Reboot phone via SSH.

Connect to wifi.

Rolling out the workarounds for audio requires installing packages from the repo, so we need an internet connection.

Roll out audio workarounds: ./audio.sh

Project Status

To Do List

  • Make installer images
  • Have droid-juicer run on installer images and test LUKS
  • Make an ITP for tinyalsa and q6voiced and get that done (use the workarounds from this repo to get call audio working for now)
  • Combine SDM670 kernel patches with those in the Mobian qcom kernel
    • Patches are already being upstreamed by the sdm670-linux project, maybe that's already done before I start working on it xD

Issues To Solve To Get Official Mobian Images

  • Remove hard-coded value in the droid-juicer systemd unit (needs someone who knows Rust, help wanted)
  • New release of qcom-phone-utils required so that my patches are available from the repo
  • Combining SDM670 kernel patches with the Mobian qcom kernel (To Do List entry above)

Misc Issues

  • ALSA config for the device has not been upstreamed yet (can be added using the Playbook in this repo)

(This is a non-exhaustive list)

Low Priority

  • add udev rule for the vibration motor to the right package
  • fix udev rule for the Bluetooth workaround in this repo
  • add script that brings up Bluetooth & then package it
    • for now this repo contains a simple script specific to this device and a udev rule, but something is wrong with the udev rule. Run "/opt/bluetooth-mac.bash" to get Bluetooth working, repeat after reboots

This Works

  • booting
  • display
  • touch
  • modem
  • plymouth
  • battery/charging
  • mobile data
  • wifi
  • torch
  • suspend
  • SMS (only receiving has been tested, but I dont have reason to believe sending wouldnt work)
  • call audio
  • vibration
  • audio (ALSA config not packaged, but can be manually added using the playbook in this repo)
  • Bluetooth™
  • eSIM
  • camera (both are still WIP, front camera buggy, back camera works but patches not in git yet)
  • GPS (needs some improvements for better accuracy)

This Has An Unknown Status

  • Fingerprint Sensor
  • NFC (no idea what software I could use for testing, but should work, does so on pmOS)

This Does Not Work Yet (Soon™)

  • USB host mode (need to verify whether that's still the case or whether it can be used now)
  • full disk encryption (no installer images yet, once the other stuff is done this will magically be there)

This Has An Unknown Status

  • Fingerprint Sensor
  • NFC (no idea what software I could use for testing, but should work, does so on pmOS)

This Is Missing And Will Come Later

  • accelerometer
  • magnetometer
  • ambient light sensor
  • barometer

The Sources (Use The Source, Luke)

Thanks For All The Fish

Huge thanks to be sdm670-linux project and flamingradian who did and still does an awful lot of work to make sure the Kernel works on those devices! :)

I dont know how Kernel development works, so I would have never started porting without this project.

Find that here: https://gitlab.com/sdm670-mainline/linux