summaryrefslogtreecommitdiffstats
path: root/drivers/soc/bcm
diff options
context:
space:
mode:
authorNicolas Saenz Julienne <nsaenzjulienne@suse.de>2022-06-25 13:36:19 +0200
committerLee Jones <lee.jones@linaro.org>2022-07-04 11:59:55 +0100
commit9e95c67efa8aa26f03b08147a552eb71e83e1a77 (patch)
tree4316924f47a63d7affd1ef1c2eb44904636e0201 /drivers/soc/bcm
parenta7120238c2086d95172abb8507c8819e11e195f1 (diff)
downloadlinux-9e95c67efa8aa26f03b08147a552eb71e83e1a77.tar.gz
linux-9e95c67efa8aa26f03b08147a552eb71e83e1a77.tar.bz2
linux-9e95c67efa8aa26f03b08147a552eb71e83e1a77.zip
soc: bcm: bcm2835-power: Bypass power_on/off() calls
Bypass power_on/power_off() when running on BCM2711 as they are not needed. Signed-off-by: Nicolas Saenz Julienne <nsaenzjulienne@suse.de> Signed-off-by: Stefan Wahren <stefan.wahren@i2se.com> Reviewed-by: Peter Robinson <pbrobinson@gmail.com> Acked-by: Florian Fainelli <f.fainelli@gmail.com> Signed-off-by: Lee Jones <lee.jones@linaro.org> Link: https://lore.kernel.org/r/20220625113619.15944-12-stefan.wahren@i2se.com
Diffstat (limited to 'drivers/soc/bcm')
-rw-r--r--drivers/soc/bcm/bcm2835-power.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/drivers/soc/bcm/bcm2835-power.c b/drivers/soc/bcm/bcm2835-power.c
index 1e06d91c0739..5bcd047768b6 100644
--- a/drivers/soc/bcm/bcm2835-power.c
+++ b/drivers/soc/bcm/bcm2835-power.c
@@ -198,6 +198,10 @@ static int bcm2835_power_power_off(struct bcm2835_power_domain *pd, u32 pm_reg)
{
struct bcm2835_power *power = pd->power;
+ /* We don't run this on BCM2711 */
+ if (power->rpivid_asb)
+ return 0;
+
/* Enable functional isolation */
PM_WRITE(pm_reg, PM_READ(pm_reg) & ~PM_ISFUNC);
@@ -219,6 +223,10 @@ static int bcm2835_power_power_on(struct bcm2835_power_domain *pd, u32 pm_reg)
int inrush;
bool powok;
+ /* We don't run this on BCM2711 */
+ if (power->rpivid_asb)
+ return 0;
+
/* If it was already powered on by the fw, leave it that way. */
if (PM_READ(pm_reg) & PM_POWUP)
return 0;