diff -ru linux-2.4.3.pristine/drivers/net/tokenring/abyss.c linux-2.4.3/drivers/net/tokenring/abyss.c
--- linux-2.4.3.pristine/drivers/net/tokenring/abyss.c	Fri Feb 16 16:02:36 2001
+++ linux-2.4.3/drivers/net/tokenring/abyss.c	Wed Apr  4 00:46:02 2001
@@ -137,8 +137,7 @@
 	 */
 	dev->base_addr += 0x10;
 		
-	ret = tmsdev_init(dev,0,pdev);
-	/* XXX: should be the max PCI32 DMA max */
+	ret = tmsdev_init(dev, PCI_MAX_ADDRESS, pdev);
 	if (ret) {
 		printk("%s: unable to get memory for dev->priv.\n", 
 		       dev->name);
diff -ru linux-2.4.3.pristine/drivers/net/tokenring/madgemc.c linux-2.4.3/drivers/net/tokenring/madgemc.c
--- linux-2.4.3.pristine/drivers/net/tokenring/madgemc.c	Fri Feb 16 16:02:36 2001
+++ linux-2.4.3/drivers/net/tokenring/madgemc.c	Wed Apr  4 00:46:39 2001
@@ -349,6 +349,7 @@
 			printk(":%2.2x", dev->dev_addr[i]);
 		printk("\n");
 
+		/* XXX is ISA_MAX_ADDRESS correct here? */
 		if (tmsdev_init(dev, ISA_MAX_ADDRESS, NULL)) {
 			printk("%s: unable to get memory for dev->priv.\n", 
 			       dev->name);
diff -ru linux-2.4.3.pristine/drivers/net/tokenring/tms380tr.h linux-2.4.3/drivers/net/tokenring/tms380tr.h
--- linux-2.4.3.pristine/drivers/net/tokenring/tms380tr.h	Tue Mar  6 19:28:34 2001
+++ linux-2.4.3/drivers/net/tokenring/tms380tr.h	Wed Apr  4 00:44:54 2001
@@ -461,7 +461,9 @@
 				  * fragments following.
 				  */
 
+/* XXX is there some better way to do this? */
 #define ISA_MAX_ADDRESS 	0x00ffffff
+#define PCI_MAX_ADDRESS		0xffffffff
 
 #pragma pack(1)
 typedef struct {
diff -ru linux-2.4.3.pristine/drivers/net/tokenring/tmspci.c linux-2.4.3/drivers/net/tokenring/tmspci.c
--- linux-2.4.3.pristine/drivers/net/tokenring/tmspci.c	Fri Feb 16 16:02:36 2001
+++ linux-2.4.3/drivers/net/tokenring/tmspci.c	Thu Apr 19 11:26:11 2001
@@ -142,8 +142,7 @@
 		printk(":%2.2x", dev->dev_addr[i]);
 	printk("\n");
 		
-	ret = tmsdev_init(dev,0, pdev);
-	/* XXX: should be the max PCI32 DMA max */
+	ret = tmsdev_init(dev, PCI_MAX_ADDRESS, pdev);
 	if (ret) {
 		printk("%s: unable to get memory for dev->priv.\n", dev->name);
 		goto err_out_irq;
@@ -165,7 +164,7 @@
 	dev->stop = tms380tr_close;
 
 	ret = register_trdev(dev);
-	if (!ret)
+	if (ret)
 		goto err_out_tmsdev;
 	
 	pci_set_drvdata(pdev, dev);
