/* Inbound doorbell register Host to ISH */ #define IPC_REG_HOST2ISH_DRBL (IPC_REG_BASE + 0x48) /* Outbound doorbell register ISH to Host */ #define IPC_REG_ISH2HOST_DRBL (IPC_REG_BASE + 0x54) /* ISH to HOST message registers */ #define IPC_REG_ISH2HOST_MSG (IPC_REG_BASE + 0x60) /* HOST to ISH message registers */ #define IPC_REG_HOST2ISH_MSG (IPC_REG_BASE + 0xE0) /* REMAP2 to enable DMA (D3 RCR) */ #define IPC_REG_ISH_RMP2 (IPC_REG_BASE + 0x368)
#define IPC_REG_MAX (IPC_REG_BASE + 0x400)
/*** register bits - HISR ***/ /* bit corresponds HOST2ISH interrupt in PISR and PIMR registers */ #define IPC_INT_HOST2ISH_BIT (1<<0) /***********************************/ /*CHV_A0, CHV_B0*/ /* bit corresponds ISH2HOST interrupt in PISR and PIMR registers */ #define IPC_INT_ISH2HOST_BIT_CHV_AB (1<<3) /*BXT, CHV_K0*/ /* bit corresponds ISH2HOST interrupt in PISR and PIMR registers */ #define IPC_INT_ISH2HOST_BIT_BXT (1<<0) /***********************************/
/* bit corresponds ISH2HOST busy clear interrupt in PIMR register */ #define IPC_INT_ISH2HOST_CLR_MASK_BIT (1<<11)
/* offset of ISH2HOST busy clear interrupt in IPC_BUSY_CLR register */ #define IPC_INT_ISH2HOST_CLR_OFFS (0)
/* bit corresponds ISH2HOST busy clear interrupt in IPC_BUSY_CLR register */ #define IPC_INT_ISH2HOST_CLR_BIT (1<<IPC_INT_ISH2HOST_CLR_OFFS)
/* bit corresponds busy bit in doorbell registers */ #define IPC_DRBL_BUSY_OFFS (31) #define IPC_DRBL_BUSY_BIT (1<<IPC_DRBL_BUSY_OFFS)
#define IPC_HOST_OWNS_MSG_OFFS (30)
/* * A0: bit means that host owns MSGnn registers and is reading them. * ISH FW may not write to them
*/ #define IPC_HOST_OWNS_MSG_BIT (1<<IPC_HOST_OWNS_MSG_OFFS)
/* * Host status bits (HOSTCOMM)
*/ /* bit corresponds host ready bit in Host Status Register (HOST_COMM) */ #define IPC_HOSTCOMM_READY_OFFS (7) #define IPC_HOSTCOMM_READY_BIT (1<<IPC_HOSTCOMM_READY_OFFS)
#define IPC_HOST2ISH_BUSYCLEAR_MASK_OFFS_BXT (8) #define IPC_HOST2ISH_BUSYCLEAR_MASK_BIT \
(1<<IPC_HOST2ISH_BUSYCLEAR_MASK_OFFS_BXT) /***********************************/ /* * both Host and ISH have ILUP at bit 0 * bit corresponds host ready bit in both status registers
*/ #define IPC_ILUP_OFFS (0) #define IPC_ILUP_BIT (1<<IPC_ILUP_OFFS)
/* * ISH FW status bits in ISH FW Status Register
*/ #define IPC_ISH_FWSTS_SHIFT 12 #define IPC_ISH_FWSTS_MASK GENMASK(15, 12) #define IPC_GET_ISH_FWSTS(status) \
(((status) & IPC_ISH_FWSTS_MASK) >> IPC_ISH_FWSTS_SHIFT)
/* bit corresponds host ready bit in ISH FW Status Register */ #define IPC_ISH_ISHTP_READY_OFFS (1) #define IPC_ISH_ISHTP_READY_BIT (1<<IPC_ISH_ISHTP_READY_OFFS)
#define IPC_RMP2_DMA_ENABLED 0x1 /* Value to enable DMA, per D3 RCR */
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.