net/thunderx: update sq config register field
authorJerin Jacob <jerin.jacob@caviumnetworks.com>
Tue, 11 Jul 2017 13:54:26 +0000 (19:24 +0530)
committerFerruh Yigit <ferruh.yigit@intel.com>
Wed, 19 Jul 2017 08:09:13 +0000 (11:09 +0300)
cq_limit field is added in cn88xx-pass2 and subsequent
versions. Reflect the change in the sq_config structure.
This change is backward compatible as the old pass versions
ignore this field.

Signed-off-by: Jerin Jacob <jerin.jacob@caviumnetworks.com>
drivers/net/thunderx/base/nicvf_hw.c
drivers/net/thunderx/base/nicvf_hw_defs.h

index d10d2c0..2634285 100644 (file)
@@ -586,6 +586,7 @@ nicvf_qset_sq_config(struct nicvf *nic, uint16_t qidx, struct nicvf_txq *txq)
        nicvf_queue_reg_write(nic, NIC_QSET_SQ_0_7_BASE, qidx, txq->phys);
 
        /* Enable send queue  & set queue size */
+       sq_cfg.cq_limit = 0;
        sq_cfg.ena = 1;
        sq_cfg.reset = 0;
        sq_cfg.ldwb = 0;
index b77f4d4..0fe673e 100644 (file)
@@ -1084,7 +1084,8 @@ struct cq_cfg { union { struct {
 
 struct sq_cfg { union { struct {
 #if NICVF_BYTE_ORDER == NICVF_BIG_ENDIAN
-       uint64_t reserved_20_63:44;
+       uint64_t reserved_32_63:32;
+       uint64_t cq_limit:8;
        uint64_t ena:1;
        uint64_t reserved_18_18:1;
        uint64_t reset:1;
@@ -1102,7 +1103,8 @@ struct sq_cfg { union { struct {
        uint64_t reset:1;
        uint64_t reserved_18_18:1;
        uint64_t ena:1;
-       uint64_t reserved_20_63:44;
+       uint64_t cq_limit:8;
+       uint64_t reserved_32_63:32;
 #endif
        };
        uint64_t value;