https://wiki.postmarketos.org/api.php?action=feedcontributions&user=CarloAlb&feedformat=atom
postmarketOS - User contributions [en]
2024-03-29T16:02:57Z
User contributions
MediaWiki 1.39.6
https://wiki.postmarketos.org/index.php?title=OnePlus_6_(oneplus-enchilada)&diff=20025
OnePlus 6 (oneplus-enchilada)
2021-06-18T09:38:11Z
<p>CarloAlb: </p>
<hr />
<div>{{Infobox device<br />
| manufacturer = OnePlus<br />
| name = 6<br />
| codename = oneplus-enchilada<br />
| image = File:Oneplus-6-phosh-neofetch.jpg<br />
| imagecaption = Running phosh!<br />
| releaseyear = 2018<br />
| category = community<br />
| originalsoftware = Android 8.0 (Up to Android 11) on Linux 4.9<br />
| chipset = Qualcomm SDM845 Snapdragon 845<br />
| cpu = Octa-core (4x 2.8 GHz Kryo 385 Gold & 4x 1.7 GHz Kryo 385 Silver)<br />
| gpu = Adreno 630<br />
| storage = 64/128/256 GB<br />
| display = 1080 x 2280 AMOLED<br />
| memory = 6/8 GB<br />
| architecture = aarch64<br />
<!-- the following status_* questions should be answered with Y - yes, P - partial, N - no, or left blank (for untested or unknown) --><br />
| status_usbnet = Y<br />
| status_flashing = Y<br />
| status_touch = Y<br />
| status_screen = Y<br />
| status_wifi = Y<br />
| status_xwayland = Y<br />
| status_fde = Y<br />
| status_mainline = Y<br />
| status_battery = P<br />
| status_3d = Y<br />
| status_accel = N<br />
| status_haptics = Y<br />
| status_audio = P<br />
| status_bluetooth = Y<br />
| status_camera = N<br />
| status_gps = N<br />
| status_mobiledata = N <br />
| status_sms = N<br />
| status_calls = N<br />
| status = Maintained, supported and upstream!<br />
| booting = yes<br />
| pmoskernel = 5.12.8<br />
| whet_dhry = 6029.9<br />
| status_otg = P<br />
}}<br />
This page documents the status of mainline Linux on the OnePlus 6!<br />
<br />
The OnePlus 6 is an incredibly powerful and efficient mobile device, well regarded and (bar the notch) an excellent portable work horse, getting mainline Linux working means not only freedom from proprietary software, and security updates at OnePlus' discretion, but also the ability to boot any mobile or desktop distro as long as the required software is packaged.<br />
<br />
The phone is currently capable of booting modern Linux with only a few patches, check the table on the right (or above on mobile) for the hardware support checklist.<br />
<br />
== Installing ==<br />
<br />
=== How to enter flash mode ===<br />
<br />
Unplug from USB, hold {{Button|Power}} and {{Button|Volume Up}} until you see "Fastboot Mode" text.<br />
<br />
For the OnePlus 6T, hold {{Button|Power}} and both {{Button|Volume Up}} and {{Button|Volume Down}} to get in Fastboot Mode.<br />
<br />
=== Install steps ===<br />
<br />
The vendor is OnePlus, the codename is "enchilada" for the OnePlus 6 and "fajita" for the OnePlus 6T.<br />
<br />
Follow the [[Installation_guide|general installation guide]], return here when told to (at the "installation and flashing section").<br />
<br />
{{Note|phosh and plasma mobile only support numeric passwords currently, phosh is the most tested user interface}}<br />
<br />
Now run the following, pick a password when prompted.<br />
<pre><br />
pmbootstrap install<br />
</pre><br />
<br />
Reboot back into flash mode (explained above) after each of the following commands (if you encounter weird behaviour like the command getting stuck before the flashing starts).<br />
<br />
By default the rootfs will be flashed to system, this doesn't leave much free space for your applications / data, if you don't mind factory resetting the device you can instead flash to userdata by specifying the partition like below.<br />
<pre><br />
fastboot erase dtbo<br />
pmbootstrap flasher flash_rootfs --partition userdata<br />
pmbootstrap flasher flash_kernel<br />
</pre><br />
<br />
Reboot and you're good to go!<br />
<br />
If you have flashing or booting issues, try first flashing the latest OxygenOS to the slot you want to install postmarketOS to (ie, flash in TWRP from your other slot). If you still have no luck, try flashing OOS 9 as the bootloader can be more forgiving.<br />
<br />
It is possible to dual boot with android when flashing postmarketOS to the system partition by following the guide above and using:<br />
<br />
<pre>fastboot --set-active=[a|b]</pre><br />
<br />
to switch to your inactive slot before flashing.<br />
<br />
=== Fastboot bugs ===<br />
<br />
If you encounter "weird" errors from fastboot, such as "device does not support slots":<br />
<br />
Once the device is in fastboot mode unplug it, then run the <code>flasher</code> commands above until you see the "<waiting for device message>", now choose "reboot bootloader" on the device and press the power button to select, reboot the device while it reboots.<br />
<br />
= Building =<br />
<br />
Feel like helping? Want to learn kernel development?<br />
== [[SDM845_Mainlining|Check out the mainlining guide]] ==<br />
For detailed SDM845 specific instructions on initial device porting and building.<br />
Feel free to contact @caleb (or anyone) in the [https://wiki.postmarketos.org/wiki/Matrix_and_IRC #postmarketos-mainline] matrix channel if you're stuck.<br />
<br />
= Info =<br />
<br />
== Partition map ==<br />
<div class="toccolours mw-collapsible mw-collapsed" style="width: 1000px; overflow: auto;"><br />
<code>oneplus-enchilada:~$ ls -lah /dev/disk/by-partlabel/ </code><br />
<div class="mw-collapsible-content"><br />
<pre><br />
total 0 <br />
drwxr-xr-x 2 root root 2.0K Jan 7 1970 .<br />
drwxr-xr-x 8 root root 160 Jan 7 1970 ..<br />
lrwxrwxrwx 1 root root 10 Jan 7 1970 ALIGN_TO_128K_1 -> ../../sdd1<br />
lrwxrwxrwx 1 root root 10 Jan 7 1970 ALIGN_TO_128K_2 -> ../../sdf1<br />
lrwxrwxrwx 1 root root 11 Jan 7 1970 ImageFv -> ../../sde72<br />
lrwxrwxrwx 1 root root 11 Jan 7 1970 LOGO_a -> ../../sde20<br />
lrwxrwxrwx 1 root root 11 Jan 7 1970 LOGO_b -> ../../sde48<br />
lrwxrwxrwx 1 root root 10 Jan 7 1970 abl_a -> ../../sde8<br />
lrwxrwxrwx 1 root root 11 Jan 7 1970 abl_b -> ../../sde36<br />
lrwxrwxrwx 1 root root 10 Jan 7 1970 aop_a -> ../../sde1<br />
lrwxrwxrwx 1 root root 11 Jan 7 1970 aop_b -> ../../sde29<br />
lrwxrwxrwx 1 root root 11 Jan 7 1970 apdp -> ../../sde63<br />
lrwxrwxrwx 1 root root 10 Jan 7 1970 bluetooth_a -> ../../sde5<br />
lrwxrwxrwx 1 root root 11 Jan 7 1970 bluetooth_b -> ../../sde33<br />
lrwxrwxrwx 1 root root 11 Jan 7 1970 boot_a -> ../../sde11<br />
lrwxrwxrwx 1 root root 11 Jan 7 1970 boot_aging -> ../../sde58<br />
lrwxrwxrwx 1 root root 11 Jan 7 1970 boot_b -> ../../sde39<br />
lrwxrwxrwx 1 root root 10 Jan 7 1970 cdt -> ../../sdd2<br />
lrwxrwxrwx 1 root root 11 Jan 7 1970 cmnlib64_a -> ../../sde13<br />
lrwxrwxrwx 1 root root 11 Jan 7 1970 cmnlib64_b -> ../../sde41<br />
lrwxrwxrwx 1 root root 11 Jan 7 1970 cmnlib_a -> ../../sde12<br />
lrwxrwxrwx 1 root root 11 Jan 7 1970 cmnlib_b -> ../../sde40<br />
lrwxrwxrwx 1 root root 11 Jan 7 1970 config -> ../../sda12<br />
lrwxrwxrwx 1 root root 10 Jan 7 1970 ddr -> ../../sdd3<br />
lrwxrwxrwx 1 root root 11 Jan 7 1970 devcfg_a -> ../../sde14<br />
lrwxrwxrwx 1 root root 11 Jan 7 1970 devcfg_b -> ../../sde42<br />
lrwxrwxrwx 1 root root 11 Jan 7 1970 devinfo -> ../../sde61<br />
lrwxrwxrwx 1 root root 11 Jan 7 1970 dip -> ../../sde62<br />
lrwxrwxrwx 1 root root 10 Jan 7 1970 dsp_a -> ../../sde9<br />
lrwxrwxrwx 1 root root 11 Jan 7 1970 dsp_b -> ../../sde37<br />
lrwxrwxrwx 1 root root 11 Jan 7 1970 dtbo_a -> ../../sde18<br />
lrwxrwxrwx 1 root root 11 Jan 7 1970 dtbo_b -> ../../sde46<br />
lrwxrwxrwx 1 root root 10 Jan 7 1970 frp -> ../../sda6<br />
lrwxrwxrwx 1 root root 10 Jan 7 1970 fsc -> ../../sdf5<br />
lrwxrwxrwx 1 root root 10 Jan 7 1970 fsg -> ../../sdf4<br />
lrwxrwxrwx 1 root root 11 Jan 7 1970 fw_4j1ed_a -> ../../sde21<br />
lrwxrwxrwx 1 root root 11 Jan 7 1970 fw_4j1ed_b -> ../../sde49<br />
lrwxrwxrwx 1 root root 11 Jan 7 1970 fw_4u1ea_a -> ../../sde22<br />
lrwxrwxrwx 1 root root 11 Jan 7 1970 fw_4u1ea_b -> ../../sde50<br />
lrwxrwxrwx 1 root root 11 Jan 7 1970 fw_ufs3_a -> ../../sde23<br />
lrwxrwxrwx 1 root root 11 Jan 7 1970 fw_ufs3_b -> ../../sde51<br />
lrwxrwxrwx 1 root root 11 Jan 7 1970 fw_ufs4_a -> ../../sde24<br />
lrwxrwxrwx 1 root root 11 Jan 7 1970 fw_ufs4_b -> ../../sde52<br />
lrwxrwxrwx 1 root root 11 Jan 7 1970 fw_ufs5_a -> ../../sde25<br />
lrwxrwxrwx 1 root root 11 Jan 7 1970 fw_ufs5_b -> ../../sde53<br />
lrwxrwxrwx 1 root root 11 Jan 7 1970 fw_ufs6_a -> ../../sde26<br />
lrwxrwxrwx 1 root root 11 Jan 7 1970 fw_ufs6_b -> ../../sde54<br />
lrwxrwxrwx 1 root root 11 Jan 7 1970 fw_ufs7_a -> ../../sde27<br />
lrwxrwxrwx 1 root root 11 Jan 7 1970 fw_ufs7_b -> ../../sde55<br />
lrwxrwxrwx 1 root root 11 Jan 7 1970 fw_ufs8_a -> ../../sde28<br />
lrwxrwxrwx 1 root root 11 Jan 7 1970 fw_ufs8_b -> ../../sde56<br />
lrwxrwxrwx 1 root root 10 Jan 7 1970 hyp_a -> ../../sde3<br />
lrwxrwxrwx 1 root root 11 Jan 7 1970 hyp_b -> ../../sde31<br />
lrwxrwxrwx 1 root root 11 Jan 7 1970 keymaster_a -> ../../sde10<br />
lrwxrwxrwx 1 root root 11 Jan 7 1970 keymaster_b -> ../../sde38<br />
lrwxrwxrwx 1 root root 10 Jan 7 1970 keystore -> ../../sda5<br />
lrwxrwxrwx 1 root root 11 Jan 7 1970 limits -> ../../sde67<br />
lrwxrwxrwx 1 root root 11 Jan 7 1970 logdump -> ../../sde71<br />
lrwxrwxrwx 1 root root 11 Jan 7 1970 logfs -> ../../sde69<br />
lrwxrwxrwx 1 root root 10 Jan 7 1970 mdtp_a -> ../../sde7<br />
lrwxrwxrwx 1 root root 11 Jan 7 1970 mdtp_b -> ../../sde35<br />
lrwxrwxrwx 1 root root 10 Jan 7 1970 mdtpsecapp_a -> ../../sde6<br />
lrwxrwxrwx 1 root root 11 Jan 7 1970 mdtpsecapp_b -> ../../sde34<br />
lrwxrwxrwx 1 root root 11 Jan 7 1970 minidump -> ../../sde57<br />
lrwxrwxrwx 1 root root 10 Jan 7 1970 misc -> ../../sda3<br />
lrwxrwxrwx 1 root root 10 Jan 7 1970 modem_a -> ../../sde4<br />
lrwxrwxrwx 1 root root 11 Jan 7 1970 modem_b -> ../../sde32<br />
lrwxrwxrwx 1 root root 10 Jan 7 1970 modemst1 -> ../../sdf2<br />
lrwxrwxrwx 1 root root 10 Jan 7 1970 modemst2 -> ../../sdf3<br />
lrwxrwxrwx 1 root root 11 Jan 7 1970 msadp -> ../../sde64<br />
lrwxrwxrwx 1 root root 11 Jan 7 1970 odm_a -> ../../sda15<br />
lrwxrwxrwx 1 root root 11 Jan 7 1970 odm_b -> ../../sda16<br />
lrwxrwxrwx 1 root root 10 Jan 7 1970 oem_dycnvbk -> ../../sda8<br />
lrwxrwxrwx 1 root root 10 Jan 7 1970 oem_stanvbk -> ../../sda9<br />
lrwxrwxrwx 1 root root 11 Jan 7 1970 op1 -> ../../sde59<br />
lrwxrwxrwx 1 root root 10 Jan 7 1970 op2 -> ../../sda7<br />
lrwxrwxrwx 1 root root 10 Jan 7 1970 param -> ../../sda4<br />
lrwxrwxrwx 1 root root 10 Jan 7 1970 persist -> ../../sda2<br />
lrwxrwxrwx 1 root root 11 Jan 7 1970 qupfw_a -> ../../sde15<br />
lrwxrwxrwx 1 root root 11 Jan 7 1970 qupfw_b -> ../../sde43<br />
lrwxrwxrwx 1 root root 11 Jan 7 1970 reserve1 -> ../../sda10<br />
lrwxrwxrwx 1 root root 11 Jan 7 1970 reserve2 -> ../../sda11<br />
lrwxrwxrwx 1 root root 11 Jan 7 1970 sec -> ../../sde60<br />
lrwxrwxrwx 1 root root 11 Jan 7 1970 splash -> ../../sde66<br />
lrwxrwxrwx 1 root root 11 Jan 7 1970 spunvm -> ../../sde65<br />
lrwxrwxrwx 1 root root 10 Jan 7 1970 ssd -> ../../sda1<br />
lrwxrwxrwx 1 root root 11 Jan 7 1970 sti -> ../../sde70<br />
lrwxrwxrwx 1 root root 11 Jan 7 1970 storsec_a -> ../../sde19<br />
lrwxrwxrwx 1 root root 11 Jan 7 1970 storsec_b -> ../../sde47<br />
lrwxrwxrwx 1 root root 11 Jan 7 1970 system_a -> ../../sda13<br />
lrwxrwxrwx 1 root root 11 Jan 7 1970 system_b -> ../../sda14<br />
lrwxrwxrwx 1 root root 11 Jan 7 1970 toolsfv -> ../../sde68<br />
lrwxrwxrwx 1 root root 10 Jan 7 1970 tz_a -> ../../sde2<br />
lrwxrwxrwx 1 root root 11 Jan 7 1970 tz_b -> ../../sde30<br />
lrwxrwxrwx 1 root root 11 Jan 7 1970 userdata -> ../../sda17<br />
lrwxrwxrwx 1 root root 11 Jan 7 1970 vbmeta_a -> ../../sde17<br />
lrwxrwxrwx 1 root root 11 Jan 7 1970 vbmeta_b -> ../../sde45<br />
lrwxrwxrwx 1 root root 11 Jan 7 1970 vendor_a -> ../../sde16<br />
lrwxrwxrwx 1 root root 11 Jan 7 1970 vendor_b -> ../../sde44<br />
lrwxrwxrwx 1 root root 10 Jan 7 1970 xbl_a -> ../../sdb1<br />
lrwxrwxrwx 1 root root 10 Jan 7 1970 xbl_b -> ../../sdc1<br />
lrwxrwxrwx 1 root root 10 Jan 7 1970 xbl_config_a -> ../../sdb2<br />
lrwxrwxrwx 1 root root 10 Jan 7 1970 xbl_config_b -> ../../sdc2<br />
</pre><br />
</div><br />
</div><br />
<br />
= Bugs =<br />
<br />
== Phosh scaling reset ==<br />
<br />
There is an issue with the <code>device-oneplus-enchilada-phosh</code> subpackage being removed causing the phosh scaling to reset on upgrade / reboot. If this happens you can just run<br />
<pre><br />
sudo apk add device-oneplus-enchilada-phosh<br />
sudo service tinydm restart<br />
</pre><br />
This will reinstall the package and restart phosh, scaling should be back to normal now.<br />
<br />
This issue is [https://gitlab.com/postmarketOS/pmaports/-/issues/1114 being tracked here]<br />
<br />
= Status =<br />
<br />
== Bluetooth ==<br />
<br />
There seems to be a race condition with dbus, running <code>sudo service bluetooth restart</code> will fix bluetooth (until the next reboot).<br />
<br />
{{todo|Is this fixed?}}<br />
<br />
== Audio ==<br />
<br />
The speaker and headphone jack now both work in postmarketOS! Unfortunately we currently can't detect when something is attached to the headphone jack.<br />
<br />
The earpiece speaker has been left disabled as it interfers with the headphone jack, we should be able to resolve this in the future (when call audio is possible).<br />
<br />
= Community Info =<br />
<br />
== postmarketOS users that own the device ==<br />
{{Device owners}}<br />
== Maintainers ==<br />
<br />
* [[User:Kalube|Caleb]]<br />
<br />
== See also ==<br />
* [https://gitlab.com/sdm845-mainline/linux Kernel sources]<br />
* {{MR|1221|pmaports}} Initial merge request.<br />
* {{MR|1271|pmaports}} Updates to add panel mode and WiFi support.<br />
* {{MR|2088|pmaports}} Move the OnePlus 6 to "community" devices category<br />
* {{MR|1967|pmaports}} Switch to common linux-postmarketos-qcom-sdm845 kernel instead of device specific kernel<br />
* {{MR|2206|pmaports}} Update to 5.12.8 and add support for the speaker / headphone jack on the OnePlus 6<br />
* {{MR|2215|pmaports}} Support automatic kernel updates for Android devices (including A/B!)<br />
* [https://gitlab.com/postmarketOS/pmaports/-/tree/master/device/community/device-oneplus-enchilada Enchilada device package]<br />
* [https://gitlab.com/postmarketOS/pmaports/-/tree/master/device/community/device-oneplus-fajita Fajita device package]<br />
* [https://gitlab.com/postmarketOS/pmaports/-/tree/master/main/linux-postmarketos-qcom-sdm845 Kernel package]<br />
<br />
__FORCETOC__</div>
CarloAlb