LG Optimus L3 II (lg-vee3e)

Contributors

 * LegoLivesMatter

Maintainer(s)

 * LegoLivesMatter

How to enter flash mode
While the device is off, hold Volume Up (for fastboot) / Volume Down (for recovery) + Home + Power until the screen turns on. When it turns on, release the power button, but keep pressing the other buttons until the device boots into fastboot (it will stay on the LG splashscreen, but will be visible with "fastboot devices") or recovery (will be obvious).

Installation
Only the boot image can be flashed using fastboot (requires flash:raw instead of flash, otherwise you will get a "Couldn't parse partition size '0x'" error), the rootfs must be flashed using an Android recovery zip.

WiFi
Firmware has been extracted from an unofficial CM11 ROM, and the files are the following:
 * WCN1314_cfg.dat
 * WCN1314_qcom_cfg.ini
 * WCN1314_qcom_fw.bin
 * WCN1314_qcom_wlan_nv.bin

However, the drivers (librasdioif.ko and wlan.ko) are compiled as modules which don't get copied to the rootfs (can be found in the out directory though), and when copied and loaded the following errors are found in dmesg:

[ 102.967091] wlan: module is from the staging directory, the quality is unknown, you have been warned. [ 102.967323] wlan: module license 'Proprietary' taints kernel. [ 102.983053] wlan: Unknown symbol libra_sdiocmd52 (err 0) [ 102.983083] wlan: Unknown symbol libra_sdio_configure_suspend_resume (err 0) [ 102.983094] wlan: Unknown symbol libra_sdio_memcpy_toio (err 0) [ 102.983181] wlan: Unknown symbol libra_sdio_register_shutdown_hdlr (err 0) [ 102.983193] wlan: Unknown symbol libra_getsdio_funcdev (err 0) [ 102.983204] wlan: Unknown symbol libra_sdio_writesb (err 0) [ 102.983224] wlan: Unknown symbol libra_claim_host (err 0) [ 102.983319] wlan: Unknown symbol gCard_rem_event_var (err 0) [ 102.983394] wlan: Unknown symbol libra_enable_sdio_irq (err 0) [ 102.983441] wlan: Unknown symbol libra_disable_sdio_irq_capability (err 0) [ 102.983488] wlan: Unknown symbol libra_sdio_readsb (err 0) [ 102.983604] wlan: Unknown symbol libra_sdio_setprivdata (err 0) [ 102.983629] wlan: Unknown symbol libra_detect_card_change (err 0) [ 102.983754] wlan: Unknown symbol libra_sdio_set_clock (err 0) [ 102.983819] wlan: Unknown symbol libra_sdio_getprivdata (err 0) [ 102.983931] wlan: Unknown symbol gShutdown_event_var (err 0) [ 102.983948] wlan: Unknown symbol libra_sdio_configure (err 0) [ 102.983971] wlan: Unknown symbol libra_release_host (err 0) [ 102.984001] wlan: Unknown symbol libra_sdio_notify_card_removal (err 0) [ 102.984059] wlan: Unknown symbol libra_sdio_memcpy_fromio (err 0) [ 102.984089] wlan: Unknown symbol libra_sdio_get_card_id (err 0) [ 102.984154] wlan: Unknown symbol libra_sdio_deconfigure (err 0) [ 102.984174] wlan: Unknown symbol chip_power_qrf6285 (err 0) [ 102.984199] wlan: Unknown symbol libra_enable_sdio_irq_in_chip (err 0) [ 122.173208] librasdioif: unknown relocation: 3

UPDATE 5/11/2021: The unknown relocation 3 error is caused by a too recent GCC version, when the kernel is compiled with GCC 4 the modules still don't get copied to the initramfs by default, although librasdioif loads fine. However, wlan still fails to load, showing these errors:

[  77.909841] wlan: module is from the staging directory, the quality is unknown, you have been warned. [  77.909899] wlan: module license 'Proprietary' taints kernel. [  77.984461] wlan: loading driver v0.2.2.644 [  77.984569] smps3: Failed to create debugfs directory [  77.988609] [2516:F :HDD] hdd_module_init: Libra WLAN not detected yet. [  78.240728] [2516:F :HDD] hdd_module_init: Libra WLAN not detected yet. [  78.500074] [2516:F :HDD] hdd_module_init: Libra WLAN not detected yet. [  78.760519] [2516:F :HDD] hdd_module_init: Libra WLAN not detected yet. [  79.020583] [2516:F :HDD] hdd_module_init: Libra WLAN not detected yet. [  79.280994] [2516:F :HDD] hdd_module_init: Libra WLAN not detected yet. [  79.540316] [2516:F :HDD] hdd_module_init: Libra WLAN not detected yet. [  79.540386] [2516:F :VOS] vos_chipPowerDown: Libra WLAN sdio device is NULL [  79.540416] exiting [  80.564869] [2516:F :HDD] hdd_module_init: Retry Libra WLAN not detected yet. [  81.570809] [2516:F :HDD] hdd_module_init: Retry Libra WLAN not detected yet. [  81.574083] [2516:F :HDD] hdd_module_init: Libra WLAN not found!! [  81.575864] [2516:F :VOS] vos_chipPowerDown: Libra WLAN sdio device is NULL [  81.575983] exiting [  81.599071] wlan: driver load failure

According to Caleb on Matrix, this driver requires some configuration to work, which is yet to be researched.

Modem
Firmware has been extracted from an unofficial CM11 ROM, and the files are the following:


 * yamato_pm4.fw
 * yamato_pfp.fw

These firmware files appear to be kgsl/downstream 3D related, at least according to GNUtoo on #replicant. This entire section might be invalid.

When tested with oFono, the following worked:


 * Enabling and setting modem online
 * Detecting and configuring SIM card
 * Scanning for operators
 * Sending USSD codes (I tested the one for balance)

However, SMSes initially do seem to work, but the receiving party never gets the SMS. Judging by the balance, the SMS never got sent in the first place or it failed to send. If you successfully send an SMS, please contact me on GitLab or Matrix and make sure to include the exact procedure you used to send the SMS (including whether or not you added/removed one or more firmware files or perhaps used another modem service, such as ModemManager.

Known issues

 * Xorg triggers a lot of  errors, reason is still unknown. Xfce crashes the system when started by LightDM, but works when started with  . MATE and Sxmo can be started by LightDM/TinyDM without any issues, except the   spam.
 * Screen has a red tint. UPDATE 5/16/2021: fixed in