Skip to contentSkip to conversation

add alloc_ltalkdev

PATCH Applied Christoph Hellwig 3 participants 3 messages May 4, 2005 – May 5, 2005

Subsystems (2)
lore
Share & tools
lore
#0 lore raw

PATCH 1/1 add alloc_ltalkdev

this matches the API used by other link layer like ethernet or token ring.

drivers/net/appletalk/cops.c (mode:100644) renamed from drivers/net/appletalk/cops.c (mode:100644 sha1:2161c2d585f0869e57ebfe101a49686f5ea36b4b) +2 -2
Index: drivers/net/appletalk/cops.c
===================================================================
@@ -65,7 +65,7 @@
 #include <linux/etherdevice.h>
 #include <linux/skbuff.h>
 #include <linux/if_arp.h>
-#include <linux/if_ltalk.h>	/* For ltalk_setup() */
+#include <linux/if_ltalk.h>
 #include <linux/delay.h>	/* For udelay() */
 #include <linux/atalk.h>
 #include <linux/spinlock.h>
@@ -223,7 +223,7 @@
 	int base_addr;
 	int err = 0;
 
-	dev = alloc_netdev(sizeof(struct cops_local), "lt%d", ltalk_setup);
+	dev = alloc_ltalkdev(sizeof(struct cops_local));
 	if (!dev)
 		return ERR_PTR(-ENOMEM);
 
drivers/net/appletalk/ltpc.c (mode:100644) renamed from drivers/net/appletalk/ltpc.c (mode:100644 sha1:ad8e943231a1c3a93cb769fb3d1fad23baa40ac6) +1 -1
Index: drivers/net/appletalk/ltpc.c
===================================================================
@@ -1039,7 +1039,7 @@
 	unsigned long f;
 	unsigned long timeout;
 
-	dev = alloc_netdev(sizeof(struct ltpc_private), "lt%d", ltalk_setup);
+	dev = alloc_ltalkdev(sizeof(struct ltpc_private));
 	if (!dev)
 		goto out;
 
include/linux/if_ltalk.h (mode:100644) renamed from include/linux/if_ltalk.h (mode:100644 sha1:e75e832b7ff0dd56d79bb07029a89a16c067afa2) +1 -1
Index: include/linux/if_ltalk.h
===================================================================
@@ -6,7 +6,7 @@
 #define LTALK_ALEN		1
 
 #ifdef __KERNEL__
-extern void ltalk_setup(struct net_device *);
+extern struct net_device *alloc_ltalkdev(int sizeof_priv);
 #endif
 
 #endif
net/appletalk/dev.c (mode:100644) renamed from net/appletalk/dev.c (mode:100644 sha1:76598445d84b1591279ea3467b68ebe119bb3684) +20 -2
Index: net/appletalk/dev.c
===================================================================
@@ -19,7 +19,7 @@
 	return -EINVAL;
 }
 
-void ltalk_setup(struct net_device *dev)
+static void ltalk_setup(struct net_device *dev)
 {
 	/* Fill in the fields of the device structure with localtalk-generic values. */
 	
@@ -40,4 +40,22 @@
 
 	dev->flags		= IFF_BROADCAST|IFF_MULTICAST|IFF_NOARP;
 }
-EXPORT_SYMBOL(ltalk_setup);
+
+/**
+ * alloc_ltalkdev - Allocates and sets up an localtalk device
+ * @sizeof_priv: Size of additional driver-private structure to be allocated
+ *	for this localtalk device
+ *
+ * Fill in the fields of the device structure with localtalk-generic
+ * values. Basically does everything except registering the device.
+ *
+ * Constructs a new net device, complete with a private data area of
+ * size @sizeof_priv.  A 32-byte (not bit) alignment is enforced for
+ * this private data area.
+ */
+
+struct net_device *alloc_ltalkdev(int sizeof_priv)
+{
+	return alloc_netdev(sizeof_priv, "lt%d", ltalk_setup);
+}
+EXPORT_SYMBOL(alloc_ltalkdev);