From nobody Tue Dec 2 02:18:57 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 91B3E312820 for ; Thu, 20 Nov 2025 21:38:09 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1763674690; cv=none; b=ifzLY/noHA9FKRH4tw9eQ5OKz4I1WbLuVTah0SpKJiBGm+pcdsGwN5YR+04vPMmBSl69aUUMq82GsRjbOPzzJfh2hDY+Bh0GLNpECIyl5IlOipp3URrl4C6T3aIX9RMagxnluIUb2zllO5VvAcKl7zJoRwlz9ENJo56sfsWlt6o= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1763674690; c=relaxed/simple; bh=AffBdJpBJNkMq6q+gab85JaLyJuW8lq6N0V1nRo4XCs=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=DeWV41Kh3bLlbjXO9JXSwhYvEmqmFDTO/cKAON8atqQk99rIU0XS87dkU8HdyksOwh7FcfjL2dtRktZxXARuFyAFSW0ut5PA3Cxiev2DKWOpIzaN5wYDLDJsJo3965o11viUrfDNJLWrEG6pr8ksGOhl/EiVLGNKyvQx0qhLc/A= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=Bj8mutab; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="Bj8mutab" Received: by smtp.kernel.org (Postfix) with ESMTPSA id EC99AC4CEF1; Thu, 20 Nov 2025 21:38:08 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1763674689; bh=AffBdJpBJNkMq6q+gab85JaLyJuW8lq6N0V1nRo4XCs=; h=From:Date:Subject:References:In-Reply-To:To:Cc:From; b=Bj8mutabVPHyktTyLd9TY5vo/A8XPwZ6BREa1Usx2c8WN6k7j6Jkc0qfXaPWMUpiX MAkKwwCXMgPpkNxJGCvEBOeSL3XaXD3HhpGnjhtIkppzOFik2EMCPB+BOGzrwSLAEg aJsNaGxWn+5sznzZ856zKaYLJVveTVeQ6xH6IhNU/5ZGBKPDD/He5sFpZNEAIo47m8 8yM2tX5cMp6DTyakQtZ/eeM2Qo1v5Ga9ewWG+7lQcBcGBGZTxlrZekWO0FylPy9g+Y frAzCbHSMPD4+J0DzoScvnlJPTRUnCnALHyOeKe/I/zDvRtMG3ngmWaKQZuhUJhiBr /WQLkhWnatK+Q== From: "Rob Herring (Arm)" Date: Thu, 20 Nov 2025 15:37:50 -0600 Subject: [PATCH v2 1/3] mtd: nand: atmel: Defer probe if SRAM is missing 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: quoted-printable Message-Id: <20251120-at91-probe-v2-1-8c8592f02e8e@kernel.org> References: <20251120-at91-probe-v2-0-8c8592f02e8e@kernel.org> In-Reply-To: <20251120-at91-probe-v2-0-8c8592f02e8e@kernel.org> To: Miquel Raynal , Richard Weinberger , Vignesh Raghavendra , Nicolas Ferre , Alexandre Belloni , Claudiu Beznea , Russell King Cc: linux-mtd@lists.infradead.org, linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org X-Mailer: b4 0.15-dev The Atmel NAND controller driver depends on an SRAM pool and has an implicit assumption that the SRAM pool has already been created. Changing the initcall ordering can break this. Unfortunately, fw_devlink can't save us here as there's not a standard property to track the dependency. So it's up to deferring probe to save us. Signed-off-by: Rob Herring (Arm) --- drivers/mtd/nand/raw/atmel/nand-controller.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/mtd/nand/raw/atmel/nand-controller.c b/drivers/mtd/nan= d/raw/atmel/nand-controller.c index 83ba4ebd02d4..e60998eb754b 100644 --- a/drivers/mtd/nand/raw/atmel/nand-controller.c +++ b/drivers/mtd/nand/raw/atmel/nand-controller.c @@ -2306,7 +2306,7 @@ atmel_hsmc_nand_controller_init(struct atmel_hsmc_nan= d_controller *nc) "atmel,nfc-sram", 0); if (!nc->sram.pool) { dev_err(nc->base.dev, "Missing SRAM\n"); - return -ENOMEM; + return -EPROBE_DEFER; } =20 nc->sram.virt =3D (void __iomem *)gen_pool_dma_alloc(nc->sram.pool, --=20 2.51.0