dmi_apple_processor_type

Synopsis

#include <opendmi/entity/apple/processor-type.h>

typedef struct dmi_apple_processor_type {
    uint8_t generation;
    dmi_apple_processor_class_t clazz;
} dmi_apple_processor_type_t;

Description

The dmi_apple_processor_type_t structure holds the decoded Apple processor type information (type 131), which tells the type of the processor, by which macOS names it. The type is a word whose high byte is the class of the processor and whose low byte is its generation within the class, e.g. 0x0701 for the first generation of Intel Core i7. Newer firmware follows the type with two reserved bytes.

The structure is returned by dmi_entity_info for the structures decoded by dmi_apple_processor_type_spec, of type DMI_TYPE(apple_processor_type), declared in <opendmi/module/apple.h>, once the Apple extension module (dmi_apple_module) is enabled, which is done for the platforms of Apple firmware when the context has DMI_CONTEXT_FLAG_AUTO_MODULES. It lives as long as the context it has been decoded in.

The Intel reference code gives type 131 to the Intel vPro information too, which is told apart by its signature.

Fields

generation

Generation of the processor within its class, the minor type.

clazz

Class of the processor, the major type, see dmi_apple_processor_class. It is exported as class, the member being named otherwise since class is a keyword of C++.

Standards

Not part of the SMBIOS specification. Defined by the firmware of Macs, and laid out as the AppleSmBios.h header of OpenCore describes it.