bool "Use Rx Polling (NAPI) (EXPERIMENTAL)"
depends on IXGB && EXPERIMENTAL
+config S2IO
+ tristate "S2IO 10Gbe XFrame NIC"
+ depends on PCI
+ ---help---
+ This driver supports the 10Gbe XFrame NIC of S2IO.
+ For help regarding driver compilation, installation and
+ tuning please look into ~/drivers/net/s2io/README.txt.
+
+config S2IO_NAPI
+ bool "Use Rx Polling (NAPI) (EXPERIMENTAL)"
+ depends on S2IO && EXPERIMENTAL
+
endmenu
+ source "drivers/net/tokenring/Kconfig"
+
+ source "drivers/net/wireless/Kconfig"
+
+ source "drivers/net/pcmcia/Kconfig"
+
+ source "drivers/net/wan/Kconfig"
+
+ source "drivers/atm/Kconfig"
+
+ source "drivers/s390/net/Kconfig"
-config VETH
+config ISERIES_VETH
tristate "iSeries Virtual Ethernet driver support"
depends on NETDEVICES && PPC_ISERIES
/* ... another address for the host, on the other end of the
* link, gets exported through CDC (see CDC spec table 41)
*/
- random_ether_addr(node_id);
- snprintf (ethaddr, sizeof ethaddr, "%02X%02X%02X%02X%02X%02X",
- node_id [0], node_id [1], node_id [2],
- node_id [3], node_id [4], node_id [5]);
+ if (cdc) {
+ u8 node_id [ETH_ALEN];
+
- get_random_bytes (node_id, sizeof node_id);
- node_id [0] &= 0xfe; // clear multicast bit
- node_id [0] |= 0x02; // set local assignment bit (IEEE802)
++ random_ether_addr(node_id);
+ snprintf (ethaddr, sizeof ethaddr, "%02X%02X%02X%02X%02X%02X",
+ node_id [0], node_id [1], node_id [2],
+ node_id [3], node_id [4], node_id [5]);
+ }
#endif
+ if (rndis) {
+ status = rndis_init();
+ if (status < 0) {
+ dev_err (&gadget->dev, "can't init RNDIS, %d\n",
+ status);
+ goto fail;
+ }
+ }
+
net->change_mtu = eth_change_mtu;
net->get_stats = eth_get_stats;
net->hard_start_xmit = eth_start_xmit;
void netlink_detachskb(struct sock *sk, struct sk_buff *skb);
int netlink_sendskb(struct sock *sk, struct sk_buff *skb, int protocol);
++/* finegrained unicast helpers: */
++struct sock *netlink_getsockbypid(struct sock *ssk, u32 pid);
++struct sock *netlink_getsockbyfilp(struct file *filp);
++int netlink_attachskb(struct sock *sk, struct sk_buff *skb, int nonblock, long timeo);
++void netlink_detachskb(struct sock *sk, struct sk_buff *skb);
++int netlink_sendskb(struct sock *sk, struct sk_buff *skb, int protocol);
++
/*
* skb should fit one page. This choice is good for headerless malloc.
*