Skip to content

Enable PCIe for Shikra#684

Open
sushrut-trivedi wants to merge 10 commits into
qualcomm-linux:qcom-6.18.yfrom
sushrut-trivedi:kernel-6.18
Open

Enable PCIe for Shikra#684
sushrut-trivedi wants to merge 10 commits into
qualcomm-linux:qcom-6.18.yfrom
sushrut-trivedi:kernel-6.18

Conversation

@sushrut-trivedi

@sushrut-trivedi sushrut-trivedi commented Jun 10, 2026

Copy link
Copy Markdown

This series enables PCIe on Shikra.

Exception JIRA: https://jira-dc.qualcomm.com/jira/projects/QLIJIRA/issues/QLIJIRA-127?filter=allopenissues

CRs-Fixed: 4530098

Document the compatible of the Shikra PCIe phy which supports
Gen2x1.

Signed-off-by: Sushrut Shree Trivedi <sushrut.trivedi@oss.qualcomm.com>
Add dedicated schema for the PCIe controller found on Shikra.

Signed-off-by: Sushrut Shree Trivedi <sushrut.trivedi@oss.qualcomm.com>
Add devicetree bindings for TC9563 GPIO's which are
used to control endpoint power and reset.

Signed-off-by: Sushrut Shree Trivedi <sushrut.trivedi@oss.qualcomm.com>
Add QMP PCIe PHY Gen2x1 support.

Signed-off-by: Sushrut Shree Trivedi <sushrut.trivedi@oss.qualcomm.com>
Use cfg_1_9_0 to enable and configure single PCIe
controller present on Shikra.

Signed-off-by: Sushrut Shree Trivedi <sushrut.trivedi@oss.qualcomm.com>
…eset

Some platform utilise TC9563 GPIOs to enable power and
control reset of endpoints.

This patch adds support to parse endpoint reset and power enable
gpios from each TC9563 port node in the devicetree. To configure
these GPIO's during the POWER ON sequence, two new API's are
introduced: tc9563_ep_pwr_en() and tc9563_ep_assert_deassert_reset().

Signed-off-by: Sushrut Shree Trivedi <sushrut.trivedi@oss.qualcomm.com>
@sushrut-trivedi sushrut-trivedi requested review from a team, rrnayak, sgaud-quic and yijiyang June 10, 2026 05:29
@qswat-orbit-external

Copy link
Copy Markdown

Merge Check Failed: No CR Numbers Found

Error: No Change Request numbers were found.

Please add Change Request numbers to your pull request description in the format CRs-Fixed: 12345 or link GitHub issues that are associated with Change Requests.

@qswat-orbit-external

Copy link
Copy Markdown

Merge Check Failed: No CR Numbers Found

Error: No Change Request numbers were found.

Please add Change Request numbers to your pull request description in the format CRs-Fixed: 12345 or link GitHub issues that are associated with Change Requests.

@qswat-orbit-external

Copy link
Copy Markdown

Merge Check Failed: CR Not Eligible for Merge

CR 4530098 is not eligible for merge.

The parent software image for kernel.qli.2.0 is not development complete.

Entity: kernel.qli.2.0
CR: 4530098
Reason: CR_CANNOT_MERGE

Please ensure the CR passes both CCT (ComponentChangeTasks) and ICT (Integration Change Tasks) validations.

Shikra supports single PCIe instance with  5GT/s x1 lane.
Add PCIe controller and PHY node for this single instance.

Signed-off-by: Sushrut Shree Trivedi <sushrut.trivedi@oss.qualcomm.com>
…e for PCIe

Add a node for the TC9563 PCIe switch connected to PCIe. The switch
has three downstream ports.Two embedded Ethernet devices are present
on one of the downstream ports. All the ports present in the
node represent the downstream ports and embedded endpoints.

Power to the TC9563 is supplied through two LDO regulators, which
are on by default and are added as fixed regulators. TC9563 can be
configured through I2C.

Signed-off-by: Sushrut Shree Trivedi <sushrut.trivedi@oss.qualcomm.com>
…e for PCIe

Add a node for the TC9563 PCIe switch connected to PCIe. The switch
has three downstream ports.Two embedded Ethernet devices are present
on one of the downstream ports. All the ports present in the
node represent the downstream ports and embedded endpoints.

Power to the TC9563 is supplied through two LDO regulators, which
are on by default and are added as fixed regulators. TC9563 can be
configured through I2C.

Signed-off-by: Sushrut Shree Trivedi <sushrut.trivedi@oss.qualcomm.com>
…e for PCIe

Add a node for the TC9563 PCIe switch connected to PCIe. The switch
has three downstream ports.Two embedded Ethernet devices are present
on one of the downstream ports. All the ports present in the
node represent the downstream ports and embedded endpoints.

Power to the TC9563 is supplied through two LDO regulators, which
are on by default and are added as fixed regulators. TC9563 can be
configured through I2C.

Signed-off-by: Sushrut Shree Trivedi <sushrut.trivedi@oss.qualcomm.com>
@qswat-orbit-external

Copy link
Copy Markdown

Merge Check Failed: CR Not Eligible for Merge

CR 4530098 is not eligible for merge.

The parent software image for kernel.qli.2.0 is not development complete.

Entity: kernel.qli.2.0
CR: 4530098
Reason: CR_CANNOT_MERGE

Please ensure the CR passes both CCT (ComponentChangeTasks) and ICT (Integration Change Tasks) validations.

@qcomlnxci

Copy link
Copy Markdown

Test Matrix

Test Case lemans-evk monaco-evk qcs615-ride qcs6490-rb3gen2 qcs8300-ride qcs9100-ride-r3 x1e80100-crd
BT_FW_KMD_Service ◻️ ✅ Pass ✅ Pass ◻️ ✅ Pass ✅ Pass ◻️
BT_ON_OFF ◻️ ✅ Pass ✅ Pass ◻️ ✅ Pass ✅ Pass ◻️
BT_SCAN ◻️ ✅ Pass ✅ Pass ◻️ ✅ Pass ✅ Pass ◻️
CPUFreq_Validation ◻️ ✅ Pass ✅ Pass ◻️ ✅ Pass ✅ Pass ◻️
CPU_affinity ◻️ ✅ Pass ✅ Pass ◻️ ✅ Pass ✅ Pass ◻️
DSP_AudioPD ◻️ ✅ Pass ⚠️ skip ◻️ ✅ Pass ⚠️ skip ◻️
Ethernet ◻️ ✅ Pass ⚠️ skip ◻️ ⚠️ skip ⚠️ skip ◻️
Freq_Scaling ◻️ ✅ Pass ✅ Pass ◻️ ✅ Pass ✅ Pass ◻️
GIC ◻️ ✅ Pass ✅ Pass ◻️ ✅ Pass ✅ Pass ◻️
IPA ◻️ ✅ Pass ✅ Pass ◻️ ✅ Pass ✅ Pass ◻️
Interrupts ◻️ ✅ Pass ✅ Pass ◻️ ✅ Pass ✅ Pass ◻️
OpenCV ◻️ ✅ Pass ✅ Pass ◻️ ✅ Pass ✅ Pass ◻️
PCIe ◻️ ✅ Pass ✅ Pass ◻️ ✅ Pass ✅ Pass ◻️
Probe_Failure_Check ◻️ ❌ Fail ✅ Pass ◻️ ❌ Fail ❌ Fail ◻️
RMNET ◻️ ✅ Pass ✅ Pass ◻️ ✅ Pass ✅ Pass ◻️
UFS_Validation ◻️ ✅ Pass ✅ Pass ◻️ ✅ Pass ✅ Pass ◻️
USBHost ◻️ ❌ Fail ❌ Fail ◻️ ❌ Fail ❌ Fail ◻️
WiFi_Firmware_Driver ◻️ ❌ Fail ✅ Pass ◻️ ✅ Pass ✅ Pass ◻️
WiFi_OnOff ◻️ ❌ Fail ✅ Pass ◻️ ✅ Pass ✅ Pass ◻️
adsp_remoteproc ◻️ ✅ Pass ✅ Pass ◻️ ✅ Pass ❌ Fail ◻️
cdsp_remoteproc ◻️ ✅ Pass ✅ Pass ◻️ ✅ Pass ❌ Fail ◻️
gpdsp_remoteproc ◻️ ✅ Pass ⚠️ skip ◻️ ✅ Pass ❌ Fail ◻️
hotplug ◻️ ✅ Pass ✅ Pass ◻️ ✅ Pass ✅ Pass ◻️
irq ◻️ ✅ Pass ✅ Pass ◻️ ✅ Pass ✅ Pass ◻️
kaslr ◻️ ✅ Pass ✅ Pass ◻️ ✅ Pass ✅ Pass ◻️
pinctrl ◻️ ✅ Pass ✅ Pass ◻️ ✅ Pass ✅ Pass ◻️
qcom_hwrng ◻️ ✅ Pass ✅ Pass ◻️ ✅ Pass ✅ Pass ◻️
remoteproc ◻️ ✅ Pass ✅ Pass ◻️ ✅ Pass ❌ Fail ◻️
rngtest ◻️ ✅ Pass ✅ Pass ◻️ ✅ Pass ✅ Pass ◻️
shmbridge ◻️ ✅ Pass ✅ Pass ◻️ ✅ Pass ✅ Pass ◻️
smmu ◻️ ✅ Pass ❌ Fail ◻️ ✅ Pass ❌ Fail ◻️
watchdog ◻️ ✅ Pass ✅ Pass ◻️ ✅ Pass ✅ Pass ◻️
wpss_remoteproc ◻️ ✅ Pass ✅ Pass ◻️ ✅ Pass ✅ Pass ◻️

@qcomlnxci

Copy link
Copy Markdown

Test Matrix

Test Case lemans-evk monaco-evk qcs615-ride qcs6490-rb3gen2 qcs8300-ride qcs9100-ride-r3 x1e80100-crd
BT_FW_KMD_Service ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ◻️
BT_ON_OFF ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ◻️
BT_SCAN ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ◻️
CPUFreq_Validation ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ◻️
CPU_affinity ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ◻️
DSP_AudioPD ✅ Pass ✅ Pass ⚠️ skip ✅ Pass ✅ Pass ⚠️ skip ◻️
Ethernet ⚠️ skip ✅ Pass ⚠️ skip ⚠️ skip ⚠️ skip ⚠️ skip ◻️
Freq_Scaling ✅ Pass ✅ Pass ✅ Pass ❌ Fail ✅ Pass ✅ Pass ◻️
GIC ✅ Pass ✅ Pass ✅ Pass ❌ Fail ✅ Pass ✅ Pass ◻️
IPA ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ◻️
Interrupts ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ◻️
OpenCV ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ◻️
PCIe ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ◻️
Probe_Failure_Check ❌ Fail ❌ Fail ✅ Pass ❌ Fail ❌ Fail ❌ Fail ◻️
RMNET ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ◻️
UFS_Validation ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ◻️
USBHost ❌ Fail ❌ Fail ❌ Fail ❌ Fail ❌ Fail ❌ Fail ◻️
WiFi_Firmware_Driver ❌ Fail ❌ Fail ✅ Pass ✅ Pass ✅ Pass ✅ Pass ◻️
WiFi_OnOff ⚠️ skip ❌ Fail ✅ Pass ✅ Pass ✅ Pass ✅ Pass ◻️
adsp_remoteproc ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ❌ Fail ◻️
cdsp_remoteproc ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ❌ Fail ◻️
gpdsp_remoteproc ✅ Pass ✅ Pass ⚠️ skip ⚠️ skip ✅ Pass ❌ Fail ◻️
hotplug ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ◻️
irq ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ◻️
kaslr ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ◻️
pinctrl ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ◻️
qcom_hwrng ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ◻️
remoteproc ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ❌ Fail ◻️
rngtest ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ◻️
shmbridge ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ◻️
smmu ❌ Fail ✅ Pass ❌ Fail ✅ Pass ✅ Pass ❌ Fail ◻️
watchdog ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ◻️
wpss_remoteproc ⚠️ skip ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ◻️

@psarma-qcom

Copy link
Copy Markdown

"qli-2.0 GA Critical Fix"

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants