iPXE
|
Cavium ThunderX Board Configuration. More...
#include <ipxe/efi/efi.h>
Go to the source code of this file.
Data Structures | |
struct | _EFI_THUNDER_CONFIG_PROTOCOL |
Protocol structure. More... | |
Macros | |
#define | MAX_NODES 2 |
#define | CLUSTER_COUNT 3 |
#define | CORE_PER_CLUSTER_COUNT 16 |
#define | CORE_COUNT (CLUSTER_COUNT*CORE_PER_CLUSTER_COUNT) |
#define | BGX_PER_NODE_COUNT 2 |
#define | LMAC_PER_BGX_COUNT 4 |
#define | PEM_PER_NODE_COUNT 6 |
#define | LMC_PER_NODE_COUNT 4 |
#define | DIMM_PER_LMC_COUNT 2 |
#define | THUNDERX_CPU_ID(node, cluster, core) (((node) << 16) | ((cluster) << 8) | (core)) |
#define | EFI_THUNDER_CONFIG_PROTOCOL_GUID {0xc12b1873, 0xac17, 0x4176, {0xac, 0x77, 0x7e, 0xcb, 0x4d, 0xef, 0xff, 0xec}} |
Typedefs | |
typedef struct _EFI_THUNDER_CONFIG_PROTOCOL | EFI_THUNDER_CONFIG_PROTOCOL |
Forward declaration. More... | |
typedef EFI_STATUS(EFIAPI * | EFI_THUNDER_CONFIG_PROTOCOL_GET_CONFIG) (IN EFI_THUNDER_CONFIG_PROTOCOL *This, OUT VOID **cfg) |
Function prototypes. More... | |
typedef EFI_STATUS(EFIAPI * | EFI_THUNDER_CONFIG_PROTOCOL_GET_BGX_PROP) (IN EFI_THUNDER_CONFIG_PROTOCOL *This, IN UINTN NodeId, IN UINTN BgxId, IN BGX_PROPERTY BgxProp, IN UINT64 ValueSize, OUT UINT64 *Value) |
typedef EFI_STATUS(EFIAPI * | EFI_THUNDER_CONFIG_PROTOCOL_GET_LMAC_PROP) (IN EFI_THUNDER_CONFIG_PROTOCOL *This, IN UINTN NodeId, IN UINTN BgxId, IN UINTN LmacId, IN LMAC_PROPERTY LmacProp, IN UINT64 ValueSize, OUT UINT64 *Value) |
Enumerations | |
enum | BGX_PROPERTY { BGX_ENABLED, BGX_MODE, LMAC_COUNT, BASE_ADDRESS, LMAC_TYPE_BGX, QLM_MASK, QLM_FREQ, USE_TRAINING } |
enum | LMAC_PROPERTY { ENABLED, LANE_TO_SDS, MAC_ADDRESS } |
Functions | |
FILE_LICENCE (BSD2) | |
Cavium ThunderX Board Configuration.
The definitions in this section are extracted from BSD-licensed (but non-public) portions of ThunderPkg.
Definition in file thunderxcfg.h.
#define MAX_NODES 2 |
Definition at line 54 of file thunderxcfg.h.
#define CLUSTER_COUNT 3 |
Definition at line 55 of file thunderxcfg.h.
#define CORE_PER_CLUSTER_COUNT 16 |
Definition at line 56 of file thunderxcfg.h.
#define CORE_COUNT (CLUSTER_COUNT*CORE_PER_CLUSTER_COUNT) |
Definition at line 57 of file thunderxcfg.h.
#define BGX_PER_NODE_COUNT 2 |
Definition at line 58 of file thunderxcfg.h.
#define LMAC_PER_BGX_COUNT 4 |
Definition at line 59 of file thunderxcfg.h.
#define PEM_PER_NODE_COUNT 6 |
Definition at line 60 of file thunderxcfg.h.
#define LMC_PER_NODE_COUNT 4 |
Definition at line 61 of file thunderxcfg.h.
#define DIMM_PER_LMC_COUNT 2 |
Definition at line 62 of file thunderxcfg.h.
Definition at line 64 of file thunderxcfg.h.
#define EFI_THUNDER_CONFIG_PROTOCOL_GUID {0xc12b1873, 0xac17, 0x4176, {0xac, 0x77, 0x7e, 0xcb, 0x4d, 0xef, 0xff, 0xec}} |
Definition at line 87 of file thunderxcfg.h.
typedef struct _EFI_THUNDER_CONFIG_PROTOCOL EFI_THUNDER_CONFIG_PROTOCOL |
Forward declaration.
Definition at line 93 of file thunderxcfg.h.
typedef EFI_STATUS(EFIAPI * EFI_THUNDER_CONFIG_PROTOCOL_GET_CONFIG) (IN EFI_THUNDER_CONFIG_PROTOCOL *This, OUT VOID **cfg) |
Function prototypes.
Definition at line 117 of file thunderxcfg.h.
typedef EFI_STATUS(EFIAPI * EFI_THUNDER_CONFIG_PROTOCOL_GET_BGX_PROP) (IN EFI_THUNDER_CONFIG_PROTOCOL *This, IN UINTN NodeId, IN UINTN BgxId, IN BGX_PROPERTY BgxProp, IN UINT64 ValueSize, OUT UINT64 *Value) |
Definition at line 124 of file thunderxcfg.h.
typedef EFI_STATUS(EFIAPI * EFI_THUNDER_CONFIG_PROTOCOL_GET_LMAC_PROP) (IN EFI_THUNDER_CONFIG_PROTOCOL *This, IN UINTN NodeId, IN UINTN BgxId, IN UINTN LmacId, IN LMAC_PROPERTY LmacProp, IN UINT64 ValueSize, OUT UINT64 *Value) |
Definition at line 135 of file thunderxcfg.h.
enum BGX_PROPERTY |
Enumerator | |
---|---|
BGX_ENABLED | |
BGX_MODE | |
LMAC_COUNT | |
BASE_ADDRESS | |
LMAC_TYPE_BGX | |
QLM_MASK | |
QLM_FREQ | |
USE_TRAINING |
Definition at line 95 of file thunderxcfg.h.
enum LMAC_PROPERTY |
Enumerator | |
---|---|
ENABLED | |
LANE_TO_SDS | |
MAC_ADDRESS |
Definition at line 106 of file thunderxcfg.h.
FILE_LICENCE | ( | BSD2 | ) |