blob: 3fea316e7bf3bcd87e3c61243e6150cd013b09fe [file] [log] [blame]
Willy Tuc710b972021-08-11 16:33:43 -07001option('tests', type: 'feature', description: 'Build tests')
Patrick Williams62ce1592025-02-03 14:12:56 -05002option(
3 'boot-flag-safe-mode-support',
4 type: 'feature',
5 description: 'Add option to enable/disable safe mode in boot flags',
6)
7option(
8 'i2c-whitelist-check',
9 type: 'feature',
10 description: 'Add option to enable/disable i2c master write read command white list checking',
11)
Willy Tuc710b972021-08-11 16:33:43 -070012
13# SoftPowerOff
14option('softoff', type: 'feature', description: 'Builds soft power off')
Patrick Williams62ce1592025-02-03 14:12:56 -050015option(
16 'softoff-busname',
17 type: 'string',
18 value: 'xyz.openbmc_project.Ipmi.Internal.SoftPowerOff',
19 description: 'The Dbus busname to own for SoftPowerOff',
20)
21option(
22 'softoff-objpath',
23 type: 'string',
24 value: '/xyz/openbmc_project/ipmi/internal/soft_power_off',
25 description: 'The SoftPowerOff Dbus root',
26)
27option(
28 'ipmi-sms-atn-ack-timeout-secs',
29 type: 'integer',
30 value: 3,
31 description: 'Timeout for host to ack and query SMS_ATN from BMC',
32)
33option(
34 'ipmi-host-shutdown-complete-timeout-secs',
35 type: 'integer',
36 value: 2700,
37 description: 'Wait time for host to shutdown',
38)
Willy Tuc710b972021-08-11 16:33:43 -070039# Indicates an in-band power off or reboot request from the host
40# This file is used to ensure the soft off service does not run for host
41# initiated shutdown or reboot requests
Patrick Williams62ce1592025-02-03 14:12:56 -050042option(
43 'host-inband-request-dir',
44 type: 'string',
45 value: '/run/openbmc/',
46 description: 'Directory to store host initiated shutdown file',
47)
48option(
49 'host-inband-request-file',
50 type: 'string',
51 value: 'host@%u-request',
52 description: 'File to create if host has initiated shutdown or reboot',
53)
Willy Tuc710b972021-08-11 16:33:43 -070054
Willy Tuc710b972021-08-11 16:33:43 -070055# Config Variables
Patrick Williams62ce1592025-02-03 14:12:56 -050056option(
57 'board-sensor',
58 type: 'string',
59 value: '/xyz/openbmc_project/inventory/system/chassis/motherboard',
60 description: 'The inventory path to the motherboard fault sensor',
61)
62option(
63 'system-sensor',
64 type: 'string',
65 value: '/xyz/openbmc_project/inventory/system',
66 description: 'The inventory path to the system event sensor',
67)
Willy Tuc710b972021-08-11 16:33:43 -070068
69# Control Host Interfaces
Patrick Williams62ce1592025-02-03 14:12:56 -050070option(
71 'control-host-busname',
72 type: 'string',
73 value: 'xyz.openbmc_project.Control.Host',
74 description: 'The Control Host Dbus busname to own',
75)
76option(
77 'control-host-obj-mgr',
78 type: 'string',
79 value: '/xyz/openbmc_project/control',
80 description: 'The Control Host D-Bus Object Manager',
81)
82option(
83 'host-name',
84 type: 'string',
85 value: 'host',
86 description: 'The Control Host D-Bus Object Manager',
87)
Willy Tuc710b972021-08-11 16:33:43 -070088
89# Power reading sensor configuration file
Patrick Williams62ce1592025-02-03 14:12:56 -050090option(
91 'power-reading-sensor',
92 type: 'string',
93 value: '/usr/share/ipmi-providers/power_reading.json',
94 description: 'Power reading sensor configuration file',
95)
96option(
97 'host-ipmi-lib-path',
98 type: 'string',
99 value: '/usr/lib/ipmid-providers/',
100 description: 'The file path to search for libraries',
101)
Willy Tuc710b972021-08-11 16:33:43 -0700102
103# When a sensor read fails, hwmon will update the OperationalState interface's Functional property.
104# This will mark the sensor as not functional and we will skip reading from that sensor.
Patrick Williams62ce1592025-02-03 14:12:56 -0500105option(
106 'update-functional-on-fail',
107 type: 'feature',
108 value: 'disabled',
109 description: 'Check functional property to skip reading from faulty sensors',
110)
Willy Tuc710b972021-08-11 16:33:43 -0700111
112# Features
113
114# When libuserlayer is disabled, libuserlayer won't be included in the build.
Patrick Williams62ce1592025-02-03 14:12:56 -0500115option(
116 'libuserlayer',
117 type: 'feature',
118 description: 'Option to exclue exclude libuserlayer',
119)
Willy Tuc710b972021-08-11 16:33:43 -0700120
121# When transport-oem is enabled, the transporthandler_oem.cpp contents
122# are compiled and added to the project. The transporthandler_oem.cpp file is
123# copied from your own customization layer in the
124# phosphor-ipmi-host_%.bbappend file. It is not necessary to create this file
125# unless OEM Parameter extensions are required.
Patrick Williams62ce1592025-02-03 14:12:56 -0500126option(
127 'transport-oem',
128 type: 'feature',
129 value: 'disabled',
130 description: 'Enable transporthandler_oem contents',
131)
Willy Tuc710b972021-08-11 16:33:43 -0700132
133# IPMI whitelist mechanism is not needed by everyone; offer a way to disable it
Patrick Williams62ce1592025-02-03 14:12:56 -0500134option(
135 'ipmi-whitelist',
136 type: 'feature',
137 description: 'Enable/disable IPMI whitelist filtering',
138)
139option(
140 'whitelist-conf',
141 type: 'string',
142 value: 'host-ipmid-whitelist.conf',
143 description: 'Paths to IPMI whitelisted commands conf files',
144)
Willy Tuc710b972021-08-11 16:33:43 -0700145
Johnathan Mantey23a722c2023-05-12 08:18:54 -0700146# Entity Manager Decorators
Patrick Williams62ce1592025-02-03 14:12:56 -0500147option(
148 'entity-manager-decorators',
149 type: 'feature',
150 value: 'enabled',
151 description: 'The Entity Manager Decorators flag is enabled by default; offer a way to disable it',
152)
Johnathan Mantey23a722c2023-05-12 08:18:54 -0700153
Willy Tuc710b972021-08-11 16:33:43 -0700154# Dynamic Sensor Stack
Patrick Williams62ce1592025-02-03 14:12:56 -0500155option(
156 'dynamic-sensors',
157 type: 'feature',
158 value: 'disabled',
Brad Bishop11c56922025-10-28 09:50:51 -0400159 description: 'Dynamic sensors stack is disabled by default; offer a way to enable it',
Patrick Williams62ce1592025-02-03 14:12:56 -0500160)
161option(
162 'dynamic-sensors-write',
163 type: 'feature',
164 value: 'disabled',
Brad Bishop11c56922025-10-28 09:50:51 -0400165 description: 'Dynamic sensors stack is disabled by default; offer a way to enable it',
Patrick Williams62ce1592025-02-03 14:12:56 -0500166)
167option(
168 'hybrid-sensors',
169 type: 'feature',
170 value: 'disabled',
171 description: 'Hybrid sensors stack is disabled by default; offer a way to enable it',
172)
173option(
174 'sensors-oem',
175 type: 'feature',
176 value: 'disabled',
177 description: 'OEM sensor SDR parsing is disabled by default; offer a way to enable it',
178)
Willy Tuc710b972021-08-11 16:33:43 -0700179
180# Sensor Cache
Patrick Williams62ce1592025-02-03 14:12:56 -0500181option(
182 'sensors-cache',
183 type: 'feature',
184 value: 'disabled',
185 description: 'Sensor cache stack is disabled by default; offer a way to enable it',
186)
Willy Tuc710b972021-08-11 16:33:43 -0700187
Alexander Hansenc2c26f92023-07-17 09:38:43 +0200188# Short Sensor Names for IPMI
Patrick Williams62ce1592025-02-03 14:12:56 -0500189option(
190 'shortname-remove-suffix',
191 type: 'feature',
192 value: 'enabled',
193 description: 'shortname-remove-suffix is enabled by default',
194)
195option(
196 'shortname-replace-words',
197 type: 'feature',
198 value: 'disabled',
199 description: 'shortname-replace-words is disabled by default',
200)
Alexander Hansenc2c26f92023-07-17 09:38:43 +0200201
Willy Tuc710b972021-08-11 16:33:43 -0700202# Generate configuration from Yaml
203option('sensor-yaml-gen', type: 'string', value: 'sensor-example.yaml')
Patrick Williams62ce1592025-02-03 14:12:56 -0500204option(
205 'invsensor-yaml-gen',
206 type: 'string',
207 value: 'inventory-sensor-example.yaml',
208)
Willy Tuc710b972021-08-11 16:33:43 -0700209option('fru-yaml-gen', type: 'string', value: 'fru-read-example.yaml')
Willy Tub78184e2022-10-27 22:57:38 +0000210
211# Software Version
Patrick Williams62ce1592025-02-03 14:12:56 -0500212option(
213 'get-dbus-active-software',
214 type: 'feature',
215 description: 'Use the getActiveSoftwareVersionInfo for the BMC version and dev_id.json as backup',
216)
217option(
218 'fw-ver-regex',
219 type: 'string',
220 value: '(\\\\d+)\\\\.(\\\\d+)',
221 description: 'Regular expressions for parsing firmware revision',
222)
223option(
224 'matches-map',
225 type: 'array',
226 value: ['1', '2', '0', '0', '0', '0'],
227 description: 'An array of integers',
228)
Thang Tran292c9172023-06-26 10:03:04 +0700229
230# libipmi20.so library
Patrick Williams62ce1592025-02-03 14:12:56 -0500231option(
232 'dynamic-storages-only',
233 type: 'feature',
234 value: 'disabled',
235 description: 'Request to compile storage commands in the libipmi20 library',
236)
Patrick Williams768730d2023-09-06 16:27:20 -0500237
238# open-power specific functionality.
Patrick Williams62ce1592025-02-03 14:12:56 -0500239option(
240 'open-power',
241 type: 'feature',
242 description: 'Support open-power specific functions',
243)
John Chunge2fae4b2024-11-13 18:10:31 -0600244
Vernon Maueryd0b99b12025-05-27 10:43:58 -0700245# arm-sbmr specific functionality.
246option(
247 'arm-sbmr',
248 type: 'feature',
249 description: 'Support Arm SBMR specific functions',
250)
251
252#######################################################################
253# Transport options
254#######################################################################
255
John Chunge2fae4b2024-11-13 18:10:31 -0600256# HW transport
257option(
258 'transport-implementation',
259 type: 'combo',
260 choices: ['null', 'serial'],
Patrick Williamsce3e4872025-03-03 11:07:48 -0500261 description: 'transport',
John Chunge2fae4b2024-11-13 18:10:31 -0600262)
John Chung0a3f40b2025-01-22 18:07:52 -0600263
Vernon Maueryd0b99b12025-05-27 10:43:58 -0700264#######################################################################
265# OEM Libraries
266#######################################################################
John Chung0a3f40b2025-01-22 18:07:52 -0600267option(
Vernon Maueryd0b99b12025-05-27 10:43:58 -0700268 'oem-libraries',
269 type: 'array',
270 choices: [
271 # will build all of the OEM libraries - default
272 'all',
273 # don't build any OEM libraries
274 'none',
275 #######################################
276 # keep list below sorted alphabetically
277 #######################################
278 'example',
Prithvi Pai6b580c72025-06-05 11:13:34 +0530279 'nvidia',
Vernon Maueryd0b99b12025-05-27 10:43:58 -0700280 ],
281 value: ['all'],
282 description: 'Build selected OEM IPMI provider libraries',
John Chung0a3f40b2025-01-22 18:07:52 -0600283)