From nobody Thu Apr 9 15:44:02 2026 Received: from mail-wm1-f42.google.com (mail-wm1-f42.google.com [209.85.128.42]) (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 55469385504 for ; Fri, 6 Mar 2026 23:38:33 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.128.42 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1772840315; cv=none; b=DTnz8GoOEkkYtTheUPbtGnvMiSMLTb1nVptEDAMpgRU+X5Lg2jkjHdhHkSibe2FImMbbrAK7l4kOyvB9L06mueu8x3TSLDQAz7cs6NhDF09UNWufHk4hV9pWptD0xXWqyaIokJdeFE5QeLlYiuRo9RCL+RSxws0bMrrM3ufESoY= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1772840315; c=relaxed/simple; bh=BvdT1RoBm/QOBF6eCg9y1yblD0om5TFiWfVmubhqdqU=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=Ar1XHRqswegzrfMHQcT4LwQPRhiXZUPyqGah23CfhIRC7TNPgXubHxjKqw22VYeRNtXO6x3kJ+u3wMxpcsd/0PZ8dlof/wugis1fY8jkJy/2Miu8v0RQ/Z37us6JThTIg/UANcL2dSiK8ra5/gGUd5xT0h3As9wrOZ6eXwZbN00= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=suse.com; spf=pass smtp.mailfrom=suse.com; dkim=pass (2048-bit key) header.d=suse.com header.i=@suse.com header.b=TDXg3WK1; arc=none smtp.client-ip=209.85.128.42 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=suse.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=suse.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=suse.com header.i=@suse.com header.b="TDXg3WK1" Received: by mail-wm1-f42.google.com with SMTP id 5b1f17b1804b1-4806f3fc50bso106501745e9.0 for ; Fri, 06 Mar 2026 15:38:33 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=google; t=1772840312; x=1773445112; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=i4NuxzLDGj8yS8JkPsoLwHvhkLdZ7UNN2cfrgeUVnLo=; b=TDXg3WK1LGOGGA5gAKd6P9TFTLaaFo+MMXAHO9CIp7Z7ESVb7PdGM+uIaTpR5KpcrW wnJPYLrRr8jctEhWzGx0OviT1OL6FZiFlJUWn67FO+CeKM3uvWEgWH8fBGU2VGVLN4X9 7B27ebvtteu6jOvoNbATUiu8zqYtkcAedDAxhN+dRTt2ygGpNUtgB2ln2S8bqWWtUTmE 1Bj6es4ZJNl59KHlB4vg5j/reiwEpVwhMXEnKesUREsiU4FQsmLTjBqje7WKal3RvFzg hJ6OkF4xefMeL0hcdNUKCaDOsx5xYMBBlr9rkdY8sVzYIFAMXran5APrDtzYHouJRm2v givw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1772840312; x=1773445112; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=i4NuxzLDGj8yS8JkPsoLwHvhkLdZ7UNN2cfrgeUVnLo=; b=Cjy32q59wRxwvvtTL+l9vpsGhKVx5ZXDFgIFxboBoIRg5CalNrDeu+7iGXs/rghSsW 5iav7SQmCTbqIqvB6+iWWwUsvtdubNEJxft2IX0kwFO0A8x+qYje6ushT4G1P5Nv0IPQ 6iNQizqghmiegJqqo7gJqpyTDKpa2jgvEvKvM1tTWm/pu99XNlrHXUr8YFyf2pLZhRwP QfQuvfd+s7SKni/mtp9/uZ2Wg+CdUKrURESd/eEjB2ktYA5yTdqce/DmpO/RvX/09Jqj GKgBQaa/NqwXCjOq/vZ8uv37a+jWpKWK4+WbybSVQk54Mm14njO8XIVcNHERLlzedTwj 7pGw== X-Forwarded-Encrypted: i=1; AJvYcCW9vGMrpKibDudM2DBjcxQROSVWAbNE6CcAxXonQkHNlweQBQmL+WvZajc3SW39luoQwUPxFPeasOAG4Sk=@vger.kernel.org X-Gm-Message-State: AOJu0Yz2kyvk5hLDWKjrYF/TJNuHzriO675Qxi0RjTyn0memmx5bR4Xz 2vcpiLtslMLTIMJUYSL8Kh2L9RJQvAg4n7i+VcZV0EZGUQFwqjjWYlOTdjOURhv+OBw= X-Gm-Gg: ATEYQzx3Ojy82dK1iPKWMKKPoLgUgaE/GBFEaMI0IxvWYh1qYIGKugOsiNfpbL+GmJB /kLzzc3hKTMxAal6fvIOh9gAMEwB5bJsKmewLpcXKkS5rPZt5zKZOE1/fAWUgvIdSqKh1eca25V /l6kTCClbJyWSV/kwg7rNcxJ0jAohikLsOo28mMuC82j7Vi13Xxlg/09GqgG6Ocyd6Egzx3mwBt AVIybTP+Z9XELDXQ1EgEwJ6/v7pMYBEMu/ijy0y3w2R9WK9Yf9pJD+pD3JpBDlr4x6LQh0Jhk0i gfAKWS+FAj1q+v0daEqtKpJGex5H+QORNSgth6Itt/NefRvTA28MT5Ke3T57+in3CiI+dBuU+IB cNZopSg0YoL6mN5P3xFam73yOybsklMgo6sx2MXs6pv6S1XDQ7dggKo9U22s9/o9MnOUIVFhpn6 mgHGmfdoCBdtFgvRN8867UwlA7GwrBCh0EPDI+cISDfI0wjwlyf7RimL4lKImOpjvtMA== X-Received: by 2002:a05:600c:c088:b0:483:a922:2e8d with SMTP id 5b1f17b1804b1-48526919884mr59641445e9.4.1772840311638; Fri, 06 Mar 2026 15:38:31 -0800 (PST) Received: from localhost (host-79-12-214-40.retail.telecomitalia.it. [79.12.214.40]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-439dad97da3sm7209369f8f.12.2026.03.06.15.38.30 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 06 Mar 2026 15:38:31 -0800 (PST) From: Andrea della Porta To: Lee Jones , Florian Fainelli , Broadcom internal kernel review list , Ray Jui , Scott Branden , linux-rpi-kernel@lists.infradead.org, linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, Phil Elwell , Stanimir Varbanov Cc: Andrea della Porta Subject: [PATCH 1/2] mfd: bcm2835-pm: Introduce SoC-specific type identifier Date: Sat, 7 Mar 2026 00:41:21 +0100 Message-ID: X-Mailer: git-send-email 2.51.0 In-Reply-To: References: 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: Phil Elwell Power management blocks across the BCM2835 family share a common base but require variant-specific handling. For instance, the BCM2712 lacks ASB register space, yet it manages the power domain for the V3D graphics block. Add a hardware type identifier to the driver's private data. This allows the driver to distinguish between SoC models and implement custom quirks or features as needed. Signed-off-by: Phil Elwell Co-developed-by: Stanimir Varbanov Signed-off-by: Stanimir Varbanov Signed-off-by: Andrea della Porta Reviewed-by: Florian Fainelli --- drivers/mfd/bcm2835-pm.c | 7 ++++--- include/linux/mfd/bcm2835-pm.h | 7 +++++++ 2 files changed, 11 insertions(+), 3 deletions(-) diff --git a/drivers/mfd/bcm2835-pm.c b/drivers/mfd/bcm2835-pm.c index 8bed59816e82e..2d5dc521b623d 100644 --- a/drivers/mfd/bcm2835-pm.c +++ b/drivers/mfd/bcm2835-pm.c @@ -81,6 +81,7 @@ static int bcm2835_pm_probe(struct platform_device *pdev) platform_set_drvdata(pdev, pm); =20 pm->dev =3D dev; + pm->soc =3D (uintptr_t)device_get_match_data(dev); =20 ret =3D bcm2835_pm_get_pdata(pdev, pm); if (ret) @@ -106,9 +107,9 @@ static int bcm2835_pm_probe(struct platform_device *pde= v) =20 static const struct of_device_id bcm2835_pm_of_match[] =3D { { .compatible =3D "brcm,bcm2835-pm-wdt", }, - { .compatible =3D "brcm,bcm2835-pm", }, - { .compatible =3D "brcm,bcm2711-pm", }, - { .compatible =3D "brcm,bcm2712-pm", }, + { .compatible =3D "brcm,bcm2835-pm", .data =3D (void *)BCM2835_PM_SOC_BCM= 2835 }, + { .compatible =3D "brcm,bcm2711-pm", .data =3D (void *)BCM2835_PM_SOC_BCM= 2711 }, + { .compatible =3D "brcm,bcm2712-pm", .data =3D (void *)BCM2835_PM_SOC_BCM= 2712 }, {}, }; MODULE_DEVICE_TABLE(of, bcm2835_pm_of_match); diff --git a/include/linux/mfd/bcm2835-pm.h b/include/linux/mfd/bcm2835-pm.h index f70a810c55f7d..d2e17ab1dbfc5 100644 --- a/include/linux/mfd/bcm2835-pm.h +++ b/include/linux/mfd/bcm2835-pm.h @@ -5,11 +5,18 @@ =20 #include =20 +enum bcm2835_soc { + BCM2835_PM_SOC_BCM2835, + BCM2835_PM_SOC_BCM2711, + BCM2835_PM_SOC_BCM2712, +}; + struct bcm2835_pm { struct device *dev; void __iomem *base; void __iomem *asb; void __iomem *rpivid_asb; + enum bcm2835_soc soc; }; =20 #endif /* BCM2835_MFD_PM_H */ --=20 2.35.3 From nobody Thu Apr 9 15:44:02 2026 Received: from mail-wm1-f52.google.com (mail-wm1-f52.google.com [209.85.128.52]) (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 6EE943806C9 for ; Fri, 6 Mar 2026 23:38:34 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.128.52 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1772840316; cv=none; b=JPeu+lqZQyikF8aDcqgmO3NHRTSMgyaY2gOmuZaQ7pwKsR58XVO4fWUbkSI7Y9J9l+TQtlqGGdZge1vrkxunUfZCoeD7UaHd2a/PhXFsX4OW6GYpdlbpgW1QbkGyX6hnDTf4/IBqECF/CCaa9KGnZ61+QvH8UiRVOHz1/NJpYCY= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1772840316; c=relaxed/simple; bh=Kq0Rzd5Jdt1vykffDQSyc3vy0rdxU2zTneQy2HPUt5I=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=iYSTCmNmWpxEWQDyXnbWSEh82RY1G1tCF/+NSslmXhmSx934AwzQS7/b4FOelDiUoWZXCrJ64X5fORfVt/JCOqnX8aQax4FBkae1i8Jy93/ei/bs5hR+JQ3hAvJvruUMdAvoG4OQi9LvUVWni/1NS/R+v8nFVEjEBjkf1qYiAEQ= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=suse.com; spf=pass smtp.mailfrom=suse.com; dkim=pass (2048-bit key) header.d=suse.com header.i=@suse.com header.b=M/8tsJoC; arc=none smtp.client-ip=209.85.128.52 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=suse.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=suse.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=suse.com header.i=@suse.com header.b="M/8tsJoC" Received: by mail-wm1-f52.google.com with SMTP id 5b1f17b1804b1-4836f4cbe0bso84999125e9.3 for ; Fri, 06 Mar 2026 15:38:34 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=google; t=1772840313; x=1773445113; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=uc8859toxeVSOntvH1T0G6+vVxE10uFum+hqYIujYxs=; b=M/8tsJoCx2YZu4rcT1I/6xNBxhSQ8kkGHDzsICk2y0X636EeF5ve9lZnAGoeraYZF6 p83M3gw51vRrdAC2vE/RTACm7AhSnwQrXFMaA4BVkOKfqYDD+SJTfNb7EWAmqRfgLyKQ UP62Pqmys8FDndQdrxMrM7DNM+P0gEccqkT6LEDfyE9lQQJxnYDalFyl3u/b27ZAMneR xOfG705hXa33qBOZMFjYlne+zBm1ZxLc5t9ApdvFDhzIVPUaSeHkK72rf8yYcMYhL3pi 1GmieIXrOPkhSAF2+xSBHKG0/Bge0SwHZ43NdLvqOHZmYHyA8AKzAdiFcozmBU5i1/hh iPaQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1772840313; x=1773445113; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=uc8859toxeVSOntvH1T0G6+vVxE10uFum+hqYIujYxs=; b=NJyqPAwL40wSY3pBypALajByq/hJhcWyIkedYBv6vXIHhdF4GztxsgZv0lS6Uq3E6y kcr120RZUeD8ohUeVgVtyaXPHww9RoBA3HILwX4Q6A7v4ICvtsG4BuJVMZ/JV72QcTZW XV0SkiDXhTYixaEf0ADzaY/L6jmgCKVapUeqePxGr8ksQvi+YI7Z8dEhJGMIbcvfCE01 CYhEH3+u/uAMe8A8yQay00VN/WeF8wfFhdWhe3L+/QUDzMHuyqXiFRXmexgX+4nUI4Xt btU0hDaHANtkoLx547fPHP1doQcfMohdsilILKH8IAzToM4C9Z4d2EuBMPtHIJn8oMBk qWfQ== X-Forwarded-Encrypted: i=1; AJvYcCWlhSoyMY7VUQ5cR/G+QalG2D8b31ghj/vxNlhWBDx6QMP2rqMCpybJoRp5AY7rKmdpn7msv9ImslnPneY=@vger.kernel.org X-Gm-Message-State: AOJu0YwRUhrxbFf/I3ho/aMnHZulHQ8lYnb55MwQXpeBdrR4H+qktQvt 3tT7cBH9dNpa2M8c1v/Tnr4XLSxSWenPga7u9PDAodtiaa+shXd7Me4EOX3mXBo3g5w= X-Gm-Gg: ATEYQzynxqeOQkL2tRu1fdz6PQ1Zhlfl2jbeykwhf7RPkICkUZYMfA51Lozr3AzMVmd c1ciSzWhmzLUh2PoRgOQxMdbysv8u4g8Z6nu+p+i5oyUe8Vh5SxEe8Y+YR0wdT3vK56xi1MjrC8 4/f67bJvmNOHHih49k/nw/GCd1yaAAxB0F2CamD8k1IgutTBOG/nJc+c/p5II3F6cSBgV1m4j89 oqcaydxEbeXySoQHDWOHi/Wl2qg0oqqih1l6b+K1GjnM5VPZMXaOdpPDjWfdxQRO1iD7bAGTNmO 9WoGGGYZuEpFpdMCJZzGPI/1Qo0hQlZ9WroMeMKNODBRSf7BhZkz8fuojI2h5cWDMTD+OiJkeIm wqb67YAvoHvTFYhCOW9iQs18a3N2NYxoJogKYLu23l4D5thpUod6POpWvBi3O1dHsIejMb1Mc8R rQ5N+pyRNKkKPfCbab5bU45O/dB/JctywloG1qga8Vycuxbe3HggU0TM1RJYqYbeTNVw== X-Received: by 2002:a05:600c:6091:b0:483:348a:d3f3 with SMTP id 5b1f17b1804b1-48526951407mr65383935e9.18.1772840312739; Fri, 06 Mar 2026 15:38:32 -0800 (PST) Received: from localhost (host-79-12-214-40.retail.telecomitalia.it. [79.12.214.40]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-485256b1eacsm55652215e9.0.2026.03.06.15.38.32 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 06 Mar 2026 15:38:32 -0800 (PST) From: Andrea della Porta To: Lee Jones , Florian Fainelli , Broadcom internal kernel review list , Ray Jui , Scott Branden , linux-rpi-kernel@lists.infradead.org, linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, Phil Elwell , Stanimir Varbanov Cc: Andrea della Porta Subject: [PATCH 2/2] mfd: bcm2835-pm: Add BCM2712 PM device support Date: Sat, 7 Mar 2026 00:41:22 +0100 Message-ID: X-Mailer: git-send-email 2.51.0 In-Reply-To: References: 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: Phil Elwell The BCM2712 SoC includes a power management block that serves as the power domain for the V3D graphics block. Unlike other PM blocks in the BCM2835 family, it does not feature an ASB register space. Conditionally register the PM device depending on the SoC variant. Signed-off-by: Phil Elwell Co-developed-by: Stanimir Varbanov Signed-off-by: Stanimir Varbanov Signed-off-by: Andrea della Porta Reviewed-by: Florian Fainelli --- drivers/mfd/bcm2835-pm.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/mfd/bcm2835-pm.c b/drivers/mfd/bcm2835-pm.c index 2d5dc521b623d..9e8e3dcf4bceb 100644 --- a/drivers/mfd/bcm2835-pm.c +++ b/drivers/mfd/bcm2835-pm.c @@ -98,7 +98,7 @@ static int bcm2835_pm_probe(struct platform_device *pdev) * bcm2835-pm binding as the key for whether we can reference * the full PM register range and support power domains. */ - if (pm->asb) + if (pm->asb || pm->soc =3D=3D BCM2835_PM_SOC_BCM2712) return devm_mfd_add_devices(dev, -1, bcm2835_power_devs, ARRAY_SIZE(bcm2835_power_devs), NULL, 0, NULL); --=20 2.35.3