1# Copyright (c) 2022, CSIRO.
2# SPDX-License-Identifier: Apache-2.0
3
4menuconfig POWER_DOMAIN
5	bool "Power domain drivers"
6	help
7	  Include drivers for power domains in system config
8
9if POWER_DOMAIN
10
11module = POWER_DOMAIN
12module-str = power_domain
13source "subsys/logging/Kconfig.template.log_config"
14
15config POWER_DOMAIN_INIT_PRIORITY
16	int "Power domain init priority"
17	default 75
18	help
19	  Power domain initialization priority.
20
21config POWER_DOMAIN_GPIO
22	bool "GPIO controlled power domain"
23	default y
24	depends on DT_HAS_POWER_DOMAIN_GPIO_ENABLED
25	depends on GPIO
26	depends on PM_DEVICE || !PM_DEVICE_POWER_DOMAIN
27	depends on TIMEOUT_64BIT
28	select DEVICE_DEPS
29
30if POWER_DOMAIN_GPIO
31
32config POWER_DOMAIN_GPIO_INIT_PRIORITY
33	int "GPIO power domain init priority"
34	default POWER_DOMAIN_INIT_PRIORITY
35	help
36	  GPIO power domain initialization priority.
37
38endif #POWER_DOMAIN_GPIO_MONITOR
39
40config POWER_DOMAIN_INTEL_ADSP
41	bool "Use Intel ADSP power gating mechanisms"
42	default y
43	depends on DT_HAS_INTEL_ADSP_POWER_DOMAIN_ENABLED
44	select DEVICE_DEPS
45	help
46	  Include Intel ADSP power domain control mechanisms
47
48if POWER_DOMAIN_INTEL_ADSP
49
50config POWER_DOMAIN_INTEL_ADSP_INIT_PRIORITY
51	int "Intel ADSP power domain init priority"
52	default KERNEL_INIT_PRIORITY_DEFAULT
53	help
54	  Intel ADSP power domain initialization priority.
55
56endif #POWER_DOMAIN_INTEL_ADSP
57
58config POWER_DOMAIN_GPIO_MONITOR
59	bool "GPIO monitor for sensing power on rail"
60	default y
61	depends on DT_HAS_POWER_DOMAIN_GPIO_MONITOR_ENABLED
62	depends on GPIO
63	depends on PM_DEVICE
64	select DEVICE_DEPS
65
66if POWER_DOMAIN_GPIO_MONITOR
67
68config POWER_DOMAIN_GPIO_MONITOR_INIT_PRIORITY
69	int "GPIO monitor power domain init priority"
70	default POWER_DOMAIN_INIT_PRIORITY
71	help
72	  GPIO monitor power domain initialization priority.
73
74endif #POWER_DOMAIN_GPIO_MONITOR
75
76config POWER_DOMAIN_NXP_SCU
77	bool "NXP SCU-managed PD driver"
78	default y
79	depends on DT_HAS_NXP_SCU_PD_ENABLED
80	help
81	  Enable support for NXPs SCU-managed power domain driver.
82
83if POWER_DOMAIN_NXP_SCU
84
85config POWER_DOMAIN_NXP_SCU_INIT_PRIORITY
86	int "NXP SCU-managed PD driver init priority"
87	default 10
88	help
89	  NXP SCU-managed PD driver initialization priority.
90
91endif #POWER_DOMAIN_NXP_SCU
92
93endif
94