OnePlus One (oneplus-bacon)

== Contributors ==
* flacks
* Nimayer
* Julian Goldsmith
== Users owning this device ==
== Installation ==
Flashing the standart way (boot + rootfs) works fine under mainline kernel.
$ pmbootstrap flasher boot
$ pmbootstrap flasher flash_rootfs --partition userdata
Be aware, the boot partition has a size of 16mb. the newer Kernels are bigger.
including deviceinfo_create_initfs_extra=true brings it back to a stable way.
Release 6 of the mainline kernel is established, and updates should work properly now for the boot size.
=== Entering fastboot mode ===
From a power off state, hold the volume up and power buttons until the device vibrates. The display should then light up and say "Fastboot Mode".
== WiFi and Bluetooth ==
WiFi and Bluetooth are working, but aren't well-tested. The firmware isn't packaged yet, so you will need to get it from the partitions on your device. For Bluetooth, you will need to install bluez and enable the bluetooth service.
== Cell usage ==
oFono support shouldn't take too much to get up and running. Adding the remoteproc node, using qmictl (possibly more utilities), and using a patched oFono should get basic support up and running.
== Troubleshooting ==
=== Fastboot unknown chunk type ===
Nimayer received the message "FAILED (remote: Unknown chunk type)" when trying to flash the rootfs to userdata.
It may be possible to fix the issue by flashing a new OxygenOS image. If that doesn't work, try flashing postmarketOS using a recovery zip.
=== wlan0 interface is available but WiFi is not working ===
Check that wlan0 device MAC address is not 00:00:00:00:00:00. If it is, change it to any other available one like this: 
# ip link set dev wlan0 address 70:85:c2:d9:2b:e0
If the Mac is not 00:00:00:00:00:00 try to restart NetworkManager by executing:
# service networkmanager restart
Most likely you want create Initscript for working network when boot.
Create /etc/init.d/wlanhwaddr:
#!/sbin/openrc-run
command=/sbin/ip
command_args="link set dev wlan0 address 70:85:c2:d9:2b:e0"
description="WLAN hw-addr setter"
depend() {
 before networkmanager
}
Install:
# chmod 755 /etc/init.d/wlanhwaddr
# rc-update add wlanhwaddr
=== Backlight is not completley going to off ===
interims as a workaround, in mainline kernel a patch is included, to switch the Baclight to off. This is a workaround, only helpfull under the usage as a mini Server with no need of display:
# sh -c 'echo 0 > /sys/class/backlight/lcd-backlight/brightness'
or
# echo 0 > /sys/devices/platform/soc/f9924000.i2c/i2c-1/1-0036/backlight/lcd-backlight/brightness
=== rootfs is on the wrong (too small) partition ===
this happens if you flash by mistake without --userpartition (which is on bacon /dev/mmcblk0p28p2 with 55 gb). standart system-partition has only 1,4 GB, wich initially let it flash and use, but fast it run out of space. 
after mistaken, you have to reflash rootfs to --userdata, and to clean the system partition to let it boot correctly:
<synyaxhighlight lang="shell-session">
$ fastboot format system
$ pmbootstrap flasher flash_rootfs --userdata
</syntaxhighlight>
== Links ==
* 
* (close to mainline)
* (downstream vendor)
* Quick setup script for Docker
* UbuntuTouch port of this device