Re: [PATCH RFT v3 3/3] ufs: core: delegate the interrupt service routine to a threaded irq handler

From: Bart Van Assche
Date: Mon Apr 07 2025 - 15:46:46 EST


On 4/7/25 3:17 AM, Neil Armstrong wrote:
+static irqreturn_t ufshcd_intr(int irq, void *__hba)
+{
+ struct ufs_hba *hba = __hba;
+
+ /* Move interrupt handling to thread when MCQ & ESI are not enabled */
+ if (!hba->mcq_enabled || !hba->mcq_esi_enabled)
+ return IRQ_WAKE_THREAD;
+
+ /* Directly handle interrupts since MCQ ESI handlers does the hard job */
+ return ufshcd_sl_intr(hba, ufshcd_readl(hba, REG_INTERRUPT_STATUS) &
+ ufshcd_readl(hba, REG_INTERRUPT_ENABLE));
+}

Reviewed-by: Bart Van Assche <bvanassche@xxxxxxx>