
From: "Jochen Karrer" <j.karrer@lightmaze.com>

Based on a patch from Sascha Hauer <s.hauer@pengutronix.de>

This patch fixes two bugs in the dm9000 network driver:

- Don't read one byte too much in 8bit mode.
- release correct resource

Signed-off-by: Andrew Morton <akpm@osdl.org>
---

 drivers/net/dm9000.c |    7 ++++---
 1 files changed, 4 insertions(+), 3 deletions(-)

diff -puN drivers/net/dm9000.c~dm9000-network-driver-bugfix-2 drivers/net/dm9000.c
--- 25/drivers/net/dm9000.c~dm9000-network-driver-bugfix-2	2005-06-21 00:42:40.000000000 -0700
+++ 25-akpm/drivers/net/dm9000.c	2005-06-21 00:42:40.000000000 -0700
@@ -224,7 +224,7 @@ static void dm9000_outblk_32bit(void __i
 
 static void dm9000_inblk_8bit(void __iomem *reg, void *data, int count)
 {
-	readsb(reg, data, count+1);
+	readsb(reg, data, count);
 }
 
 
@@ -363,8 +363,8 @@ dm9000_release_board(struct platform_dev
 		kfree(db->data_req);
 	}
 
-	if (db->addr_res != NULL) {
-		release_resource(db->data_req);
+	if (db->addr_req != NULL) {
+		release_resource(db->addr_req);
 		kfree(db->addr_req);
 	}
 }
@@ -526,6 +526,7 @@ dm9000_probe(struct device *dev)
 
 	if (id_val != DM9000_ID) {
 		printk("%s: wrong id: 0x%08x\n", CARDNAME, id_val);
+		ret = -ENODEV;
 		goto release;
 	}
 
_
