1/*
2 *  ucode.h
3 *
4 *  Interface definitions for the microcode updater interface sysctl
5 */
6
7/* Intel defined microcode format */
8struct intel_ucupdate {
9	/* Header information */
10	uint32_t header_version;
11	uint32_t update_revision;
12	uint32_t date;
13	uint32_t processor_signature;
14	uint32_t checksum;
15	uint32_t loader_revision;
16	uint32_t processor_flags;
17	uint32_t data_size;
18	uint32_t total_size;
19
20	/* Reserved for future expansion */
21	uint32_t reserved0;
22	uint32_t reserved1;
23	uint32_t reserved2;
24
25	/* First word of the update data */
26	uint32_t data;
27};
28
29extern int ucode_interface(uint64_t addr);
30extern void ucode_update_wake(void);
31