diff options
author | Vladislav Zolotarov <vladz@broadcom.com> | 2010-02-17 13:35:01 -0800 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2010-02-17 13:35:44 -0800 |
commit | 3359fced77f6b4ba1c7de9deace1d7dfa7217bbc (patch) | |
tree | 0a07404bd7726559afde96901fa02cf48f8ec47b /drivers/net/bnx2x_init_ops.h | |
parent | 2db29fc71b7e6af41aa1fadb67f588846dc461cf (diff) |
bnx2x: Use firmware 5.2.13
Switch to the new firmware version (5.2.13).
Signed-off-by: Vladislav Zolotarov <vladz@broadcom.com>
Signed-off-by: Eilon Greenstein <eilong@broadcom.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/bnx2x_init_ops.h')
-rw-r--r-- | drivers/net/bnx2x_init_ops.h | 13 |
1 files changed, 9 insertions, 4 deletions
diff --git a/drivers/net/bnx2x_init_ops.h b/drivers/net/bnx2x_init_ops.h index 38b970a14fd7..2b1363a6fe78 100644 --- a/drivers/net/bnx2x_init_ops.h +++ b/drivers/net/bnx2x_init_ops.h @@ -2,7 +2,7 @@ * Static functions needed during the initialization. * This file is "included" in bnx2x_main.c. * - * Copyright (c) 2007-2009 Broadcom Corporation + * Copyright (c) 2007-2010 Broadcom Corporation * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -138,11 +138,16 @@ static void bnx2x_write_big_buf_wb(struct bnx2x *bp, u32 addr, u32 len) static void bnx2x_init_wr_wb(struct bnx2x *bp, u32 addr, const u32 *data, u32 len) { + const u32 *old_data = data; + data = (const u32 *)bnx2x_sel_blob(bp, addr, (const u8 *)data); - if (bp->dmae_ready) - VIRT_WR_DMAE_LEN(bp, data, addr, len); - else + if (bp->dmae_ready) { + if (old_data != data) + VIRT_WR_DMAE_LEN(bp, data, addr, len, 1); + else + VIRT_WR_DMAE_LEN(bp, data, addr, len, 0); + } else bnx2x_init_ind_wr(bp, addr, data, len); } |