Jump to content

Qualcomm Snapdragon 835 (MSM8998): Difference between revisions

From postmarketOS Wiki
Deathmist (talk | contribs)
m MSM8998: UFS storage works, USB (2.0) works on Xiaomi Mi 6, Wi-Fi tries to load FW & BT works with qca FW!
Deathmist (talk | contribs)
Add some initial info including a Bluetooth how-to :D
Line 1: Line 1:
{{Infobox soc
{{Infobox soc
| manufacturer = Qualcomm
| name = MSM8998
| name = MSM8998
| manufacturer = Qualcomm
| arch = aarch64
| arch = aarch64
| cpu = 4x 2.45 GHz Kryo 280 Gold, 4x 1.9 GHz Kryo 280 Silver
| gpu = Adreno 540
| year = 2017
| year = 2017
| cpu = 4x 2.45 GHz Kryo 280, 4x 1.9 GHz Kryo 280
| gpu = Adreno 540
| process = 10
| process = 10
| mainline = yes
| mainline = yes
Line 11: Line 11:
| status_uart =  
| status_uart =  
| status_storage = Y
| status_storage = Y
| status_usb = Y
| status_usb = P
| status_display = P
| status_display = P
| status_gpu =  
| status_gpu =  
Line 24: Line 24:
| status_camera =  
| status_camera =  
}}
}}
[https://www.qualcomm.com/products/snapdragon-835-mobile-platform MSM8998] (or Snapdragon 835) is a high-end Qualcomm SoC released in 2017 with mainline support originally added for the [https://patchwork.kernel.org/cover/10586661/ MTP (proven reference design) board] towards the end of 2018.


== Devices ==
== Devices ==
Line 35: Line 37:
|more results text=
|more results text=
}}
}}
== Bluetooth ==
Getting Bluetooth to work should be trivial assuming you compile the kernel with the following modules enabled:
CONFIG_RFKILL=m
CONFIG_BT_RFCOMM=y
CONFIG_BT_BNEP=y
CONFIG_BT_HIDP=y
CONFIG_BT_HS=y
CONFIG_BT_LE=y
After those are set and you've copied the needed kernel modules over to the rootfs in <code>/lib/modules/</code> you just need the following firmware files in <code>/lib/firmware/qca/</code>:
crbtfw21.tlv
crnv21.bin
Those can be supplied directly from <code>[https://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git/tree/qca linux-firmware]</code> and they should work fine, but if not you'll need to grab the files from your phone's firmware partitions.
== See also ==
[https://github.com/JamiKettunen/linux-mainline-oneplus5 linux-mainline-oneplus5] A mainline kernel fork with some patches for MSM8998 and OnePlus 5/5T support (check the [https://github.com/JamiKettunen/linux-mainline-oneplus5/commits/linux-5.7 5.7 branch commits] for a "step-by-step guide")
[[OnePlus_5_(oneplus-cheeseburger)#Mainline_kernel]]
== Who's working on it ==
* [[User:Deathmist]] (@deathmist on Matrix)
* [[User:R0551]] (@r0551 on Matrix)
* [[User:Degdag]] (@degdag on Matrix)
(feel free to add yourself here if you're working on MSM8998 mainlining!)

Revision as of 10:22, 29 June 2020

Qualcomm MSM8998
Manufacturer Qualcomm
Name MSM8998
Architecture aarch64
CPU 4x 2.45 GHz Kryo 280 Gold, 4x 1.9 GHz Kryo 280 Silver
GPU Adreno 540
Year 2017
Process 10nm
Mainline yes
Components
CPU
Works
UART
No data
Storage
Works
USB
Partial
Display
Partial
GPU
No data
Pinctrl
Works
I²C
Works
SPI
No data
Audio
No data
Video
No data
Thermal
No data
WiFi
Partial
Bluetooth
Works
Modem
No data
GPS
No data
Camera
No data
NPU
No data
Suspend
No data
Ethernet
No data
SATA
No data


MSM8998 (or Snapdragon 835) is a high-end Qualcomm SoC released in 2017 with mainline support originally added for the MTP (proven reference design) board towards the end of 2018.

Devices

No results

Bluetooth

Getting Bluetooth to work should be trivial assuming you compile the kernel with the following modules enabled:

CONFIG_RFKILL=m
CONFIG_BT_RFCOMM=y
CONFIG_BT_BNEP=y
CONFIG_BT_HIDP=y
CONFIG_BT_HS=y
CONFIG_BT_LE=y

After those are set and you've copied the needed kernel modules over to the rootfs in /lib/modules/ you just need the following firmware files in /lib/firmware/qca/:

crbtfw21.tlv
crnv21.bin

Those can be supplied directly from linux-firmware and they should work fine, but if not you'll need to grab the files from your phone's firmware partitions.

See also

linux-mainline-oneplus5 A mainline kernel fork with some patches for MSM8998 and OnePlus 5/5T support (check the 5.7 branch commits for a "step-by-step guide")

OnePlus_5_(oneplus-cheeseburger)#Mainline_kernel

Who's working on it

(feel free to add yourself here if you're working on MSM8998 mainlining!)