compress/octeontx: support OCTEON TX2 SoC family
authorMahipal Challa <mchalla@marvell.com>
Mon, 28 Feb 2022 03:40:35 +0000 (09:10 +0530)
committerAkhil Goyal <gakhil@marvell.com>
Fri, 29 Apr 2022 09:36:46 +0000 (11:36 +0200)
The octeontx2 9xxx SoC family support is added.

Signed-off-by: Mahipal Challa <mchalla@marvell.com>
Acked-by: Ashish Gupta <ashishg@marvell.com>
drivers/compress/octeontx/include/zip_regs.h
drivers/compress/octeontx/otx_zip.c
drivers/compress/octeontx/otx_zip.h
drivers/compress/octeontx/otx_zip_pmd.c

index 94a48cd..a7fcccc 100644 (file)
@@ -63,6 +63,18 @@ typedef union {
                uint64_t reserved_49_63        : 15;
 #endif /* Word 0 - End */
        } s;
+
+       struct zip_vqx_sbuf_addr_s9x {
+#if defined(__BIG_ENDIAN_BITFIELD) /* Word 0 - Big Endian */
+               uint64_t reserved_53_63        : 11;
+               uint64_t ptr                   : 46;
+               uint64_t off                   : 7;
+#else /* Word 0 - Little Endian */
+               uint64_t off                   : 7;
+               uint64_t ptr                   : 46;
+               uint64_t reserved_53_63        : 11;
+#endif /* Word 0 - End */
+       } s9x;
 } zip_vqx_sbuf_addr_t;
 
 /**
index a9046ff..11471dc 100644 (file)
@@ -58,7 +58,11 @@ zipvf_q_init(struct zipvf_qp *qp)
        cmdq->iova = iova;
 
        que_sbuf_addr.u = 0ull;
-       que_sbuf_addr.s.ptr = (cmdq->iova >> 7);
+       if (vf->pdev->id.device_id == PCI_DEVICE_ID_OCTEONTX2_ZIPVF)
+               que_sbuf_addr.s9x.ptr = (cmdq->iova >> 7);
+       else
+               que_sbuf_addr.s.ptr = (cmdq->iova >> 7);
+
        zip_reg_write64(vf->vbar0, ZIP_VQ_SBUF_ADDR, que_sbuf_addr.u);
 
        zip_q_enable(qp);
index 118a95d..46c80c8 100644 (file)
@@ -30,6 +30,7 @@ extern int octtx_zip_logtype_driver;
 #define PCI_VENDOR_ID_CAVIUM   0x177D
 /**< PCI device id of ZIP VF */
 #define PCI_DEVICE_ID_OCTEONTX_ZIPVF   0xA037
+#define PCI_DEVICE_ID_OCTEONTX2_ZIPVF  0xA083
 
 /* maximum number of zip vf devices */
 #define ZIP_MAX_VFS 8
index f9b8f7a..dff188e 100644 (file)
@@ -85,7 +85,9 @@ zip_process_op(struct rte_comp_op *op,
                        op->status = RTE_COMP_OP_STATUS_ERROR;
        }
 
+#ifdef ZIP_DBG
        ZIP_PMD_INFO("written %d\n", zresult->s.totalbyteswritten);
+#endif
 
        /* Update op stats */
        switch (op->status) {
@@ -630,6 +632,10 @@ static struct rte_pci_id pci_id_octtx_zipvf_table[] = {
                RTE_PCI_DEVICE(PCI_VENDOR_ID_CAVIUM,
                        PCI_DEVICE_ID_OCTEONTX_ZIPVF),
        },
+       {
+               RTE_PCI_DEVICE(PCI_VENDOR_ID_CAVIUM,
+                       PCI_DEVICE_ID_OCTEONTX2_ZIPVF),
+       },
        {
                .device_id = 0
        },