From nobody Mon Feb 9 01:16:49 2026 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 6A8A22FFDCC; Wed, 13 Aug 2025 14:55:50 +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=1755096950; cv=none; b=FWrg7ez/Ea187q8MkHcQUFhe3la3GhoFV2p6Vw1ACfE30Ph9YqtbxQ9GWAfTEUTJoUF0JFqFuGkViwSqji7rRVPKAEstnbgLRPn7BRO/qDKchfXAfu0mFdvJQfh9YqjQn6uwnq+2sRZdVk+lazD/tafEY06Vi4J7nv7rwYd20zM= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1755096950; c=relaxed/simple; bh=W5wn3NeKGRyaF5afVGlpCWkJIlaztzO4EVZV0lTaqQg=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: MIME-Version; b=bS/z5mYbZ3bhR9h+3qj3dq3oNvkxy2Bjmpp2/mqF+3hT3SZ4V9j08kcR8DsSvJn+Y0/R7z7JXRh/zIQ0Crlz0w6ZPsZhxfp4lL72lAVe3wItJZLda6l5rtzFRKW2y7skMlvTUdmogNUXTJ1SinPQZoxPvmA/9K6BBCb674ozXeo= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=gKjmu7gD; 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="gKjmu7gD" Received: by smtp.kernel.org (Postfix) with ESMTPSA id E3CE7C116B1; Wed, 13 Aug 2025 14:55:49 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1755096950; bh=W5wn3NeKGRyaF5afVGlpCWkJIlaztzO4EVZV0lTaqQg=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=gKjmu7gDM/sY1ung+b2oB69H9t9KqVNJfZZG37yj0ObpM930lYQpvllOBqy57EVBb BYqjyn77jC9dpRjHpPpBFufMN/jl3clDlr5WPou97L63ucspEq6u7JFy0XYc4X0PXX SdyDkwbhXhpagqemeI2U66L1rSFi++CLCfbjmXNcTaAahu1KUqq8Lzuj23I9fw3xgR wAIXot0CwvTBXFjN29c36eSgEoFcyIIWdS3fsX/uiK+jOb4kw+0zLbtfq/NYDklvhq YvH6l6B1Q3zb0qe7/veWRGMicVkemt+H1NaNIoOZ6Dmx4zNkTT3wXZGTU41C5zm9P+ YrWKodIMh+YSw== Received: by wens.tw (Postfix, from userid 1000) id 341B15FF5B; Wed, 13 Aug 2025 22:55:45 +0800 (CST) From: Chen-Yu Tsai To: Andrew Lunn , "David S. Miller" , Eric Dumazet , Jakub Kicinski , Paolo Abeni , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Chen-Yu Tsai , Jernej Skrabec , Samuel Holland Cc: netdev@vger.kernel.org, devicetree@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-sunxi@lists.linux.dev, linux-kernel@vger.kernel.org, Andre Przywara Subject: [PATCH net-next v2 04/10] soc: sunxi: sram: register regmap as syscon Date: Wed, 13 Aug 2025 22:55:34 +0800 Message-Id: <20250813145540.2577789-5-wens@kernel.org> X-Mailer: git-send-email 2.39.5 In-Reply-To: <20250813145540.2577789-1-wens@kernel.org> References: <20250813145540.2577789-1-wens@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Chen-Yu Tsai If the system controller had a ethernet controller glue layer control register, a limited access regmap would be registered and tied to the system controller struct device for the ethernet driver to use. Until now, for the ethernet driver to acquire this regmap, it had to do a of_parse_phandle() + find device + dev_get_regmap() sequence. Since the syscon framework allows a provider to register a custom regmap for its device node, and the ethernet driver already uses syscon for one platform, this provides a much more easier way to pass the regmap. Use of_syscon_register_regmap() to register our regmap with the syscon framework so that consumers can retrieve it that way. Signed-off-by: Chen-Yu Tsai Acked-by: Jernej Skrabec --- Changes since v1: - Fix check on return value - Expand commit message --- drivers/soc/sunxi/sunxi_sram.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/drivers/soc/sunxi/sunxi_sram.c b/drivers/soc/sunxi/sunxi_sram.c index 4f8d510b7e1e..1837e1b5dce8 100644 --- a/drivers/soc/sunxi/sunxi_sram.c +++ b/drivers/soc/sunxi/sunxi_sram.c @@ -12,6 +12,7 @@ =20 #include #include +#include #include #include #include @@ -377,6 +378,7 @@ static int __init sunxi_sram_probe(struct platform_devi= ce *pdev) const struct sunxi_sramc_variant *variant; struct device *dev =3D &pdev->dev; struct regmap *regmap; + int ret; =20 sram_dev =3D &pdev->dev; =20 @@ -394,6 +396,10 @@ static int __init sunxi_sram_probe(struct platform_dev= ice *pdev) regmap =3D devm_regmap_init_mmio(dev, base, &sunxi_sram_regmap_config); if (IS_ERR(regmap)) return PTR_ERR(regmap); + + ret =3D of_syscon_register_regmap(dev->of_node, regmap); + if (ret) + return ret; } =20 of_platform_populate(dev->of_node, NULL, NULL, dev); --=20 2.39.5