From: Divy Le Ray <[email protected]>
Set PM1 internal memory to round robin mode
Signed-off-by: Divy Le Ray <[email protected]>
---
drivers/net/cxgb3/regs.h | 2 ++
drivers/net/cxgb3/t3_hw.c | 2 ++
2 files changed, 4 insertions(+), 0 deletions(-)
diff --git a/drivers/net/cxgb3/regs.h b/drivers/net/cxgb3/regs.h
index 2824278..5e1bc0d 100644
--- a/drivers/net/cxgb3/regs.h
+++ b/drivers/net/cxgb3/regs.h
@@ -1326,6 +1326,7 @@
#define V_D0_WEIGHT(x) ((x) << S_D0_WEIGHT)
#define A_PM1_RX_CFG 0x5c0
+#define A_PM1_RX_MODE 0x5c4
#define A_PM1_RX_INT_ENABLE 0x5d8
@@ -1394,6 +1395,7 @@
#define A_PM1_RX_INT_CAUSE 0x5dc
#define A_PM1_TX_CFG 0x5e0
+#define A_PM1_TX_MODE 0x5e4
#define A_PM1_TX_INT_ENABLE 0x5f8
diff --git a/drivers/net/cxgb3/t3_hw.c b/drivers/net/cxgb3/t3_hw.c
index 23b1a16..13bfbec 100644
--- a/drivers/net/cxgb3/t3_hw.c
+++ b/drivers/net/cxgb3/t3_hw.c
@@ -3189,6 +3189,8 @@ int t3_init_hw(struct adapter *adapter, u32 fw_params)
t3_set_reg_field(adapter, A_PCIX_CFG, 0, F_CLIDECEN);
t3_write_reg(adapter, A_PM1_RX_CFG, 0xffffffff);
+ t3_write_reg(adapter, A_PM1_RX_MODE, 0);
+ t3_write_reg(adapter, A_PM1_TX_MODE, 0);
init_hw_for_avail_ports(adapter, adapter->params.nports);
t3_sge_init(adapter, &adapter->params.sge);
Divy Le Ray wrote:
> From: Divy Le Ray <[email protected]>
>
> Set PM1 internal memory to round robin mode
>
> Signed-off-by: Divy Le Ray <[email protected]>
why?
Jeff Garzik wrote:
>
> Divy Le Ray wrote:
> > From: Divy Le Ray <[email protected]>
> >
> > Set PM1 internal memory to round robin mode
> >
> > Signed-off-by: Divy Le Ray <[email protected]>
>
> why?
>
For multiport adapters, it balances access to this internal memory.
Divy