drivers: espi: npcx: support espi taf rpmc request

This commit adds support for handling espi taf rpmc requests.

Signed-off-by: Tom Chang <CHChang19@nuvoton.com>
This commit is contained in:
Tom Chang 2024-10-04 14:45:45 +08:00 committed by Carles Cufí
commit cbb322937f
6 changed files with 143 additions and 8 deletions

View file

@ -791,6 +791,9 @@ struct espi_reg {
#define NPCX_FLASH_PRTR_HADDR FIELD(12, 15)
#define NPCX_FLASH_TAG_OVR_RPR FIELD(16, 16)
#define NPCX_FLASH_TAG_OVR_WPR FIELD(0, 16)
#define NPCX_FLASH_RPMC_CFG1_CNTR FIELD(0, 4)
#define NPCX_FLASH_RPMC_CFG1_OP1 FIELD(4, 8)
#define NPCX_FLASH_RPMC_CFG1_TRGRPMCSUP FIELD(26, 6)
#define NPCX_ONLY_ESPI_REG1_UNLOCK_REG2 0x55
#define NPCX_ONLY_ESPI_REG1_LOCK_REG2 0
#define NPCX_ONLY_ESPI_REG2_TRANS_END_CONFIG 4

View file

@ -55,6 +55,11 @@ extern "C" {
/* Unsuccessful Only Completion Without Data */
#define CYC_UNSCS_CMP_WITHOUT_DATA_ONLY 0x0E
/* ESPI TAF RPMC OP1 instruction */
#define ESPI_TAF_RPMC_OP1_CMD 0x9B
/* ESPI TAF RPMC OP2 instruction */
#define ESPI_TAF_RPMC_OP2_CMD 0x96
/* Timeout for checking transmit buffer available and no completion was sent */
#define NPCX_FLASH_CHK_TIMEOUT 10000