xref: /openbmc/phosphor-host-ipmid/meson.options (revision ce3e487a45d281146a2f228c143b707bc3388420)
1
2option('tests', type: 'feature', description: 'Build tests')
3option(
4    'boot-flag-safe-mode-support',
5    type: 'feature',
6    description: 'Add option to enable/disable safe mode in boot flags',
7)
8option(
9    'i2c-whitelist-check',
10    type: 'feature',
11    description: 'Add option to enable/disable i2c master write read command white list checking',
12)
13
14# SoftPowerOff
15option('softoff', type: 'feature', description: 'Builds soft power off')
16option(
17    'softoff-busname',
18    type: 'string',
19    value: 'xyz.openbmc_project.Ipmi.Internal.SoftPowerOff',
20    description: 'The Dbus busname to own for SoftPowerOff',
21)
22option(
23    'softoff-objpath',
24    type: 'string',
25    value: '/xyz/openbmc_project/ipmi/internal/soft_power_off',
26    description: 'The SoftPowerOff Dbus root',
27)
28option(
29    'ipmi-sms-atn-ack-timeout-secs',
30    type: 'integer',
31    value: 3,
32    description: 'Timeout for host to ack and query SMS_ATN from BMC',
33)
34option(
35    'ipmi-host-shutdown-complete-timeout-secs',
36    type: 'integer',
37    value: 2700,
38    description: 'Wait time for host to shutdown',
39)
40# Indicates an in-band power off or reboot request from the host
41# This file is used to ensure the soft off service does not run for host
42# initiated shutdown or reboot requests
43option(
44    'host-inband-request-dir',
45    type: 'string',
46    value: '/run/openbmc/',
47    description: 'Directory to store host initiated shutdown file',
48)
49option(
50    'host-inband-request-file',
51    type: 'string',
52    value: 'host@%u-request',
53    description: 'File to create if host has initiated shutdown or reboot',
54)
55
56
57# Config Variables
58option(
59    'board-sensor',
60    type: 'string',
61    value: '/xyz/openbmc_project/inventory/system/chassis/motherboard',
62    description: 'The inventory path to the motherboard fault sensor',
63)
64option(
65    'system-sensor',
66    type: 'string',
67    value: '/xyz/openbmc_project/inventory/system',
68    description: 'The inventory path to the system event sensor',
69)
70
71# Control Host Interfaces
72option(
73    'control-host-busname',
74    type: 'string',
75    value: 'xyz.openbmc_project.Control.Host',
76    description: 'The Control Host Dbus busname to own',
77)
78option(
79    'control-host-obj-mgr',
80    type: 'string',
81    value: '/xyz/openbmc_project/control',
82    description: 'The Control Host D-Bus Object Manager',
83)
84option(
85    'host-name',
86    type: 'string',
87    value: 'host',
88    description: 'The Control Host D-Bus Object Manager',
89)
90
91# Power reading sensor configuration file
92option(
93    'power-reading-sensor',
94    type: 'string',
95    value: '/usr/share/ipmi-providers/power_reading.json',
96    description: 'Power reading sensor configuration file',
97)
98option(
99    'host-ipmi-lib-path',
100    type: 'string',
101    value: '/usr/lib/ipmid-providers/',
102    description: 'The file path to search for libraries',
103)
104
105# When a sensor read fails, hwmon will update the OperationalState interface's Functional property.
106# This will mark the sensor as not functional and we will skip reading from that sensor.
107option(
108    'update-functional-on-fail',
109    type: 'feature',
110    value: 'disabled',
111    description: 'Check functional property to skip reading from faulty sensors',
112)
113
114# Features
115
116# When libuserlayer is disabled, libuserlayer won't be included in the build.
117option(
118    'libuserlayer',
119    type: 'feature',
120    description: 'Option to exclue exclude libuserlayer',
121)
122
123# When transport-oem is enabled, the transporthandler_oem.cpp contents
124# are compiled and added to the project. The transporthandler_oem.cpp file is
125# copied from your own customization layer in the
126# phosphor-ipmi-host_%.bbappend file. It is not necessary to create this file
127# unless OEM Parameter extensions are required.
128option(
129    'transport-oem',
130    type: 'feature',
131    value: 'disabled',
132    description: 'Enable transporthandler_oem contents',
133)
134
135# IPMI whitelist mechanism is not needed by everyone; offer a way to disable it
136option(
137    'ipmi-whitelist',
138    type: 'feature',
139    description: 'Enable/disable IPMI whitelist filtering',
140)
141option(
142    'whitelist-conf',
143    type: 'string',
144    value: 'host-ipmid-whitelist.conf',
145    description: 'Paths to IPMI whitelisted commands conf files',
146)
147
148# Entity Manager Decorators
149option(
150    'entity-manager-decorators',
151    type: 'feature',
152    value: 'enabled',
153    description: 'The Entity Manager Decorators flag is enabled by default; offer a way to disable it',
154)
155
156# Dynamic Sensor Stack
157option(
158    'dynamic-sensors',
159    type: 'feature',
160    value: 'disabled',
161    description: 'Dynamic sensors stack is enabled by default; offer a way to disable it',
162)
163option(
164    'dynamic-sensors-write',
165    type: 'feature',
166    value: 'disabled',
167    description: 'Dynamic sensors stack is enabled by default; offer a way to disable it',
168)
169option(
170    'hybrid-sensors',
171    type: 'feature',
172    value: 'disabled',
173    description: 'Hybrid sensors stack is disabled by default; offer a way to enable it',
174)
175option(
176    'sensors-oem',
177    type: 'feature',
178    value: 'disabled',
179    description: 'OEM sensor SDR parsing is disabled by default; offer a way to enable it',
180)
181
182# Sensor Cache
183option(
184    'sensors-cache',
185    type: 'feature',
186    value: 'disabled',
187    description: 'Sensor cache stack is disabled by default; offer a way to enable it',
188)
189
190# Short Sensor Names for IPMI
191option(
192    'shortname-remove-suffix',
193    type: 'feature',
194    value: 'enabled',
195    description: 'shortname-remove-suffix is enabled by default',
196)
197option(
198    'shortname-replace-words',
199    type: 'feature',
200    value: 'disabled',
201    description: 'shortname-replace-words is disabled by default',
202)
203
204# Generate configuration from Yaml
205option('sensor-yaml-gen', type: 'string', value: 'sensor-example.yaml')
206option(
207    'invsensor-yaml-gen',
208    type: 'string',
209    value: 'inventory-sensor-example.yaml',
210)
211option('fru-yaml-gen', type: 'string', value: 'fru-read-example.yaml')
212
213# Software Version
214option(
215    'get-dbus-active-software',
216    type: 'feature',
217    description: 'Use the  getActiveSoftwareVersionInfo for the BMC version and dev_id.json as backup',
218)
219option(
220    'fw-ver-regex',
221    type: 'string',
222    value: '(\\\\d+)\\\\.(\\\\d+)',
223    description: 'Regular expressions for parsing firmware revision',
224)
225option(
226    'matches-map',
227    type: 'array',
228    value: ['1', '2', '0', '0', '0', '0'],
229    description: 'An array of integers',
230)
231
232# libipmi20.so library
233option(
234    'dynamic-storages-only',
235    type: 'feature',
236    value: 'disabled',
237    description: 'Request to compile storage commands in the libipmi20 library',
238)
239
240# open-power specific functionality.
241option(
242    'open-power',
243    type: 'feature',
244    description: 'Support open-power specific functions',
245)
246
247# HW transport
248option(
249    'transport-implementation',
250    type: 'combo',
251    choices: ['null', 'serial'],
252    description: 'transport',
253)
254