Qualcomm Snapdragon 600 (APQ8064)

From postmarketOS
Qualcomm APQ8064
APQ8064 SoC in ceramic BGA capsule
APQ8064 SoC in ceramic BGA capsule
Manufacturer Qualcomm
Name APQ8064
Architecture armv7
GPU Adreno 320
Year 2013
Process 28nm
Mainline yes
Community Page https://github.com/apq8064-mainline
Components
CPU
Works
UART
Works
Storage
Works
USB
Works
Display
Works
GPU
Broken
Pinctrl
Works
I²C
Works
SPI
Audio
Broken
Video
Thermal
Works
WiFi
Works
Bluetooth
Modem
Broken
GPS
Camera
NPU
Suspend
Ethernet


Devices

Snapdragon 600 (APQ8064[-AB])

Device Codename Mainline
Amazon Fire TV amazon-bueller
Asus MeMO Pad FHD 10 (ME302KL) asus-duma
Google (ASUS) Nexus 7 (2013) LTE asus-deb P
Google (ASUS) Nexus 7 (2013) WIFI asus-flo P
Google (LG) Nexus 4 lg-mako P
HTC Droid DNA / Butterfly htc-monarudo
HTC One M7 htc-m7
LG G Pad 8.3 lg-v500
LG G Pad 8.3 LTE lg-altev
Pantech VEGA R3 pantech-ef50
Samsung Galaxy S4 samsung-jflte
Samsung Galaxy S4 Value Edition samsung-jfvelte P
SHARP AQUOS PHONE SERIE SHL22 sharp-shl22
Sony Xperia Z sony-yuga P
Xiaomi Mi 2 xiaomi-aries

Status

  • 4.11 kernel in best shape, since it's not LTS, doesn't have security patches
  • ..IOMMU and DMA got broken since 4.12-rc1 [1]
  • 4.14 somehow work +- reliably [2] [3]
  • 4.19 some issues with wifi scanning, GPU sometimes work [4]
  • 5.4 seems to be working, has to be enabled manually Wi-Fi which kills usb
  • 5.10 working [5] thou there are issues with USB (must be connected at boot to get connection, when WiFi connects got lost, when connected WiFi is lost and usb still don't work)
  • 5.13+ kernel with APQ8064 you must pass to cmdline fw_devlink=permissive
  • -next working! needs 5.13+ hack and currently framebuffer freeze after while

Note:

  • for getting GPU to work you'll need firmware.
  • for WiFi you need also firmware and you can enable WiFi by running echo start > /sys/class/remoteproc/remoteproc0/state

Mainlining

Development

LTS

I'm trying to ensure that all relevant changes get backported at least to the latest LTS (at moment of writing 5.10).

If you have device DTS which works with any of these kernels, feel free to send MR!

To-do list for mainline

  • Check if drm/msm/adreno/a3xx is in line with latest downstream (this seems like a good reference)
  • Test, test test :)

Block Diagram

APQ8064 block diagram


Documentation