Jump to content

OnePlus One (oneplus-bacon): Difference between revisions

From postmarketOS Wiki
Update installation for new lk2nd instructions
updateing the new boot.img part for size, and delete ln2k as no longer needed.
 
(9 intermediate revisions by 3 users not shown)
Line 15: Line 15:
| memory = 3 GB
| memory = 3 GB
| architecture = armv7
| architecture = armv7
| type = handset
| status_usbnet = Y
| status_usbnet = Y
| status_flashing = Y
| status_flashing = Y
Line 48: Line 49:
== Installation ==
== Installation ==


For installation you need to flash [[lk2nd]] and flash the rootfs. Do not flash the <code>boot</code> partition since lk2nd uses [https://github.com/msm8916-mainline/lk2nd/issues/113 fs-boot] functionality to boot the kernel from the <code>/boot</code> partition of the rootfs.
Flashing the standart way (boot + rootfs) works fine under mainline kernel.
<syntaxhighlight lang="shell-session">
$ pmbootstrap flasher boot
$ pmbootstrap flasher flash_rootfs --partition userdata
</syntaxhighlight>


<source lang="shell-session">
Be aware, the boot partition has a size of 16mb. the newer Kernels are bigger.
$ pmbootstrap flasher flash_lk2nd
 
$ pmbootstrap flasher flash_rootfs --partition userdata
including '''deviceinfo_create_initfs_extra=true''' brings it back to a stable way.
</source>
 
Release 6 of the mainline kernel is established, and updates should work properly now for the boot size.


=== Entering fastboot mode ===
=== Entering fastboot mode ===
Line 78: Line 84:


Check that <code>wlan0</code> device MAC address is not <code>00:00:00:00:00:00</code>. If it is, change it to any other available one like this:  
Check that <code>wlan0</code> device MAC address is not <code>00:00:00:00:00:00</code>. If it is, change it to any other available one like this:  
<source lang="shell-session">
<syntaxhighlight lang="shell-session">
# ip link set dev wlan0 address 70:85:c2:d9:2b:e0
# ip link set dev wlan0 address 70:85:c2:d9:2b:e0
</source>
</syntaxhighlight>


If the Mac is not <code>00:00:00:00:00:00</code> try to restart NetworkManager by executing:
If the Mac is not <code>00:00:00:00:00:00</code> try to restart NetworkManager by executing:
<source lang="shell-session">
<syntaxhighlight lang="shell-session">
# sudo service networkmanager restart
# service networkmanager restart
</source>
</syntaxhighlight>


Most likely you want create Initscript for working network when boot.
Most likely you want create Initscript for working network when boot.


Create <code>/etc/init.d/wlanhwaddr</code>:
Create <code>/etc/init.d/wlanhwaddr</code>:
<source lang="sh">
<syntaxhighlight lang="bash">
#!/sbin/openrc-run
#!/sbin/openrc-run
command=/sbin/ip
command=/sbin/ip
Line 100: Line 106:
   before networkmanager
   before networkmanager
}
}
</source>
</syntaxhighlight>
Install:
Install:
<source lang="shell-session">
<syntaxhighlight lang="shell-session">
# sudo chmod 755 /etc/init.d/wlanhwaddr
# chmod 755 /etc/init.d/wlanhwaddr
# sudo rc-update add wlanhwaddr
# rc-update add wlanhwaddr
</source>
</syntaxhighlight>
 
=== 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:
<syntaxhighlight lang="shell-session"># sh -c 'echo 0 > /sys/class/backlight/lcd-backlight/brightness'</syntaxhighlight>
or
<syntaxhighlight lang="shell-session"># echo 0 > /sys/devices/platform/soc/f9924000.i2c/i2c-1/1-0036/backlight/lcd-backlight/brightness</syntaxhighlight>
 
=== 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 ==
== Links ==

Latest revision as of 09:06, 9 February 2025

OnePlus One
OnePlus One running Weston
OnePlus One running Weston
Manufacturer OnePlus
Name One
Codename oneplus-bacon
Released 2014
Type handset
Hardware
Chipset Qualcomm Snapdragon 801 (MSM8974AC)
CPU Quad-core 2.5 GHz Krait 400
GPU Adreno 330
Display 1080x1920 IPS
Storage 16/64 GB
Memory 3 GB
Architecture armv7
Software
Original software Android
Original version 4.4.2 on Linux 3.4
postmarketOS
Category testing
Pre-built images no
Mainline yes
Features
Flashing
Works
USB Networking
Works
Internal storage
No data
SD card
No data
Battery
Works
Screen
Works
Touchscreen
Works
Multimedia
3D Acceleration
Partial
Audio
Broken
Camera
Broken
Camera Flash
No data
Connectivity
WiFi
Works
Bluetooth
Works
GPS
Broken
NFC
No data
Modem
Calls
Broken
SMS
Works
Mobile data
Works
Miscellaneous
FDE
Broken
USB OTG
Broken
HDMI/DP
No data
Sensors
Accelerometer
Broken
Magnetometer
No data
Ambient Light
No data
Proximity
No data
Hall Effect
No data
Haptics
No data
Barometer
No data


Contributors

Users owning this device

  • Bdju (Notes: water damaged and doesn't boot)
  • Blackwell
  • Double-hash (Notes: damaged screen & touchscreen, running pmOS)
  • Eloy (Notes: Broken touchscreen)
  • Fizzo
  • Hastalavista (Notes: PMOS edge w/ mainline kernel, WiFi intermittently failing)
  • IonAgorria (Notes: PMOS - Damaged)
  • Jrg (Notes: Broken touchscreen)
  • KenOokamiHoro (Notes: SIM Card slot was broken. Running LineageOS 15.1)
  • Ksqeib (Notes: Using as Minecraft Server)
  • MasterPlexus (Notes: with PMO as small server, Mainline)
  • Maufl
  • Noocsharp
  • Nspire
  • Poipa
  • Toastal (Notes: tried pmOS running XMPP server, but plagued with hard drive issues after a few days running that make it go read-only every time I reinstalled the OS)
  • Val (Notes: PmOS for Docker server)
  • Vipaol (Notes: LOS)
  • Z3ntu


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