| # PLDM daemon options |
| option( |
| 'tests', |
| type: 'feature', |
| value: 'enabled', |
| description: 'Build tests' |
| ) |
| |
| option( |
| 'utilities', |
| type: 'feature', |
| value: 'enabled', |
| description: 'Enable debug utilities' |
| ) |
| |
| option( |
| 'libpldmresponder', |
| type: 'feature', |
| value: 'enabled', |
| description: 'Enable libpldmresponder' |
| ) |
| |
| option( |
| 'systemd', |
| type: 'feature', |
| value: 'enabled', |
| description: 'Include systemd support' |
| ) |
| |
| option( |
| 'transport-implementation', |
| type: 'combo', |
| choices: ['mctp-demux', 'af-mctp'], |
| description: 'transport via af-mctp or mctp-demux' |
| ) |
| |
| # As per PLDM spec DSP0240 version 1.1.0, in Timing Specification for PLDM messages (Table 6), |
| # the instance ID for a given response will expire and become reusable if a response has not been |
| # received within a maximum of 6 seconds after a request is sent. By setting the dbus timeout |
| # value to 5 seconds we ensure that PLDM does not wait for a response from a dbus call even after |
| # the instance ID has expired. If the option is set to 5 seconds, any dbus call originated from |
| # PLDM daemon will timeout after 5 seconds. |
| option( |
| 'dbus-timeout-value', |
| type: 'integer', |
| min: 3, |
| max: 10, |
| value: 5, |
| description: '''The amount of time pldm waits to get a response for a dbus |
| message before timing out''' |
| ) |
| |
| option( |
| 'heartbeat-timeout-seconds', |
| type: 'integer', |
| value: 120, |
| description: '''The amount of time host waits for BMC to respond to pings |
| from host, as part of host-bmc surveillance''' |
| ) |
| |
| # Flight Recorder for PLDM Daemon |
| option( |
| 'flightrecorder-max-entries', |
| type:'integer', |
| min:0, |
| max:30, |
| value: 10, |
| description: '''The max number of pldm messages that can be stored in the |
| recorder, this feature will be disabled if it is set to 0''' |
| ) |
| |
| # PLDM Daemon Terminus options |
| option( |
| 'terminus-id', |
| type:'integer', |
| min:0, |
| max: 255, |
| value:1, |
| description: '''The terminus id value of the device that is running this |
| pldm stack''' |
| ) |
| |
| option( |
| 'terminus-handle', |
| type:'integer', |
| min:0, |
| max:65535, |
| value:1, |
| description: '''The terminus handle value of the device that is running this |
| pldm stack''' |
| ) |
| |
| # Timing specification options for PLDM messages |
| option( |
| 'number-of-request-retries', |
| type: 'integer', |
| min: 2, |
| max: 30, |
| value: 2, |
| description: '''The number of times a requester is obligated to retry a |
| request''' |
| ) |
| |
| option( |
| 'instance-id-expiration-interval', |
| type: 'integer', |
| min: 5, |
| max: 6, |
| value: 5, |
| description: 'Instance ID expiration interval in seconds' |
| ) |
| |
| # Default response-time-out set to 2 seconds to facilitate a minimum retry of |
| # the request of 2. |
| option( |
| 'response-time-out', |
| type: 'integer', |
| min: 300, |
| max: 4800, |
| value: 2000, |
| description: '''The amount of time a requester has to wait for a response |
| message in milliseconds''' |
| ) |
| |
| # Firmware update configuration parameters |
| option( |
| 'maximum-transfer-size', |
| type: 'integer', |
| min: 16, |
| max: 4294967295, |
| value: 4096, |
| description: '''Maximum size in bytes of the variable payload allowed to be |
| requested by the FD, via RequestFirmwareData command''' |
| ) |
| |
| # Bios Attributes option |
| option( |
| 'system-specific-bios-json', |
| type : 'feature', |
| value: 'disabled', |
| description : 'Support for different set of bios attributes for different types of systems' |
| ) |
| |
| # PLDM Soft Power off options |
| option( |
| 'softoff', |
| type: 'feature', |
| value: 'enabled', |
| description: 'Build soft power off application' |
| ) |
| |
| option( |
| 'softoff-timeout-seconds', |
| type: 'integer', |
| value: 7200, |
| description: 'softoff: Time to wait for host to gracefully shutdown' |
| ) |
| |
| # Vendor Specific Options |
| |
| ## OEM IBM Options |
| option( |
| 'oem-ibm', |
| type: 'feature', |
| value: 'enabled', |
| description: 'Enable IBM OEM PLDM' |
| ) |
| |
| option( |
| 'oem-ibm-dma-maxsize', |
| type: 'integer', |
| min:4096, |
| max: 16773120, |
| value: 8384512, |
| description: 'OEM-IBM: max DMA size' |
| ) |
| |
| |
| ## OEM AMPERE Options |
| option( |
| 'oem-ampere', |
| type: 'feature', |
| description: 'Enable AMPERE OEM PLDM', |
| value: 'enabled', |
| ) |
| |
| ## Default Sensor Update Interval Options |
| option( |
| 'default-sensor-update-interval', |
| type: 'integer', |
| min: 1, |
| max: 4294967295, |
| description: '''The default sensor polling interval in milliseconds. |
| The value will be used when the internal is not configured |
| in the PLDM sensor PDRs use `updateInterval` field. `pldmd` |
| will send `GetSensorReading` to get the PLDM sensor values |
| of the monitoring terminus after each configured |
| interval.''', |
| value: 999 |
| ) |
| |
| # Platform-mc configuration parameters |
| |
| ## Sensor Polling Options |
| option( |
| 'sensor-polling-time', |
| type: 'integer', |
| min: 1, |
| max: 10000, |
| description: '''The configured timeout in milliseconds of the common sensor |
| polling timer of each terminus which will trigger the |
| terminus sensor reading task. The task will check |
| whether the sensor in the terminus sensors list need to |
| be updated by comparing the sensor `updateInterval` with the |
| interval between current timestamp and latest updated |
| timestamp of the sensor. The task will send |
| `GetSensorReading` if the sensor need to be updated.''', |
| value: 249 |
| ) |