| description: > |
| Implement to provide the boot initiator (such as Petitboot or UEFI) |
| with its specific parameters. This is based on IPMI 2.0 Table 28-14 |
| 'Boot Option Parameters' parameter 7 'Boot initiator mailbox'. |
| |
| properties: |
| - name: Supported |
| type: boolean |
| flags: |
| - const |
| default: false |
| description: > |
| Specifies whether or not the mailbox is supported by the |
| boot initiator on this machine. |
| |
| The property is constant and is only set by the implementation |
| on startup. |
| |
| - name: IANAEnterpriseNumber |
| type: uint32 |
| flags: |
| - const |
| default: 0 |
| description: > |
| The 24-bit IANA Private Enterprise Number for the company or organization |
| that has specified the boot initiator. This is a machine-specific |
| constant. The implementing application is responsible for setting |
| this to the proper machine-specific value (0x000000..0xFFFFFF) |
| according to https://www.iana.org/assignments/enterprise-numbers/enterprise-numbers. |
| |
| The property is constant and is only set by the implementation |
| on startup. |
| |
| - name: Data |
| type: array[byte] |
| description: > |
| The array of data bytes for the boot initiator to treat |
| in its specific way. This interface doesn't impose any |
| limitiations on the format or make any assumptions regarding |
| it. The boot initiator is responsible for parsing this array. |
| |
| The size of the array is a constant depending on the requirements |
| set by the boot initiator used for a particular architecture or |
| a machine. The implementing application is responsible for setting |
| the size of this array to the proper value. |
| |
| For conformance to the IPMI 2.0 specification, the size of the array |
| plus 3 (the size of IPMI 2.0 representation of IANA Enterprise Number) |
| must be a multiple of 16 with the minimum allowed size being 77 |
| (5 x 16-byte blocks, minus 3) if mailbox is at all Supported. |
| |
| For IPMI 2.0 this array is supposed to be split into 16-byte |
| blocks by the implementing service (block 0 being made of IANA PEN |
| plus first 13 bytes of this array). Please pay special attention |
| that this array does NOT include the IANA PEN needed for IPMI 2.0. |
| Only the actual PEN-specific data is stored here. |
| |
| When partially written to, the remaining parts of this array |
| must not be automatically cleared. This is per IPMI 2.0 |
| specification. |
| |
| Other interfaces to the boot initiator (such as MCTP) may process |
| this array differently. |