dmi_ipmi_device_details
Synopsis
#include <opendmi/entity/ipmi-device.h>
typedef union dmi_ipmi_device_details {
uint8_t __value;
struct {
uint8_t is_intr_level_triggered : 1;
uint8_t is_intr_active_high : 1;
uint8_t __reserved_1 : 1;
uint8_t is_intr_info_specified : 1;
uint8_t base_address_lsb : 1;
uint8_t __reserved_2 : 1;
uint8_t register_spacing : 2;
};
} dmi_ipmi_device_details_t;
Description
The dmi_ipmi_device_details_t union describes the byte of the IPMI device
information structure which follows the base address: the base address
modifier and the interrupt information. The byte can be read as a whole
through __value, or bit by bit through the named members.
The decoder does not keep the byte: it spreads it over the fields of
dmi_ipmi_device_t, and the union serves to read or build the raw byte.
For the SSIF interface, the byte is unused and set to 0.
Fields
__value-
Raw value of the byte.
is_intr_level_triggered-
Set if the interrupt is level-triggered, clear if it is edge-triggered. Meaningful only when
is_intr_info_specifiedis set. is_intr_active_high-
Set if the interrupt is active high, clear if it is active low. Meaningful only when
is_intr_info_specifiedis set. __reserved_1-
Reserved bit, set to 0.
is_intr_info_specified-
Set if the byte specifies the trigger mode and the polarity of the interrupt.
base_address_lsb-
Least-significant bit of the base address of the BMC.
__reserved_2-
Reserved bit, set to 0.
register_spacing-
Distance between the interface registers, as a code of
dmi_ipmi_register_spacing.