Skip to content

Shikra: Fix QCE configuration for runtime PM - #1247

Open
roopak-houji wants to merge 5 commits into
qualcomm-linux:qcom-6.18.yfrom
roopak-houji:shikra_pm_qce_fix
Open

roopak-houji wants to merge 5 commits into
qualcomm-linux:qcom-6.18.yfrom
roopak-houji:shikra_pm_qce_fix

Conversation

@roopak-houji

@roopak-houji roopak-houji commented Oct 7, 2026 •

Copy link
Copy Markdown
  • Backport QCE runtime PM and interconnect bandwidth scaling support.
  • Replace the older Shikra QCE DT configuration with the latest mailing-list fix.
  • Update the Shikra QCE node to match the Agatti-based hardware integration.
  • Ensure QCE has the correct resource configuration after clk-smd-rpm proxy voting removal.
  • Keep cryptobam clocks remotely managed because cryptobam is marked qcom,controlled-remotely

CRs-fixed: 4671922

Signed-off-by: Roopak Houji rhouji@qti.qualcomm.com

@qswat-orbit-external

Copy link
Copy Markdown

Merge Check Failed: CR Not Eligible for Merge

CR 4671922 is not eligible for merge.

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

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

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

Add wrapper macros for ACQUIRE()/ACQUIRE_ERR() and runtime PM
usage counter guards introduced recently: pm_runtime_active_try,
pm_runtime_active_auto_try, pm_runtime_active_try_enabled, and
pm_runtime_active_auto_try_enabled.

The new macros should be more straightforward to use.

For example, they can be used for rewriting a piece of code like below:

        ACQUIRE(pm_runtime_active_try, pm)(dev);
        if ((ret = ACQUIRE_ERR(pm_runtime_active_try, &pm)))
                return ret;

in the following way:

        PM_RUNTIME_ACQUIRE(dev, pm);
        if ((ret = PM_RUNTIME_ACQUIRE_ERR(&pm)))
                return ret;

If the original code does not care about the specific error code
returned when attepmting to resume the device:

        ACQUIRE(pm_runtime_active_try, pm)(dev);
        if (ACQUIRE_ERR(pm_runtime_active_try, &pm))
                return -ENXIO;

it may be changed like this:

        PM_RUNTIME_ACQUIRE(dev, pm);
        if (PM_RUNTIME_ACQUIRE_ERR(&pm))
                return -ENXIO;

Link: https://lore.kernel.org/linux-pm/5068916.31r3eYUQgx@rafael.j.wysocki/
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
Reviewed-by: Dan Williams <dan.j.williams@intel.com>
Reviewed-by: Dhruva Gole <d-gole@ti.com>
Reviewed-by: Jonathan Cameron <jonathan.cameron@huawei.com>
Reviewed-by: Frank Li <Frank.Li@nxp.com>
Link: https://patch.msgid.link/3400866.aeNJFYEL58@rafael.j.wysocki
(cherry picked from commit ef8057b)
Signed-off-by: Roopak Houji <rhouji@qti.qualcomm.com>
…idth scaling support"

The Qualcomm Crypto Engine (QCE) driver currently lacks support for
    runtime power management (PM) and interconnect bandwidth control.
    As a result, the hardware remains fully powered and clocks stay
    enabled even when the device is idle. Additionally, static
    interconnect bandwidth votes are held indefinitely, preventing the
    system from reclaiming unused bandwidth.

    Address this by enabling runtime PM and dynamic interconnect
    bandwidth scaling to allow the system to suspend the device when idle
    and scale interconnect usage based on actual demand. Improve overall
    system efficiency by reducing power usage and optimizing interconnect
    resource allocation.

    Make the following changes as part of this integration:

    - Add support for pm_runtime APIs to manage device power state
      transitions.
    - Implement runtime_suspend() and runtime_resume() callbacks to gate
      clocks and vote for interconnect bandwidth only when needed.
    - Replace devm_clk_get_optional_enabled() with devm_pm_clk_create() +
      pm_clk_add() and let the PM core manage device clocks during runtime
      PM and system sleep.
    - Register dev_pm_ops with the platform driver to hook into the PM
      framework.

    Tested:

    - Verify that ICC votes drop to zero after probe and upon request
      completion.
    - Confirm that runtime PM usage count increments during active
      requests and decrements afterward.
    - Observe that the device correctly enters the suspended state when
      idle.

This reverts commit 690704e.

Moving changes from V5 to V9

Link: https://lore.kernel.org/all/20251120062443.2016084-1-quic_utiwari@quicinc.com/
Signed-off-by: Udit Tiwari <quic_utiwari@quicinc.com>
Signed-off-by: Abhinaba Rakshit <abhinaba.rakshit@oss.qualcomm.com>
Signed-off-by: Roopak Houji <rhouji@qti.qualcomm.com>
@qswat-orbit-external

Copy link
Copy Markdown

Merge Check Failed: CR Not Eligible for Merge

CR 4671922 is not eligible for merge.

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

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

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

@roopak-houji roopak-houji changed the title arm64: dts: qcom: shikra: Fix QCE configuration for runtime PM shikra: Fix QCE configuration for runtime PM Oct 7, 2026
@roopak-houji roopak-houji changed the title shikra: Fix QCE configuration for runtime PM Shikra: Fix QCE configuration for runtime PM Oct 7, 2026

@kuld-sing kuld-sing left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM!

@qswat-orbit-external

Copy link
Copy Markdown

Merge Check Failed: CR Not Eligible for Merge

CR 4671922 is not eligible for merge.

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

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

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

@qswat-orbit-external

Copy link
Copy Markdown

Merge Check Failed: CR Not Eligible for Merge

CR 4671922 is not eligible for merge.

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

Entity: kernel.qli.2.0
CR: 4671922
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 hamoa-iot-evk-multimedia lemans-evk-multimedia monaco-evk-multimedia purwa-iot-evk-multimedia qcs615-ride-multimedia qcs6490-rb3gen2-multimedia qcs8300-ride-multimedia qcs9100-ride-r3-multimedia shikra-iqs-evk-multimedia
Audio_Card_Registration ✅ Pass ◻️ ✅ Pass ✅ Pass ⚠️ skip ✅ Pass ⚠️ skip ⚠️ skip ⚠️ skip
BT_FW_KMD_Service ✅ Pass ◻️ ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass
BT_ON_OFF ✅ Pass ◻️ ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass
BT_SCAN ✅ Pass ◻️ ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ❌ Fail
CPUFreq_Validation ✅ Pass ◻️ ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass
CPU_affinity ✅ Pass ◻️ ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass
DSP_AudioPD ✅ Pass ◻️ ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ⚠️ skip
Ethernet_Basic_Validation ⚠️ skip ◻️ ✅ Pass ⚠️ skip ⚠️ skip ⚠️ skip ❌ Fail ❌ Fail ⚠️ skip
Freq_Scaling ✅ Pass ◻️ ✅ Pass ✅ Pass ✅ Pass ❌ Fail ✅ Pass ✅ Pass ✅ Pass
GIC ✅ Pass ◻️ ✅ Pass ✅ Pass ✅ Pass ❌ Fail ✅ Pass ✅ Pass ❌ Fail
IPA ✅ Pass ◻️ ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass
Interrupts ✅ Pass ◻️ ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass
KVM_Driver ❌ Fail ◻️ ✅ Pass ❌ Fail ❌ Fail ✅ Pass ❌ Fail ❌ Fail ❌ Fail
KVM_EL2_DTB ❌ Fail ◻️ ✅ Pass ❌ Fail ❌ Fail ✅ Pass ❌ Fail ❌ Fail ❌ Fail
KVM_Infra ❌ Fail ◻️ ✅ Pass ❌ Fail ❌ Fail ✅ Pass ❌ Fail ❌ Fail ❌ Fail
OpenCV ✅ Pass ◻️ ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass
PCIe ✅ Pass ◻️ ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ❌ Fail
Probe_Failure_Check ❌ Fail ◻️ ❌ Fail ❌ Fail ❌ Fail ❌ Fail ❌ Fail ❌ Fail ❌ Fail
RMNET ✅ Pass ◻️ ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass
UFS_Validation ✅ Pass ◻️ ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ⚠️ skip
USBHost ✅ Pass ◻️ ✅ Pass ✅ Pass ✅ Pass ⚠️ skip ✅ Pass ✅ Pass ❌ Fail
WiFi_Firmware_Driver ✅ Pass ◻️ ❌ Fail ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass
WiFi_OnOff ✅ Pass ◻️ ❌ Fail ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ⚠️ skip
adsp_remoteproc ✅ Pass ◻️ ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ⚠️ skip
cdsp_remoteproc ✅ Pass ◻️ ✅ Pass ✅ Pass ✅ Pass ❌ Fail ✅ Pass ✅ Pass ✅ Pass
gpdsp_remoteproc ⚠️ skip ◻️ ✅ Pass ⚠️ skip ⚠️ skip ⚠️ skip ✅ Pass ✅ Pass ⚠️ skip
hotplug ✅ Pass ◻️ ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass
irq ✅ Pass ◻️ ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass
kaslr ✅ Pass ◻️ ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass
pinctrl ✅ Pass ◻️ ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass
qcom_hwrng ✅ Pass ◻️ ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ◻️
rngtest ✅ Pass ◻️ ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass
shmbridge ✅ Pass ◻️ ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass
smmu ❌ Fail ◻️ ✅ Pass ❌ Fail ❌ Fail ✅ Pass ✅ Pass ❌ Fail ✅ Pass
watchdog ✅ Pass ◻️ ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass
wpss_remoteproc ✅ Pass ◻️ ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass

@qcomlnxci

Copy link
Copy Markdown

Test Matrix

Test Case hamoa-iot-evk-multimedia lemans-evk-multimedia monaco-evk-multimedia purwa-iot-evk-multimedia qcs615-ride-multimedia qcs6490-rb3gen2-multimedia qcs8300-ride-multimedia qcs9100-ride-r3-multimedia shikra-iqs-evk-multimedia
Audio_Card_Registration ✅ Pass ✅ Pass ✅ Pass ◻️ ⚠️ skip ✅ Pass ⚠️ skip ⚠️ skip ⚠️ skip
BT_FW_KMD_Service ✅ Pass ✅ Pass ✅ Pass ◻️ ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass
BT_ON_OFF ✅ Pass ✅ Pass ✅ Pass ◻️ ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass
BT_SCAN ✅ Pass ✅ Pass ✅ Pass ◻️ ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass
CPUFreq_Validation ✅ Pass ✅ Pass ✅ Pass ◻️ ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass
CPU_affinity ✅ Pass ✅ Pass ✅ Pass ◻️ ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass
DSP_AudioPD ✅ Pass ✅ Pass ✅ Pass ◻️ ✅ Pass ✅ Pass ✅ Pass ✅ Pass ⚠️ skip
Ethernet_Basic_Validation ⚠️ skip ✅ Pass ✅ Pass ◻️ ⚠️ skip ⚠️ skip ❌ Fail ⚠️ skip ⚠️ skip
Freq_Scaling ✅ Pass ✅ Pass ✅ Pass ◻️ ✅ Pass ❌ Fail ✅ Pass ✅ Pass ✅ Pass
GIC ✅ Pass ✅ Pass ✅ Pass ◻️ ✅ Pass ❌ Fail ✅ Pass ✅ Pass ❌ Fail
IPA ✅ Pass ✅ Pass ✅ Pass ◻️ ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass
Interrupts ✅ Pass ✅ Pass ✅ Pass ◻️ ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass
KVM_Driver ❌ Fail ✅ Pass ✅ Pass ◻️ ❌ Fail ✅ Pass ❌ Fail ❌ Fail ❌ Fail
KVM_EL2_DTB ❌ Fail ✅ Pass ✅ Pass ◻️ ❌ Fail ✅ Pass ❌ Fail ❌ Fail ❌ Fail
KVM_Infra ❌ Fail ✅ Pass ✅ Pass ◻️ ❌ Fail ✅ Pass ❌ Fail ❌ Fail ❌ Fail
OpenCV ✅ Pass ✅ Pass ✅ Pass ◻️ ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass
PCIe ✅ Pass ✅ Pass ✅ Pass ◻️ ✅ Pass ✅ Pass ✅ Pass ✅ Pass ❌ Fail
Probe_Failure_Check ❌ Fail ❌ Fail ❌ Fail ◻️ ❌ Fail ❌ Fail ❌ Fail ❌ Fail ❌ Fail
RMNET ✅ Pass ✅ Pass ✅ Pass ◻️ ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass
UFS_Validation ✅ Pass ✅ Pass ✅ Pass ◻️ ✅ Pass ✅ Pass ✅ Pass ✅ Pass ⚠️ skip
USBHost ✅ Pass ✅ Pass ✅ Pass ◻️ ✅ Pass ⚠️ skip ✅ Pass ✅ Pass ❌ Fail
WiFi_Firmware_Driver ✅ Pass ✅ Pass ❌ Fail ◻️ ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass
WiFi_OnOff ✅ Pass ✅ Pass ❌ Fail ◻️ ✅ Pass ✅ Pass ✅ Pass ✅ Pass ⚠️ skip
adsp_remoteproc ✅ Pass ✅ Pass ✅ Pass ◻️ ✅ Pass ✅ Pass ✅ Pass ✅ Pass ⚠️ skip
cdsp_remoteproc ✅ Pass ✅ Pass ✅ Pass ◻️ ✅ Pass ❌ Fail ✅ Pass ✅ Pass ✅ Pass
gpdsp_remoteproc ⚠️ skip ✅ Pass ✅ Pass ◻️ ⚠️ skip ⚠️ skip ✅ Pass ✅ Pass ⚠️ skip
hotplug ✅ Pass ✅ Pass ✅ Pass ◻️ ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass
irq ✅ Pass ✅ Pass ✅ Pass ◻️ ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass
kaslr ✅ Pass ✅ Pass ✅ Pass ◻️ ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass
pinctrl ✅ Pass ✅ Pass ✅ Pass ◻️ ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass
qcom_hwrng ✅ Pass ✅ Pass ✅ Pass ◻️ ✅ Pass ✅ Pass ✅ Pass ✅ Pass ◻️
rngtest ✅ Pass ✅ Pass ✅ Pass ◻️ ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass
shmbridge ✅ Pass ✅ Pass ✅ Pass ◻️ ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass
smmu ❌ Fail ❌ Fail ✅ Pass ◻️ ❌ Fail ✅ Pass ✅ Pass ❌ Fail ✅ Pass
watchdog ✅ Pass ✅ Pass ✅ Pass ◻️ ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass
wpss_remoteproc ✅ Pass ✅ Pass ✅ Pass ◻️ ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass

@qcomlnxci

Copy link
Copy Markdown

Test Matrix

Test Case hamoa-iot-evk-multimedia monaco-evk-multimedia purwa-iot-evk-multimedia qcs615-ride-multimedia qcs9100-ride-r3-multimedia shikra-iqs-evk-multimedia
Audio_Card_Registration ✅ Pass ✅ Pass ✅ Pass ◻️ ⚠️ skip ◻️
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 ✅ Pass ✅ Pass ◻️ ✅ Pass ◻️
Ethernet_Basic_Validation ⚠️ skip ✅ Pass ⚠️ skip ◻️ ⚠️ skip ◻️
Freq_Scaling ✅ Pass ✅ Pass ✅ Pass ◻️ ✅ Pass ◻️
GIC ✅ Pass ✅ Pass ✅ Pass ◻️ ✅ Pass ◻️
IPA ✅ Pass ✅ Pass ✅ Pass ◻️ ✅ Pass ◻️
Interrupts ✅ Pass ✅ Pass ✅ Pass ◻️ ✅ Pass ◻️
KVM_Driver ❌ Fail ✅ Pass ❌ Fail ◻️ ❌ Fail ◻️
KVM_EL2_DTB ❌ Fail ✅ Pass ❌ Fail ◻️ ❌ Fail ◻️
KVM_Infra ❌ Fail ✅ Pass ❌ Fail ◻️ ❌ Fail ◻️
OpenCV ✅ Pass ✅ Pass ✅ Pass ◻️ ✅ Pass ◻️
PCIe ✅ Pass ✅ Pass ✅ Pass ◻️ ✅ Pass ◻️
Probe_Failure_Check ❌ Fail ❌ Fail ❌ Fail ◻️ ❌ Fail ◻️
RMNET ✅ Pass ✅ Pass ✅ Pass ◻️ ✅ Pass ◻️
UFS_Validation ✅ Pass ✅ Pass ✅ Pass ◻️ ✅ Pass ◻️
USBHost ✅ Pass ✅ Pass ✅ Pass ◻️ ✅ Pass ◻️
WiFi_Firmware_Driver ✅ Pass ❌ Fail ✅ Pass ◻️ ✅ Pass ◻️
WiFi_OnOff ✅ Pass ❌ Fail ✅ Pass ◻️ ✅ Pass ◻️
adsp_remoteproc ✅ Pass ✅ Pass ✅ Pass ◻️ ✅ Pass ◻️
cdsp_remoteproc ✅ Pass ✅ Pass ✅ Pass ◻️ ✅ Pass ◻️
gpdsp_remoteproc ⚠️ skip ✅ Pass ⚠️ skip ◻️ ✅ Pass ◻️
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 ◻️
rngtest ✅ Pass ✅ Pass ✅ Pass ◻️ ✅ Pass ◻️
shmbridge ✅ Pass ✅ Pass ✅ Pass ◻️ ✅ Pass ◻️
smmu ❌ Fail ✅ Pass ❌ Fail ◻️ ❌ Fail ◻️
watchdog ✅ Pass ✅ Pass ✅ Pass ◻️ ✅ Pass ◻️
wpss_remoteproc ✅ Pass ✅ Pass ✅ Pass ◻️ ✅ Pass ◻️

@qcomlnxci

Copy link
Copy Markdown

Test Matrix

Test Case hamoa-iot-evk-multimedia lemans-evk-multimedia monaco-evk-multimedia purwa-iot-evk-multimedia qcs615-ride-multimedia qcs6490-rb3gen2-multimedia qcs8300-ride-multimedia qcs9100-ride-r3-multimedia shikra-iqs-evk-multimedia
Audio_Card_Registration ✅ Pass ✅ Pass ✅ Pass ✅ Pass ⚠️ skip ✅ Pass ⚠️ skip ⚠️ skip ⚠️ skip
BT_FW_KMD_Service ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass
BT_ON_OFF ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass
BT_SCAN ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass
CPUFreq_Validation ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass
CPU_affinity ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass
DSP_AudioPD ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ⚠️ skip
Ethernet_Basic_Validation ⚠️ skip ✅ Pass ✅ Pass ⚠️ skip ⚠️ skip ⚠️ skip ⚠️ skip ⚠️ skip ⚠️ skip
Freq_Scaling ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass
GIC ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ❌ Fail
IPA ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass
Interrupts ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass
KVM_Driver ❌ Fail ✅ Pass ✅ Pass ❌ Fail ❌ Fail ✅ Pass ❌ Fail ❌ Fail ❌ Fail
KVM_EL2_DTB ❌ Fail ✅ Pass ✅ Pass ❌ Fail ❌ Fail ✅ Pass ❌ Fail ❌ Fail ❌ Fail
KVM_Infra ❌ Fail ✅ Pass ✅ Pass ❌ Fail ❌ Fail ✅ Pass ❌ Fail ❌ Fail ❌ Fail
OpenCV ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass
PCIe ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ❌ Fail
Probe_Failure_Check ❌ Fail ❌ Fail ❌ Fail ❌ Fail ❌ Fail ❌ Fail ❌ Fail ❌ Fail ❌ Fail
RMNET ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass
UFS_Validation ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ⚠️ skip
USBHost ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ⚠️ skip ❌ Fail ✅ Pass ❌ Fail
WiFi_Firmware_Driver ✅ Pass ✅ Pass ❌ Fail ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass
WiFi_OnOff ✅ Pass ✅ Pass ❌ Fail ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ⚠️ skip
adsp_remoteproc ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ⚠️ skip
cdsp_remoteproc ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass
gpdsp_remoteproc ⚠️ skip ✅ Pass ✅ Pass ⚠️ skip ⚠️ skip ⚠️ skip ✅ Pass ✅ Pass ⚠️ skip
hotplug ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass
irq ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass
kaslr ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass
pinctrl ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass
qcom_hwrng ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ◻️
rngtest ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass
shmbridge ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass
smmu ❌ Fail ❌ Fail ✅ Pass ❌ Fail ❌ Fail ✅ Pass ✅ Pass ❌ Fail ✅ Pass
watchdog ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass
wpss_remoteproc ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass

@qcomlnxci

Copy link
Copy Markdown

Test Matrix

Test Case hamoa-iot-evk-multimedia lemans-evk-multimedia monaco-evk-multimedia purwa-iot-evk-multimedia qcs615-ride-multimedia qcs6490-rb3gen2-multimedia qcs8300-ride-multimedia qcs9100-ride-r3-multimedia shikra-iqs-evk-multimedia
Audio_Card_Registration ✅ Pass ✅ Pass ✅ Pass ✅ Pass ⚠️ skip ✅ Pass ⚠️ skip ⚠️ skip ◻️
BT_FW_KMD_Service ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ◻️
BT_ON_OFF ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ◻️
BT_SCAN ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ◻️
CPUFreq_Validation ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ◻️
CPU_affinity ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ◻️
DSP_AudioPD ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ◻️
Ethernet_Basic_Validation ⚠️ skip ✅ Pass ✅ Pass ⚠️ skip ⚠️ skip ⚠️ skip ⚠️ skip ❌ Fail ◻️
Freq_Scaling ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ❌ Fail ✅ Pass ✅ Pass ◻️
GIC ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ❌ Fail ✅ Pass ✅ Pass ◻️
IPA ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ◻️
Interrupts ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ◻️
KVM_Driver ❌ Fail ✅ Pass ✅ Pass ❌ Fail ❌ Fail ✅ Pass ❌ Fail ❌ Fail ◻️
KVM_EL2_DTB ❌ Fail ✅ Pass ✅ Pass ❌ Fail ❌ Fail ✅ Pass ❌ Fail ❌ Fail ◻️
KVM_Infra ❌ Fail ✅ Pass ✅ Pass ❌ Fail ❌ Fail ✅ Pass ❌ Fail ❌ Fail ◻️
OpenCV ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ◻️
PCIe ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ◻️
Probe_Failure_Check ❌ Fail ❌ Fail ❌ Fail ❌ Fail ❌ Fail ❌ Fail ❌ Fail ❌ Fail ◻️
RMNET ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ◻️
UFS_Validation ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ◻️
USBHost ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ⚠️ skip ❌ Fail ✅ Pass ◻️
WiFi_Firmware_Driver ✅ Pass ✅ Pass ❌ Fail ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ◻️
WiFi_OnOff ✅ Pass ✅ Pass ❌ Fail ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ◻️
adsp_remoteproc ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ◻️
cdsp_remoteproc ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ❌ Fail ✅ Pass ✅ Pass ◻️
gpdsp_remoteproc ⚠️ skip ✅ Pass ✅ Pass ⚠️ skip ⚠️ skip ⚠️ skip ✅ Pass ✅ Pass ◻️
hotplug ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ◻️
irq ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ◻️
kaslr ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ◻️
pinctrl ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ◻️
qcom_hwrng ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ◻️
rngtest ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ◻️
shmbridge ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ◻️
smmu ❌ Fail ❌ Fail ✅ Pass ❌ Fail ❌ Fail ✅ Pass ✅ Pass ❌ Fail ◻️
watchdog ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ◻️
wpss_remoteproc ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ◻️

Udit Tiwari and others added 2 commits October 8, 2026 15:29
…dwidth scaling support

The Qualcomm Crypto Engine (QCE) driver currently lacks support for
runtime power management (PM) and interconnect bandwidth control.
As a result, the hardware remains fully powered and clocks stay
enabled even when the device is idle. Additionally, static
interconnect bandwidth votes are held indefinitely, preventing the
system from reclaiming unused bandwidth.

Address this by enabling runtime PM and dynamic interconnect
bandwidth scaling to allow the system to suspend the device when idle
and scale interconnect usage based on actual demand. Improve overall
system efficiency by reducing power usage and optimizing interconnect
resource allocation.

Link: https://lore.kernel.org/linux-arm-msm/20260729110455.641256-1-kuldeep.singh@oss.qualcomm.com/
Signed-off-by: Udit Tiwari <udit.tiwari@oss.qualcomm.com>
Tested-by: Pankaj Patil <pankaj.patil@oss.qualcomm.com>
Signed-off-by: Kuldeep Singh <kuldeep.singh@oss.qualcomm.com>
Acked-by: Bartosz Golaszewski <bartosz.golaszewski@oss.qualcomm.com>
Tested-by: Bartosz Golaszewski <bartosz.golaszewski@oss.qualcomm.com>
Signed-off-by: Roopak Houji <rhouji@qti.qualcomm.com>
…ation"

    Shikra is derived from Agatti and uses the same QCE integration.
    Update the QCE node to match the underlying hardware implementation by
    adjusting the fallback compatible and related properties, including
    clocks and clock-names.

This reverts commit 61a279f.

moving to latest changes

Signed-off-by: Kuldeep Singh <kuldeep.singh@oss.qualcomm.com>
Link: https://lore.kernel.org/linux-arm-msm/20260907-b4-shikra_crypto_changse-v6-2-0676f61894b3@oss.qualcomm.com/
Signed-off-by: Abhinaba Rakshit <abhinaba.rakshit@oss.qualcomm.com>
Signed-off-by: Roopak Houji <rhouji@qti.qualcomm.com>
Shikra is derived from Agatti and uses the same QCE integration.
Update the QCE node to match the underlying hardware implementation by
adjusting the fallback compatible and related properties, including
clocks and clock-names.

Since cryptobam is marked qcom,controlled-remotely, its clocks are
managed remotely and hence don't specify explicitly.

Link: https://lore.kernel.org/lkml/20261006-shikra_qce_fix-v1-2-8ac54d81edb4@oss.qualcomm.com/
Fixes: 099cd05 ("arm64: dts: qcom: shikra: Add ICE, TRNG and QCE nodes")
Tested-by: Wenjia Zhang <wenjia.zhang@oss.qualcomm.com> #on shikra device
Signed-off-by: Kuldeep Singh <kuldeep.singh@oss.qualcomm.com>
Signed-off-by: Roopak Houji <rhouji@qti.qualcomm.com>
@qcomlnxci
qcomlnxci requested a review from a team October 8, 2026 10:02
@qcomlnxci

Copy link
Copy Markdown

Test Matrix

Test Case hamoa-iot-evk-multimedia lemans-evk-multimedia monaco-evk-multimedia purwa-iot-evk-multimedia qcs615-ride-multimedia qcs6490-rb3gen2-multimedia qcs8300-ride-multimedia qcs9100-ride-r3-multimedia shikra-iqs-evk-multimedia
Audio_Card_Registration ✅ Pass ✅ Pass ✅ Pass ✅ Pass ⚠️ skip ✅ Pass ⚠️ skip ⚠️ skip ◻️
BT_FW_KMD_Service ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ◻️
BT_ON_OFF ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ◻️
BT_SCAN ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ◻️
CPUFreq_Validation ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ◻️
CPU_affinity ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ◻️
DSP_AudioPD ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ◻️
Ethernet_Basic_Validation ⚠️ skip ✅ Pass ✅ Pass ⚠️ skip ⚠️ skip ⚠️ skip ⚠️ skip ❌ Fail ◻️
Freq_Scaling ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ❌ Fail ✅ Pass ✅ Pass ◻️
GIC ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ❌ Fail ✅ Pass ✅ Pass ◻️
IPA ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ◻️
Interrupts ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ◻️
KVM_Driver ❌ Fail ✅ Pass ✅ Pass ❌ Fail ❌ Fail ✅ Pass ❌ Fail ❌ Fail ◻️
KVM_EL2_DTB ❌ Fail ✅ Pass ✅ Pass ❌ Fail ❌ Fail ✅ Pass ❌ Fail ❌ Fail ◻️
KVM_Infra ❌ Fail ✅ Pass ✅ Pass ❌ Fail ❌ Fail ✅ Pass ❌ Fail ❌ Fail ◻️
OpenCV ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ◻️
PCIe ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ◻️
Probe_Failure_Check ❌ Fail ❌ Fail ❌ Fail ❌ Fail ❌ Fail ❌ Fail ❌ Fail ❌ Fail ◻️
RMNET ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ◻️
UFS_Validation ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ◻️
USBHost ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ⚠️ skip ❌ Fail ✅ Pass ◻️
WiFi_Firmware_Driver ✅ Pass ✅ Pass ❌ Fail ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ◻️
WiFi_OnOff ✅ Pass ✅ Pass ❌ Fail ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ◻️
adsp_remoteproc ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ◻️
cdsp_remoteproc ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ❌ Fail ✅ Pass ✅ Pass ◻️
gpdsp_remoteproc ⚠️ skip ✅ Pass ✅ Pass ⚠️ skip ⚠️ skip ⚠️ skip ✅ Pass ✅ Pass ◻️
hotplug ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ◻️
irq ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ◻️
kaslr ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ◻️
pinctrl ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ◻️
qcom_hwrng ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ◻️
rngtest ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ◻️
shmbridge ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ◻️
smmu ❌ Fail ❌ Fail ✅ Pass ❌ Fail ❌ Fail ✅ Pass ✅ Pass ❌ Fail ◻️
watchdog ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ◻️
wpss_remoteproc ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ◻️

@qcomlnxci

Copy link
Copy Markdown

Test Matrix

Test Case hamoa-iot-evk-multimedia lemans-evk-multimedia monaco-evk-multimedia purwa-iot-evk-multimedia qcs615-ride-multimedia qcs6490-rb3gen2-multimedia qcs8300-ride-multimedia qcs9100-ride-r3-multimedia shikra-iqs-evk-multimedia
Audio_Card_Registration ✅ Pass ◻️ ✅ Pass ✅ Pass ⚠️ skip ✅ Pass ⚠️ skip ⚠️ skip ◻️
BT_FW_KMD_Service ✅ Pass ◻️ ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ◻️
BT_ON_OFF ✅ Pass ◻️ ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ◻️
BT_SCAN ✅ Pass ◻️ ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ◻️
CPUFreq_Validation ✅ Pass ◻️ ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ◻️
CPU_affinity ✅ Pass ◻️ ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ◻️
DSP_AudioPD ✅ Pass ◻️ ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ◻️
Ethernet_Basic_Validation ⚠️ skip ◻️ ✅ Pass ⚠️ skip ⚠️ skip ⚠️ skip ⚠️ skip ❌ Fail ◻️
Freq_Scaling ✅ Pass ◻️ ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ◻️
GIC ✅ Pass ◻️ ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ◻️
IPA ✅ Pass ◻️ ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ◻️
Interrupts ✅ Pass ◻️ ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ◻️
KVM_Driver ❌ Fail ◻️ ✅ Pass ❌ Fail ❌ Fail ✅ Pass ❌ Fail ❌ Fail ◻️
KVM_EL2_DTB ❌ Fail ◻️ ✅ Pass ❌ Fail ❌ Fail ✅ Pass ❌ Fail ❌ Fail ◻️
KVM_Infra ❌ Fail ◻️ ✅ Pass ❌ Fail ❌ Fail ✅ Pass ❌ Fail ❌ Fail ◻️
OpenCV ✅ Pass ◻️ ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ◻️
PCIe ✅ Pass ◻️ ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ◻️
Probe_Failure_Check ❌ Fail ◻️ ❌ Fail ❌ Fail ❌ Fail ❌ Fail ❌ Fail ❌ Fail ◻️
RMNET ✅ Pass ◻️ ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ◻️
UFS_Validation ✅ Pass ◻️ ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ◻️
USBHost ✅ Pass ◻️ ✅ Pass ✅ Pass ✅ Pass ⚠️ skip ❌ Fail ✅ Pass ◻️
WiFi_Firmware_Driver ✅ Pass ◻️ ❌ Fail ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ◻️
WiFi_OnOff ✅ Pass ◻️ ❌ Fail ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ◻️
adsp_remoteproc ✅ Pass ◻️ ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ◻️
cdsp_remoteproc ✅ Pass ◻️ ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ◻️
gpdsp_remoteproc ⚠️ skip ◻️ ✅ Pass ⚠️ skip ⚠️ skip ⚠️ skip ✅ Pass ✅ Pass ◻️
hotplug ✅ Pass ◻️ ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ◻️
irq ✅ Pass ◻️ ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ◻️
kaslr ✅ Pass ◻️ ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ◻️
pinctrl ✅ Pass ◻️ ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ◻️
qcom_hwrng ✅ Pass ◻️ ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ◻️
rngtest ✅ Pass ◻️ ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ◻️
shmbridge ✅ Pass ◻️ ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ◻️
smmu ❌ Fail ◻️ ✅ Pass ❌ Fail ❌ Fail ✅ Pass ✅ Pass ❌ Fail ◻️
watchdog ✅ Pass ◻️ ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ◻️
wpss_remoteproc ✅ Pass ◻️ ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ◻️

@qcomlnxci

Copy link
Copy Markdown

Test Matrix

Test Case hamoa-iot-evk-multimedia lemans-evk-multimedia monaco-evk-multimedia purwa-iot-evk-multimedia qcs615-ride-multimedia qcs6490-rb3gen2-multimedia qcs8300-ride-multimedia qcs9100-ride-r3-multimedia shikra-iqs-evk-multimedia
Audio_Card_Registration ✅ Pass ✅ Pass ✅ Pass ✅ Pass ⚠️ skip ✅ Pass ⚠️ skip ⚠️ skip ⚠️ skip
BT_FW_KMD_Service ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass
BT_ON_OFF ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass
BT_SCAN ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ❌ Fail
CPUFreq_Validation ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass
CPU_affinity ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass
DSP_AudioPD ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ⚠️ skip
Ethernet_Basic_Validation ⚠️ skip ✅ Pass ✅ Pass ⚠️ skip ⚠️ skip ⚠️ skip ⚠️ skip ❌ Fail ⚠️ skip
Freq_Scaling ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass
GIC ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ❌ Fail
IPA ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass
Interrupts ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass
KVM_Driver ❌ Fail ✅ Pass ✅ Pass ❌ Fail ❌ Fail ✅ Pass ❌ Fail ❌ Fail ❌ Fail
KVM_EL2_DTB ❌ Fail ✅ Pass ✅ Pass ❌ Fail ❌ Fail ✅ Pass ❌ Fail ❌ Fail ❌ Fail
KVM_Infra ❌ Fail ✅ Pass ✅ Pass ❌ Fail ❌ Fail ✅ Pass ❌ Fail ❌ Fail ❌ Fail
OpenCV ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass
PCIe ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ❌ Fail
Probe_Failure_Check ❌ Fail ❌ Fail ❌ Fail ❌ Fail ❌ Fail ❌ Fail ❌ Fail ❌ Fail ❌ Fail
RMNET ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass
UFS_Validation ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ⚠️ skip
USBHost ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ⚠️ skip ❌ Fail ✅ Pass ❌ Fail
WiFi_Firmware_Driver ✅ Pass ✅ Pass ❌ Fail ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass
WiFi_OnOff ✅ Pass ✅ Pass ❌ Fail ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ⚠️ skip
adsp_remoteproc ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ⚠️ skip
cdsp_remoteproc ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass
gpdsp_remoteproc ⚠️ skip ✅ Pass ✅ Pass ⚠️ skip ⚠️ skip ⚠️ skip ✅ Pass ✅ Pass ⚠️ skip
hotplug ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass
irq ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass
kaslr ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass
pinctrl ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass
qcom_hwrng ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ◻️
rngtest ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass
shmbridge ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass
smmu ❌ Fail ❌ Fail ✅ Pass ❌ Fail ❌ Fail ✅ Pass ✅ Pass ❌ Fail ✅ Pass
watchdog ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass
wpss_remoteproc ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass

@qlijarvis

Copy link
Copy Markdown

PR #1247 — validate-patch

PR: #1247

Verdict Issues Detailed Report
⚠️ 2 Full report

Final Summary

  1. Lore link present: Yes — all 5 commits have lore.kernel.org links
  2. Lore link matches PR commits: Partial — Commit 1 has macro signature differences from lore v2; Commit 3 has author mismatch and incorrect prefix
  3. Upstream patch status:
    • Commit 1: ✅ Upstreamed (merged as ef8057b07c72a817537856b98d6e7493b9404eaf)
    • Commit 2: ⏳ Revert of v5 to apply v9
    • Commit 3: ✅ Accepted ("Patch applied" signal) but missing upstream SHA
    • Commit 4: ⏳ Revert to apply corrected version
    • Commit 5: ⏳ In review (Reviewed-by present, awaiting merge)
  4. PR present in qcom-next/topics: Partial - 1/5 commit(s) only have partial integration evidence
Verdict: ⚠️ — click to expand

🔍 Patch Validation

PR: #1247 - Multiple crypto and PM patches
Verdict: ⚠️ PARTIAL


Commit 1/5: UPSTREAM: PM: runtime: Wrapper macros for usage counter guards

Upstream: https://lore.kernel.org/linux-pm/5068916.31r3eYUQgx@rafael.j.wysocki/
Verdict: ⚠️ PARTIAL

Commit Message

Check Status Note
Subject matches upstream ✅ Subject preserved with UPSTREAM: prefix
Body preserves rationale ✅ Full commit message preserved
Fixes tag present/correct N/A No Fixes tag in upstream
Authorship preserved ✅ From: Rafael J. Wysocki matches lore author
Backport note ✅ (cherry picked from commit ef8057b07c72a817537856b98d6e7493b9404eaf) present
Reviewed-by tags ✅ All tags from lore thread present

Diff

File Status Notes
include/linux/pm_runtime.h ⚠️ Macro parameter names differ from lore v2 patch

Issues

  • Macro signature mismatch: The PR uses PM_RUNTIME_ACQUIRE(_dev, _var) and PM_RUNTIME_ACQUIRE_ERR(_var_ptr) with _var_ptr directly, while lore v2 uses PM_RUNTIME_ACQUIRE(dev, var_name) and PM_RUNTIME_ACQUIRE_ERR(var_name) with &var_name in the macro body. This is a semantic difference in the API.
  • The PR claims cherry-pick from ef8057b07c72a817537856b98d6e7493b9404eaf but the diff doesn't match lore v2 patch. The upstream commit may have evolved between v1 and the final merged version.

Upstream Status

✅ ACKed — Multiple Reviewed-by tags from Dan Williams, Dhruva Gole, Jonathan Cameron, Frank Li. Merged as ef8057b07c72a817537856b98d6e7493b9404eaf per PR commit message.

Integration Presence

✅ Present in qcom-next — All checked added lines are present per integration report.


Commit 2/5: Revert "FROMLIST: crypto: qce - Add runtime PM..."

Upstream: https://lore.kernel.org/all/20251120062443.2016084-1-quic_utiwari@quicinc.com/
Verdict: ✅ PASS

Commit Message

Check Status Note
Subject matches upstream ✅ Revert commit with proper justification
Body preserves rationale ✅ Explains reason for revert: "Moving changes from V5 to V9"
Fixes tag present/correct N/A Revert commit
Authorship preserved ✅ From: Udit Tiwari, original author of the reverted patch
Backport note N/A Revert commit

Diff

File Status Notes
drivers/crypto/qce/core.c ✅ Reverts previous FROMLIST commit cleanly

Issues

None — This is a clean revert to prepare for the updated v9 version in commit 3.

Upstream Status

⏳ Decision Pending — The lore link points to v5 of the patch series. The revert is being done to apply v9 (commit 3).

Integration Presence

⚠️ Partial — Only partial integration evidence found per integration report.


Commit 3/5: BACKPORT: UPSTREAM: crypto: qce - Add runtime PM...

Upstream: https://lore.kernel.org/linux-arm-msm/20260729110455.641256-1-kuldeep.singh@oss.qualcomm.com/
Verdict: ⚠️ PARTIAL

Commit Message

Check Status Note
Subject matches upstream ⚠️ Prefix is BACKPORT: UPSTREAM: but lore shows v9 patch, not yet merged
Body preserves rationale ✅ Full commit message preserved
Fixes tag present/correct N/A No Fixes tag
Authorship preserved ⚠️ From: Udit Tiwari but lore shows From: Kuldeep Singh
Backport note ❌ No [ upstream commit <sha> ] note despite BACKPORT prefix
Signed-off-by chain ✅ Multiple sign-offs present

Diff

File Status Notes
drivers/crypto/qce/core.c ⚠️ Uses PM_RUNTIME_ACQUIRE_AUTOSUSPEND and PM_RUNTIME_ACQUIRE_ERR(&pm) - depends on commit 1's API

Issues

  • Incorrect prefix: Commit uses BACKPORT: UPSTREAM: but the lore patch (v9) shows "Patch applied. Thanks." from maintainer, indicating it was accepted. However, no upstream commit SHA is provided. Should be either UPSTREAM: with SHA or FROMLIST: if not yet in mainline.
  • Author mismatch: PR commit shows From: Udit Tiwari <udit.tiwari@oss.qualcomm.com> but lore shows From: Kuldeep Singh <kuldeep.singh@oss.qualcomm.com>. The original author's Signed-off-by is present, but the From field should match the lore author.
  • Missing backport note: If this is truly a BACKPORT, it must include [ upstream commit <sha> ] or similar notation.
  • API dependency: Uses PM_RUNTIME_ACQUIRE_ERR(&pm) which matches commit 1's PR version, not the lore v2 version that uses PM_RUNTIME_ACQUIRE_ERR(pm) without &.

Upstream Status

✅ ACKed — "Patch applied. Thanks." signal found in lore thread. Acked-by and Tested-by tags from Bartosz Golaszewski and Pankaj Patil present.

Integration Presence

✅ Present in qcom-next — All checked added lines are present per integration report.


Commit 4/5: Revert "FROMLIST: arm64: dts: qcom: shikra: Correct QCE..."

Upstream: https://lore.kernel.org/linux-arm-msm/20260907-b4-shikra_crypto_changse-v6-2-0676f61894b3@oss.qualcomm.com/
Verdict: ✅ PASS

Commit Message

Check Status Note
Subject matches upstream ✅ Revert commit with proper justification
Body preserves rationale ✅ Explains reason: "moving to latest changes"
Fixes tag present/correct N/A Revert commit
Authorship preserved ✅ From: Kuldeep Singh matches lore author
Backport note N/A Revert commit

Diff

File Status Notes
arch/arm64/boot/dts/qcom/shikra.dtsi ✅ Reverts previous FROMLIST commit cleanly

Issues

None — Clean revert to prepare for the corrected version in commit 5.

Upstream Status

⏳ Decision Pending — The lore link points to v6 patch 2/2. Thread shows "Reviewed-by: Bartosz Golaszewski" and discussion about fixes queued for v7.4. The revert is being done to apply the corrected version.

Integration Presence

✅ Present in topics — Exact patch-id match at 49d7d5b650691aac2b2ab6705b15d0d03076fa1c in topics branch per integration report.


Commit 5/5: FROMLIST: arm64: dts: qcom: shikra: Correct QCE node...

Upstream: https://lore.kernel.org/lkml/20261006-shikra_qce_fix-v1-2-8ac54d81edb4@oss.qualcomm.com/
Verdict: ✅ PASS

Commit Message

Check Status Note
Subject matches upstream ✅ Subject preserved with FROMLIST: prefix
Body preserves rationale ✅ Full commit message preserved
Fixes tag present/correct ✅ Fixes: 099cd05d200b present and correct
Authorship preserved ✅ From: Kuldeep Singh matches lore author
Backport note N/A FROMLIST commit, not yet merged
Tested-by tag ✅ Wenjia Zhang tag present

Diff

File Status Notes
arch/arm64/boot/dts/qcom/shikra.dtsi ✅ Changes compatible string and clock properties as described

Issues

None — This is a faithful representation of the lore patch.

Upstream Status

⏳ Decision Pending — Reviewed-by from Bartosz Golaszewski present, but no "applied" or merge signal yet. Patch is recent (Oct 2026).

Integration Presence

✅ Present in qcom-next — All checked added lines are present per integration report.


Final Summary

  1. Lore link present: Yes — all 5 commits have lore.kernel.org links
  2. Lore link matches PR commits: Partial — Commit 1 has macro signature differences from lore v2; Commit 3 has author mismatch and incorrect prefix
  3. Upstream patch status:
    • Commit 1: ✅ Upstreamed (merged as ef8057b07c72a817537856b98d6e7493b9404eaf)
    • Commit 2: ⏳ Revert of v5 to apply v9
    • Commit 3: ✅ Accepted ("Patch applied" signal) but missing upstream SHA
    • Commit 4: ⏳ Revert to apply corrected version
    • Commit 5: ⏳ In review (Reviewed-by present, awaiting merge)
  4. PR present in qcom-next/topics: Partial — 4/5 commits present, 1/5 partial (commit 2)

Verdict

⚠️ PARTIAL — Merge with caution. Key issues:

  1. Commit 1: Macro API differs from lore v2 (parameter naming and & usage in PM_RUNTIME_ACQUIRE_ERR). Verify this matches the actual upstream commit ef8057b07c72a817537856b98d6e7493b9404eaf.

  2. Commit 3:

    • Author mismatch: PR shows Udit Tiwari, lore shows Kuldeep Singh
    • Incorrect prefix: Uses BACKPORT: UPSTREAM: without upstream SHA; should be UPSTREAM: with SHA or FROMLIST: if not yet in mainline
    • Missing backport note if truly a backport
  3. API consistency: Commit 3 uses PM_RUNTIME_ACQUIRE_ERR(&pm) which depends on commit 1's PR version. If commit 1's API is corrected to match lore v2, commit 3 will need adjustment.

Recommendation

Request changes:

  • Verify commit 1 matches the actual merged upstream commit ef8057b07c72a817537856b98d6e7493b9404eaf
  • Fix commit 3 authorship to match lore (Kuldeep Singh) or add proper Co-developed-by if Udit Tiwari is a co-author
  • Correct commit 3 prefix: if merged upstream, use UPSTREAM: with SHA; if not, use FROMLIST:
  • Ensure API consistency between commits 1 and 3

Deterministic Integration Presence

Integration Presence Report

This report is generated by Jarvis before validate-patch runs.
It is the authoritative source for whether PR changes are already present
in qcom-next or in the kernel topic branches.

Kernel repo: /local/mnt/workspace/sgaud/Qgenie/image_pipeline/kernel
qcom-next ref: ba86f67908354f41f269ca1d64b22e4624766dcf
topics remote: topics -> https://github.com/qualcomm-linux/kernel-topics
topics fetch: fetched

Commit Subject qcom-next topics Final
1/5 [PATCH 1/5] UPSTREAM: PM: runtime: Wrapper macros for usage counter present - all checked added lines are present skipped - not checked because qcom-next already contains the change present
2/5 [PATCH 2/5] Revert "FROMLIST: crypto: qce - Add runtime PM and partial - subject or partial tree evidence found, but full change was not verified partial - subject or partial tree evidence found, but full change was not verified partial
3/5 [PATCH 3/5] BACKPORT: UPSTREAM: crypto: qce - Add runtime PM and present - all checked added lines are present skipped - not checked because qcom-next already contains the change present
4/5 [PATCH 4/5] Revert "FROMLIST: arm64: dts: qcom: shikra: Correct QCE missing - no subject, patch-id, or full tree-content match found present - exact patch-id match at 49d7d5b650691aac2b2ab6705b15d0d03076fa1c present
5/5 [PATCH 5/5] FROMLIST: arm64: dts: qcom: shikra: Correct QCE node present - all checked added lines are present skipped - not checked because qcom-next already contains the change present

Final Status

overall_status: PARTIAL
present_commits: 4/5
partial_commits: 1/5
missing_commits: 0/5
topics_checked_for_commits: 2/5
final_summary: PR present in qcom-next/topics: Partial - 1/5 commit(s) only have partial integration evidence

@qlijarvis

Copy link
Copy Markdown

PR #1247 — checker-log-analyzer

PR: #1247
Checker run: https://github.com/qualcomm-linux/kernel-config/actions/runs/37621735859

Checker Result Summary
Checker Result Summary
checkpatch ✅ All 4 commits passed
dt-binding-check ⏭️ No binding changes
dtb-check ❌ Missing required clocks and clock-names properties
sparse-check ✅ No sparse warnings
check-uapi-headers ✅ No UAPI changes
check-patch-compliance ❌ 3 issues: Link fetch failure, 2 missing prefixes, 1 content mismatch
tag-check ❌ 2 Revert commits missing required prefix

Detailed report: Full report

Checker analysis — click to expand

🤖 CI Checker Analysis (checker-log-analyzer)

PR: #1247 - Revert QCE runtime PM changes and correct node configuration
Source: https://github.com/qualcomm-linux/kernel-config/actions/runs/37621735859
Target branch: qcom-6.18.y

Checker Result Summary
checkpatch ✅ All 4 commits passed
dt-binding-check ⏭️ No binding changes
dtb-check ❌ Missing required clocks and clock-names properties
sparse-check ✅ No sparse warnings
check-uapi-headers ✅ No UAPI changes
check-patch-compliance ❌ 3 issues: Link fetch failure, 2 missing prefixes, 1 content mismatch
tag-check ❌ 2 Revert commits missing required prefix

❌ dtb-check

Root cause: The revert of the QCE node configuration removed the clocks and clock-names properties, but the qcom-qce.yaml binding schema requires them for the qcom,sm8150-qce compatible string.

Failure details:

/opt/actions-runner/_work/kernel-config/kernel-config/kernel/temp-out/arch/arm64/boot/dts/qcom/shikra-*.dtb: 
crypto@1b3a000 (qcom,shikra-qce): 'clocks' is a required property
crypto@1b3a000 (qcom,shikra-qce): 'clock-names' is a required property
crypto@1b3a000 (qcom,shikra-qce): compatible: 'oneOf' conditional failed, one must be fixed:
	['qcom,shikra-qce', 'qcom,sm8150-qce', 'qcom,qce'] is too long

The error appears on all shikra DTB variants: shikra-cqm-evk.dtb, shikra-iqs-evk-camx.dtb, shikra-iqs-evk-dlc-panel.dtb, shikra-iqs-evk-el2.dtb, shikra-iqs-evk-imx577-camera.dtb, shikra-iqs-evk-lvds-auo,g133han01.dtb.

Fix: The revert removed the clocks and clock-names properties from the crypto@1b3a000 node. According to the binding schema, these are required for qcom,sm8150-qce. You need to either:

  1. Keep the clock properties when reverting (partial revert):

    crypto: crypto@1b3a000 {
        compatible = "qcom,shikra-qce", "qcom,sm8150-qce", "qcom,qce";
        reg = <0x0 0x01b3a000 0x0 0x6000>;
        dmas = <&cryptobam 4>, <&cryptobam 5>;
        dma-names = "rx", "tx";
        iommus = <&apps_smmu 0x94 0x0011>,
                 <&apps_smmu 0x95 0x0011>,
                 <&apps_smmu 0x96 0x0011>,
                 <&apps_smmu 0x98 0x0001>,
                 <&apps_smmu 0x9f 0x0>;
        clocks = <&rpmcc RPM_SMD_CE1_CLK>;
        clock-names = "core";
    };
    
  2. Or change the compatible string to one that doesn't require clocks (e.g., back to qcom,ipq4019-qce), but this would contradict the purpose of patch 5/5 which sets it to qcom,sm8150-qce.

Reproduce locally:

make -j$(nproc) O=out CHECK_DTBS=y arch/arm64/boot/dts/qcom/shikra-cqm-evk.dtb

❌ check-patch-compliance

Root cause: Three distinct issues across three commits: Link URL fetch failure, missing prefix on Revert commits, and content mismatch.

Issue 1: Link fetch failure (commit 1/5)

Commit: 4cf7a7f6c9f3 - "UPSTREAM: PM: runtime: Wrapper macros for usage counter guards"

Failure details:

Something seems wrong with the provided link. Please verify it
Try below command to run locally-
b4 am --single-message -C -l -3 https://lore.kernel.org/linux-pm/5068916.31r3eYUQgx@rafael.j.wysocki/
https://patch.msgid.link/3400866.aeNJFYEL58@rafael.j.wysocki

The commit has two Link: tags:

  • Link: https://lore.kernel.org/linux-pm/5068916.31r3eYUQgx@rafael.j.wysocki/
  • Link: https://patch.msgid.link/3400866.aeNJFYEL58@rafael.j.wysocki

The checker tried to fetch the first link and failed (likely a network issue or the message-ID format is not recognized by b4).

Fix: Verify the link manually with:

b4 am --single-message -C -l -3 https://lore.kernel.org/linux-pm/5068916.31r3eYUQgx@rafael.j.wysocki/

If the first link fails, keep only the second patch.msgid.link URL, which is the canonical format. Or use the commit SHA from mainline since this is marked UPSTREAM::

Link: https://git.kernel.org/linus/ef8057b07c72a817537856b98d6e7493b9404eaf

Issue 2: Missing prefix on Revert commits (commits 2/5 and 4/5)

Commit 2/5: 94ff5f03d554 - "Revert "FROMLIST: crypto: qce - Add runtime PM and interconnect bandwidth scaling support""

Commit 4/5: 9b567daec4fe - "Revert "FROMLIST: arm64: dts: qcom: shikra: Correct QCE node configuration""

Failure details:

Checking commit: Revert "FROMLIST: crypto: qce - Add runtime PM and interconnect bandwidth scaling support"
Commit summary does not start with a required prefix

Checking commit: Revert "FROMLIST: arm64: dts: qcom: shikra: Correct QCE node configuration"
Commit summary does not start with a required prefix

Fix: Add a prefix before the word Revert. Since these are reverting patches that were posted to the mailing list (FROMLIST:), use:

git rebase -i <base_sha>   # mark commits as 'edit'

# For commit 2/5:
git commit --amend -m "FROMLIST: Revert \"FROMLIST: crypto: qce - Add runtime PM and interconnect bandwidth scaling support\""

# For commit 4/5:
git commit --amend -m "FROMLIST: Revert \"FROMLIST: arm64: dts: qcom: shikra: Correct QCE node configuration\""

git rebase --continue

Alternatively, if these reverts are vendor-specific and not posted upstream, use QCLINUX: (though this will still fail the checker — it's a known limitation for vendor-only commits).

Issue 3: Content mismatch (commit 3/5)

Commit: 6a39b1f4d123 - "BACKPORT: UPSTREAM: crypto: qce - Add runtime PM and interconnect bandwidth scaling support"

Failure details:

Checking commit: BACKPORT: UPSTREAM: crypto: qce - Add runtime PM and interconnect bandwidth scaling support
Change is different from the one mentioned in Link

The commit is marked BACKPORT: UPSTREAM: and has a Link: tag, but the content differs from the upstream patch. This is expected for a backport (adaptations are normal), but the checker flags it.

Fix: Verify the diff manually:

b4 am --single-message -C -l -3 https://lore.kernel.org/all/20251120062443.2016084-1-quic_utiwari@quicinc.com/ -o /tmp/out
git format-patch -1 6a39b1f4d123 --stdout > /tmp/pr.patch
diff <(awk '/^diff/,/^--$/' /tmp/pr.patch | grep -E '^[+-][^+-]') \
     <(awk '/^diff/,/^--$/' /tmp/out/*.mbx | grep -E '^[+-][^+-]')

If the differences are legitimate adaptations (e.g., context changes, missing dependencies), document them in the commit message:

BACKPORT: UPSTREAM: crypto: qce - Add runtime PM and interconnect bandwidth scaling support

[... original commit message ...]

Backport notes:
- Adapted for qcom-6.18.y: <describe changes>

Link: https://lore.kernel.org/all/20251120062443.2016084-1-quic_utiwari@quicinc.com/

If the differences are unintended, align the patch with upstream.

Reproduce locally:

cd /path/to/kernel
bash ../kernel-checkers/check-patch-compliance.sh --kernel-src . \
  --base 9d6b44a8ec4642d17c2ff6022222f11dd850782b \
  --head 9b567daec4fe2486cfe3f5620b119f1bf939f221

❌ tag-check

Root cause: Two Revert commits (2/5 and 4/5) do not start with a required prefix tag. The target branch is qcom-6.18.y, which is not qcom-next or qcom-next-staging, so every commit subject must start with a valid prefix.

Failure details:

Commit 2/5: 94ff5f03d554
Subject: Revert "FROMLIST: crypto: qce - Add runtime PM and interconnect bandwidth scaling support"
❌ Missing prefix before Revert

Commit 4/5: 9b567daec4fe
Subject: Revert "FROMLIST: arm64: dts: qcom: shikra: Correct QCE node configuration"
❌ Missing prefix before Revert

Fix: Add a prefix before the word Revert:

git rebase -i 9d6b44a8ec4642d17c2ff6022222f11dd850782b

# Mark commits 2/5 and 4/5 as 'edit'

# For commit 2/5:
git commit --amend -m "FROMLIST: Revert \"FROMLIST: crypto: qce - Add runtime PM and interconnect bandwidth scaling support\""

# For commit 4/5:
git commit --amend -m "FROMLIST: Revert \"FROMLIST: arm64: dts: qcom: shikra: Correct QCE node configuration\""

git rebase --continue

Choose the correct prefix based on whether the revert itself has been posted upstream:

  • If the revert is posted to the mailing list → FROMLIST:
  • If the revert is merged into Linus's tree → UPSTREAM:
  • If the revert is vendor-only → QCLINUX: (but note: this will still fail check-patch-compliance)

All branches except qcom-next and qcom-next-staging require one of:
FROMLIST: / FROMGIT: / UPSTREAM: / BACKPORT: / QCLINUX: / PENDING: / WORKAROUND:


Verdict

4 blockers must be fixed before merge:

  1. dtb-check: Restore clocks and clock-names properties to the crypto@1b3a000 node, or change the compatible string to one that doesn't require them.
  2. check-patch-compliance: Fix the Link URL for commit 1/5 (use patch.msgid.link or mainline commit SHA).
  3. check-patch-compliance + tag-check: Add prefix to Revert commits 2/5 and 4/5 (e.g., FROMLIST: Revert "...").
  4. check-patch-compliance: Verify and document the content mismatch for commit 3/5 (BACKPORT).

@sgaud-quic

Copy link
Copy Markdown
Contributor

roopak-houji please fix dtb-check :

❌ dtb-check
Root cause: The revert of the QCE node configuration removed the clocks and clock-names properties, but the qcom-qce.yaml binding schema requires them for the qcom,sm8150-qce compatible string.

@qlijarvis

Copy link
Copy Markdown

PR #1247 — checker-log-analyzer

PR: #1247
Checker run: https://github.com/qualcomm-linux/kernel-config/actions/runs/37760720745

Checker Result Summary
Checker Result Summary
checkpatch ❌ 1 warning: Unknown commit id in Fixes tag
dt-binding-check ⏭️ No binding changes
dtb-check ✅ Passed
sparse-check ✅ Passed
check-uapi-headers ✅ Passed
check-patch-compliance ❌ 4 failures: 2 Revert prefix issues, 1 link fetch failure, 1 content mismatch
tag-check ❌ 2 commits missing required prefix (Revert commits)

Detailed report: Full report

Checker analysis — click to expand

🤖 CI Checker Analysis (checker-log-analyzer)

PR: #1247 - PM runtime and QCE crypto updates
Target Branch: qcom-6.18.y
Source: https://github.com/qualcomm-linux/kernel-config/actions/runs/37760720745

Checker Result Summary
checkpatch ❌ 1 warning: Unknown commit id in Fixes tag
dt-binding-check ⏭️ No binding changes
dtb-check ✅ Passed
sparse-check ✅ Passed
check-uapi-headers ✅ Passed
check-patch-compliance ❌ 4 failures: 2 Revert prefix issues, 1 link fetch failure, 1 content mismatch
tag-check ❌ 2 commits missing required prefix (Revert commits)

❌ checkpatch

Root cause: Commit 46cd21e references a Fixes tag with commit id 099cd05d200b that is not reachable in the current tree.

Failure details:

WARNING: Unknown commit id '099cd05d200b', maybe rebased or not pulled?
#16: 
Fixes: 099cd05d200b ("arm64: dts: qcom: shikra: Add ICE, TRNG and QCE nodes")

46cd21efa563e325b0dc308daf086bc0fb19f3eb total: 0 errors, 1 warnings, 0 checks, 19 lines checked

Fix: This is a non-blocking warning. The commit 099cd05d200b exists in the tree but may not be reachable from the current HEAD at the time checkpatch ran. This typically happens when:

  • The Fixes commit is in a different branch that hasn't been merged yet
  • The commit was rebased with a different SHA

Action: Verify the Fixes tag references the correct commit SHA in the target branch. If the commit exists in qcom-6.18.y, this warning can be ignored.

Reproduce locally:

./scripts/checkpatch.pl --strict --ignore FILE_PATH_CHANGES --git 37734126ee57..46cd21efa563

❌ check-patch-compliance

Root cause: Multiple compliance issues across 4 commits: Revert commits missing required prefix, link fetch failure, and content mismatch.

Issue 1: Link fetch failure (Commit 1)

Commit: 4cf7a7f6c9f3 - "UPSTREAM: PM: runtime: Wrapper macros for usage counter guards"

Failure details:

Checking commit: UPSTREAM: PM: runtime: Wrapper macros for usage counter guards
Something seems wrong with the provided link. Please verify it
Try below command to run locally-
b4 am --single-message -C -l -3 https://lore.kernel.org/linux-pm/5068916.31r3eYUQgx@rafael.j.wysocki/
https://patch.msgid.link/3400866.aeNJFYEL58@rafael.j.wysocki

Root cause: The Link URL https://lore.kernel.org/linux-pm/5068916.31r3eYUQgx@rafael.j.wysocki/ is not a valid lore.kernel.org message-id format. The checker expects a standard lore URL format.

Fix: Replace the Link with the correct lore.kernel.org URL format. The commit message shows two links:

  • https://lore.kernel.org/linux-pm/5068916.31r3eYUQgx@rafael.j.wysocki/ (invalid format)
  • https://patch.msgid.link/3400866.aeNJFYEL58@rafael.j.wysocki (alternative link service)

Use the standard lore.kernel.org format:

git commit --amend
# Change Link to: https://lore.kernel.org/all/3400866.aeNJFYEL58@rafael.j.wysocki/

Reproduce locally:

b4 am --single-message -C -l -3 https://lore.kernel.org/all/3400866.aeNJFYEL58@rafael.j.wysocki/

Issue 2: Missing prefix on Revert commit (Commit 2)

Commit: 94ff5f03d554 - "Revert "FROMLIST: crypto: qce - Add runtime PM and interconnect bandwidth scaling support""

Failure details:

Checking commit: Revert "FROMLIST: crypto: qce - Add runtime PM and interconnect bandwidth scaling support"
Commit summary does not start with a required prefix

Root cause: Revert commits must have a prefix tag before the word "Revert". The subject line starts with Revert but has no prefix tag.

Fix: Add a prefix before "Revert":

git rebase -i <base_sha>   # mark commit as 'edit'
git commit --amend -m "QCLINUX: Revert \"FROMLIST: crypto: qce - Add runtime PM and interconnect bandwidth scaling support\""
git rebase --continue

Choose the appropriate prefix:

  • UPSTREAM: Revert if the revert itself is from upstream
  • FROMLIST: Revert if the revert was posted to a mailing list
  • QCLINUX: Revert if this is a vendor-specific revert

Issue 3: Content mismatch (Commit 3)

Commit: b175a7fe256f - "BACKPORT: UPSTREAM: crypto: qce - Add runtime PM and interconnect bandwidth scaling support"

Failure details:

Checking commit: BACKPORT: UPSTREAM: crypto: qce - Add runtime PM and interconnect bandwidth scaling support
Change is different from the one mentioned in Link

Root cause: The patch content differs from the upstream version referenced in the Link tag. This is expected for a BACKPORT, but the differences should be documented.

Fix: Since this is marked as BACKPORT:, content differences are acceptable. However, you should:

  1. Verify the differences are intentional adaptations for the target kernel version
  2. Document the backport changes in the commit message

Reproduce locally:

# Fetch the upstream patch
b4 am --single-message -C -l -3 <link-from-commit-message> -o /tmp/out

# Compare with your commit
git format-patch -1 b175a7fe256f --stdout > /tmp/local.patch
diff <(awk '/^diff/,/^--$/' /tmp/local.patch | grep -E '^[+-][^+-]') \
     <(awk '/^diff/,/^--$/' /tmp/out/*.mbx | grep -E '^[+-][^+-]')

Action: If the differences are legitimate backport adaptations (e.g., API changes, missing dependencies), add a note in the commit message explaining the changes. Otherwise, align the patch with upstream.

Issue 4: Missing prefix on Revert commit (Commit 4)

Commit: 0ab295ed6343 - "Revert "FROMLIST: arm64: dts: qcom: shikra: Correct QCE node configuration""

Failure details:

Checking commit: Revert "FROMLIST: arm64: dts: qcom: shikra: Correct QCE node configuration"
Commit summary does not start with a required prefix

Root cause: Same as Issue 2 — Revert commit missing prefix tag.

Fix: Add a prefix before "Revert":

git rebase -i <base_sha>   # mark commit as 'edit'
git commit --amend -m "QCLINUX: Revert \"FROMLIST: arm64: dts: qcom: shikra: Correct QCE node configuration\""
git rebase --continue

❌ tag-check

Root cause: Two Revert commits do not start with a required prefix tag. All commits targeting qcom-6.18.y (not qcom-next or qcom-next-staging) must have a subject prefix.

Failure details:

Commit 2: 94ff5f03d554

Subject: Revert "FROMLIST: crypto: qce - Add runtime PM and interconnect bandwidth scaling support"

❌ Missing prefix before "Revert"

Commit 4: 0ab295ed6343

Subject: Revert "FROMLIST: arm64: dts: qcom: shikra: Correct QCE node configuration"

❌ Missing prefix before "Revert"

Fix: Add one of the required prefixes before "Revert":

  • FROMLIST: - if the revert was posted to a mailing list
  • FROMGIT: - if taken from a maintainer tree
  • UPSTREAM: - if merged into mainline
  • BACKPORT: - if backported with modifications
  • QCLINUX: - if vendor-only revert
  • PENDING: - if work-in-progress
  • WORKAROUND: - if temporary fix

Example fix:

git rebase -i <base_sha>
# Mark commits 94ff5f03d554 and 0ab295ed6343 as 'edit'

# For commit 94ff5f03d554:
git commit --amend -m "QCLINUX: Revert \"FROMLIST: crypto: qce - Add runtime PM and interconnect bandwidth scaling support\""

# Continue to next commit
git rebase --continue

# For commit 0ab295ed6343:
git commit --amend -m "QCLINUX: Revert \"FROMLIST: arm64: dts: qcom: shikra: Correct QCE node configuration\""

git rebase --continue

Note: The other 3 commits have valid prefixes:

  • ✅ Commit 1: UPSTREAM: prefix
  • ✅ Commit 3: BACKPORT: UPSTREAM: prefix
  • ✅ Commit 5: FROMLIST: prefix

Verdict

Fix 4 blockers before merge:

  1. checkpatch (non-blocking): Verify Fixes tag commit SHA 099cd05d200b exists in target branch
  2. check-patch-compliance: Fix Link URL format in commit 1 (use standard lore.kernel.org format)
  3. check-patch-compliance + tag-check: Add prefix to Revert commits 2 and 4 (suggest QCLINUX:)
  4. check-patch-compliance: Verify BACKPORT content differences in commit 3 are documented

Priority order:

  1. Add prefix to both Revert commits (fixes both check-patch-compliance and tag-check)
  2. Fix Link URL in commit 1
  3. Document BACKPORT changes in commit 3 (if not already documented)
  4. Verify Fixes tag (informational only)

@sgaud-quic

Copy link
Copy Markdown
Contributor

roopak-houji please fix dtb-check :

❌ dtb-check
Root cause: The revert of the QCE node configuration removed the clocks and clock-names properties, but the qcom-qce.yaml binding schema requires them for the qcom,sm8150-qce compatible string.

Passed in latest run

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.

7 participants