Jump to content

Google Nexus 4 (lg-mako): Difference between revisions

From postmarketOS Wiki
Okias (talk | contribs)
m link to arch kernel
Okias (talk | contribs)
link to chipset wiki
Line 35: Line 35:
| status_otg = Y
| status_otg = Y
| booting = yes
| booting = yes
}}
}}{{Based on SoC|Qualcomm_Snapdragon_600_(APQ8064)|Snapdragon 600}}


== Installation ==
== Installation ==

Revision as of 11:35, 28 December 2021

Note Currently the device is booting into a black screen, see pmaports#209. Help with resolving this is welcome. Please remove this note when the issue has been fixed.
Google (LG) Nexus 4
LG Nexus 4 running Weston
LG Nexus 4 running Weston
Manufacturer Google (LG)
Name Nexus 4
Codename lg-mako
Released 2012
Hardware
Chipset Qualcomm APQ8064 Snapdragon S4 Pro
CPU Quad-core 1.5 GHz Krait
GPU Adreno 320
Display 768x1280 IPS
Storage 8/16 GB
Memory 2 GB
Architecture armv7
Software
Original software Android on Linux 3.4
postmarketOS
Category testing
Pre-built images no
Mainline partial
Features
Flashing
Works
USB Networking
Works
Internal storage
No data
SD card
No data
Battery
Works
Screen
Broken
Touchscreen
Works
Multimedia
3D Acceleration
No data
Audio
No data
Camera
No data
Camera Flash
No data
Connectivity
WiFi
Works
Bluetooth
No data
GPS
No data
NFC
No data
Modem
Calls
No data
SMS
No data
Mobile data
No data
Miscellaneous
FDE
Works
USB OTG
Works
HDMI/DP
No data
Sensors
Accelerometer
No data
Magnetometer
No data
Ambient Light
No data
Proximity
No data
Hall Effect
No data
Haptics
No data
Barometer
No data

Installation

Note FDE (full disk encryption) seems to be broken for lg-mako currently, see pmaports#209
pmbootstrap init
pmbootstrap install
(enter fastboot, see below)
pmbootstrap flasher flash_rootfs
pmbootstrap flasher boot

To flash the kernel, you can choose pmbootstrap flasher flash kernel (but charging and power off doesn't work as expected anymore, see below).

Entering "Fastboot mode"

Hold Volume Down + Power, let go of Power once the device display does something (e.g. turns from battery icon to black screen).

Charging and power off (after flashing the postmarketOS kernel)

Note You don't have to flash the kernel! pmbootstrap flasher boot is also working!

You can flash the postmarketOS kernel, but instead of charging the battery, it will boot straight into postmarketOS (or the on screen keyboard to type in the password). Right now, the best way to charge it from that situation is to boot the recovery TWRP.

You can properly turn the device off by unplugging the usb cable, then booting into fastboot, then choosing power off.

Wifi

We need to package the wcnss.* files for wifi. A version from 2015 can be found here.

Mainline

Note See The Mainline Kernel for a general introduction to mainlining.

Current tree can be found here Qualcomm_Snapdragon_600_(APQ8064)#Mainlining

power_graphic's mainlining progress was here. Read on for generic instructions of what would need to be done.

That most peripherals of the mako should work with mainline as well, once they are enabled in the DTS file. In fact, @vetzki reported in #1079 that the mako boots when using exactly the same DTS as the one from flo (this is not recommended, as misconfiguring your device like that may damage it). SSH appears to be working for a short time before getting kicked out, the display does not work.

A good way forward would be using a minimal version of the flo DTS, where everything but USB is deleted, and fixing USB / trying to get the display working with the DSI Panel Porting Guide. The downstream DTSI files that need to be ported to the upstream kernel are probably located here, and I guess the exact panel name appears when running dmesg after a successful boot (I did not verify this). Please expand this when you're working on it, and report your progress in #postmarketOS. Check out the Mainline Guide.

Partition Layout

Partition layout:

Community Info

postmarketOS users that own the device


Maintainers

  • Ivan Belokobylskiy

Contributors

  • ollieparanoid
  • PabloCastellano and robb4 on IRC: Workaround for red screen bug (#54)

See also