summaryrefslogtreecommitdiff
path: root/zephyr/subsys/ap_pwrseq/Kconfig
blob: 6f39906bf294b64110a7c57e208c7c477b04ed05 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
# Copyright 2022 The Chromium OS Authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.

menuconfig AP_PWRSEQ
	bool "AP Power sequencing support"
	select HAS_TASK_POWERBTN
	help
	  Enables AP power sequencing support with
	  embedded controller. This includes normal shutdown, critical
	  shutdown and reset handling.
	  Enabling this automatically enables HAS_TASK_POWERBTN since this task
	  is required to handle power button pressed/released by user.

if AP_PWRSEQ

module = AP_PWRSEQ
module-str = AP power sequencing
source "subsys/logging/Kconfig.template.log_config"

config AP_PWRSEQ_AUTOSTART
	bool "Start the power sequence thread automatically"
	default n
	help
	  This option starts the AP power sequence task
	  at initialisation. If not set, ap_pwrseq_thread_start()
	  needs to be called to start the task.

	  Disable this option if there is other board or module
	  initialization that must occur before the AP power sequence
	  thread is started.

config AP_PWRSEQ_STACK_SIZE
	int "AP pwrseq stack size (in bytes)"
	help
	  This option specifies the size of the stack used by the
	  AP power sequencing state machine thread handler.
	  This must be set in a board configuration. If a default
	  is set here, it cannot be overridden (if necessary), since
	  this Kconfig appears before the EC chip specific stack
	  sizes.

config AP_PWRSEQ_THREAD_PRIORITY
	int "AP pwrseq thread priority"
	default 12
	help
	  This option determines AP power sequence thread priority, this number
	  must be selected in such way thread priority is in the middle of all
	  the enabled threads.

config X86_NON_DSX_PWRSEQ
	bool
	default n
	help
	  This option enables Non Deep Sleep Well power sequencing for
	  Intel x86 chips.

config X86_NON_DSX_PWRSEQ_ADL
	bool "x86 Non Deep Sx power sequencing on ADL"
	depends on AP_X86_INTEL_ADL
	select X86_NON_DSX_PWRSEQ
	default n
	help
	  This enables AP power sequencing support for Intel Alderlake
	  family of chipset.

config X86_NON_DSX_PWRSEQ_MTL
	bool "x86 Non Deep Sx power sequencing on MTL"
	depends on AP_X86_INTEL_MTL
	select X86_NON_DSX_PWRSEQ
	default n
	help
	  This enables AP power sequencing support for Intel Meteorlake
	  family of chipset.

config X86_NON_DSX_PWRSEQ_CONSOLE
	bool "Console commands for x86 Non Deep Sx power sequencing"
	depends on X86_NON_DSX_PWRSEQ
	default n
	help
	  This option enables Non Deep Sleep Well power sequencing shell
	  console commands to debug.

config X86_NON_DSX_PWRSEQ_HOST_CMD
	bool "Host commands for x86 Non Deep Sx power sequencing"
	depends on X86_NON_DSX_PWRSEQ
	default y
	help
	  This option enables Non Deep Sleep Well power sequencing host
	  commands to debug.

config AP_PWRSEQ_HOST_SLEEP
	bool "Handle host sleep state changes"
	help
	  Enable AP power sequencing to receive and process host command
	  host sleep state changes.

config AP_PWRSEQ_S0IX
	bool "Enable power state S0ix for Intel x86 chipset"
	select AP_PWRSEQ_HOST_SLEEP
	default n
	help
	  This option enables power state S0ix for Intel x86 chipset. As
	  required, AP_PWRSEQ_HOST_SLEEP for host sleep event handling is
	  enabled.

endif