Jump to content

Coolpad Y80D (coolpad-coolpady80d): Difference between revisions

From postmarketOS Wiki
m correct android version
this device is falling back to armv7 due to strange regulator - documenting first
Line 14: Line 14:
| display = 540x960 LCD
| display = 540x960 LCD
| memory = 1 GB
| memory = 1 GB
| architecture = aarch64
| architecture = armv7
<!-- the following status_* questions should be answered with Y for yes, P for partial, N for no, - for N/A or unavailable, or left blank for untested or unknown -->
<!-- the following status_* questions should be answered with Y for yes, P for partial, N for no, - for N/A or unavailable, or left blank for untested or unknown -->
| status_usbnet = Y
| status_usbnet = Y
Line 50: Line 50:
| status_fossbootloader = <!-- Device has a free and open source bootloader -->
| status_fossbootloader = <!-- Device has a free and open source bootloader -->
| booting = yes
| booting = yes
| pmoskernel = 6.2-rc5
| pmoskernel = Close-to-mainline 6.2-rc5


<!-- you can also use these lines if you need to:
<!-- you can also use these lines if you need to:
Line 71: Line 71:
<!-- you can use {{My devices}} on your profile page to show table with all your devices -->
<!-- you can use {{My devices}} on your profile page to show table with all your devices -->


== Important notice ==
== Why armv7? ==
See: [[Huawei_Ascend_G7_(huawei-g7)|wiki page about the Huawei Ascend G7]].
With a quirky bootloader that only supports booting 32-bit armv7 kernels and without secure boot, this device was <i>supposed</i> to be running postmarketOS and mainline on aarch64, with [[Lk2nd/Lk1st|lk1st]] being used as the primary bootloader. However, due to a strange method the device uses to implement a regulator for powering the panel, which as of now does not yet have a solution on [https://github.com/msm8916-mainline/linux msm8916-mainline/linux] or [[Lk2nd/Lk1st|lk1st]], plus an unknown "load yl image" boot stage that happens BEFORE the system bootloader as shown in the UART output, we will fall back to armv7 in order to make use of the stock bootloader - which in contrast IS capable of turning on the regulator and thus the panel - as a workaround for the display problem. This should be changed once a suitable solution is found!
Similar to the aforementioned device, the Coolpad Y80D's stock firmware is NOT capable of booting aarch64 kernels. On top of that, although never locked, these facts about the stock bootloader made it impossible to use lk2nd to substitute:
 
* The bootloader has been stripped of the 'flash' command.
=== Reference: Early boot log ===
* A typical lk2nd build was not able to boot on this device - one have to use the Patch Bootimg script included with lk2nd after build to generate a bootable lk2nd image using the lk binary and a known working bootimg file.
<source>
* Even booted, lk2nd would indicate that ARM64 is unavailable.
Format: Log Type - Time(microsec) - Message
Therefore, lk1st is mandatory for a mainline kernel to load on this device.
Log type: B - since boot(excluding boot rom). D - delta
Since no data regarding this device has been upstreamed, the process will not be documented here, but it is generally the same to the process for the Huawei Ascend G7.
B -    109769 - SBL1, Start
{{Warning|Do note that NO KNOWN EDL TESTPOINTS OR KEY COMBOS have been found for this device! If you wish to replace the device's stock bootloader, be extra careful not to make anything go wrong, or your device will be BRICKED and REMAIN BRICKED BEFORE A HARDWARE-BASED METHOD TO ACCESS EDL IS FOUND!}}
B -    116479 - pm_device_init, Start
D -    11254 - pm_device_init, Delta
B -    127764 - boot_flash_init, Start
D -        0 - boot_flash_init, Delta
B -    131790 - boot_config_data_table_init, Start
D -    23088 - boot_config_data_table_init, Delta
B -    159576 - sbl1_ddr_set_params, Start
B -    161467 - Pre_DDR_clock_init, Start
D -      183 - Pre_DDR_clock_init, Delta
D -        0 - sbl1_ddr_set_params, Delta
B -    180926 - pm_driver_init, Start
D -      4209 - pm_driver_init, Delta
B -    185196 - clock_init, Start
D -        30 - clock_init, Delta
B -    198341 - Image Load, Start
D -    22448 - QSEE Image Loaded, Delta
B -    221521 - sbl1_efs_handle_cookies, Start
D -      213 - sbl1_efs_handle_cookies, End
B -    226310 - Image Load, Start
D -      3416 - QHEE Image Loaded, Delta
B -    232928 - Image Load, Start
D -      6984 - RPM Image Loaded, Delta
B -    239913 - memcmp tz ok
B -    242078 - boot_flash_configure_target_image ok
B -    246928 - boot_load_yl_image open iamge ok
B -    251411 - sbl find the key
B -    596183 - boot_load_yl_image trans_read iamge ok
B -    597769 - Image Load, Start
D -      7656 - APPSBL Image Loaded, Delta
B -    605455 - QSEE Execution, Start
D -        91 - QSEE Execution, Delta
B -    609695 - SBL1, End
D -    502213 - SBL1, Delta
Android Bootloader - UART_DM Initialized!!!
</source>
== How to enter flash mode ==
== How to enter flash mode ==
=== Stock bootloader ===
=== Stock bootloader ===

Revision as of 09:12, 11 May 2023

Coolpad Y80D
TBA
TBA
Manufacturer Coolpad
Name Y80D
Codename coolpad-coolpady80d
Released 2015
Hardware
Chipset Qualcomm Snapdragon 410 (MSM8916)
CPU 4x ARM Cortex-A53
GPU Adreno 306
Display 540x960 LCD
Storage 8 GB
Memory 1 GB
Architecture armv7
Software
Original software Android
Original version 4.4.4
postmarketOS
Category testing
Pre-built images no
Mainline yes
postmarketOS kernel Close-to-mainline 6.2-rc5
Features
Flashing
Works
USB Networking
Works
Internal storage
No data
SD card
No data
Battery
No data
Screen
Broken
Touchscreen
No data
Touchpad
No data
Multimedia
3D Acceleration
No data
Audio
No data
Camera
No data
Camera Flash
No data
IR TX
No data
Connectivity
WiFi
Works
Bluetooth
Works
GPS
No data
NFC
No data
Modem
Calls
No data
SMS
No data
Mobile data
No data
Miscellaneous
FDE
No data
HDMI/DP
No data
Sensors
Accelerometer
No data
Magnetometer
No data
Ambient Light
No data
Proximity
No data
Haptics
No data
Power Sensor
No data
TODO TODO: Mainline and upstream device.

Contributors

Users owning this device

  • Nphuracm (Notes: PCB exposed, touchscreen connection dead)


Why armv7?

With a quirky bootloader that only supports booting 32-bit armv7 kernels and without secure boot, this device was supposed to be running postmarketOS and mainline on aarch64, with lk1st being used as the primary bootloader. However, due to a strange method the device uses to implement a regulator for powering the panel, which as of now does not yet have a solution on msm8916-mainline/linux or lk1st, plus an unknown "load yl image" boot stage that happens BEFORE the system bootloader as shown in the UART output, we will fall back to armv7 in order to make use of the stock bootloader - which in contrast IS capable of turning on the regulator and thus the panel - as a workaround for the display problem. This should be changed once a suitable solution is found!

Reference: Early boot log

Format: Log Type - Time(microsec) - Message
Log type: B - since boot(excluding boot rom).  D - delta
B -    109769 - SBL1, Start
B -    116479 - pm_device_init, Start
D -     11254 - pm_device_init, Delta
B -    127764 - boot_flash_init, Start
D -         0 - boot_flash_init, Delta
B -    131790 - boot_config_data_table_init, Start
D -     23088 - boot_config_data_table_init, Delta
B -    159576 - sbl1_ddr_set_params, Start
B -    161467 - Pre_DDR_clock_init, Start
D -       183 - Pre_DDR_clock_init, Delta
D -         0 - sbl1_ddr_set_params, Delta
B -    180926 - pm_driver_init, Start
D -      4209 - pm_driver_init, Delta
B -    185196 - clock_init, Start
D -        30 - clock_init, Delta
B -    198341 - Image Load, Start
D -     22448 - QSEE Image Loaded, Delta
B -    221521 - sbl1_efs_handle_cookies, Start
D -       213 - sbl1_efs_handle_cookies, End
B -    226310 - Image Load, Start
D -      3416 - QHEE Image Loaded, Delta
B -    232928 - Image Load, Start
D -      6984 - RPM Image Loaded, Delta
B -    239913 - memcmp tz ok
B -    242078 - boot_flash_configure_target_image ok
B -    246928 - boot_load_yl_image open iamge ok
B -    251411 - sbl find the key
B -    596183 - boot_load_yl_image trans_read iamge ok
B -    597769 - Image Load, Start
D -      7656 - APPSBL Image Loaded, Delta
B -    605455 - QSEE Execution, Start
D -        91 - QSEE Execution, Delta
B -    609695 - SBL1, End
D -    502213 - SBL1, Delta
Android Bootloader - UART_DM Initialized!!!

How to enter flash mode

Stock bootloader

With a USB cable plugged in, press and hold Vol. Up+Power to access the stock Fastboot interface.

Installation

No changes have been committed upstream as of the time of writing. Therefore, it will not be documented yet.

Serial via UART

A UART RX pin has not been located yet, but the TX end of UART is located on the microUSB ID pin. It is possible to get kernel output there.

See also