qed: Cache alignemnt padding to match host
Improve PCI performance by adjusting padding sizes to match those of the host machine's cacheline. Signed-off-by: Yuval Mintz <Yuval.Mintz@cavium.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
9790c35e96
commit
fc6575bc49
|
@ -1227,6 +1227,10 @@ static void qed_init_cache_line_size(struct qed_hwfn *p_hwfn,
|
|||
L1_CACHE_BYTES, wr_mbs);
|
||||
|
||||
STORE_RT_REG(p_hwfn, PGLUE_REG_B_CACHE_LINE_SIZE_RT_OFFSET, val);
|
||||
if (val > 0) {
|
||||
STORE_RT_REG(p_hwfn, PSWRQ2_REG_DRAM_ALIGN_WR_RT_OFFSET, val);
|
||||
STORE_RT_REG(p_hwfn, PSWRQ2_REG_DRAM_ALIGN_RD_RT_OFFSET, val);
|
||||
}
|
||||
}
|
||||
|
||||
static int qed_hw_init_common(struct qed_hwfn *p_hwfn,
|
||||
|
@ -1433,8 +1437,15 @@ qed_hw_init_pf_doorbell_bar(struct qed_hwfn *p_hwfn, struct qed_ptt *p_ptt)
|
|||
static int qed_hw_init_port(struct qed_hwfn *p_hwfn,
|
||||
struct qed_ptt *p_ptt, int hw_mode)
|
||||
{
|
||||
return qed_init_run(p_hwfn, p_ptt, PHASE_PORT,
|
||||
p_hwfn->port_id, hw_mode);
|
||||
int rc = 0;
|
||||
|
||||
rc = qed_init_run(p_hwfn, p_ptt, PHASE_PORT, p_hwfn->port_id, hw_mode);
|
||||
if (rc)
|
||||
return rc;
|
||||
|
||||
qed_wr(p_hwfn, p_ptt, PGLUE_B_REG_MASTER_WRITE_PAD_ENABLE, 0);
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
static int qed_hw_init_pf(struct qed_hwfn *p_hwfn,
|
||||
|
|
|
@ -1559,6 +1559,7 @@
|
|||
#define PGLUE_B_REG_PGL_ADDR_EC_F0_K2 0x2aaf9cUL
|
||||
#define PGLUE_B_REG_PGL_ADDR_F0_F0_K2 0x2aafa0UL
|
||||
#define PGLUE_B_REG_PGL_ADDR_F4_F0_K2 0x2aafa4UL
|
||||
#define PGLUE_B_REG_MASTER_WRITE_PAD_ENABLE 0x2aae30UL
|
||||
#define NIG_REG_TSGEN_FREECNT_UPDATE_K2 0x509008UL
|
||||
#define CNIG_REG_NIG_PORT0_CONF_K2 0x218200UL
|
||||
|
||||
|
|
Loading…
Reference in New Issue