Closed TommyTran732 closed 1 year ago
The newer firmware for OP7 may no longer support locking like is known on OP8 and OP9: https://calyxos.org/news/2022/07/06/oneplus-android-12-relock-issue/
I also have the same update issue on guacamole. If the firmware has the same issue as the op8 and 9 series, can the newer/broken firmware be left off?
There are two issues here:
The first is being unable to install the update, I received a log for this:
11-13 18:31:11.601 1308 1308 I update_engine: [INFO:partition_writer_factory_android.cc(44)] Virtual AB Compression disabled, using Partition Writer for `LOGO`
11-13 18:31:11.604 1308 1308 I update_engine: [INFO:partition_writer.cc(295)] Opening /dev/block/bootdevice/by-name/LOGO_b partition without O_DSYNC
11-13 18:31:11.602 1308 1308 W update_engine: type=1400 audit(0.0:78550): avc: denied { read } for name="sde47" dev="tmpfs" ino=22012 scontext=u:r:update_engine:s0 tcontext=u:object_r:block_device:s0 tclass=blk_file permissive=0
11-13 18:31:11.608 1308 1308 E update_engine: [ERROR:utils.cc(530)] Opening block device /dev/block/bootdevice/by-name/LOGO_b: Permission denied (13)
11-13 18:31:11.612 1308 1308 I update_engine: [INFO:partition_writer.cc(100)] Caching writes.
11-13 18:31:11.617 1308 1308 E update_engine: [ERROR:partition_writer.cc(104)] Unable to open file /dev/block/bootdevice/by-name/LOGO_b: Permission denied (13)
11-13 18:31:11.612 1308 1308 W update_engine: type=1400 audit(0.0:78551): avc: denied { read write } for name="sde47" dev="tmpfs" ino=22012 scontext=u:r:update_engine:s0 tcontext=u:object_r:block_device:s0 tclass=blk_file permissive=0
11-13 18:31:11.621 1308 1308 E update_engine: [ERROR:partition_writer.cc(300)] Unable to open target partition LOGO on slot B, file /dev/block/bootdevice/by-name/LOGO_b
Which shouldn't happen: https://review.lineageos.org/c/LineageOS/android_hardware_oplus/+/340515
The second issue is that the new 12 firmware likely did remove relock support. I can remove the firmware inclusion for OP7 series, but then users either end up:
unlock the bootloader, adb sideloaded
you can adb sideload
while locked, you just can't fastboot update
* on outdated/insecure 11 firmware with bugs, since userspace blobs are expecting 12 * on latest 12 firmware, with no relock support
Personally I think the second option is preferable
Well, the Oneplus 7T is EOL anyways. The firmware will quickly become outdated/insecure as well.
So I guess the question is whether there are any serious vuln that has been fixed between March (which was previously included in the October build) and August.
New 19.1 builds are up for OnePlus 7 series with firmware removed so users can choose.
Firmware is still included on OP8/9.
New 19.1 builds are up for OnePlus 7 series with firmware removed so users can choose.
Firmware is still included on OP8/9.
What about the 20 builds?
I'll compile 20.0 with firmware removed another day.
I'll compile 20.0 with firmware removed another day.
Oh, and I wonder if you have the firmware for the OP7T posted somewhere or should I go ahead and extract it from the stock OS myself?
I'm re-opening this. I just received a report of non-functional touch/screen on guacamole 19.1 with A11 firmware.
A12 firmware may actually be required.
I've added some warnings here: https://divestos.org/index.php?page=news#2022-11
11-15 14:35:59.687 1335 1335 E cdsprpcd: vendor/qcom/proprietary/adsprpc/src/cdsprpcd.c:47:cdsp daemon will restart after 100ms...
11-15 14:35:59.804 1335 1335 I cdsprpcd: vendor/qcom/proprietary/commonsys-intf/adsprpc/src/rpcmem_android.c:158: rpcmem_init_internal: opened ION device fd 4, configured heap IDs: system (0x2000000), contig (0x400000), secure (0x200), secure flags (0x80080000)
11-15 14:35:59.804 1335 1335 I cdsprpcd: vendor/qcom/proprietary/commonsys-intf/adsprpc/src/fastrpc_apps_user.c:2794: fastrpc_apps_user_init done
11-15 14:35:59.804 1335 1335 I cdsprpcd: vendor/qcom/proprietary/commonsys-intf/adsprpc/src/fastrpc_apps_user.c:1203: remote_handle_open: Successfully opened handle 0x0 for '":;./\attachguestos on domain 3
11-15 14:35:59.804 1335 1335 E cdsprpcd: vendor/qcom/proprietary/commonsys-intf/adsprpc/src/fastrpc_apps_user.c:2588: Error 0x200: apps_dev_init failed for domain 3, errno Transport endpoint is not connected
11-15 14:35:59.804 1335 1335 E cdsprpcd: vendor/qcom/proprietary/commonsys-intf/adsprpc/src/fastrpc_apps_user.c:2686: Error 0x200: open_dev (-1) failed for domain 3 (errno Transport endpoint is not connected)
11-15 14:35:59.804 1335 1335 W cdsprpcd: vendor/qcom/proprietary/commonsys-intf/adsprpc/src/fastrpc_apps_user.c:1441:Warning 0xe: remote_get_info failed to get attribute 257 for domain 3 (errno Success)
Ah fun. Divest 20 runs just fine on my 7T with the Android 12 firmware.
Ah fun. Divest 20 runs just fine on my 7T with the Android 12 firmware.
so with the bootloader unlocked?
I've pulled all the OP7 series builds.
Any users who upgraded to yesterday's 19.1 builds with A11 firmware installed and have no touch screen should flash A12 firmware if they are unlocked.
Otherwise they can unlock, flash the previous build, and restore from backup.
Old builds are available here: https://divestos.org/builds/old/old.txt
I will fix the flashing issue and include A12 firmware back for the next builds. Users that are locked will have to migrate regardless.
so if i understand correctly, all op7 users have to unlock their bootloader ?
Yes
I didn't read the update instructions. My 7 pro is not locked. Touch is not working since the update last week Wednesday. I did wait until battery was empty and device shut down itself. Holding Power loooong time did not work. Shut down happened today :) Maybe there is another solution to power it off? But I have no clue how to get into fastboot mode... Hold VolUp+VolDown+Power always starts DivestOS and have to wait until it switches off. What can I do or what should work? How can I manage it to get firmware installed? Seems like I updated at a point in time when the firmware was not included. Cheers, Heiko
PS: adb devices -> unauthorized
@hbarthel you need to manually adb sideload the latest version, should get you back going without any loss since you're unlocked
fix your adb, to access fastboot use volume up + power, to access recovery use volume down + power
also to force most modern devices off can usually use volup+voldown+power, and next time don't wait a week before asking for help :wink:
Thanks a lot. volup+voldown+power worked to power it off, stupid me (yes, could have asked or searched earlier, but had little time) could get into fastboot afterwards (with loaded battery it worked) and updated firmware, that I extracted from latest build. My phone works again. Thank you very much, I am so happy!
PS: they have the wrong keys: https://wiki.lineageos.org/devices/guacamole/#special-boot-modes
@hbarthel firmware is included to be clear, simply installing the update will ensure you're on the correct firmware
Can we sum up this thread?
(I ran into the no-touchscreen issue with my OP7 Pro upgraded from Resurrection Remix (Android 10) to Divested 20, then Bricked it, got OOS11 running, with the locked-only bootloader, den MSM-Tool downgraded to OOS10 (Android 11) and unlocked the bootloader)
What is the current recommended way to install Divested 20 on Oneplus 7 pro?
@bbczeuz Firmware is included in DivestOS, just follow the steps: https://divestos.org/pages/bootloader#fastboot
@SkewedZeppelin Thanks. Works smoothly. (Had some issue with fastboot install getting stuck; switched USB ports and problem solved)
Procedure: Use MSM Tool to install OOS10 (A11), Unlock bootloader, flashboot Divestos, sideload Divestos, works Thanks for your works!
My touchscreen did not work on slot a (but on slot b) after the first installation. I re-did the installation and re-formatted /data multiple times, after then it works now on both slots.
Is there an easy way to restore locking-support? I consider a locked outdated-device more secure than an unlocked device. I don't mind building it myself.
@Tecol87 locking is not supported, and I won't ship outdated firmware please follow the correct steps to ensure both slots are synced:
You cannot simply just downgrade the firmware, you have to downgrade the kernel and the vendor blobs to match it which is non-trivial.
@SkewedZeppelin Thank you very much
I tried updating from the October build to the November build, and it failed to apply the update. I then proceeded to unlock the bootloader, adb sideloaded the November build, and relocked it. It's soft bricked and gave "The current image (boot/recovery) have been destroyed and cannot boot". Maybe it wasn't signed properly or the firmware changed?
It does boot just fine with an unlocked bootloader.