summaryrefslogtreecommitdiff
path: root/drivers
diff options
context:
space:
mode:
authorMichael Chan <mchan@broadcom.com>2008-05-02 23:57:26 (GMT)
committerDavid S. Miller <davem@davemloft.net>2008-05-02 23:57:26 (GMT)
commit352f76879ebde543817360ce9c18c973d4300f4f (patch)
treece718b6c2ae33f2ba8b70eef7b02503bd07a58b9 /drivers
parent15b169cccff1503a88f12f104e5657c65c53ade7 (diff)
downloadlinux-fsl-qoriq-352f76879ebde543817360ce9c18c973d4300f4f.tar.xz
bnx2: Zero out context memory for 5709.
We should zero out the context memory for 5709 before each reset. When we resume after suspend for example, the memory may not be zero and the chip may not function correctly. Signed-off-by: Michael Chan <mchan@broadcom.com> Signed-off-by: Benjamin Li <benli@broadcom.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers')
-rw-r--r--drivers/net/bnx2.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/drivers/net/bnx2.c b/drivers/net/bnx2.c
index 0fcea85..942ae06 100644
--- a/drivers/net/bnx2.c
+++ b/drivers/net/bnx2.c
@@ -2222,6 +2222,11 @@ bnx2_init_5709_context(struct bnx2 *bp)
for (i = 0; i < bp->ctx_pages; i++) {
int j;
+ if (bp->ctx_blk[i])
+ memset(bp->ctx_blk[i], 0, BCM_PAGE_SIZE);
+ else
+ return -ENOMEM;
+
REG_WR(bp, BNX2_CTX_HOST_PAGE_TBL_DATA0,
(bp->ctx_blk_mapping[i] & 0xffffffff) |
BNX2_CTX_HOST_PAGE_TBL_DATA0_VALID);