From 631ae320a4123898927ab1eb32ad81274a713488 Mon Sep 17 00:00:00 2001 From: Stephen Hemminger Date: Tue, 6 Jun 2006 10:11:14 -0700 Subject: [PATCH] skge: dont allow bad hardware address from ROM Sometimes boards don't reset properly, and the address read out of the EEPROM is zero. Stop the insanity before the device gets registered. Signed-off-by: Stephen Hemminger Signed-off-by: Jeff Garzik --- drivers/net/skge.c | 8 ++++++++ 1 file changed, 8 insertions(+) (limited to 'drivers/net/skge.c') diff --git a/drivers/net/skge.c b/drivers/net/skge.c index f377c259a398..5044f45023a4 100644 --- a/drivers/net/skge.c +++ b/drivers/net/skge.c @@ -3362,6 +3362,14 @@ static int __devinit skge_probe(struct pci_dev *pdev, if ((dev = skge_devinit(hw, 0, using_dac)) == NULL) goto err_out_led_off; + if (!is_valid_ether_addr(dev->dev_addr)) { + printk(KERN_ERR PFX "%s: bad (zero?) ethernet address in rom\n", + pci_name(pdev)); + err = -EIO; + goto err_out_free_netdev; + } + + err = register_netdev(dev); if (err) { printk(KERN_ERR PFX "%s: cannot register net device\n", -- cgit v1.2.1