aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/ethernet/amd/a2065.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/net/ethernet/amd/a2065.c')
-rw-r--r--drivers/net/ethernet/amd/a2065.c13
1 files changed, 8 insertions, 5 deletions
diff --git a/drivers/net/ethernet/amd/a2065.c b/drivers/net/ethernet/amd/a2065.c
index 0866e7627433..56139184b801 100644
--- a/drivers/net/ethernet/amd/a2065.c
+++ b/drivers/net/ethernet/amd/a2065.c
@@ -57,6 +57,7 @@
57#include <linux/zorro.h> 57#include <linux/zorro.h>
58#include <linux/bitops.h> 58#include <linux/bitops.h>
59 59
60#include <asm/byteorder.h>
60#include <asm/irq.h> 61#include <asm/irq.h>
61#include <asm/amigaints.h> 62#include <asm/amigaints.h>
62#include <asm/amigahw.h> 63#include <asm/amigahw.h>
@@ -678,6 +679,7 @@ static int a2065_init_one(struct zorro_dev *z,
678 unsigned long base_addr = board + A2065_LANCE; 679 unsigned long base_addr = board + A2065_LANCE;
679 unsigned long mem_start = board + A2065_RAM; 680 unsigned long mem_start = board + A2065_RAM;
680 struct resource *r1, *r2; 681 struct resource *r1, *r2;
682 u32 serial;
681 int err; 683 int err;
682 684
683 r1 = request_mem_region(base_addr, sizeof(struct lance_regs), 685 r1 = request_mem_region(base_addr, sizeof(struct lance_regs),
@@ -702,6 +704,7 @@ static int a2065_init_one(struct zorro_dev *z,
702 r1->name = dev->name; 704 r1->name = dev->name;
703 r2->name = dev->name; 705 r2->name = dev->name;
704 706
707 serial = be32_to_cpu(z->rom.er_SerialNumber);
705 dev->dev_addr[0] = 0x00; 708 dev->dev_addr[0] = 0x00;
706 if (z->id != ZORRO_PROD_AMERISTAR_A2065) { /* Commodore */ 709 if (z->id != ZORRO_PROD_AMERISTAR_A2065) { /* Commodore */
707 dev->dev_addr[1] = 0x80; 710 dev->dev_addr[1] = 0x80;
@@ -710,11 +713,11 @@ static int a2065_init_one(struct zorro_dev *z,
710 dev->dev_addr[1] = 0x00; 713 dev->dev_addr[1] = 0x00;
711 dev->dev_addr[2] = 0x9f; 714 dev->dev_addr[2] = 0x9f;
712 } 715 }
713 dev->dev_addr[3] = (z->rom.er_SerialNumber >> 16) & 0xff; 716 dev->dev_addr[3] = (serial >> 16) & 0xff;
714 dev->dev_addr[4] = (z->rom.er_SerialNumber >> 8) & 0xff; 717 dev->dev_addr[4] = (serial >> 8) & 0xff;
715 dev->dev_addr[5] = z->rom.er_SerialNumber & 0xff; 718 dev->dev_addr[5] = serial & 0xff;
716 dev->base_addr = ZTWO_VADDR(base_addr); 719 dev->base_addr = (unsigned long)ZTWO_VADDR(base_addr);
717 dev->mem_start = ZTWO_VADDR(mem_start); 720 dev->mem_start = (unsigned long)ZTWO_VADDR(mem_start);
718 dev->mem_end = dev->mem_start + A2065_RAM_SIZE; 721 dev->mem_end = dev->mem_start + A2065_RAM_SIZE;
719 722
720 priv->ll = (volatile struct lance_regs *)dev->base_addr; 723 priv->ll = (volatile struct lance_regs *)dev->base_addr;