Lines Matching refs:einit
136 struct ifnet_init_eparams einit; in ifnet_allocate_common() local
138 bzero(&einit, sizeof(einit)); in ifnet_allocate_common()
140 einit.ver = IFNET_INIT_CURRENT_VERSION; in ifnet_allocate_common()
141 einit.len = sizeof(einit); in ifnet_allocate_common()
142 einit.flags = IFNET_INIT_LEGACY | IFNET_INIT_NX_NOAUTO; in ifnet_allocate_common()
144 einit.flags |= IFNET_INIT_ALLOC_KPI; in ifnet_allocate_common()
146 einit.uniqueid = init->uniqueid; in ifnet_allocate_common()
147 einit.uniqueid_len = init->uniqueid_len; in ifnet_allocate_common()
148 einit.name = init->name; in ifnet_allocate_common()
149 einit.unit = init->unit; in ifnet_allocate_common()
150 einit.family = init->family; in ifnet_allocate_common()
151 einit.type = init->type; in ifnet_allocate_common()
152 einit.output = init->output; in ifnet_allocate_common()
153 einit.demux = init->demux; in ifnet_allocate_common()
154 einit.add_proto = init->add_proto; in ifnet_allocate_common()
155 einit.del_proto = init->del_proto; in ifnet_allocate_common()
156 einit.check_multi = init->check_multi; in ifnet_allocate_common()
157 einit.framer = init->framer; in ifnet_allocate_common()
158 einit.softc = init->softc; in ifnet_allocate_common()
159 einit.ioctl = init->ioctl; in ifnet_allocate_common()
160 einit.set_bpf_tap = init->set_bpf_tap; in ifnet_allocate_common()
161 einit.detach = init->detach; in ifnet_allocate_common()
162 einit.event = init->event; in ifnet_allocate_common()
163 einit.broadcast_addr = init->broadcast_addr; in ifnet_allocate_common()
164 einit.broadcast_len = init->broadcast_len; in ifnet_allocate_common()
166 return ifnet_allocate_extended(&einit, ifp); in ifnet_allocate_common()
210 struct ifnet_init_eparams einit; in ifnet_allocate_extended() local
215 einit = *einit0; in ifnet_allocate_extended()
217 if (einit.ver != IFNET_INIT_CURRENT_VERSION || in ifnet_allocate_extended()
218 einit.len < sizeof(einit)) { in ifnet_allocate_extended()
222 if (einit.family == 0 || einit.name == NULL || in ifnet_allocate_extended()
223 strlen(einit.name) >= IFNAMSIZ || in ifnet_allocate_extended()
224 (einit.type & 0xFFFFFF00) != 0 || einit.type == 0) { in ifnet_allocate_extended()
230 if ((einit.tx_headroom & 0x7) != 0) { in ifnet_allocate_extended()
233 if ((einit.flags & IFNET_INIT_SKYWALK_NATIVE) == 0) { in ifnet_allocate_extended()
238 if ((einit.flags & IFNET_INIT_IF_ADV) != 0) { in ifnet_allocate_extended()
244 if (einit.flags & IFNET_INIT_LEGACY) { in ifnet_allocate_extended()
246 if (einit.flags & IFNET_INIT_SKYWALK_NATIVE) { in ifnet_allocate_extended()
250 if (einit.output == NULL || in ifnet_allocate_extended()
251 (einit.flags & IFNET_INIT_INPUT_POLL)) { in ifnet_allocate_extended()
254 einit.pre_enqueue = NULL; in ifnet_allocate_extended()
255 einit.start = NULL; in ifnet_allocate_extended()
256 einit.output_ctl = NULL; in ifnet_allocate_extended()
257 einit.output_sched_model = IFNET_SCHED_MODEL_NORMAL; in ifnet_allocate_extended()
258 einit.input_poll = NULL; in ifnet_allocate_extended()
259 einit.input_ctl = NULL; in ifnet_allocate_extended()
268 if (einit.flags & IFNET_INIT_SKYWALK_NATIVE) { in ifnet_allocate_extended()
269 if (einit.start != NULL) { in ifnet_allocate_extended()
273 ostart = einit.start = ifp_if_start; in ifnet_allocate_extended()
275 ostart = einit.start; in ifnet_allocate_extended()
278 if (einit.start == NULL) { in ifnet_allocate_extended()
282 einit.output = NULL; in ifnet_allocate_extended()
283 if (einit.output_sched_model >= IFNET_SCHED_MODEL_MAX) { in ifnet_allocate_extended()
287 if (einit.flags & IFNET_INIT_INPUT_POLL) { in ifnet_allocate_extended()
288 if (einit.input_poll == NULL || einit.input_ctl == NULL) { in ifnet_allocate_extended()
292 einit.input_poll = NULL; in ifnet_allocate_extended()
293 einit.input_ctl = NULL; in ifnet_allocate_extended()
297 if (einit.type > UCHAR_MAX) { in ifnet_allocate_extended()
301 if (einit.unit > SHRT_MAX) { in ifnet_allocate_extended()
307 einit.name, einit.unit); in ifnet_allocate_extended()
309 if (einit.uniqueid == NULL) { in ifnet_allocate_extended()
310 einit.uniqueid = if_xname; in ifnet_allocate_extended()
311 einit.uniqueid_len = (uint32_t)strlen(if_xname); in ifnet_allocate_extended()
314 error = dlil_if_acquire(einit.family, einit.uniqueid, in ifnet_allocate_extended()
315 einit.uniqueid_len, if_xname, &ifp); in ifnet_allocate_extended()
325 strlcpy(__DECONST(char *, ifp->if_name), einit.name, IFNAMSIZ); in ifnet_allocate_extended()
326 ifp->if_type = (u_char)einit.type; in ifnet_allocate_extended()
327 ifp->if_family = einit.family; in ifnet_allocate_extended()
328 ifp->if_subfamily = einit.subfamily; in ifnet_allocate_extended()
329 ifp->if_unit = (short)einit.unit; in ifnet_allocate_extended()
330 ifp->if_output = einit.output; in ifnet_allocate_extended()
331 ifp->if_pre_enqueue = einit.pre_enqueue; in ifnet_allocate_extended()
332 ifp->if_start = einit.start; in ifnet_allocate_extended()
333 ifp->if_output_ctl = einit.output_ctl; in ifnet_allocate_extended()
334 ifp->if_output_sched_model = einit.output_sched_model; in ifnet_allocate_extended()
335 ifp->if_output_bw.eff_bw = einit.output_bw; in ifnet_allocate_extended()
336 ifp->if_output_bw.max_bw = einit.output_bw_max; in ifnet_allocate_extended()
337 ifp->if_output_lt.eff_lt = einit.output_lt; in ifnet_allocate_extended()
338 ifp->if_output_lt.max_lt = einit.output_lt_max; in ifnet_allocate_extended()
339 ifp->if_input_poll = einit.input_poll; in ifnet_allocate_extended()
340 ifp->if_input_ctl = einit.input_ctl; in ifnet_allocate_extended()
341 ifp->if_input_bw.eff_bw = einit.input_bw; in ifnet_allocate_extended()
342 ifp->if_input_bw.max_bw = einit.input_bw_max; in ifnet_allocate_extended()
343 ifp->if_input_lt.eff_lt = einit.input_lt; in ifnet_allocate_extended()
344 ifp->if_input_lt.max_lt = einit.input_lt_max; in ifnet_allocate_extended()
345 ifp->if_demux = einit.demux; in ifnet_allocate_extended()
346 ifp->if_add_proto = einit.add_proto; in ifnet_allocate_extended()
347 ifp->if_del_proto = einit.del_proto; in ifnet_allocate_extended()
348 ifp->if_check_multi = einit.check_multi; in ifnet_allocate_extended()
349 ifp->if_framer_legacy = einit.framer; in ifnet_allocate_extended()
350 ifp->if_framer = einit.framer_extended; in ifnet_allocate_extended()
351 ifp->if_softc = einit.softc; in ifnet_allocate_extended()
352 ifp->if_ioctl = einit.ioctl; in ifnet_allocate_extended()
353 ifp->if_set_bpf_tap = einit.set_bpf_tap; in ifnet_allocate_extended()
354 ifp->if_free = (einit.free != NULL) ? einit.free : ifnet_kpi_free; in ifnet_allocate_extended()
355 ifp->if_event = einit.event; in ifnet_allocate_extended()
356 ifp->if_detach = einit.detach; in ifnet_allocate_extended()
458 VERIFY(!(einit.flags & IFNET_INIT_LEGACY) || in ifnet_allocate_extended()
462 VERIFY(!(einit.flags & IFNET_INIT_INPUT_POLL) || in ifnet_allocate_extended()
465 ifnet_set_broadcast_addr(ifp, einit.broadcast_addr, in ifnet_allocate_extended()
466 einit.broadcast_len); in ifnet_allocate_extended()
474 if (einit.flags & IFNET_INIT_SKYWALK_NATIVE) { in ifnet_allocate_extended()
476 VERIFY(!(einit.flags & IFNET_INIT_LEGACY)); in ifnet_allocate_extended()
478 ifp->if_tx_headroom = einit.tx_headroom; in ifnet_allocate_extended()
479 ifp->if_tx_trailer = einit.tx_trailer; in ifnet_allocate_extended()
480 ifp->if_rx_mit_ival = einit.rx_mit_ival; in ifnet_allocate_extended()
495 einit.start_delay_qlen = sk_tx_delay_qlen; in ifnet_allocate_extended()
496 einit.start_delay_timeout = sk_tx_delay_timeout; in ifnet_allocate_extended()
506 einit.flags |= IFNET_INIT_NX_NOAUTO; in ifnet_allocate_extended()
512 if ((einit.flags & IFNET_INIT_NX_NOAUTO) != 0) { in ifnet_allocate_extended()
515 if ((einit.flags & IFNET_INIT_IF_ADV) != 0) { in ifnet_allocate_extended()
534 einit.output_target_qdelay * 1000 * 1000; in ifnet_allocate_extended()
535 IFCQ_MAXLEN(ifp->if_snd) = einit.sndq_maxlen; in ifnet_allocate_extended()
537 ifnet_enqueue_multi_setup(ifp, einit.start_delay_qlen, in ifnet_allocate_extended()
538 einit.start_delay_timeout); in ifnet_allocate_extended()
553 if ((einit.flags & IFNET_INIT_ALLOC_KPI) != 0) { in ifnet_allocate_extended()