You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
87 lines
1.7 KiB
87 lines
1.7 KiB
#ifndef _IMR_TOC_H_ |
|
#define _IMR_TOC_H_ |
|
|
|
/* |
|
* IMR Table of Contents format |
|
*/ |
|
typedef struct { |
|
uint32_t start_offset; |
|
uint32_t size; |
|
uint32_t reserved1; |
|
uint32_t reserved2; |
|
} imr_toc_entry_t; |
|
|
|
typedef struct { |
|
imr_toc_entry_t entries[8]; /* pick reasonable size to make gcc happy */ |
|
} imr_toc_t; |
|
|
|
#define MAKE_TOC_VERSION(maj, min) ((min) << 16 | (maj)) |
|
typedef struct { |
|
uint16_t toc_maj_ver; |
|
uint16_t toc_min_ver; |
|
} imr_toc_entry_version_t; |
|
|
|
/* |
|
* IMR6 values |
|
*/ |
|
|
|
#define IMR6_TOC_MAGIC 0x6CD96EDB |
|
|
|
#define IMR6_TOC_VERSION_MAJ 0x0001 |
|
#define IMR6_TOC_VERSION_MIN 0x0000 |
|
|
|
/* ToC entry order for IMR6 */ |
|
enum imr6_entries { |
|
IMR_TOC_ENTRY_TOC = 0, |
|
IMR_TOC_ENTRY_MTX_WB_BUF, |
|
IMR_TOC_ENTRY_VXE_FW, |
|
IMR_TOC_ENTRY_VXE_CTX_BUF, |
|
IMR_TOC_ENTRY_VXE_SEC_PGTBLS, |
|
IMR_TOC_ENTRY_PC_BUFS, |
|
IMR_TOC_ENTRY_VXE_SHADOW_PGTBLS, |
|
IMR_TOC_ENTRY_XEN_EXTRA, |
|
}; |
|
|
|
|
|
/* |
|
* IMR7 values |
|
*/ |
|
|
|
#define IMR7_TOC_MAGIC 0x6ED96CDB |
|
|
|
#define IMR7_TOC_VERSION_MAJ 0x0001 |
|
#define IMR7_TOC_VERSION_MIN 0x0000 |
|
|
|
/* ToC entry order for IMR7 */ |
|
enum imr7_entries { |
|
/* IMR_TOC_ENTRY_TOC = 0, */ |
|
IMR_TOC_ENTRY_MAILBOXES = 1, /* contents per imr_ia_chaabi_mailbox_t */ |
|
IMR_TOC_ENTRY_IA_RUNTIME_FW, |
|
IMR_TOC_ENTRY_XEN |
|
}; |
|
|
|
/* entry-specific data structures */ |
|
|
|
#define IMR6_PC_BUFS_START_VADDR 0x11223344 |
|
|
|
typedef struct { |
|
uint32_t hdcp_sess_status; |
|
union { |
|
struct { |
|
uint32_t hdcp_sess_key_00_31; |
|
uint32_t hdcp_sess_key_32_63; |
|
uint32_t hdcp_sess_key_64_95; |
|
uint32_t hdcp_sess_key_96_127; |
|
}; |
|
uint8_t hdcp_sess_key[16]; |
|
}; |
|
union { |
|
struct { |
|
uint32_t hdcp_iv_00_31; |
|
uint32_t hdcp_iv_32_63; |
|
}; |
|
uint64_t hdcp_iv; |
|
}; |
|
} imr_ia_chaabi_mailbox_t; |
|
|
|
#endif
|
|
|