Willy Tu | c710b97 | 2021-08-11 16:33:43 -0700 | [diff] [blame] | 1 | |
| 2 | option('tests', type: 'feature', description: 'Build tests') |
Patrick Williams | 62ce159 | 2025-02-03 14:12:56 -0500 | [diff] [blame] | 3 | option( |
| 4 | 'boot-flag-safe-mode-support', |
| 5 | type: 'feature', |
| 6 | description: 'Add option to enable/disable safe mode in boot flags', |
| 7 | ) |
| 8 | option( |
| 9 | 'i2c-whitelist-check', |
| 10 | type: 'feature', |
| 11 | description: 'Add option to enable/disable i2c master write read command white list checking', |
| 12 | ) |
Willy Tu | c710b97 | 2021-08-11 16:33:43 -0700 | [diff] [blame] | 13 | |
| 14 | # SoftPowerOff |
| 15 | option('softoff', type: 'feature', description: 'Builds soft power off') |
Patrick Williams | 62ce159 | 2025-02-03 14:12:56 -0500 | [diff] [blame] | 16 | option( |
| 17 | 'softoff-busname', |
| 18 | type: 'string', |
| 19 | value: 'xyz.openbmc_project.Ipmi.Internal.SoftPowerOff', |
| 20 | description: 'The Dbus busname to own for SoftPowerOff', |
| 21 | ) |
| 22 | option( |
| 23 | 'softoff-objpath', |
| 24 | type: 'string', |
| 25 | value: '/xyz/openbmc_project/ipmi/internal/soft_power_off', |
| 26 | description: 'The SoftPowerOff Dbus root', |
| 27 | ) |
| 28 | option( |
| 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 | ) |
| 34 | option( |
| 35 | 'ipmi-host-shutdown-complete-timeout-secs', |
| 36 | type: 'integer', |
| 37 | value: 2700, |
| 38 | description: 'Wait time for host to shutdown', |
| 39 | ) |
Willy Tu | c710b97 | 2021-08-11 16:33:43 -0700 | [diff] [blame] | 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 |
Patrick Williams | 62ce159 | 2025-02-03 14:12:56 -0500 | [diff] [blame] | 43 | option( |
| 44 | 'host-inband-request-dir', |
| 45 | type: 'string', |
| 46 | value: '/run/openbmc/', |
| 47 | description: 'Directory to store host initiated shutdown file', |
| 48 | ) |
| 49 | option( |
| 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 | ) |
Willy Tu | c710b97 | 2021-08-11 16:33:43 -0700 | [diff] [blame] | 55 | |
| 56 | |
| 57 | # Config Variables |
Patrick Williams | 62ce159 | 2025-02-03 14:12:56 -0500 | [diff] [blame] | 58 | option( |
| 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 | ) |
| 64 | option( |
| 65 | 'system-sensor', |
| 66 | type: 'string', |
| 67 | value: '/xyz/openbmc_project/inventory/system', |
| 68 | description: 'The inventory path to the system event sensor', |
| 69 | ) |
Willy Tu | c710b97 | 2021-08-11 16:33:43 -0700 | [diff] [blame] | 70 | |
| 71 | # Control Host Interfaces |
Patrick Williams | 62ce159 | 2025-02-03 14:12:56 -0500 | [diff] [blame] | 72 | option( |
| 73 | 'control-host-busname', |
| 74 | type: 'string', |
| 75 | value: 'xyz.openbmc_project.Control.Host', |
| 76 | description: 'The Control Host Dbus busname to own', |
| 77 | ) |
| 78 | option( |
| 79 | 'control-host-obj-mgr', |
| 80 | type: 'string', |
| 81 | value: '/xyz/openbmc_project/control', |
| 82 | description: 'The Control Host D-Bus Object Manager', |
| 83 | ) |
| 84 | option( |
| 85 | 'host-name', |
| 86 | type: 'string', |
| 87 | value: 'host', |
| 88 | description: 'The Control Host D-Bus Object Manager', |
| 89 | ) |
Willy Tu | c710b97 | 2021-08-11 16:33:43 -0700 | [diff] [blame] | 90 | |
| 91 | # Power reading sensor configuration file |
Patrick Williams | 62ce159 | 2025-02-03 14:12:56 -0500 | [diff] [blame] | 92 | option( |
| 93 | 'power-reading-sensor', |
| 94 | type: 'string', |
| 95 | value: '/usr/share/ipmi-providers/power_reading.json', |
| 96 | description: 'Power reading sensor configuration file', |
| 97 | ) |
| 98 | option( |
| 99 | 'host-ipmi-lib-path', |
| 100 | type: 'string', |
| 101 | value: '/usr/lib/ipmid-providers/', |
| 102 | description: 'The file path to search for libraries', |
| 103 | ) |
Willy Tu | c710b97 | 2021-08-11 16:33:43 -0700 | [diff] [blame] | 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. |
Patrick Williams | 62ce159 | 2025-02-03 14:12:56 -0500 | [diff] [blame] | 107 | option( |
| 108 | 'update-functional-on-fail', |
| 109 | type: 'feature', |
| 110 | value: 'disabled', |
| 111 | description: 'Check functional property to skip reading from faulty sensors', |
| 112 | ) |
Willy Tu | c710b97 | 2021-08-11 16:33:43 -0700 | [diff] [blame] | 113 | |
| 114 | # Features |
| 115 | |
| 116 | # When libuserlayer is disabled, libuserlayer won't be included in the build. |
Patrick Williams | 62ce159 | 2025-02-03 14:12:56 -0500 | [diff] [blame] | 117 | option( |
| 118 | 'libuserlayer', |
| 119 | type: 'feature', |
| 120 | description: 'Option to exclue exclude libuserlayer', |
| 121 | ) |
Willy Tu | c710b97 | 2021-08-11 16:33:43 -0700 | [diff] [blame] | 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. |
Patrick Williams | 62ce159 | 2025-02-03 14:12:56 -0500 | [diff] [blame] | 128 | option( |
| 129 | 'transport-oem', |
| 130 | type: 'feature', |
| 131 | value: 'disabled', |
| 132 | description: 'Enable transporthandler_oem contents', |
| 133 | ) |
Willy Tu | c710b97 | 2021-08-11 16:33:43 -0700 | [diff] [blame] | 134 | |
| 135 | # IPMI whitelist mechanism is not needed by everyone; offer a way to disable it |
Patrick Williams | 62ce159 | 2025-02-03 14:12:56 -0500 | [diff] [blame] | 136 | option( |
| 137 | 'ipmi-whitelist', |
| 138 | type: 'feature', |
| 139 | description: 'Enable/disable IPMI whitelist filtering', |
| 140 | ) |
| 141 | option( |
| 142 | 'whitelist-conf', |
| 143 | type: 'string', |
| 144 | value: 'host-ipmid-whitelist.conf', |
| 145 | description: 'Paths to IPMI whitelisted commands conf files', |
| 146 | ) |
Willy Tu | c710b97 | 2021-08-11 16:33:43 -0700 | [diff] [blame] | 147 | |
Johnathan Mantey | 23a722c | 2023-05-12 08:18:54 -0700 | [diff] [blame] | 148 | # Entity Manager Decorators |
Patrick Williams | 62ce159 | 2025-02-03 14:12:56 -0500 | [diff] [blame] | 149 | option( |
| 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 | ) |
Johnathan Mantey | 23a722c | 2023-05-12 08:18:54 -0700 | [diff] [blame] | 155 | |
Willy Tu | c710b97 | 2021-08-11 16:33:43 -0700 | [diff] [blame] | 156 | # Dynamic Sensor Stack |
Patrick Williams | 62ce159 | 2025-02-03 14:12:56 -0500 | [diff] [blame] | 157 | option( |
| 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 | ) |
| 163 | option( |
| 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 | ) |
| 169 | option( |
| 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 | ) |
| 175 | option( |
| 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 | ) |
Willy Tu | c710b97 | 2021-08-11 16:33:43 -0700 | [diff] [blame] | 181 | |
| 182 | # Sensor Cache |
Patrick Williams | 62ce159 | 2025-02-03 14:12:56 -0500 | [diff] [blame] | 183 | option( |
| 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 | ) |
Willy Tu | c710b97 | 2021-08-11 16:33:43 -0700 | [diff] [blame] | 189 | |
Alexander Hansen | c2c26f9 | 2023-07-17 09:38:43 +0200 | [diff] [blame] | 190 | # Short Sensor Names for IPMI |
Patrick Williams | 62ce159 | 2025-02-03 14:12:56 -0500 | [diff] [blame] | 191 | option( |
| 192 | 'shortname-remove-suffix', |
| 193 | type: 'feature', |
| 194 | value: 'enabled', |
| 195 | description: 'shortname-remove-suffix is enabled by default', |
| 196 | ) |
| 197 | option( |
| 198 | 'shortname-replace-words', |
| 199 | type: 'feature', |
| 200 | value: 'disabled', |
| 201 | description: 'shortname-replace-words is disabled by default', |
| 202 | ) |
Alexander Hansen | c2c26f9 | 2023-07-17 09:38:43 +0200 | [diff] [blame] | 203 | |
Willy Tu | c710b97 | 2021-08-11 16:33:43 -0700 | [diff] [blame] | 204 | # Generate configuration from Yaml |
| 205 | option('sensor-yaml-gen', type: 'string', value: 'sensor-example.yaml') |
Patrick Williams | 62ce159 | 2025-02-03 14:12:56 -0500 | [diff] [blame] | 206 | option( |
| 207 | 'invsensor-yaml-gen', |
| 208 | type: 'string', |
| 209 | value: 'inventory-sensor-example.yaml', |
| 210 | ) |
Willy Tu | c710b97 | 2021-08-11 16:33:43 -0700 | [diff] [blame] | 211 | option('fru-yaml-gen', type: 'string', value: 'fru-read-example.yaml') |
Willy Tu | b78184e | 2022-10-27 22:57:38 +0000 | [diff] [blame] | 212 | |
| 213 | # Software Version |
Patrick Williams | 62ce159 | 2025-02-03 14:12:56 -0500 | [diff] [blame] | 214 | option( |
| 215 | 'get-dbus-active-software', |
| 216 | type: 'feature', |
| 217 | description: 'Use the getActiveSoftwareVersionInfo for the BMC version and dev_id.json as backup', |
| 218 | ) |
| 219 | option( |
| 220 | 'fw-ver-regex', |
| 221 | type: 'string', |
| 222 | value: '(\\\\d+)\\\\.(\\\\d+)', |
| 223 | description: 'Regular expressions for parsing firmware revision', |
| 224 | ) |
| 225 | option( |
| 226 | 'matches-map', |
| 227 | type: 'array', |
| 228 | value: ['1', '2', '0', '0', '0', '0'], |
| 229 | description: 'An array of integers', |
| 230 | ) |
Thang Tran | 292c917 | 2023-06-26 10:03:04 +0700 | [diff] [blame] | 231 | |
| 232 | # libipmi20.so library |
Patrick Williams | 62ce159 | 2025-02-03 14:12:56 -0500 | [diff] [blame] | 233 | option( |
| 234 | 'dynamic-storages-only', |
| 235 | type: 'feature', |
| 236 | value: 'disabled', |
| 237 | description: 'Request to compile storage commands in the libipmi20 library', |
| 238 | ) |
Patrick Williams | 768730d | 2023-09-06 16:27:20 -0500 | [diff] [blame] | 239 | |
| 240 | # open-power specific functionality. |
Patrick Williams | 62ce159 | 2025-02-03 14:12:56 -0500 | [diff] [blame] | 241 | option( |
| 242 | 'open-power', |
| 243 | type: 'feature', |
| 244 | description: 'Support open-power specific functions', |
| 245 | ) |