Jump to content

Qualcomm Snapdragon 835 (MSM8998): Difference between revisions

From postmarketOS Wiki
Deathmist (talk | contribs)
m Enabling PHY_QCOM_UFS is not actually needed for UFS after testing, reformat warning for Xperia devices
Line 40: Line 40:
== UFS internal storage ==
== UFS internal storage ==


'''IF YOUR DEVICE IS A SONY XPERIA DO NOT NEVER EVER EVER DON'T TRY TO ENABLE UFS ON NON-VENDOR/NON-SODP KERNELS! IT WILL ERASE THE CHIP CLEAN (INCLUDING THE BOOTLOADER!) CONSIDER YOURSELF WARNED'''
{{note|IF YOUR DEVICE IS A SONY XPERIA DO NOT NEVER EVER EVER TRY TO ENABLE UFS ON NON-VENDOR/NON-SODP KERNELS! IT WILL ERASE THE CHIP CLEAN (INCLUDING THE BOOTLOADER!) CONSIDER YOURSELF WARNED}}


To enable the device's internal UFS 2.1 host controller (& 14nm UFS QMP PHY), compile the kernel with the following modules enabled:
To enable the device's internal UFS 2.1 host controller (and 14nm UFS QMP PHY), compile the kernel with the following modules enabled:
  CONFIG_SCSI_UFS_QCOM=y
  CONFIG_SCSI_UFS_QCOM=y
  CONFIG_PHY_QCOM_QMP=y
  CONFIG_PHY_QCOM_QMP=y
CONFIG_PHY_QCOM_UFS=y


You can optionally set <code>CONFIG_SCSI_SCAN_ASYNC=y</code> for some additional speedup while booting. Consider also enabling <code>CONFIG_QFMT_V2</code> if you intend on writing data to a <code>userdata</code> partition formatted by Android where disk quotas are normally enabled by default for <code>ext4</code> volumes.
You can optionally set <code>CONFIG_SCSI_SCAN_ASYNC=y</code> for some additional speedup while booting. Consider also enabling <code>CONFIG_QFMT_V2</code> if you intend on writing data to a <code>userdata</code> partition formatted by Android where disk quotas are normally enabled by default for <code>ext4</code> volumes.

Revision as of 10:01, 7 July 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

UFS internal storage

Note IF YOUR DEVICE IS A SONY XPERIA DO NOT NEVER EVER EVER TRY TO ENABLE UFS ON NON-VENDOR/NON-SODP KERNELS! IT WILL ERASE THE CHIP CLEAN (INCLUDING THE BOOTLOADER!) CONSIDER YOURSELF WARNED

To enable the device's internal UFS 2.1 host controller (and 14nm UFS QMP PHY), compile the kernel with the following modules enabled:

CONFIG_SCSI_UFS_QCOM=y
CONFIG_PHY_QCOM_QMP=y

You can optionally set CONFIG_SCSI_SCAN_ASYNC=y for some additional speedup while booting. Consider also enabling CONFIG_QFMT_V2 if you intend on writing data to a userdata partition formatted by Android where disk quotas are normally enabled by default for ext4 volumes.

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 device'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!)