05ae67aeeed28ae339d9642b47959410468338a7
[oweals/openwrt.git] /
1 From ea44a81b7daf511788aecaee7575feff359c5d19 Mon Sep 17 00:00:00 2001
2 From: Eric Anholt <eric@anholt.net>
3 Date: Fri, 11 Jan 2019 17:29:10 -0800
4 Subject: [PATCH] soc: bcm: bcm2835-pm: Fix PM_IMAGE_PERI power domain
5  support.
6
7 We don't have ASB master/slave regs for this domain, so just skip that
8 step.
9
10 Signed-off-by: Eric Anholt <eric@anholt.net>
11 Fixes: 670c672608a1 ("soc: bcm: bcm2835-pm: Add support for power domains under a new binding.")
12 ---
13  drivers/soc/bcm/bcm2835-power.c | 14 ++++++++++++--
14  1 file changed, 12 insertions(+), 2 deletions(-)
15
16 --- a/drivers/soc/bcm/bcm2835-power.c
17 +++ b/drivers/soc/bcm/bcm2835-power.c
18 @@ -150,7 +150,12 @@ struct bcm2835_power {
19  
20  static int bcm2835_asb_enable(struct bcm2835_power *power, u32 reg)
21  {
22 -       u64 start = ktime_get_ns();
23 +       u64 start;
24 +
25 +       if (!reg)
26 +               return 0;
27 +
28 +       start = ktime_get_ns();
29  
30         /* Enable the module's async AXI bridges. */
31         ASB_WRITE(reg, ASB_READ(reg) & ~ASB_REQ_STOP);
32 @@ -165,7 +170,12 @@ static int bcm2835_asb_enable(struct bcm
33  
34  static int bcm2835_asb_disable(struct bcm2835_power *power, u32 reg)
35  {
36 -       u64 start = ktime_get_ns();
37 +       u64 start;
38 +
39 +       if (!reg)
40 +               return 0;
41 +
42 +       start = ktime_get_ns();
43  
44         /* Enable the module's async AXI bridges. */
45         ASB_WRITE(reg, ASB_READ(reg) | ASB_REQ_STOP);