diff options
author | Eric Anholt <eric@anholt.net> | 2019-02-20 21:19:50 +0300 |
---|---|---|
committer | Eric Anholt <eric@anholt.net> | 2019-03-05 02:32:34 +0300 |
commit | 7f3d6c8e8f5f041c86c0a9f64e4b4ab7c6373ac2 (patch) | |
tree | b3bc4e12905da5de8cb4d02a91f78075280a2a4a /drivers/soc | |
parent | e1dc2b2e1bef7237fd8fc055fe1ec2a6ff001f91 (diff) | |
download | linux-7f3d6c8e8f5f041c86c0a9f64e4b4ab7c6373ac2.tar.xz |
soc: bcm: bcm2835-pm: Fix PM_IMAGE_PERI power domain support.
We don't have ASB master/slave regs for this domain, so just skip that
step.
Signed-off-by: Eric Anholt <eric@anholt.net>
Fixes: 670c672608a1 ("soc: bcm: bcm2835-pm: Add support for power domains under a new binding.")
Diffstat (limited to 'drivers/soc')
-rw-r--r-- | drivers/soc/bcm/bcm2835-power.c | 14 |
1 files changed, 12 insertions, 2 deletions
diff --git a/drivers/soc/bcm/bcm2835-power.c b/drivers/soc/bcm/bcm2835-power.c index 48412957ec7a..4a1b99b773c0 100644 --- a/drivers/soc/bcm/bcm2835-power.c +++ b/drivers/soc/bcm/bcm2835-power.c @@ -150,7 +150,12 @@ struct bcm2835_power { static int bcm2835_asb_enable(struct bcm2835_power *power, u32 reg) { - u64 start = ktime_get_ns(); + u64 start; + + if (!reg) + return 0; + + start = ktime_get_ns(); /* Enable the module's async AXI bridges. */ ASB_WRITE(reg, ASB_READ(reg) & ~ASB_REQ_STOP); @@ -165,7 +170,12 @@ static int bcm2835_asb_enable(struct bcm2835_power *power, u32 reg) static int bcm2835_asb_disable(struct bcm2835_power *power, u32 reg) { - u64 start = ktime_get_ns(); + u64 start; + + if (!reg) + return 0; + + start = ktime_get_ns(); /* Enable the module's async AXI bridges. */ ASB_WRITE(reg, ASB_READ(reg) | ASB_REQ_STOP); |