[PATCH] fix ibm ocp ifconfig oops (for real this time)

John Tyner jtyner at cs.ucr.edu
Wed May 15 09:30:09 EST 2002


Here is a shorter patch that actually works. Please disregard my last one.

--- drivers/net/ibm_ocp/ibm_ocp_enet.c	Tue May 14 16:24:17 2002
+++ drivers/net/ibm_ocp/ibm_ocp_enet.c	Tue May 14 16:25:58 2002
@@ -244,14 +244,11 @@
 		fep = (struct fec_enet_private *) EMAC_DEV(ocpdev);
 		emacp = (emac_t *) EMAC_DEV(paddr);
 	} else {
-		if ((emac_driver =
-		     ocp_alloc_dev(sizeof (struct fec_enet_private))) == NULL)
-			return -ENOMEM;
+		emac_driver = ( struct ocp_driver *)dev->priv;
 		strcpy(emac_driver->name, "emac");
 		emac_driver->type = EMAC;
 		/* this returns the next emac number */
 		if ((emac_num = ocp_register(emac_driver)) >= 0) {
-			dev->priv = (void *) emac_driver;
 			emac_driver->priv_index = dev->ifindex;
 			emacp =
 			    (emac_t *) ((struct ocp_driver *) dev->priv)->paddr;
@@ -676,6 +673,10 @@
 		dev->set_multicast_list = &ppc405_enet_set_multicast_list;
 		dev->do_ioctl = &fec_enet_ioctl;
 		emac_dev[curr_emac] = dev;
+
+		if ((dev->priv =
+		     ocp_alloc_dev(sizeof (struct fec_enet_private))) == NULL)
+			return -ENOMEM;
 	}

 	for (i = 0; i < NMII - 1; i++)
-------------- next part --------------
A non-text attachment was scrubbed...
Name: ibm_ocp_enet.c.patch.gz
Type: application/octet-stream
Size: 522 bytes
Desc: 
Url : http://ozlabs.org/pipermail/linuxppc-embedded/attachments/20020514/4903160f/attachment.obj 


More information about the Linuxppc-embedded mailing list