From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mail-pj1-f44.google.com (mail-pj1-f44.google.com [209.85.216.44]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 2105C2941A for ; Fri, 7 Aug 2026 17:41:50 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.216.44 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1786124513; cv=none; b=l5XJ7aLuDBONvcsWpWKgKkOXeR5XsSkjHJOUgtsTsf3sAI1u3Z98YcMDMEobn6BtQ9qjR4tkQXwLaUMKjRXeRdXOD7PbbGKotet55wnV2tGrLmHjbp8oIpLEE3qp7dLpMd5xpWwWrIPYCBYWWFaZhpzRo70nU/B4T0oY07vLhiI= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1786124513; c=relaxed/simple; bh=n2FF6yTybhDp/bZ90SDTSjgM6yCnUR63Nrzc303VrvU=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:To:Cc; b=LXIVjeTtmI+mq7qpQf/RnGkj91U5d9271BXHgYI1vYRVi3K0WIc2YrxDYn9ZBj0X3UUSq9ETfapOvelEuCFIb7TIf5YAY5m7ZC5wihHy2ogtKdjpfS0WoS7JSsnUTYSWu4ltEFyPC2tKm2IZSCvIV2NU+AZqt90sXN9+BBk2R3Q= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=L+q7KENd; arc=none smtp.client-ip=209.85.216.44 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="L+q7KENd" Received: by mail-pj1-f44.google.com with SMTP id 98e67ed59e1d1-381c51fde6bso4273370a91.2 for ; Fri, 07 Aug 2026 10:41:50 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1786124510; x=1786729310; darn=vger.kernel.org; h=cc:to:message-id:content-transfer-encoding:content-type :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to:content-type; bh=rTKEFy1dHQS9eTV30s1RmJcGez8nqQ/r+IruxxzByOc=; b=L+q7KENdQkogWEy4JmbIFNaguzjWWo5U/R0ibcoIlKdix7sFInTSuI54mSDkbSStfW N840QdV8eOHO9avicqnOpKkArjSmtH0scSTCPTdiGxJMqfBXPTwekVVyk+jZcb8aC6th 5QzSKcYb4rRgNQihaFi6CJA6IbOe7epLUnCAulJXw9aycpN2iM6/K/nKtdT7RHVY08Qv fcTLFtoI2GGBLm6s2RQij0cpB24GDgj8IGBS7u/saZPnDZltv/X/7qBTzVGAGjA8MuRU W04KD7VCJomk9DKI0C4QVoF8Sc8osUO100T2yH1mEx6J7V02dCELARzE434lBJPUb+yq MT3g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1786124510; x=1786729310; h=cc:to:message-id:content-transfer-encoding:content-type :mime-version:subject:date:from:x-gm-gg:x-gm-message-state:from:to :cc:subject:date:message-id:reply-to:content-type; bh=rTKEFy1dHQS9eTV30s1RmJcGez8nqQ/r+IruxxzByOc=; b=ZZYhYIll3UYzCyXAH+pBfhMHhB9xicTxCZh9maP2vXLtkpp/dqaWUOXw/lMmTwZycE 78n1BX81/JTXE0Eh8qpQwUzxT9C69ylfFoJZ8v/Sic7m3XKcPWQCPQdJ7SrbmiHg83q/ Cx90nr7J4bOTThxdfzPAmG2A6GKkRTqMTDiw8g78PIXUVi7e7Jc7J9a5sAk8h9yXPe4i L3L3plWzrlsaFEJUSMwvzNLrOxzX+MBR1aJtmhGGc7b4Lm6aXfCb2Gr6n8WMEvKcfest b/LZKZ/Av3ayI9gtx41iYYrm+6EAVwD84pG2LvkttXVKOGSedmzxJla9e2q40Dd5odAJ Tosg== X-Forwarded-Encrypted: i=1; AHgh+RrHsy64F3OEe1ihQPbk74tJ+OFfWzG9wrD5q9x+CzfMtzCIUByjkOuQNpnddb1KHKYVUjt14o2fhEnvsPY=@vger.kernel.org X-Gm-Message-State: AOJu0YwbXlh4Ur6CP4UieC/QhVeGAcdNrMR4oZCOdlFQVCnZvGqGg4rz jL4u7TG4ybB3v8+ajZIDiF+zM9S/XweQkw6eRUfICYfLMGJRpMxP9YqX X-Gm-Gg: AR+sD111f15dBqYu6RcjteQBG+fsf0ASYysJ7MeEQgP8m5vIaSQhS72DBmwe84FKtU7 0aKMV7yD3CDgbxAxOkDMZyB11siDauByEvzTiw39F62T9phTj0D2dTEsDIZk4EBdgG02JOcGqJe Kjuz04avChtksBTwKqGxQnl1TdNuw2HbB3STOAZpbKgn5JFxphLU6vr+7Dumjz5Nqsi8bt8LDkS keJ3LtNk3FvrmAgBluNh5Tv5uQTkhjdiHr0i87FFiGDaDxx4nbY0eLEg7bHF8Q9Yf6LA/O70KUd VvW3lsUk14roijNApxsWZwJdgWnNJDlyqE/AJOdEvaT9BmURHLATBwCwxImDt5v5JOGdwAlCz7K Fsxcw8/0LXEvT+ZvPDHrem7k0xaaR6SK9Hgn7I4dXdwI/fqaJrwCHzbvTUWkS5NYjPtja8IgDc7 D5bsU6+8mWVWSel0zNyngmF4JhC79OZG0VBgKFQ2tsDICdZyznNBDmFkjTZZn524hU1UcvESYQx SJ2SnTFar7dp3hU5E7yJ8PR7uZLBS0q9fFnEi5CEuwP93YqhjBcQM6O X-Received: by 2002:a17:90b:4f81:b0:38c:e9e9:e7ce with SMTP id 98e67ed59e1d1-392822bf6abmr1208572a91.3.1786124509914; Fri, 07 Aug 2026 10:41:49 -0700 (PDT) Received: from junjungu-PC.localdomain ([223.166.246.74]) by smtp.gmail.com with ESMTPSA id 98e67ed59e1d1-3925ff912c7sm3503364a91.17.2026.08.07.10.41.46 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 07 Aug 2026 10:41:48 -0700 (PDT) From: Felix Gu Date: Sat, 08 Aug 2026 01:41:43 +0800 Subject: [PATCH] spi: img-spfi: don't disable runtime PM on DMA deferred probe Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: 7bit Message-Id: <20260808-spfi-v1-1-6bc4345be430@gmail.com> X-B4-Tracking: v=1; b=H4sIANYYdmoC/6tWKk4tykwtVrJSqFYqSi3LLM7MzwNyDHUUlJIzE vPSU3UzU4B8JSMDIzMDCwNz3eKCtEzdlNREM0MTiyRTi7RkJaDSgqLUtMwKsDHRsRB+cWlSVmp yCUivUm0tAFsZMNFoAAAA X-Change-ID: 20260807-spfi-dea6148b58fc To: Mark Brown , Peter Ujfalusi Cc: linux-spi@vger.kernel.org, linux-kernel@vger.kernel.org, Felix Gu X-Mailer: b4 0.15.2 X-Developer-Signature: v=1; a=ed25519-sha256; t=1786124505; l=1621; i=ustc.gu@gmail.com; h=from:subject:message-id; bh=n2FF6yTybhDp/bZ90SDTSjgM6yCnUR63Nrzc303VrvU=; b=oHDWFYyWlsStzsEx9ZWzxDqEPhpnEGqeJkGUOMR0YBevf/nqXJC+RVAoviSJAoekTfOzjuIHz YuO//6CAFEnD2qYJsv3MUkW0l94LP1qdCEOKgICuTvAlaz2DvwE2KfE X-Developer-Key: i=ustc.gu@gmail.com; a=ed25519; pk=fjUXwmjchVN7Ja6KGP55IXOzFeCl9edaHoQIEUA+/hw= When dma_request_chan() returns -EPROBE_DEFER, the error path jumps to disable_pm and calls pm_runtime_disable() even though pm_runtime_enable() was never called, leaving disable_depth unbalanced and the device permanently PM-disabled. Route the defer path through free_dma to skip pm_runtime_disable(). Fixes: 6bfbf4d0aa0c ("spi: img-spfi: Use dma_request_chan() instead dma_request_slave_channel()") Signed-off-by: Felix Gu --- drivers/spi/spi-img-spfi.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/drivers/spi/spi-img-spfi.c b/drivers/spi/spi-img-spfi.c index aec724e3f824..a9310a1b0354 100644 --- a/drivers/spi/spi-img-spfi.c +++ b/drivers/spi/spi-img-spfi.c @@ -611,7 +611,7 @@ static int img_spfi_probe(struct platform_device *pdev) ret = PTR_ERR(spfi->tx_ch); spfi->tx_ch = NULL; if (ret == -EPROBE_DEFER) - goto disable_pm; + goto free_dma; } spfi->rx_ch = dma_request_chan(spfi->dev, "rx"); @@ -619,7 +619,7 @@ static int img_spfi_probe(struct platform_device *pdev) ret = PTR_ERR(spfi->rx_ch); spfi->rx_ch = NULL; if (ret == -EPROBE_DEFER) - goto disable_pm; + goto free_dma; } if (!spfi->tx_ch || !spfi->rx_ch) { @@ -647,6 +647,7 @@ static int img_spfi_probe(struct platform_device *pdev) disable_pm: pm_runtime_disable(spfi->dev); +free_dma: if (spfi->rx_ch) dma_release_channel(spfi->rx_ch); if (spfi->tx_ch) --- base-commit: 1701fda2f58e345c050f4309971bdc07cd6146ba change-id: 20260807-spfi-dea6148b58fc Best regards, -- Felix Gu