Initial support for Qualcomm Snapdragon 820 chipset

Bug #1832012 reported by Paolo Pisati
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
linux-snapdragon (Ubuntu)
Invalid
Undecided
Unassigned
Bionic
Fix Released
Undecided
Unassigned

Bug Description

Impact:

Although the Bionic/snapdragon kernel contains the BSP from the Qualcomm landing tree kernel[1], it didn't work on Snapdragon 820 based board (e.g. Qualcomm DB820C APQ8096).

Fix:

Import the necessary patches to make it boot on such a board (and clones).

How to test:

1) put the board in fastboot mode (see [2])
2) generate a compatible boot.img:

$ cat linux/arch/arm64/boot/Image.gz linux/arch/arm64/boot/dts/qcom/apq8096-db820c.dtb > Image.gz+dtb
$ touch ramdisk
$ python android/system/core/mkbootimg/mkbootimg.py --kernel Image.gz+dtb --ramdisk ramdisk --pagesize 4096 --base 0x80000000 --kernel_offset 0x8000 --ramdisk_offset 0x1000000 --tags_offset 0x100 --cmdline 'console=ttyMSM0,115200n8 root=/dev/sda1 net.ifnames=0 init=/lib/systemd/systemd ro rootwait rng_core.default_quality=700 panic=-1 fixrtc earlyprintk earlycon=msm_serial_dm,0x75b0000' --output bionic-snapdragon-db820c-boot.img

3) boot the board using the generated boot.img:

$ fastboot boot bionic-snapdragon-db820c-boot.img

Regression potential:

With new code there's always a degree of regression potential, but all patches (but one) came from Linus's upstream tree, and the only external one, came direclty from the qcom-lt 4.14 tree.

1: https://git.linaro.org/landing-teams/working/qualcomm/kernel.git/log/?h=release/qcomlt-4.14
2: https://www.96boards.org/documentation/consumer/dragonboard/dragonboard820c/installation/board-recovery.md.html

Paolo Pisati (p-pisati)
summary: - Enable the Qualcomm DB820C board
+ Initial support for Qualcomm Snapdragon 820 chipset
Paolo Pisati (p-pisati)
description: updated
description: updated
Paolo Pisati (p-pisati)
description: updated
description: updated
Changed in linux-snapdragon (Ubuntu):
status: New → Invalid
Changed in linux-snapdragon (Ubuntu Bionic):
status: New → Fix Committed
Revision history for this message
Launchpad Janitor (janitor) wrote :
Download full text (16.6 KiB)

This bug was fixed in the package linux-snapdragon - 4.15.0-1058.64

---------------
linux-snapdragon (4.15.0-1058.64) bionic; urgency=medium

  * linux-snapdragon: 4.15.0-1058.64 -proposed tracker (LP: #1834925)

  * Initial support for Qualcomm Snapdragon 820 chipset (LP: #1832012)
    - clk: qcom: Register the gdscs before the clocks
    - scsi: ufs: Extract devfreq registration
    - scsi: ufs: Use freq table with devfreq
    - scsi: ufshcd: Fix NULL pointer dereference for in ufshcd_init
    - Revert "PCI: qcom: add runtime pm support to pcie_port"
    - PCI: qcom: add runtime pm support to pcie_port
    - PCI: qcom: Fix error handling in runtime PM support
    - PCI: qcom: Don't deassert reset GPIO during probe
    - Revert "phy: qcom-qmp: Fix failure path in phy_init functions"
    - Revert "phy: qcom-qmp: Fix phy pipe clock gating"
    - Revert "phy: qcom-qmp: Fix failure path in phy_init functions"
    - phy: qcom-qmp: Fix failure path in phy_init functions
    - phy: qcom-qmp: Fix phy pipe clock gating
    - phy: qcom-qmp: Adapt to clk_bulk_* APIs
    - phy: qcom-qmp: Power-on PHY before initialization
    - phy: qcom-qusb2: Power-on PHY before initialization
    - phy: qcom-qmp: Fix PHY block reset sequence
    - phy: qcom-qmp: Move SERDES/PCS START after PHY reset
    - phy: qcom-qusb2: Add support for different register layouts
    - phy: qcom-qusb2: Add support for QUSB2 V2 version
    - phy: qcom-qmp: Move register offsets to header file
    - phy: qcom-qmp: Add register offsets for QMP V3 PHY
    - phy: qcom-qmp: Add support for QMP V3 USB3 PHY
    - phy: Add USB speed related PHY modes
    - phy: qcom-qusb2: Add support for runtime PM
    - phy: qcom-qmp: Add support for runtime PM
    - phy: add SPDX identifier to QMP and QUSB2 PHY drivers
    - phy: qcom-qmp: Enable pipe_clk before PHY initialization
    - dt-bindings: phy-qcom-qusb2: Update binding for QUSB2 V2 version
    - dt-bindings: phy-qcom-usb2: Add support to override tuning values
    - phy: qcom-qmp: Add QMP V3 USB3 UNI PHY support for sdm845
    - phy: qcom-qusb2: Add QUSB2 PHYs support for sdm845
    - phy: qcom-usb-hs: Mark expected switch fall-through
    - phy: qcom-qmp: Quiet -EPROBE_DEFER from qcom_qmp_phy_probe()
    - phy: qcom-qusb2: Quiet -EPROBE_DEFER from qusb2_phy_probe()
    - phy: Convert to using %pOFn instead of device_node.name
    - phy: Update PHY power control sequence
    - phy: General struct and field cleanup
    - phy: Add QMP phy based UFS phy support for sdm845
    - phy: qcom-ufs: Remove stale methods that handle ref clk
    - scsi/ufs: qcom: Remove ufs_qcom_phy_*() calls from host
    - phy: qcom-ufs: Declare 20nm qcom ufs qmp phy as Broken
    - phy: qcom-qusb2: Use HSTX_TRIM fused value as is
    - phy: qcom-qusb2: Fix HSTX_TRIM tuning with fused value for SDM845
    - phy: core: Allow phy_pm_runtime_xxx API calls with NULL phy
    - phy: core: rework phy_set_mode to accept phy mode and submode
    - phy: qcom-qmp: Utilize fully-specified DT registers
    - phy: qcom-qmp: Expose provided clocks to DT
    - phy: qcom-ufs: Use iopoll.h readl_poll_timeout macro
    - phy: qcom-qmp: Add QMP V3 USB3 PHY support for msm8998
    - phy: qc...

Changed in linux-snapdragon (Ubuntu Bionic):
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.