Lines Matching defs:frm

56 static void fcoe_fill_frame_headers(fcoe_frame_t *frm);
57 static void fcoe_fill_frame_tailers(fcoe_frame_t *frm);
60 static void fcoe_tx_frame(fcoe_frame_t *frm);
199 fcoe_tx_frame(fcoe_frame_t *frm)
202 fcoe_mac_t *mac = FRM2MAC(frm);
205 fcoe_fill_frame_headers(frm);
206 fcoe_fill_frame_tailers(frm);
209 ret_cookie = mac_tx(mac->fm_cli_handle, FRM2MBLK(frm), 0,
232 mutex_enter(&FRM2MAC(frm)->fm_ss->ss_watch_mutex);
233 list_insert_tail(&FRM2MAC(frm)->fm_ss->ss_pfrm_list,
234 FRM2FMI(frm));
236 if (FRM2MAC(frm)->fm_ss->ss_flags & SS_FLAG_DOG_WAITING) {
237 cv_signal(&FRM2MAC(frm)->fm_ss->ss_watch_cv);
239 mutex_exit(&FRM2MAC(frm)->fm_ss->ss_watch_mutex);
274 fcoe_frame_t *frm;
303 frm = (fcoe_frame_t *)kmem_alloc(alloc_size, KM_SLEEP);
304 frm->frm_alloc_size = alloc_size;
305 frm->frm_fc_frame_size = fc_frame_size;
306 frm->frm_payload_size = fc_frame_size -
308 frm->frm_fcoe_private = sizeof (fcoe_frame_t) + (uint8_t *)frm;
309 frm->frm_client_private = sizeof (fcoe_i_frame_t) +
310 (uint8_t *)frm->frm_fcoe_private;
311 frm->frm_flags = 0;
312 frm->frm_eport = eport;
313 frm->frm_netb = mp;
318 fmi = FRM2FMI(frm);
319 fmi->fmi_frame = frm;
334 frm->frm_hdr = (fcoe_fc_frame_header_t *)fmi->fmi_fc_frame;
335 frm->frm_ofh1 = NULL;
336 frm->frm_ofh2 = NULL;
337 frm->frm_fc_frame = (uint8_t *)frm->frm_hdr;
338 frm->frm_payload = sizeof (fcoe_fc_frame_header_t) +
339 (uint8_t *)frm->frm_fc_frame;
340 return (frm);
352 fcoe_fill_frame_headers(fcoe_frame_t *frm)
354 fcoe_i_frame_t *fmi = FRM2FMI(frm);
359 bcopy(FRM2MAC(frm)->fm_current_addr, &fmi->fmi_efh->ether_shost,
361 bcopy(frm->frm_eport->eport_efh_dst,
371 if (FRM_SEQ_CNT(frm) == 0) {
383 fcoe_fill_frame_tailers(fcoe_frame_t *frm)
391 CRC32(crc, frm->frm_fc_frame, frm->frm_fc_frame_size,
393 FRM2FMI(frm)->fmi_fft->fft_crc[0] = 0xFF & (~crc);
394 FRM2FMI(frm)->fmi_fft->fft_crc[1] = 0xFF & (~crc >> 8);
395 FRM2FMI(frm)->fmi_fft->fft_crc[2] = 0xFF & (~crc >> 16);
396 FRM2FMI(frm)->fmi_fft->fft_crc[3] = 0xFF & (~crc >> 24);
397 if (FRM_F_CTL(frm) & 0x080000) {
398 FCOE_V2B_1(0x42, FRM2FMI(frm)->fmi_fft->fft_eof);
400 FCOE_V2B_1(0x41, FRM2FMI(frm)->fmi_fft->fft_eof);
403 FRM2FMI(frm)->fmi_fft->fft_resvd[0] = 0;
404 FRM2FMI(frm)->fmi_fft->fft_resvd[1] = 0;
405 FRM2FMI(frm)->fmi_fft->fft_resvd[2] = 0;