bitset8
beta = bitset8(beta, 4, 4, SPD_DDR5_NBYTES_BETAHI(data));
beta = bitset8(beta, 4, 4, SPD_LP5_NBYTES_BETAHI(data));
#define PCH_R_HCTL_SET_PEC(r, v) bitset8(r, 7, 7, v)
#define PCH_R_HCTL_SET_START(r, v) bitset8(r, 6, 6, v)
#define PCH_R_HCTL_SET_LAST(r, v) bitset8(r, 5, 5, v)
#define PCH_R_HCTL_SET_CMD(r, v) bitset8(r, 4, 2, v)
#define PCH_R_HCTL_SET_KILL(r, v) bitset8(r, 1, 1, v)
#define PCH_R_HCTL_SET_INT_EN(r, v) bitset8(r, 0, 0, v)
#define PCH_R_TSA_SET_ADDR(r, v) bitset8(r, 7, 1, v)
#define PCH_R_TSA_SET_RW(r, v) bitset8(r, 0, 0, v)
#define PCH_R_RSA_SET_ADDR(r, v) bitset8(r, 6, 0, v)
#define PCH_R_AUXC_SET_E32B(r, v) bitset8(r, 1, 1, v)
#define PCH_R_AUXC_SET_AAC(r, v) bitset8(r, 0, 0, v)
#define PCH_R_SMLC_SET_CLK_OVR(r) bitset8(r, 2, 2, v)
#define PCH_R_SMBC_SET_CLK_OVR(r, v) bitset8(r, 2, 2, v)
#define PCH_R_SCMD_SET_SMB_D(r, v) bitset8(r, 2, 2, v)
#define PCH_R_SCMD_SET_HNW(r, v) bitset8(r, 1, 1, v)
#define PCH_R_SCMD_SET_HNI(r, v) bitset8(r, 0, 0, v)
#define PCH_R_NDA_SET_ADDR(r, v) bitset8(r, 7, 1, v)
#define PCH_R_HCFG_SET_SSRESET(r, v) bitset8(r, 3, 3, v)
#define PCH_R_HCFG_SET_I2CEN(r, v) bitset8(r, 2, 2, v)
#define PCH_R_HCFG_SET_EN(r, v) bitset8(r, 0, 0, v)
#define HUB_R_I2C_CFG_SET_PAGE(r, v) bitset8(r, 2, 0, v)
#define PCA953X_R_INPUT_SET_OUT(r, idx, v) bitset8(r, idx, idx, v)
#define PCA953X_R_POLARITY_SET_POL(r, idx, v) bitset8(r, idx, idx, v)
#define PCA953X_R_CONFIG_SET_CFG(r, idx, v) bitset8(r, idx, idx, v)
#define LTC430X_R_GPIO_SET_US_ACCEL(r, v) bitset8(r, 7, 7, v)
#define LTC430X_R_GPIO_SET_DS_ACCEL(r, v) bitset8(r, 6, 6, v)
#define LTC430X_R_GPIO_SET_OUTPUT(r, idx, v) bitset8(r, 5 - idx, 5 - idx, v)
#define LTC430X_R_CFG_SET_GPIO_DIR(r, idx, v) bitset8(r, 7 - idx, 7 - idx, v)
#define LTC430X_R_CFG_SET_CONN_REQ(r, v) bitset8(r, 5, 5)
#define LTC430X_R_CFG_SET_GPIO_TYPE(r, idx, v) bitset8(r, 4 - idx, 4 - idx, v)
#define LTC430X_R_CFG_SET_MASS_WRITE(r, v) bitset8(r, 2, 2)
#define LTC430X_R_CFG_SET_TIMEOUT(r, v) bitset8(r, 1, 0)
#define LTC430X_R_SWITCH_SET_SWITCH(r, idx, v) bitset8(r, 7 - idx, 7 - idx, v)
#define PCA_954X_SET_CHAN(r, idx, v) bitset8(r, idx, idx, v)
#define LM7X_R_CONF_SET_SHUT(r, v) bitset8(r, 0, 0, v)
#define TMP43X_CFG1_SET_SD(r, v) bitset8(r, 6, 6, v)
#define TMP43X_RES_SET_RES(r, v) bitset8(r, 1, 0, v)
#define TMP43X_BETA_SET_RANGE(r, v) bitset8(r, 3, 0, v)
extern uint8_t bitset8(uint8_t, uint_t, uint_t, uint8_t);