Lines Matching refs:field
400 #define TCV2_HDR_PTR(pkt, field) \
401 ((void)BUILD_BUG_ON_ZERO(ERF_SC_PACKETISER_HEADER_##field##_LBN & 7), \
402 (pkt) + ERF_SC_PACKETISER_HEADER_##field##_LBN / 8)
403 #define TCV2_HDR_BYTE(pkt, field) \
404 ((void)BUILD_BUG_ON_ZERO(ERF_SC_PACKETISER_HEADER_##field##_WIDTH != 8),\
405 *TCV2_HDR_PTR(pkt, field))
406 #define TCV2_HDR_WORD(pkt, field) \
407 ((void)BUILD_BUG_ON_ZERO(ERF_SC_PACKETISER_HEADER_##field##_WIDTH != 16),\
408 (void)BUILD_BUG_ON_ZERO(ERF_SC_PACKETISER_HEADER_##field##_LBN & 15), \
409 *(__force const __le16 *)TCV2_HDR_PTR(pkt, field))
410 #define TCV2_PKT_PTR(pkt, poff, i, field) \
411 ((void)BUILD_BUG_ON_ZERO(ERF_SC_PACKETISER_PAYLOAD_##field##_LBN & 7), \
412 (pkt) + ERF_SC_PACKETISER_PAYLOAD_##field##_LBN/8 + poff + \
415 /* Read a little-endian 48-bit field with 16-bit alignment */
416 static u64 efx_tc_read48(const __le16 *field)
422 out |= (u64)le16_to_cpu(field[i]) << (i * 16);
470 /* 24-bit field with 32-bit alignment */
475 /* 48-bit field with 16-bit alignment */
480 /* 48-bit field with 16-bit alignment */