On Fri, Apr 19, 2024 at 12:22 PM Anoob Joseph <ano...@marvell.com> wrote: > > Add ODM registers and structures. Add mailbox structs as well. > > Signed-off-by: Anoob Joseph <ano...@marvell.com> > Signed-off-by: Gowrishankar Muthukrishnan <gmuthukri...@marvell.com> > Signed-off-by: Vidya Sagar Velumuri <vvelum...@marvell.com> > --- > drivers/dma/odm/odm.h | 116 +++++++++++++++++++++++++++++++++++++ > drivers/dma/odm/odm_priv.h | 49 ++++++++++++++++ > 2 files changed, 165 insertions(+) > create mode 100644 drivers/dma/odm/odm_priv.h > > diff --git a/drivers/dma/odm/odm.h b/drivers/dma/odm/odm.h > index aeeb6f9e9a..7564ffbed4 100644 > --- a/drivers/dma/odm/odm.h > +++ b/drivers/dma/odm/odm.h > @@ -9,6 +9,47 @@ > > extern int odm_logtype; > > +/* ODM VF register offsets from VF_BAR0 */ > +#define ODM_VDMA_EN(x) (0x00 | (x << 3)) > +#define ODM_VDMA_REQQ_CTL(x) (0x80 | (x << 3)) > +#define ODM_VDMA_DBELL(x) (0x100 | (x << 3)) > +#define ODM_VDMA_RING_CFG(x) (0x180 | (x << 3)) > +#define ODM_VDMA_IRING_BADDR(x) (0x200 | (x << 3)) > +#define ODM_VDMA_CRING_BADDR(x) (0x280 | (x << 3)) > +#define ODM_VDMA_COUNTS(x) (0x300 | (x << 3)) > +#define ODM_VDMA_IRING_NADDR(x) (0x380 | (x << 3)) > +#define ODM_VDMA_CRING_NADDR(x) (0x400 | (x << 3)) > +#define ODM_VDMA_IRING_DBG(x) (0x480 | (x << 3)) > +#define ODM_VDMA_CNT(x) (0x580 | (x << 3)) > +#define ODM_VF_INT (0x1000) > +#define ODM_VF_INT_W1S (0x1008) > +#define ODM_VF_INT_ENA_W1C (0x1010) > +#define ODM_VF_INT_ENA_W1S (0x1018) > +#define ODM_MBOX_VF_PF_DATA(i) (0x2000 | (i << 3)) > +
Newline may not be needed here. > +#define ODM_MBOX_RETRY_CNT (0xfffffff) > +#define ODM_MBOX_ERR_CODE_MAX (0xf) > +#define ODM_IRING_IDLE_WAIT_CNT (0xfffffff) > + > +/** > + * Enumeration odm_hdr_xtype_e > + * > + * ODM Transfer Type Enumeration > + * Enumerates the pointer type in ODM_DMA_INSTR_HDR_S[XTYPE] > + */ > +#define ODM_XTYPE_INTERNAL 2 > +#define ODM_XTYPE_FILL0 4 > +#define ODM_XTYPE_FILL1 5 > + > +/** > + * ODM Header completion type enumeration > + * Enumerates the completion type in ODM_DMA_INSTR_HDR_S[CT] > + */ > +#define ODM_HDR_CT_CW_CA 0x0 > +#define ODM_HDR_CT_CW_NC 0x1 > + > +#define ODM_MAX_QUEUES_PER_DEV 16 > + > #define odm_err(...) > \ > rte_log(RTE_LOG_ERR, odm_logtype, > \ > RTE_FMT("%s(): %u" RTE_FMT_HEAD(__VA_ARGS__, ), __func__, > __LINE__, \ > @@ -18,6 +59,81 @@ extern int odm_logtype; > RTE_FMT("%s(): %u" RTE_FMT_HEAD(__VA_ARGS__, ), __func__, > __LINE__, \ > RTE_FMT_TAIL(__VA_ARGS__, ))) > > +/** Non Doxygen comment across series, just keeping /* */ is enough.