qlge: bugfix: Add flash offset for second port.

Without this the 2nd port gets first ports MAC addr.

Signed-off-by: Ron Mercer <ron.mercer@qlogic.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
Ron Mercer 2009-02-02 13:54:15 -08:00 committed by David S. Miller
parent 26351479ed
commit e78f5fa7cc

View File

@ -670,12 +670,19 @@ static int ql_get_flash_params(struct ql_adapter *qdev)
int i; int i;
int status; int status;
__le32 *p = (__le32 *)&qdev->flash; __le32 *p = (__le32 *)&qdev->flash;
u32 offset = 0;
/* Second function's parameters follow the first
* function's.
*/
if (qdev->func)
offset = sizeof(qdev->flash) / sizeof(u32);
if (ql_sem_spinlock(qdev, SEM_FLASH_MASK)) if (ql_sem_spinlock(qdev, SEM_FLASH_MASK))
return -ETIMEDOUT; return -ETIMEDOUT;
for (i = 0; i < sizeof(qdev->flash) / sizeof(u32); i++, p++) { for (i = 0; i < sizeof(qdev->flash) / sizeof(u32); i++, p++) {
status = ql_read_flash_word(qdev, i, p); status = ql_read_flash_word(qdev, i+offset, p);
if (status) { if (status) {
QPRINTK(qdev, IFUP, ERR, "Error reading flash.\n"); QPRINTK(qdev, IFUP, ERR, "Error reading flash.\n");
goto exit; goto exit;