Entry created
2025-01-27
Translation(s): none
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. |
Models covered
Google Pixel 6 (oriole)
Overall Status
Core Components |
||
Boot Standard Kernel: |
|
|
LAN network card: |
|
|
Detect hard drives: |
|
|
Secure boot: |
[?] |
|
Extra Features |
||
CPU Frequency Scaling |
[?] |
|
Hibernation |
[?] |
|
Sleep / Suspend |
[?] |
|
Xorg |
|
|
- OpenGL |
|
|
Touchscreen |
|
|
Modem |
|
|
Wireless/Wifi |
|
|
GPS |
|
|
Sensors |
|
|
Battery |
|
|
Camera |
|
|
- Front |
|
|
- Back |
|
|
Legend :
= OK ;
Unsupported(No Driver) ;
= Error (Couldn't get it working); [?] Unknown, Not Tested ; [-] Not-applicable
= Configuration Required;
= Only works with a non-free driver and or firmware
Important Note
Note that this is very early work, basically only USB works, no display no network no nothing!
Installation
Needs at least mmdebstrap 1.5.0 (Debian trixie, Ubuntu oracular)
Install required Software
sudo apt install mmdebstrap uidmap qemu-user-binfmt arch-test libarchive13 gzip lz4 mkbootimg fastboot adb
Generate the Image
export QEMU_CPU=max,pauth=off
cd /tmp
# for Ubuntu: install debian-archive-keyring and add --keyring=/usr/share/keyrings/debian-archive-keyring.gpg
mmdebstrap --arch=arm64 \
--include=dracut,systemd-sysv,dbus-user-session,linux-image-arm64,adbd \
--customize-hook='cp "$1"/boot/vmlinuz-* /tmp/Image' \
--customize-hook='cp "$1"/boot/initrd.img-* /tmp/initrd.img' \
--customize-hook='cp "$1"/usr/lib/linux-image-*/exynos/google/gs101-oriole.dtb /tmp/' \
unstable unstable.ext4
unshare --map-root-user --map-auto chown root:root Image initrd.img gs101-oriole.dtb
lz4 --rm --fast Image
# ftrace=function only needed for buggy ufs module load
mkbootimg --header_version 4 \
--kernel Image.lz4 \
--vendor_cmdline 'clk_ignore_unused root=PARTLABEL=userdata rw ftrace=function' \
--ramdisk_type platform \
--ramdisk_name PLAT \
--vendor_ramdisk_fragment initrd.img \
--dtb gs101-oriole.dtb \
--vendor_boot vendor_boot.img \
--output boot.img
Fastboot mode
Enable Developer Options by tapping Build Number 7 times. Enalbe OEM Unlocking in the Developer Options. When the device is shut off, the device can be put in fastboot mode by pressing and keeping pressed the power and volume down buttons, until the fastboot screen appears. Different entries can be navigated with volume buttons and entered with power button.
Preparing the Device
As you would do before installing a custom Android ROM, the bootloader needs to be unlocked. The exact procedure varies depending on the device you own, so we suggest you search the Internet for an unlock guide aimed at your specific device.
We also recommend that you upgrade Android to the latest available version and install all system updates before installing Mobian.
See postmarketOS' wiki for allow bootloader unlocking and unlock the bootloader.
Disable verification (only needed once):
fastboot flashing unlock fastboot oem disable-verification fastboot oem disable-verity fastboot oem ramdump disable fastboot erase dtbo
Flashing the Image to the Target Device
WARNING: Flashing Debian to your device will wipe your Android installation! Please make sure you understand how to recover your system before proceeding.
fastboot flash userdata unstable.ext4 fastboot flash vendor_boot vendor_boot.img fastboot flash boot boot.img fastboot reboot
Access the Device
adb
Configuration
Display
GPU: Mali-G78 MP20 Display: AMOLED 1080x2400 90Hz / 1440x3120 120Hz
Patch for simple framebuffer proposed upstream: https://lore.kernel.org/all/20250117-gs101-simplefb-v4-0-a5b90ca2f917@linaro.org/. GPU support may be worked on soon: https://www.collabora.com/news-and-blog/news-and-events/panvk-v10-support.html#qcom4315. Spec written: https://www.collabora.com/news-and-blog/news-and-events/reverse-engineering-the-mali-g78.html.
Audio
- (not covered yet)
Power Management
- (not covered yet)
WiFi
- (not covered yet)
Modem
- (not covered yet)
System Summary
lspci
$ lspci -nn
lsusb
$ lsusb
$ sudo lsusb -v 2>/dev/null | grep -E '\<(^Bus|iProduct|bDeviceClass|bDeviceProtocol)'
USB Host controllers entries (without OHCI, UHCI, EHCI) are removed too.
Resources
Attachments
Some configuration files and sample outputs.
Other reports
# * Linux hardware database probe
Useful Links
Credits
