]> git.ipfire.org Git - ipfire-2.x.git/blame - src/patches/suse-2.6.27.39/patches.drivers/bnx2x-Using-DMAE-to-initialize-the-chip.patch
Imported linux-2.6.27.39 suse/xen patches.
[ipfire-2.x.git] / src / patches / suse-2.6.27.39 / patches.drivers / bnx2x-Using-DMAE-to-initialize-the-chip.patch
CommitLineData
2cb7cef9
BS
1From db434ac6bff0d991d0b60166dc9d6405b873d0f7 Mon Sep 17 00:00:00 2001
2From: Eilon Greenstein <eilong@broadcom.com>
3Date: Mon, 9 Mar 2009 00:52:21 +0000
4Subject: [PATCH] bnx2x: Using DMAE to initialize the chip
5References: bnc#484716
6
7There was a bug, which occasionally caused failure in PRAM initialization after
8the cold boot.
9Also incremented version number to 1.45.27.
10
11Signed-off-by: Vladislav Zolotarov <vladz@broadcom.com>
12Signed-off-by: Eilon Greenstein <eilong@broadcom.com>
13Signed-off-by: David S. Miller <davem@davemloft.net>
14Signed-off-by: Brandon Philips <bphilips@suse.de>
15---
16 drivers/net/bnx2x_init.h | 4 ----
17 drivers/net/bnx2x_main.c | 18 +++++++++---------
18 2 files changed, 9 insertions(+), 13 deletions(-)
19
20--- a/drivers/net/bnx2x_init.h
21+++ b/drivers/net/bnx2x_init.h
22@@ -150,7 +150,6 @@ static void bnx2x_init_ind_wr(struct bnx
23
24 static void bnx2x_write_big_buf(struct bnx2x *bp, u32 addr, u32 len)
25 {
26-#ifdef USE_DMAE
27 int offset = 0;
28
29 if (bp->dmae_ready) {
30@@ -164,9 +163,6 @@ static void bnx2x_write_big_buf(struct b
31 addr + offset, len);
32 } else
33 bnx2x_init_str_wr(bp, addr, bp->gunzip_buf, len);
34-#else
35- bnx2x_init_str_wr(bp, addr, bp->gunzip_buf, len);
36-#endif
37 }
38
39 static void bnx2x_init_fill(struct bnx2x *bp, u32 addr, int fill, u32 len)
40--- a/drivers/net/bnx2x_main.c
41+++ b/drivers/net/bnx2x_main.c
42@@ -57,7 +57,7 @@
43 #include "bnx2x.h"
44 #include "bnx2x_init.h"
45
46-#define DRV_MODULE_VERSION "1.45.26"
47+#define DRV_MODULE_VERSION "1.45.27"
48 #define DRV_MODULE_RELDATE "2009/01/26"
49 #define BNX2X_BC_VER 0x040200
50
51@@ -4038,10 +4038,10 @@ static void bnx2x_zero_sb(struct bnx2x *
52 {
53 int port = BP_PORT(bp);
54
55- bnx2x_init_fill(bp, BAR_USTRORM_INTMEM +
56+ bnx2x_init_fill(bp, USTORM_INTMEM_ADDR +
57 USTORM_SB_HOST_STATUS_BLOCK_OFFSET(port, sb_id), 0,
58 sizeof(struct ustorm_status_block)/4);
59- bnx2x_init_fill(bp, BAR_CSTRORM_INTMEM +
60+ bnx2x_init_fill(bp, CSTORM_INTMEM_ADDR +
61 CSTORM_SB_HOST_STATUS_BLOCK_OFFSET(port, sb_id), 0,
62 sizeof(struct cstorm_status_block)/4);
63 }
64@@ -4095,18 +4095,18 @@ static void bnx2x_zero_def_sb(struct bnx
65 {
66 int func = BP_FUNC(bp);
67
68- bnx2x_init_fill(bp, BAR_USTRORM_INTMEM +
69+ bnx2x_init_fill(bp, TSTORM_INTMEM_ADDR +
70+ TSTORM_DEF_SB_HOST_STATUS_BLOCK_OFFSET(func), 0,
71+ sizeof(struct tstorm_def_status_block)/4);
72+ bnx2x_init_fill(bp, USTORM_INTMEM_ADDR +
73 USTORM_DEF_SB_HOST_STATUS_BLOCK_OFFSET(func), 0,
74 sizeof(struct ustorm_def_status_block)/4);
75- bnx2x_init_fill(bp, BAR_CSTRORM_INTMEM +
76+ bnx2x_init_fill(bp, CSTORM_INTMEM_ADDR +
77 CSTORM_DEF_SB_HOST_STATUS_BLOCK_OFFSET(func), 0,
78 sizeof(struct cstorm_def_status_block)/4);
79- bnx2x_init_fill(bp, BAR_XSTRORM_INTMEM +
80+ bnx2x_init_fill(bp, XSTORM_INTMEM_ADDR +
81 XSTORM_DEF_SB_HOST_STATUS_BLOCK_OFFSET(func), 0,
82 sizeof(struct xstorm_def_status_block)/4);
83- bnx2x_init_fill(bp, BAR_TSTRORM_INTMEM +
84- TSTORM_DEF_SB_HOST_STATUS_BLOCK_OFFSET(func), 0,
85- sizeof(struct tstorm_def_status_block)/4);
86 }
87
88 static void bnx2x_init_def_sb(struct bnx2x *bp,