linux-arm-kernel.lists.infradead.org archive mirror
 help / color / mirror / Atom feed
From: Sasha Levin <sashal@kernel.org>
To: patches@lists.linux.dev, stable@vger.kernel.org
Cc: Janne Grunau <j@jannau.net>, Lee Jones <lee@kernel.org>,
	Sasha Levin <sashal@kernel.org>,
	sven@kernel.org, asahi@lists.linux.dev,
	linux-arm-kernel@lists.infradead.org
Subject: [PATCH AUTOSEL 6.17] mfd: macsmc: Add "apple,t8103-smc" compatible
Date: Thu,  9 Oct 2025 11:55:06 -0400	[thread overview]
Message-ID: <20251009155752.773732-40-sashal@kernel.org> (raw)
In-Reply-To: <20251009155752.773732-1-sashal@kernel.org>

From: Janne Grunau <j@jannau.net>

[ Upstream commit 9b959e525fa7e8518e57554b6e17849942938dfc ]

After discussion with the devicetree maintainers we agreed to not extend
lists with the generic compatible "apple,smc" anymore [1]. Use
"apple,t8103-smc" as base compatible as it is the SoC the driver and
bindings were written for.

[1]: https://lore.kernel.org/asahi/12ab93b7-1fc2-4ce0-926e-c8141cfe81bf@kernel.org/

Signed-off-by: Janne Grunau <j@jannau.net>
Link: https://lore.kernel.org/r/20250828-dt-apple-t6020-v1-18-507ba4c4b98e@jannau.net
Signed-off-by: Lee Jones <lee@kernel.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
---

LLM Generated explanations, may be completely bogus:

YES

- What changed
  - Adds a new OF match entry `{ .compatible = "apple,t8103-smc" }` to
    the driver’s match table in drivers/mfd/macsmc.c:481, leaving the
    existing generic match `{ .compatible = "apple,smc" }` intact.

- Why it matters
  - Devicetree policy is moving away from expanding generic compatibles
    like `"apple,smc"` and towards SoC‑specific base compatibles. The
    binding documents this pattern and uses SoC‑specific compatibles
    with explicit fallback chains
    (Documentation/devicetree/bindings/mfd/apple,smc.yaml:20).
  - Current DTs for Apple SoCs use these patterns:
    - t8103 (M1) nodes include `"apple,t8103-smc"`
      (arch/arm64/boot/dts/apple/t8103.dtsi:900).
    - t6020 (M2 Pro) nodes use `"apple,t6020-smc", "apple,t8103-smc"`
      (arch/arm64/boot/dts/apple/t602x-die0.dtsi:105), intentionally
      avoiding the generic `"apple,smc"`.
  - Before this change, the driver only matched `"apple,smc"`
    (v6.17:drivers/mfd/macsmc.c showed only the generic match), so
    kernels without the `"apple,t8103-smc"` entry would fail to bind on
    DTs that omit the generic fallback, causing the SMC MFD (and all
    dependent subdevices like GPIO and reboot) not to probe.

- Risk and scope
  - Minimal and contained: a one‑line addition to an OF match table
    (drivers/mfd/macsmc.c:481). No functional code paths change, no
    behavioral differences for already working systems, and no
    architectural changes.
  - Security-neutral: no new I/O or parsing paths are introduced; only
    device binding is enabled for an SoC‑specific compatible.
  - No negative side effects expected: the new match string is specific
    and does not overlap with other drivers.

- Stable suitability
  - This is a classic “device/compatible ID addition” that fixes a user-
    visible binding failure when DTs conform to updated bindings that
    avoid the generic `"apple,smc"`. Such ID additions are routinely
    accepted into stable to enable hardware that otherwise won’t probe.
  - Although the commit lacks an explicit Cc: stable, it meets stable
    rules: important fix (driver doesn’t bind on modern DTs), minimal
    risk, no features, and confined to the MFD subsystem.

Conclusion: Backporting ensures the macsmc driver binds on DTs using the
SoC-based compatible scheme (notably those that rely on
`"apple,t8103-smc"` fallback), with negligible regression risk.

 drivers/mfd/macsmc.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/drivers/mfd/macsmc.c b/drivers/mfd/macsmc.c
index 870c8b2028a8f..a5e0b99484830 100644
--- a/drivers/mfd/macsmc.c
+++ b/drivers/mfd/macsmc.c
@@ -478,6 +478,7 @@ static int apple_smc_probe(struct platform_device *pdev)
 }
 
 static const struct of_device_id apple_smc_of_match[] = {
+	{ .compatible = "apple,t8103-smc" },
 	{ .compatible = "apple,smc" },
 	{},
 };
-- 
2.51.0



  parent reply	other threads:[~2025-10-09 15:59 UTC|newest]

Thread overview: 20+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <20251009155752.773732-1-sashal@kernel.org>
2025-10-09 15:54 ` [PATCH AUTOSEL 6.17-6.12] soc: apple: mailbox: Add Apple A11 and T2 mailbox support Sasha Levin
2025-10-10  2:22   ` Nick Chan
2025-11-04  0:22     ` Sasha Levin
2025-10-09 15:54 ` [PATCH AUTOSEL 6.17-6.12] soc: sunxi: sram: add entry for a523 Sasha Levin
2025-10-09 16:38   ` Andre Przywara
2025-11-04  0:22     ` Sasha Levin
2025-10-09 15:54 ` [PATCH AUTOSEL 6.17-5.10] pinctrl: single: fix bias pull up/down handling in pin_config_set Sasha Levin
2025-10-09 15:54 ` [PATCH AUTOSEL 6.17-6.16] soc: ti: k3-socinfo: Add information for AM62L SR1.1 Sasha Levin
2025-10-09 15:55 ` Sasha Levin [this message]
2025-10-09 15:55 ` [PATCH AUTOSEL 6.17-5.4] mfd: stmpe: Remove IRQ domain upon removal Sasha Levin
2025-10-09 15:55 ` [PATCH AUTOSEL 6.17-5.4] cpufreq/longhaul: handle NULL policy in longhaul_exit Sasha Levin
2025-10-09 15:55 ` [PATCH AUTOSEL 6.17-6.16] firmware: ti_sci: Enable abort handling of entry to LPM Sasha Levin
2025-10-09 15:55 ` [PATCH AUTOSEL 6.17-5.15] soc: aspeed: socinfo: Add AST27xx silicon IDs Sasha Levin
2025-10-09 15:55 ` [PATCH AUTOSEL 6.17-6.6] arm64: zynqmp: Revert usb node drive strength and slew rate for zcu106 Sasha Levin
2025-10-09 15:55 ` [PATCH AUTOSEL 6.17-6.12] arm64: zynqmp: Disable coresight by default Sasha Levin
2025-10-09 15:55 ` [PATCH AUTOSEL 6.17-6.6] pmdomain: apple: Add "apple,t8103-pmgr-pwrstate" Sasha Levin
2025-10-09 15:56 ` [PATCH AUTOSEL 6.17-6.16] arm64: versal-net: Update rtc calibration value Sasha Levin
2025-10-09 15:56 ` [PATCH AUTOSEL 6.17-5.10] soc: ti: pruss: don't use %pK through printk Sasha Levin
2025-10-09 15:56 ` [PATCH AUTOSEL 6.17-5.4] mfd: stmpe-i2c: Add missing MODULE_LICENSE Sasha Levin
2025-10-09 15:56 ` [PATCH AUTOSEL 6.17-5.4] irqchip/gic-v2m: Handle Multiple MSI base IRQ Alignment Sasha Levin

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20251009155752.773732-40-sashal@kernel.org \
    --to=sashal@kernel.org \
    --cc=asahi@lists.linux.dev \
    --cc=j@jannau.net \
    --cc=lee@kernel.org \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=patches@lists.linux.dev \
    --cc=stable@vger.kernel.org \
    --cc=sven@kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).