diff options
Diffstat (limited to 'net/appletalk')
-rw-r--r-- | net/appletalk/dev.c | 22 |
1 files changed, 20 insertions, 2 deletions
diff --git a/net/appletalk/dev.c b/net/appletalk/dev.c index 76598445..1237e20 100644 --- a/net/appletalk/dev.c +++ b/net/appletalk/dev.c @@ -19,7 +19,7 @@ static int ltalk_mac_addr(struct net_device *dev, void *addr) 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 @@ void ltalk_setup(struct net_device *dev) 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); |