[RFC PATCH v1 1/1] mailbox: arm_mhuv3: Keep the combined IRQ enabled during system suspend
Finley Xiao
finley.xiao at rock-chips.com
Wed Sep 30 02:36:17 PDT 2026
在 2026/9/30 16:50, Sudeep Holla 写道:
> On Wed, Sep 30, 2026 at 11:36:57AM +0800, Finley Xiao wrote:
>> When MHUv3 is used as the SCMI mailbox transport (arm,scmi-mailbox),
>> SCMI clock and power-domain operations still need to work in the noirq
>> phase of system suspend: genpd may power off a device's parent domain
>> from genpd_suspend_noirq(), which issues scmi_clock_config_set() /
>> scmi_power_state_set() and waits for the firmware reply via the mailbox
>> RX IRQ.
>>
>> However, dpm_suspend_noirq() calls suspend_device_irqs() before running
>> the suspend_noirq callbacks, so the combined interrupts are already
>> masked at that point and the SCMI transfer times out while waiting for
>> the reply.
>>
>> Both the PBX and MBX combined interrupts are requested as threaded
>> IRQs with only IRQF_ONESHOT. The MBX combined IRQ must stay enabled so
>> that firmware replies are delivered, and the PBX combined IRQ, used
>> for txdone by IRQ when not in polling mode, needs the same treatment.
>>
>> IRQ threads are not frozen during system suspend, so with
>> IRQF_NO_SUSPEND the threaded combined-IRQ handlers still run in the
>> noirq phase.
>>
>> Add IRQF_NO_SUSPEND to the MHUv3 combined IRQ registrations so that
>> SCMI remains functional throughout the suspend/resume cycle.
>>
> Looks good to me. Just to confirm, the expectation is to just have the
> IRQs functional during suspend/resume cycle only and *not to wake up* the
> system right ? If you need wakeup, you need to do more work.
Yes, exactly. We just need the IRQs functional during the suspend/resume
cycle (for SCMI traffic in the noirq phase), not to wake up the system.
Thanks for the review.
>
> For this change,
>
> Reviewed-by: Sudeep Holla <sudeep.holla at kernel.org>
>
> Jassi,
>
> Please pick this up for next cycle when you are at it. Thanks!
>
--
Best regards,
底层平台中心 肖锋(Finley Xiao)
************************************************************************************
瑞芯微电子股份有限公司
Rockchip Electronics Co., Ltd.
福建省福州市铜盘路软件大道89号软件园A区21号楼 350003
No.21 Building, A District, Fuzhou Software Park, Fuzhou, Fujian 350003, P.R. China
Tel: 0591-83991906-8602 Mobile: 18506057603
************************************************************************************
More information about the linux-arm-kernel
mailing list