diff options
author | Eric Anholt <eric@anholt.net> | 2018-12-12 18:51:48 -0500 |
---|---|---|
committer | Stefan Wahren <stefan.wahren@i2se.com> | 2019-01-09 10:55:09 -0500 |
commit | 670c672608a1ffcbc7ac0f872734843593bb8b15 (patch) | |
tree | ed0a90dbdc31abac4f32f7893e2a532fad810a1e /include | |
parent | 5e6acc3e678ed3db746ab4fb53a980861cd711b6 (diff) |
soc: bcm: bcm2835-pm: Add support for power domains under a new binding.
This provides a free software alternative to raspberrypi-power.c's
firmware calls to manage power domains. It also exposes a reset line,
where previously the vc4 driver had to try to force power off the
domain in order to trigger a reset.
Signed-off-by: Eric Anholt <eric@anholt.net>
Acked-by: Rob Herring <robh@kernel.org>
Acked-by: Stefan Wahren <stefan.wahren@i2se.com>
Signed-off-by: Stefan Wahren <stefan.wahren@i2se.com>
Diffstat (limited to 'include')
-rw-r--r-- | include/dt-bindings/soc/bcm2835-pm.h | 28 | ||||
-rw-r--r-- | include/linux/mfd/bcm2835-pm.h | 1 |
2 files changed, 29 insertions, 0 deletions
diff --git a/include/dt-bindings/soc/bcm2835-pm.h b/include/dt-bindings/soc/bcm2835-pm.h new file mode 100644 index 000000000000..153d75b8d99f --- /dev/null +++ b/include/dt-bindings/soc/bcm2835-pm.h | |||
@@ -0,0 +1,28 @@ | |||
1 | /* SPDX-License-Identifier: (GPL-2.0+ OR MIT) */ | ||
2 | |||
3 | #ifndef _DT_BINDINGS_ARM_BCM2835_PM_H | ||
4 | #define _DT_BINDINGS_ARM_BCM2835_PM_H | ||
5 | |||
6 | #define BCM2835_POWER_DOMAIN_GRAFX 0 | ||
7 | #define BCM2835_POWER_DOMAIN_GRAFX_V3D 1 | ||
8 | #define BCM2835_POWER_DOMAIN_IMAGE 2 | ||
9 | #define BCM2835_POWER_DOMAIN_IMAGE_PERI 3 | ||
10 | #define BCM2835_POWER_DOMAIN_IMAGE_ISP 4 | ||
11 | #define BCM2835_POWER_DOMAIN_IMAGE_H264 5 | ||
12 | #define BCM2835_POWER_DOMAIN_USB 6 | ||
13 | #define BCM2835_POWER_DOMAIN_DSI0 7 | ||
14 | #define BCM2835_POWER_DOMAIN_DSI1 8 | ||
15 | #define BCM2835_POWER_DOMAIN_CAM0 9 | ||
16 | #define BCM2835_POWER_DOMAIN_CAM1 10 | ||
17 | #define BCM2835_POWER_DOMAIN_CCP2TX 11 | ||
18 | #define BCM2835_POWER_DOMAIN_HDMI 12 | ||
19 | |||
20 | #define BCM2835_POWER_DOMAIN_COUNT 13 | ||
21 | |||
22 | #define BCM2835_RESET_V3D 0 | ||
23 | #define BCM2835_RESET_ISP 1 | ||
24 | #define BCM2835_RESET_H264 2 | ||
25 | |||
26 | #define BCM2835_RESET_COUNT 3 | ||
27 | |||
28 | #endif /* _DT_BINDINGS_ARM_BCM2835_PM_H */ | ||
diff --git a/include/linux/mfd/bcm2835-pm.h b/include/linux/mfd/bcm2835-pm.h index b7d0ee1feffa..ed37dc40e82a 100644 --- a/include/linux/mfd/bcm2835-pm.h +++ b/include/linux/mfd/bcm2835-pm.h | |||
@@ -8,6 +8,7 @@ | |||
8 | struct bcm2835_pm { | 8 | struct bcm2835_pm { |
9 | struct device *dev; | 9 | struct device *dev; |
10 | void __iomem *base; | 10 | void __iomem *base; |
11 | void __iomem *asb; | ||
11 | }; | 12 | }; |
12 | 13 | ||
13 | #endif /* BCM2835_MFD_PM_H */ | 14 | #endif /* BCM2835_MFD_PM_H */ |