#ifndef _SPD_DDR4_H
#define _SPD_DDR4_H
#include <sys/bitext.h>
#include "spd_common.h"
#ifdef __cplusplus
extern "C" {
#endif
#define SPD_DDR4_NBYTES 0x000
#define SPD_DDR4_NBYTES_TOTAL(r) bitx8(r, 6, 4)
#define SPD_DDR4_NBYTES_TOTAL_UNDEF 0
#define SPD_DDR4_NBYTES_TOTAL_256 1
#define SPD_DDR4_NBYTES_TOTAL_512 2
#define SPD_DDR4_NBYTES_USED(r) bitx8(r, 3, 0)
#define SPD_DDR4_NBYTES_USED_UNDEF 0
#define SPD_DDR4_NBYTES_USED_128 1
#define SPD_DDR4_NBYTES_USED_256 2
#define SPD_DDR4_NBYTES_USED_384 3
#define SPD_DDR4_NBYTES_USED_512 4
#define SPD_DDR4_SPD_REV 0x001
#define SPD_DDR4_SPD_REV_ENC(r) bitx8(r, 7, 4)
#define SPD_DDR4_SPD_REV_ADD(r) bitx8(r, 3, 0)
#define SPD_DDR4_SPD_REV_V1 1
#define SPD_DDR4_DRAM_TYPE 0x002
#define SPD_DDR4_MOD_TYPE 0x003
#define SPD_DDR4_MOD_TYPE_ISHYBRID(r) bitx8(r, 7, 7)
#define SPD_DDR4_MOD_TYPE_HYBRID(r) bitx8(r, 6, 4)
#define SPD_DDR4_MOD_TYPE_HYBRID_NONE 0
#define SPD_DDR4_MOD_TYPE_HYBRID_NVDIMM_NF 1
#define SPD_DDR4_MOD_TYPE_HYBRID_NVDIMM_P 2
#define SPD_DDR4_MOD_TYPE_HYBRID_NVDIMM_H 3
#define SPD_DDR4_MOD_TYPE_TYPE(r) bitx8(r, 3, 0)
#define SPD_DDR4_MOD_TYPE_TYPE_EXT 0
#define SPD_DDR4_MOD_TYPE_TYPE_RDIMM 1
#define SPD_DDR4_MOD_TYPE_TYPE_UDIMM 2
#define SPD_DDR4_MOD_TYPE_TYPE_SODIMM 3
#define SPD_DDR4_MOD_TYPE_TYPE_LRDIMM 4
#define SPD_DDR4_MOD_TYPE_TYPE_MINI_RDIMM 5
#define SPD_DDR4_MOD_TYPE_TYPE_MINI_UDIMM 6
#define SPD_DDR4_MOD_TYPE_TYPE_72b_SORDIMM 8
#define SPD_DDR4_MOD_TYPE_TYPE_72b_SOUDIMM 9
#define SPD_DDR4_MOD_TYPE_TYPE_16b_SODIMM 12
#define SPD_DDR4_MOD_TYPE_TYPE_32b_SODIMM 13
#define SPD_DDR4_DENSITY 0x004
#define SPD_DDR4_DENSITY_NBG_BITS(r) bitx8(r, 7, 6)
#define SPD_DDR4_DENSITY_NBG_BITS_MAX 2
#define SPD_DDR4_DENSITY_NBA_BITS(r) bitx8(r, 5, 4)
#define SPD_DDR4_DENSITY_NBA_BITS_BASE 2
#define SPD_DDR4_DENSITY_NBA_BITS_MAX 3
#define SPD_DDR4_DENSITY_DENSITY(r) bitx8(r, 3, 0)
#define SPD_DDR4_DENSITY_DENSITY_256Mb 0
#define SPD_DDR4_DENSITY_DENSITY_512Mb 1
#define SPD_DDR4_DENSITY_DENSITY_1Gb 2
#define SPD_DDR4_DENSITY_DENSITY_2Gb 3
#define SPD_DDR4_DENSITY_DENSITY_4Gb 4
#define SPD_DDR4_DENSITY_DENSITY_8Gb 5
#define SPD_DDR4_DENSITY_DENSITY_16Gb 6
#define SPD_DDR4_DENSITY_DENSITY_32Gb 7
#define SPD_DDR4_DENSITY_DENSITY_12Gb 8
#define SPD_DDR4_DENSITY_DENSITY_24Gb 9
#define SPD_DDR4_ADDR 0x005
#define SPD_DDR4_ADDR_NROWS(r) bitx8(r, 5, 3)
#define SPD_DDR4_ADDR_NROWS_BASE 12
#define SPD_DDR4_ADDR_NROWS_MAX 18
#define SPD_DDR4_ADDR_NCOLS(r) bitx8(r, 2, 0)
#define SPD_DDR4_ADDR_NCOLS_BASE 9
#define SPD_DDR4_ADDR_NCOLS_MAX 12
#define SPD_DDR4_PRI_PKG 0x006
#define SPD_DDR4_SEC_PKG 0x00a
#define SPD_DDR4_PKG_TYPE(r) bitx8(r, 7, 7)
#define SPD_DDR4_PKG_TYPE_MONO 0
#define SPD_DDR4_PKG_TYPE_NOT 1
#define SPD_DDR4_PKG_DIE_CNT(r) bitx8(r, 6, 4)
#define SPD_DDR4_PKG_DIE_CNT_BASE 1
#define SPD_DDR4_SEC_PKG_RATIO(r) bitx8(r, 3, 2)
#define SPD_DDR4_SEC_PKG_RATIO_EQ 0
#define SPD_DDR4_SEC_PKG_RATIO_1S 1
#define SPD_DDR4_SEC_PKG_RATIO_2S 2
#define SPD_DDR4_PKG_SIG_LOAD(r) bitx8(r, 1, 0)
#define SPD_DDR4_PKG_SIG_LOAD_UNSPEC 0
#define SPD_DDR4_PKG_SIG_LOAD_MULTI 1
#define SPD_DDR4_PKG_SIG_LOAD_SINGLE 2
#define SPD_DDR4_OPT_FEAT 0x007
#define SPD_DDR4_OPT_FEAT_MAW(r) bitx8(r, 5, 4)
#define SPD_DDR4_OPT_FEAT_MAW_8192X 0
#define SPD_DDR4_OPT_FEAT_MAW_4096X 1
#define SPD_DDR4_OPT_FEAT_MAW_2048X 2
#define SPD_DDR4_OPT_FEAT_MAC(r) bitx8(r, 3, 0)
#define SPD_DDR4_OPT_FEAT_MAC_UNTESTED 0
#define SPD_DDR4_OPT_FEAT_MAC_700K 1
#define SPD_DDR4_OPT_FEAT_MAC_600K 2
#define SPD_DDR4_OPT_FEAT_MAC_500K 3
#define SPD_DDR4_OPT_FEAT_MAC_400K 4
#define SPD_DDR4_OPT_FEAT_MAC_300K 5
#define SPD_DDR4_OPT_FEAT_MAC_200K 6
#define SPD_DDR4_OPT_FEAT_MAC_UNLIMITED 8
#define SPD_DDR4_OPT_FEAT2 0x009
#define SPD_DDR4_OPT_FEAT2_PPR(r) bitx8(r, 7, 6)
#define SPD_DDR4_OPT_FEAT2_PPR_NOTSUP 0
#define SPD_DDR4_OPT_FEAT2_PPR_1RPBG 1
#define SPD_DDR4_OPT_FEAT2_SOFT_PPR(r) bitx8(r, 5, 5)
#define SPD_DDR4_OPT_FEAT2_MBIST_PPR(r) bitx8(r, 4, 4)
#define SPD_DDR4_VOLT 0x00b
#define SPD_DDR4_VOLT_V1P2_ENDUR(r) bitx8(r, 1, 1)
#define SPD_DDR4_VOLT_V1P2_OPER(r) bitx8(r, 0, 0)
#define SPD_DDR4_MOD_ORG 0x00c
#define SPD_DDR4_MOD_ORG_RANK_MIX(r) bitx8(r, 6, 6)
#define SPD_DDR4_MOD_ORG_RANK_MIX_SYM 0
#define SPD_DDR4_MOD_ORG_RANK_MIX_ASYM 1
#define SPD_DDR4_MOD_ORG_NPKG_RANK(r) bitx8(r, 5, 3)
#define SPD_DDR4_MOD_ORG_NPKG_RANK_BASE 1
#define SPD_DDR4_MOD_ORG_WIDTH(r) bitx8(r, 2, 0)
#define SPD_DDR4_MOD_ORG_WIDTH_4b 0
#define SPD_DDR4_MOD_ORG_WIDTH_8b 1
#define SPD_DDR4_MOD_ORG_WIDTH_16b 2
#define SPD_DDR4_MOD_ORG_WIDTH_32b 3
#define SPD_DDR4_MOD_BUS_WIDTH 0x00d
#define SPD_DDR4_MOD_BUS_WIDTH_EXT(r) bitx8(r, 4, 3)
#define SPD_DDR4_MOD_BUS_WIDTH_EXT_NONE 0
#define SPD_DDR4_MOD_BUS_WIDTH_EXT_8b 1
#define SPD_DDR4_MOD_BUS_WIDTH_PRI(r) bitx8(r, 2, 0)
#define SPD_DDR4_MOD_BUS_WIDTH_PRI_8b 0
#define SPD_DDR4_MOD_BUS_WIDTH_PRI_16b 1
#define SPD_DDR4_MOD_BUS_WIDTH_PRI_32b 2
#define SPD_DDR4_MOD_BUS_WIDTH_PRI_64b 3
#define SPD_DDR4_MOD_THERM 0x00e
#define SPD_DDR4_MOD_THERM_PRES(r) bitx8(r, 7, 7)
#define SPD_DDR4_TIMEBASE 0x011
#define SPD_DDR4_TIMEBASE_MTB(r) bitx8(r, 3, 2)
#define SPD_DDR4_TIMEBASE_MTB_125ps 0
#define SPD_DDR4_TIMEBASE_FTB(r) bitx8(r, 1, 0)
#define SPD_DDR4_TIMEBASE_FTB_1ps 0
#define SPD_DDR4_MTB_PS 125
#define SPD_DDR4_FTB_PS 1
#define SPD_DDR4_TCKAVG_MIN 0x012
#define SPD_DDR4_TCKAVG_MIN_FINE 0x07d
#define SPD_DDR4_TCKAVG_MAX 0x013
#define SPD_DDR4_TCKAVG_MAX_FINE 0x07c
#define SPD_DDR4_CAS_SUP0 0x014
#define SPD_DDR4_CAS_SUP1 0x015
#define SPD_DDR4_CAS_SUP2 0x016
#define SPD_DDR4_CAS_SUP3 0x017
#define SPD_DDR4_CAS_SUP3_RANGE(r) bitx8(r, 7, 7)
#define SPD_DDR4_CAS_SUP3_RANGE_7 0
#define SPD_DDR4_CAS_SUP3_RANGE_23 1
#define SPD_DDR4_TAA_MIN 0x018
#define SPD_DDR4_TAA_MIN_FINE 0x07b
#define SPD_DDR4_TRCD_MIN 0x019
#define SPD_DDR4_TRCD_MIN_FINE 0x07a
#define SPD_DDR4_TRP_MIN 0x01a
#define SPD_DDR4_TRP_MIN_FINE 0x079
#define SPD_DDR4_RAS_RC_UPPER 0x01b
#define SPD_DDR4_RAS_RC_UPPER_RC(r) bitx8(r, 7, 4)
#define SPD_DDR4_RAS_RC_UPPER_RAS(r) bitx8(r, 3, 0)
#define SPD_DDR4_TRAS_MIN 0x01c
#define SPD_DDR4_TRC_MIN 0x01d
#define SPD_DDR4_TRC_MIN_FINE 0x078
#define SPD_DDR4_TRFC1_MIN_LSB 0x01e
#define SPD_DDR4_TRFC1_MIN_MSB 0x01f
#define SPD_DDR4_TRFC2_MIN_LSB 0x020
#define SPD_DDR4_TRFC2_MIN_MSB 0x021
#define SPD_DDR4_TRFC4_MIN_LSB 0x022
#define SPD_DDR4_TRFC4_MIN_MSB 0x023
#define SPD_DDR4_TFAW_UPPER 0x024
#define SPD_DDR4_TFAW_UPPER_FAW(r) bitx8(r, 3, 0)
#define SPD_DDR4_TFAW 0x025
#define SPD_DDR4_TRRDS_MIN 0x026
#define SPD_DDR4_TRRDS_MIN_FINE 0x077
#define SPD_DDR4_TRRDL_MIN 0x027
#define SPD_DDR4_TRRDL_MIN_FINE 0x076
#define SPD_DDR4_TCCDL_MIN 0x028
#define SPD_DDR4_TCCDL_MIN_FINE 0x075
#define SPD_DDR4_TWR_MIN_UPPER 0x029
#define SPD_DDR4_TWR_MIN_UPPER_TWR(r) bitx8(r, 3, 0)
#define SPD_DDR4_TWR_MIN 0x02a
#define SPD_DDR4_TWRT_UPPER 0x02b
#define SPD_DDR4_TWRT_UPPER_TWRL(r) bitx8(r, 7, 4)
#define SPD_DDR4_TWRT_UPPER_TWRS(r) bitx8(r, 3, 0)
#define SPD_DDR4_TWTRS_MIN 0x02c
#define SPD_DDR4_TWTRL_MIN 0x02d
#define SPD_DDR4_MAP_DQ0 0x03c
#define SPD_DDR4_MAP_DQ4 0x03d
#define SPD_DDR4_MAP_DQ8 0x03e
#define SPD_DDR4_MAP_DQ12 0x03f
#define SPD_DDR4_MAP_DQ16 0x040
#define SPD_DDR4_MAP_DQ20 0x041
#define SPD_DDR4_MAP_DQ24 0x042
#define SPD_DDR4_MAP_DQ28 0x043
#define SPD_DDR4_MAP_CB0 0x044
#define SPD_DDR4_MAP_CB4 0x045
#define SPD_DDR4_MAP_DQ32 0x046
#define SPD_DDR4_MAP_DQ36 0x047
#define SPD_DDR4_MAP_DQ40 0x048
#define SPD_DDR4_MAP_DQ44 0x049
#define SPD_DDR4_MAP_DQ48 0x04a
#define SPD_DDR4_MAP_DQ52 0x04b
#define SPD_DDR4_MAP_DQ56 0x04c
#define SPD_DDR4_MAP_DQ60 0x04d
#define SPD_DDR4_MAP_PKG(r) bitx8(r, 7, 6)
#define SPD_DDR4_MAP_PKG_FLIP 0
#define SPD_DDR4_MAP_NIBBLE(r) bitx8(r, 5, 5)
#define SPD_DDR4_MAP_IDX(r) bitx8(r, 4, 0)
#define SPD_DDR4_MAP_IDX_UNSPEC 0
#define SPD_DDR4_CRC_LSB 0x07e
#define SPD_DDR4_CRC_MSB 0x07f
#define SPD_DDR4_MOD_MFG_ID0 0x140
#define SPD_DDR4_MOD_MFG_ID1 0x141
#define SPD_DDR4_DRAM_MFG_ID0 0x15e
#define SPD_DDR4_DRAM_MFG_ID1 0x15f
#define SPD_DDR4_MOD_MFG_LOC 0x142
#define SPD_DDR4_MOD_MFG_YEAR 0x143
#define SPD_DDR4_MOD_MFG_WEEK 0x144
#define SPD_DDR4_MOD_SN 0x145
#define SPD_DDR4_MOD_SN_LEN 4
#define SPD_DDR4_MOD_PN 0x149
#define SPD_DDR4_MOD_PN_LEN 20
#define SPD_DDR4_MOD_REV 0x15d
#define SPD_DDR4_DRAM_STEP 0x160
#define SPD_DDR4_RDIMM_HEIGHT 0x080
#define SPD_DDR4_RDIMM_HEIGHT_REV(r) bitx8(r, 7, 5)
#define SPD_DDR4_RDIMM_HEIGHT_MM(r) bitx8(r, 4, 0)
#define SPD_DDR4_RDIMM_HEIGHT_LT15MM 0
#define SPD_DDR4_RDIMM_HEIGHT_BASE 15
#define SPD_DDR4_RDIMM_THICK 0x081
#define SPD_DDR4_RDIMM_THICK_BACK(r) bitx8(r, 7, 4)
#define SPD_DDR4_RDIMM_THICK_FRONT(r) bitx8(r, 3, 0)
#define SPD_DDR4_RDIMM_THICK_BASE 1
#define SPD_DDR4_RDIMM_REF 0x082
#define SPD_DDR4_RDIMM_REF_EXT(r) bitx8(r, 7, 7)
#define SPD_DDR4_RDIMM_REF_REV(r) bitx8(r, 6, 5)
#define SPD_DDR4_RDIMM_REV_USE_HEIGHT 3
#define SPD_DDR4_RDIMM_REF_CARD(r) bitx8(r, 4, 0)
#define SPD_DDR4_RDIMM_ATTR 0x083
#define SPD_DDR4_RDIMM_ATTR_TYPE(r) bitx8(r, 7, 4)
#define SPD_DDR4_RDIMM_ATTR_TYPE_RCD01 0
#define SPD_DDR4_RDIMM_ATTR_TYPE_RCD02 1
#define SPD_DDR4_RDIMM_ATTR_NROWS(r) bitx8(r, 3, 2)
#define SPD_DDR4_RDIMM_ATTR_NREGS(r) bitx8(r, 1, 0)
#define SPD_DDR4_RDIMM_THERM 0x084
#define SPD_DDR4_RDIMM_THERM_IMPL(r) bitx8(r, 7, 7)
#define SPD_DDR4_RDIMM_REG_MFG_ID0 0x085
#define SPD_DDR4_RDIMM_REG_MFG_ID1 0x086
#define SPD_DDR4_RDIMM_REV 0x087
#define SPD_DDR4_RDIMM_REV_UNDEF 0xff
#define SPD_DDR4_RDIMM_MAP 0x88
#define SPD_DDR4_RDIMM_MAP_R1(r) bitx8(r, 0, 0)
#define SPD_DDR4_RDIMM_MAP_R1_STD 0
#define SPD_DDR4_RDIMM_MAP_R1_MIRROR 1
#define SPD_DDR4_RDIMM_ODS0 0x89
#define SPD_DDR4_RDIMM_ODS0_CS(r) bitx8(r, 7, 6)
#define SPD_DDR4_RDIMM_ODS0_CA(r) bitx8(r, 5, 4)
#define SPD_DDR4_RDIMM_ODS0_ODT(r) bitx8(r, 3, 2)
#define SPD_DDR4_RDIMM_ODS0_CKE(r) bitx8(r, 1, 0)
#define SPD_DDR4_RDIMM_ODS0_LIGHT 0
#define SPD_DDR4_RDIMM_ODS0_MODERATE 1
#define SPD_DDR4_RDIMM_ODS0_STRONG 2
#define SPD_DDR4_RDIMM_ODS0_VERY_STRONG 3
#define SPD_DDR4_RDIMM_ODS1 0x8a
#define SPD_DDR4_RDIMM_ODS1_SLEW_SUP(r) bitx8(r, 6, 6)
#define SPD_DDR4_RDIMM_ODS1_Y1(r) bitx8(r, 3, 2)
#define SPD_DDR4_RDIMM_ODS1_Y0(r) bitx8(r, 1, 0)
#define SPD_DDR4_BLK1_CRC_START 0x80
#define SPD_DDR4_BLK1_CRC_LSB 0xfe
#define SPD_DDR4_BLK1_CRC_MSB 0xff
#define SPD_DDR4_UDIMM_HEIGHT 0x080
#define SPD_DDR4_UDIMM_THICK 0x081
#define SPD_DDR4_UDIMM_REF 0x082
#define SPD_DDR4_UDIMM_MAP 0x83
#define SPD_DDR4_LRDIMM_HEIGHT 0x080
#define SPD_DDR4_LRDIMM_THICK 0x081
#define SPD_DDR4_LRDIMM_REF 0x082
#define SPD_DDR4_LRDIMM_ATTR 0x083
#define SPD_DDR4_LRDIMM_ATTR_TYPE(r) bitx8(r, 7, 4)
#define SPD_DDR4_LRDIMM_ATTR_TYPE_RCD01_DB01 0
#define SPD_DDR4_LRDIMM_ATTR_TYPE_RCD02_DB02 1
#define SPD_DDR4_LRDIMM_ATTR_NROWS(r) bitx8(r, 3, 2)
#define SPD_DDR4_LRDIMM_ATTR_NREGS(r) bitx8(r, 1, 0)
#define SPD_DDR4_LRDIMM_THERM 0x084
#define SPD_DDR4_LRDIMM_REG_MFG_ID0 0x085
#define SPD_DDR4_LRDIMM_REG_MFG_ID1 0x086
#define SPD_DDR4_LRDIMM_REV 0x087
#define SPD_DDR4_LRDIMM_MAP 0x88
#define SPD_DDR4_LRDIMM_ODS0 0x89
#define SPD_DDR4_LRDIMM_ODS1 0x8a
#define SPD_DDR4_LRDIMM_ODS1_OSRC_SUP(r) bitx8(r, 6, 6)
#define SPD_DDR4_LRDIMM_ODS1_BCK(r) bitx8(r, 5, 5)
#define SPD_DDR4_LRDIMM_ODS1_BCOM(r) bitx8(r, 4, 4)
#define SPD_DDR4_LRDIMM_ODS1_MODERATE 0
#define SPD_DDR4_LRDIMM_ODS1_STRONG 1
#define SPD_DDR4_RDIMM_ODS1_Y1(r) bitx8(r, 3, 2)
#define SPD_DDR4_RDIMM_ODS1_Y0(r) bitx8(r, 1, 0)
#define SPD_DDR4_LRDIMM_DB_REV 0x08b
#define SPD_DDR4_LRDIMM_VREFDQ0 0x08c
#define SPD_DDR4_LRDIMM_VREFDQ1 0x08d
#define SPD_DDR4_LRDIMM_VREFDQ2 0x08e
#define SPD_DDR4_LRDIMM_VREFDQ3 0x08f
#define SPD_DDR4_LRDIMM_VREFDQ_V(r) bitx8(r, 5, 0)
#define SPD_DDR4_LRDIMM_VREFDQ_DB 0x090
#define SPD_DDR4_LRDIMM_MDQ_1866 0x091
#define SPD_DDR4_LRDIMM_MDQ_2400 0x092
#define SPD_DDR4_LRDIMM_MDQ_3200 0x093
#define SPD_DDR4_LRDIMM_MDQ_DS(r) bitx8(r, 6, 4)
#define SPD_DDR4_LRDIMM_MDQ_DS_40R 0
#define SPD_DDR4_LRDIMM_MDQ_DS_34R 1
#define SPD_DDR4_LRDIMM_MDQ_DS_48R 2
#define SPD_DDR4_LRDIMM_MDQ_DS_60R 5
#define SPD_DDR4_LRDIMM_MDQ_RTT(r) bitx8(r, 2, 0)
#define SPD_DDR4_LRDIMM_MDQ_RTT_DIS 0
#define SPD_DDR4_LRDIMM_MDQ_RTT_60R 1
#define SPD_DDR4_LRDIMM_MDQ_RTT_120R 2
#define SPD_DDR4_LRDIMM_MDQ_RTT_40R 3
#define SPD_DDR4_LRDIMM_MDQ_RTT_240R 4
#define SPD_DDR4_LRDIMM_MDQ_RTT_48R 5
#define SPD_DDR4_LRDIMM_MDQ_RTT_80R 6
#define SPD_DDR4_LRDIMM_MDQ_RTT_34R 7
#define SPD_DDR4_LRDIMM_DRAM_DS 0x094
#define SPD_DDR4_LRDIMM_DRAM_DS_3200(r) bitx8(r, 5, 4)
#define SPD_DDR4_LRDIMM_DRAM_DS_2400(r) bitx8(r, 3, 2)
#define SPD_DDR4_LRDIMM_DRAM_DS_1866(r) bitx8(r, 1, 0)
#define SPD_DDR4_LRDIMM_DRAM_DS_34R 0
#define SPD_DDR4_LRDIMM_DRAM_DS_48R 1
#define SPD_DDR4_LRDIMM_ODT_1866 0x095
#define SPD_DDR4_LRDIMM_ODT_2400 0x096
#define SPD_DDR4_LRDIMM_ODT_3200 0x097
#define SPD_DDR4_LRDIMM_ODT_WR(r) bitx8(r, 5, 3)
#define SPD_DDR4_LRDIMM_ODT_WR_DYN_OFF 0
#define SPD_DDR4_LRDIMM_ODT_WR_120R 1
#define SPD_DDR4_LRDIMM_ODT_WR_240R 2
#define SPD_DDR4_LRDIMM_ODT_WR_HIZ 3
#define SPD_DDR4_LRDIMM_ODT_WR_80R 4
#define SPD_DDR4_LRDIMM_ODT_NOM(r) bitx8(r, 2, 0)
#define SPD_DDR4_LRDIMM_ODT_NOM_DIS 0
#define SPD_DDR4_LRDIMM_ODT_NOM_60R 1
#define SPD_DDR4_LRDIMM_ODT_NOM_120R 2
#define SPD_DDR4_LRDIMM_ODT_NOM_40R 3
#define SPD_DDR4_LRDIMM_ODT_NOM_240R 4
#define SPD_DDR4_LRDIMM_ODT_NOM_48R 5
#define SPD_DDR4_LRDIMM_ODT_NOM_80R 6
#define SPD_DDR4_LRDIMM_ODT_NOM_34R 7
#define SPD_DDR4_LRDIMM_PARK_1866 0x098
#define SPD_DDR4_LRDIMM_PARK_2400 0x099
#define SPD_DDR4_LRDIMM_PARK_3200 0x09a
#define SPD_DDR4_LRDIMM_PARK_R23(r) bitx8(r, 5, 3)
#define SPD_DDR4_LRDIMM_PARK_R01(r) bitx8(r, 2, 0)
#define SPD_DDR4_LRDIMM_PARK_DIS 0
#define SPD_DDR4_LRDIMM_PARK_60R 1
#define SPD_DDR4_LRDIMM_PARK_120R 2
#define SPD_DDR4_LRDIMM_PARK_40R 3
#define SPD_DDR4_LRDIMM_PARK_240R 4
#define SPD_DDR4_LRDIMM_PARK_48R 5
#define SPD_DDR4_LRDIMM_PARK_80R 6
#define SPD_DDR4_LRDIMM_PARK_34R 7
#define SPD_DDR4_LRDIMM_VREFDQ_RNG 0x09b
#define SPD_DDR4_LRDIMM_VREFDQ_RNG_DB(r) bitx8(r, 4, 4)
#define SPD_DDR4_LRDIMM_VREFDQ_RNG_R3(r) bitx8(r, 3, 3)
#define SPD_DDR4_LRDIMM_VREFDQ_RNG_R2(r) bitx8(r, 2, 2)
#define SPD_DDR4_LRDIMM_VREFDQ_RNG_R1(r) bitx8(r, 1, 1)
#define SPD_DDR4_LRDIMM_VREFDQ_RNG_R0(r) bitx8(r, 0, 0)
#define SPD_DDR4_LRDIMM_VERFDQ_RNG_1 0
#define SPD_DDR4_LRDIMM_VERFDQ_RNG_2 1
#define SPD_DDR4_LRDIMM_EQ 0x09c
#define SPD_DDR4_LRDIMM_EQ_DFE_SUP(r) bitx8(r, 1, 1)
#define SPD_DDR4_LRDIMM_EQ_GA_SUP(r) bitx8(r, 0, 0)
#ifdef __cplusplus
}
#endif
#endif