Changeset View
Changeset View
Standalone View
Standalone View
head/sys/dev/ntb/if_ntb/if_ntb.c
Show First 20 Lines • Show All 166 Lines • ▼ Show 20 Lines | taskqueue_start_threads(&q->tx_tq, 1, PI_NET, "%s txq%d", | ||||
device_get_nameunit(dev), i); | device_get_nameunit(dev), i); | ||||
callout_init(&q->queue_full, 1); | callout_init(&q->queue_full, 1); | ||||
} | } | ||||
sc->num_queues = i; | sc->num_queues = i; | ||||
device_printf(dev, "%d queue(s)\n", sc->num_queues); | device_printf(dev, "%d queue(s)\n", sc->num_queues); | ||||
if_setinitfn(ifp, ntb_net_init); | if_setinitfn(ifp, ntb_net_init); | ||||
if_setsoftc(ifp, sc); | if_setsoftc(ifp, sc); | ||||
if_setflags(ifp, IFF_BROADCAST | IFF_SIMPLEX | IFF_MULTICAST | | if_setflags(ifp, IFF_BROADCAST | IFF_SIMPLEX | IFF_MULTICAST); | ||||
IFF_NEEDSEPOCH); | |||||
if_setioctlfn(ifp, ntb_ioctl); | if_setioctlfn(ifp, ntb_ioctl); | ||||
if_settransmitfn(ifp, ntb_transmit); | if_settransmitfn(ifp, ntb_transmit); | ||||
if_setqflushfn(ifp, ntb_qflush); | if_setqflushfn(ifp, ntb_qflush); | ||||
create_random_local_eui48(sc->eaddr); | create_random_local_eui48(sc->eaddr); | ||||
ether_ifattach(ifp, sc->eaddr); | ether_ifattach(ifp, sc->eaddr); | ||||
if_setcapabilities(ifp, IFCAP_HWCSUM | IFCAP_HWCSUM_IPV6 | | if_setcapabilities(ifp, IFCAP_HWCSUM | IFCAP_HWCSUM_IPV6 | | ||||
IFCAP_JUMBO_MTU | IFCAP_LINKSTATE); | IFCAP_JUMBO_MTU | IFCAP_LINKSTATE); | ||||
if_setcapenable(ifp, IFCAP_JUMBO_MTU | IFCAP_LINKSTATE); | if_setcapenable(ifp, IFCAP_JUMBO_MTU | IFCAP_LINKSTATE); | ||||
▲ Show 20 Lines • Show All 330 Lines • Show Last 20 Lines |