Merge tag 'for-v4.4' of git://git.kernel.org/pub/scm/linux/kernel/git/sre/linux-power...
[firefly-linux-kernel-4.4.55.git] / net / 6lowpan / core.c
1 /* This program is free software; you can redistribute it and/or modify
2  * it under the terms of the GNU General Public License version 2
3  * as published by the Free Software Foundation.
4  *
5  * This program is distributed in the hope that it will be useful,
6  * but WITHOUT ANY WARRANTY; without even the implied warranty of
7  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
8  * GNU General Public License for more details.
9  *
10  * Authors:
11  * (C) 2015 Pengutronix, Alexander Aring <aar@pengutronix.de>
12  */
13
14 #include <linux/module.h>
15
16 #include <net/6lowpan.h>
17
18 void lowpan_netdev_setup(struct net_device *dev, enum lowpan_lltypes lltype)
19 {
20         dev->addr_len = EUI64_ADDR_LEN;
21         dev->type = ARPHRD_6LOWPAN;
22         dev->mtu = IPV6_MIN_MTU;
23         dev->priv_flags |= IFF_NO_QUEUE;
24
25         lowpan_priv(dev)->lltype = lltype;
26 }
27 EXPORT_SYMBOL(lowpan_netdev_setup);
28
29 static int __init lowpan_module_init(void)
30 {
31         request_module_nowait("ipv6");
32
33         request_module_nowait("nhc_dest");
34         request_module_nowait("nhc_fragment");
35         request_module_nowait("nhc_hop");
36         request_module_nowait("nhc_ipv6");
37         request_module_nowait("nhc_mobility");
38         request_module_nowait("nhc_routing");
39         request_module_nowait("nhc_udp");
40
41         return 0;
42 }
43 module_init(lowpan_module_init);
44
45 MODULE_LICENSE("GPL");