Symbol: desc_info
drivers/ata/sata_fsl.c
227
__le32 desc_info;
drivers/ata/sata_fsl.c
409
unsigned int tag, u32 desc_info,
drivers/ata/sata_fsl.c
424
pp->cmdslot[tag].desc_info = cpu_to_le32(desc_info | (tag & 0x1F));
drivers/ata/sata_fsl.c
430
le32_to_cpu(pp->cmdslot[tag].desc_info));
drivers/ata/sata_fsl.c
506
u32 desc_info = CMD_DESC_RES | CMD_DESC_SNOOP_ENABLE;
drivers/ata/sata_fsl.c
518
desc_info |= ATAPI_CMD;
drivers/ata/sata_fsl.c
529
desc_info |= FPDMA_QUEUED_CMD;
drivers/ata/sata_fsl.c
531
sata_fsl_setup_cmd_hdr_entry(ap, pp, tag, desc_info, ttl_dwords,
drivers/ata/sata_fsl.c
535
desc_info, ttl_dwords, num_prde);
drivers/mtd/nand/qpic_common.c
151
struct desc_info *desc;
drivers/mtd/nand/qpic_common.c
363
struct desc_info *desc;
drivers/mtd/nand/qpic_common.c
556
struct desc_info *desc, *n;
drivers/net/ethernet/micrel/ksz884x.c
3456
static void hw_init_desc(struct ksz_desc_info *desc_info, int transmit)
drivers/net/ethernet/micrel/ksz884x.c
3459
u32 phys = desc_info->ring_phys;
drivers/net/ethernet/micrel/ksz884x.c
3460
struct ksz_hw_desc *desc = desc_info->ring_virt;
drivers/net/ethernet/micrel/ksz884x.c
3461
struct ksz_desc *cur = desc_info->ring;
drivers/net/ethernet/micrel/ksz884x.c
3464
for (i = 0; i < desc_info->alloc; i++) {
drivers/net/ethernet/micrel/ksz884x.c
3466
phys += desc_info->size;
drivers/net/ethernet/micrel/ksz884x.c
3470
previous->phw->next = cpu_to_le32(desc_info->ring_phys);
drivers/net/ethernet/micrel/ksz884x.c
3474
desc_info->avail = desc_info->alloc;
drivers/net/ethernet/micrel/ksz884x.c
3475
desc_info->last = desc_info->next = 0;
drivers/net/ethernet/micrel/ksz884x.c
3477
desc_info->cur = desc_info->ring;
drivers/net/ethernet/micrel/ksz884x.c
3992
static int ksz_alloc_soft_desc(struct ksz_desc_info *desc_info, int transmit)
drivers/net/ethernet/micrel/ksz884x.c
3994
desc_info->ring = kzalloc_objs(struct ksz_desc, desc_info->alloc);
drivers/net/ethernet/micrel/ksz884x.c
3995
if (!desc_info->ring)
drivers/net/ethernet/micrel/ksz884x.c
3997
hw_init_desc(desc_info, transmit);
drivers/net/ethernet/micrel/ksz884x.c
4201
struct ksz_desc_info *desc_info, int direction)
drivers/net/ethernet/micrel/ksz884x.c
4205
struct ksz_desc *desc = desc_info->ring;
drivers/net/ethernet/micrel/ksz884x.c
4207
for (i = 0; i < desc_info->alloc; i++) {
drivers/net/ethernet/pensando/ionic/ionic_main.c
195
struct ionic_admin_desc_info *desc_info;
drivers/net/ethernet/pensando/ionic/ionic_main.c
210
desc_info = &q->admin_info[q->tail_idx];
drivers/net/ethernet/pensando/ionic/ionic_main.c
212
desc_info->ctx = NULL;
drivers/net/ethernet/pensando/ionic/ionic_main.c
307
struct ionic_admin_desc_info *desc_info;
drivers/net/ethernet/pensando/ionic/ionic_main.c
322
desc_info = &q->admin_info[q->tail_idx];
drivers/net/ethernet/pensando/ionic/ionic_main.c
325
if (likely(desc_info->ctx)) {
drivers/net/ethernet/pensando/ionic/ionic_main.c
326
struct ionic_admin_ctx *ctx = desc_info->ctx;
drivers/net/ethernet/pensando/ionic/ionic_main.c
334
desc_info->ctx = NULL;
drivers/net/ethernet/pensando/ionic/ionic_main.c
372
struct ionic_admin_desc_info *desc_info;
drivers/net/ethernet/pensando/ionic/ionic_main.c
395
desc_info = &q->admin_info[q->head_idx];
drivers/net/ethernet/pensando/ionic/ionic_main.c
396
desc_info->ctx = ctx;
drivers/net/ethernet/pensando/ionic/ionic_txrx.c
1113
struct ionic_tx_desc_info *desc_info)
drivers/net/ethernet/pensando/ionic/ionic_txrx.c
1115
struct ionic_buf_info *buf_info = desc_info->bufs;
drivers/net/ethernet/pensando/ionic/ionic_txrx.c
1140
desc_info->nbufs = 1 + nfrags;
drivers/net/ethernet/pensando/ionic/ionic_txrx.c
1152
dma_unmap_single(dev, desc_info->bufs[0].dma_addr,
drivers/net/ethernet/pensando/ionic/ionic_txrx.c
1153
desc_info->bufs[0].len, DMA_TO_DEVICE);
drivers/net/ethernet/pensando/ionic/ionic_txrx.c
1158
struct ionic_tx_desc_info *desc_info)
drivers/net/ethernet/pensando/ionic/ionic_txrx.c
1160
struct ionic_buf_info *buf_info = desc_info->bufs;
drivers/net/ethernet/pensando/ionic/ionic_txrx.c
1164
if (!desc_info->nbufs)
drivers/net/ethernet/pensando/ionic/ionic_txrx.c
1170
for (i = 1; i < desc_info->nbufs; i++, buf_info++)
drivers/net/ethernet/pensando/ionic/ionic_txrx.c
1174
desc_info->nbufs = 0;
drivers/net/ethernet/pensando/ionic/ionic_txrx.c
1178
struct ionic_tx_desc_info *desc_info,
drivers/net/ethernet/pensando/ionic/ionic_txrx.c
1186
if (desc_info->xdpf) {
drivers/net/ethernet/pensando/ionic/ionic_txrx.c
1187
ionic_xdp_tx_desc_clean(q->partner, desc_info, in_napi);
drivers/net/ethernet/pensando/ionic/ionic_txrx.c
1196
ionic_tx_desc_unmap_bufs(q, desc_info);
drivers/net/ethernet/pensando/ionic/ionic_txrx.c
1198
skb = desc_info->skb;
drivers/net/ethernet/pensando/ionic/ionic_txrx.c
1229
desc_info->bytes = skb->len;
drivers/net/ethernet/pensando/ionic/ionic_txrx.c
1240
struct ionic_tx_desc_info *desc_info;
drivers/net/ethernet/pensando/ionic/ionic_txrx.c
1256
desc_info = &q->tx_info[q->tail_idx];
drivers/net/ethernet/pensando/ionic/ionic_txrx.c
1257
desc_info->bytes = 0;
drivers/net/ethernet/pensando/ionic/ionic_txrx.c
1260
ionic_tx_clean(q, desc_info, comp, in_napi);
drivers/net/ethernet/pensando/ionic/ionic_txrx.c
1261
if (desc_info->skb) {
drivers/net/ethernet/pensando/ionic/ionic_txrx.c
1263
bytes += desc_info->bytes;
drivers/net/ethernet/pensando/ionic/ionic_txrx.c
1264
desc_info->skb = NULL;
drivers/net/ethernet/pensando/ionic/ionic_txrx.c
1319
struct ionic_tx_desc_info *desc_info;
drivers/net/ethernet/pensando/ionic/ionic_txrx.c
1325
desc_info = &q->tx_info[q->tail_idx];
drivers/net/ethernet/pensando/ionic/ionic_txrx.c
1326
desc_info->bytes = 0;
drivers/net/ethernet/pensando/ionic/ionic_txrx.c
1328
ionic_tx_clean(q, desc_info, NULL, false);
drivers/net/ethernet/pensando/ionic/ionic_txrx.c
1329
if (desc_info->skb) {
drivers/net/ethernet/pensando/ionic/ionic_txrx.c
1331
bytes += desc_info->bytes;
drivers/net/ethernet/pensando/ionic/ionic_txrx.c
1332
desc_info->skb = NULL;
drivers/net/ethernet/pensando/ionic/ionic_txrx.c
1429
struct ionic_tx_desc_info *desc_info;
drivers/net/ethernet/pensando/ionic/ionic_txrx.c
1467
desc_info = &q->tx_info[q->head_idx];
drivers/net/ethernet/pensando/ionic/ionic_txrx.c
1468
if (unlikely(ionic_tx_map_skb(q, skb, desc_info)))
drivers/net/ethernet/pensando/ionic/ionic_txrx.c
1484
desc_info->skb = skb;
drivers/net/ethernet/pensando/ionic/ionic_txrx.c
1485
buf_info = desc_info->bufs;
drivers/net/ethernet/pensando/ionic/ionic_txrx.c
1536
desc_info = &q->tx_info[q->head_idx];
drivers/net/ethernet/pensando/ionic/ionic_txrx.c
1537
desc_info->nbufs = 0;
drivers/net/ethernet/pensando/ionic/ionic_txrx.c
1549
struct ionic_tx_desc_info *desc_info)
drivers/net/ethernet/pensando/ionic/ionic_txrx.c
1552
struct ionic_buf_info *buf_info = desc_info->bufs;
drivers/net/ethernet/pensando/ionic/ionic_txrx.c
1588
struct ionic_tx_desc_info *desc_info)
drivers/net/ethernet/pensando/ionic/ionic_txrx.c
1591
struct ionic_buf_info *buf_info = desc_info->bufs;
drivers/net/ethernet/pensando/ionic/ionic_txrx.c
1624
struct ionic_tx_desc_info *desc_info)
drivers/net/ethernet/pensando/ionic/ionic_txrx.c
1626
struct ionic_buf_info *buf_info = &desc_info->bufs[1];
drivers/net/ethernet/pensando/ionic/ionic_txrx.c
1643
struct ionic_tx_desc_info *desc_info = &q->tx_info[q->head_idx];
drivers/net/ethernet/pensando/ionic/ionic_txrx.c
1647
if (unlikely(ionic_tx_map_skb(q, skb, desc_info)))
drivers/net/ethernet/pensando/ionic/ionic_txrx.c
1650
desc_info->skb = skb;
drivers/net/ethernet/pensando/ionic/ionic_txrx.c
1654
ionic_tx_calc_csum(q, skb, desc_info);
drivers/net/ethernet/pensando/ionic/ionic_txrx.c
1656
ionic_tx_calc_no_csum(q, skb, desc_info);
drivers/net/ethernet/pensando/ionic/ionic_txrx.c
1659
ionic_tx_skb_frags(q, skb, desc_info);
drivers/net/ethernet/pensando/ionic/ionic_txrx.c
180
struct ionic_rx_desc_info *desc_info,
drivers/net/ethernet/pensando/ionic/ionic_txrx.c
191
buf_info = &desc_info->bufs[0];
drivers/net/ethernet/pensando/ionic/ionic_txrx.c
23
struct ionic_tx_desc_info *desc_info);
drivers/net/ethernet/pensando/ionic/ionic_txrx.c
232
struct ionic_rx_desc_info *desc_info,
drivers/net/ethernet/pensando/ionic/ionic_txrx.c
243
buf_info = &desc_info->bufs[0];
drivers/net/ethernet/pensando/ionic/ionic_txrx.c
26
struct ionic_tx_desc_info *desc_info,
drivers/net/ethernet/pensando/ionic/ionic_txrx.c
275
struct ionic_tx_desc_info *desc_info,
drivers/net/ethernet/pensando/ionic/ionic_txrx.c
280
if (!desc_info->nbufs)
drivers/net/ethernet/pensando/ionic/ionic_txrx.c
286
if (desc_info->act == XDP_TX) {
drivers/net/ethernet/pensando/ionic/ionic_txrx.c
288
xdp_return_frame_rx_napi(desc_info->xdpf);
drivers/net/ethernet/pensando/ionic/ionic_txrx.c
290
xdp_return_frame(desc_info->xdpf);
drivers/net/ethernet/pensando/ionic/ionic_txrx.c
291
} else if (desc_info->act == XDP_REDIRECT) {
drivers/net/ethernet/pensando/ionic/ionic_txrx.c
292
ionic_tx_desc_unmap_bufs(q, desc_info);
drivers/net/ethernet/pensando/ionic/ionic_txrx.c
293
xdp_return_frame_bulk(desc_info->xdpf, &bq);
drivers/net/ethernet/pensando/ionic/ionic_txrx.c
299
desc_info->nbufs = 0;
drivers/net/ethernet/pensando/ionic/ionic_txrx.c
300
desc_info->xdpf = NULL;
drivers/net/ethernet/pensando/ionic/ionic_txrx.c
301
desc_info->act = 0;
drivers/net/ethernet/pensando/ionic/ionic_txrx.c
308
struct ionic_tx_desc_info *desc_info;
drivers/net/ethernet/pensando/ionic/ionic_txrx.c
316
desc_info = &q->tx_info[q->head_idx];
drivers/net/ethernet/pensando/ionic/ionic_txrx.c
318
buf_info = desc_info->bufs;
drivers/net/ethernet/pensando/ionic/ionic_txrx.c
337
desc_info->nbufs = 1;
drivers/net/ethernet/pensando/ionic/ionic_txrx.c
338
desc_info->xdpf = frame;
drivers/net/ethernet/pensando/ionic/ionic_txrx.c
339
desc_info->act = act;
drivers/net/ethernet/pensando/ionic/ionic_txrx.c
365
ionic_tx_desc_unmap_bufs(q, desc_info);
drivers/net/ethernet/pensando/ionic/ionic_txrx.c
377
desc_info->nbufs++;
drivers/net/ethernet/pensando/ionic/ionic_txrx.c
382
0, (desc_info->nbufs - 1), buf_info->dma_addr);
drivers/net/ethernet/pensando/ionic/ionic_txrx.c
608
struct ionic_rx_desc_info *desc_info,
drivers/net/ethernet/pensando/ionic/ionic_txrx.c
640
if (ionic_run_xdp(stats, netdev, xdp_prog, q, desc_info->bufs, len))
drivers/net/ethernet/pensando/ionic/ionic_txrx.c
648
skb = ionic_rx_copybreak(netdev, q, desc_info,
drivers/net/ethernet/pensando/ionic/ionic_txrx.c
652
skb = ionic_rx_build_skb(q, desc_info, headroom, len,
drivers/net/ethernet/pensando/ionic/ionic_txrx.c
728
struct ionic_rx_desc_info *desc_info;
drivers/net/ethernet/pensando/ionic/ionic_txrx.c
744
desc_info = &q->rx_info[q->tail_idx];
drivers/net/ethernet/pensando/ionic/ionic_txrx.c
748
ionic_rx_clean(q, desc_info, comp, xdp_prog);
drivers/net/ethernet/pensando/ionic/ionic_txrx.c
771
struct ionic_rx_desc_info *desc_info;
drivers/net/ethernet/pensando/ionic/ionic_txrx.c
816
desc_info = &q->rx_info[q->head_idx];
drivers/net/ethernet/pensando/ionic/ionic_txrx.c
817
buf_info = &desc_info->bufs[0];
drivers/net/ethernet/pensando/ionic/ionic_txrx.c
874
desc_info->nbufs = nfrags;
drivers/net/ethernet/pensando/ionic/ionic_txrx.c
890
struct ionic_rx_desc_info *desc_info;
drivers/net/ethernet/pensando/ionic/ionic_txrx.c
894
desc_info = &q->rx_info[i];
drivers/net/ethernet/pensando/ionic/ionic_txrx.c
895
for (j = 0; j < ARRAY_SIZE(desc_info->bufs); j++)
drivers/net/ethernet/pensando/ionic/ionic_txrx.c
896
ionic_rx_put_buf(q, &desc_info->bufs[j]);
drivers/net/ethernet/pensando/ionic/ionic_txrx.c
897
desc_info->nbufs = 0;
drivers/net/ethernet/rocker/rocker.h
34
struct rocker_desc_info *desc_info;
drivers/net/ethernet/rocker/rocker.h
76
struct rocker_desc_info *desc_info,
drivers/net/ethernet/rocker/rocker.h
80
const struct rocker_desc_info *desc_info,
drivers/net/ethernet/rocker/rocker_main.c
1003
while ((desc_info = rocker_desc_tail_get(&rocker->event_ring))) {
drivers/net/ethernet/rocker/rocker_main.c
1004
err = rocker_desc_err(desc_info);
drivers/net/ethernet/rocker/rocker_main.c
1009
err = rocker_event_process(rocker, desc_info);
drivers/net/ethernet/rocker/rocker_main.c
1014
rocker_desc_gen_clear(desc_info);
drivers/net/ethernet/rocker/rocker_main.c
1015
rocker_desc_head_set(rocker, &rocker->event_ring, desc_info);
drivers/net/ethernet/rocker/rocker_main.c
1048
struct rocker_desc_info *desc_info;
drivers/net/ethernet/rocker/rocker_main.c
1055
desc_info = rocker_desc_head_get(&rocker->cmd_ring);
drivers/net/ethernet/rocker/rocker_main.c
1056
if (!desc_info) {
drivers/net/ethernet/rocker/rocker_main.c
1061
wait = rocker_desc_cookie_ptr_get(desc_info);
drivers/net/ethernet/rocker/rocker_main.c
1065
err = prepare(rocker_port, desc_info, prepare_priv);
drivers/net/ethernet/rocker/rocker_main.c
1071
rocker_desc_head_set(rocker, &rocker->cmd_ring, desc_info);
drivers/net/ethernet/rocker/rocker_main.c
1081
err = rocker_desc_err(desc_info);
drivers/net/ethernet/rocker/rocker_main.c
1086
err = process(rocker_port, desc_info, process_priv);
drivers/net/ethernet/rocker/rocker_main.c
1088
rocker_desc_gen_clear(desc_info);
drivers/net/ethernet/rocker/rocker_main.c
1094
struct rocker_desc_info *desc_info,
drivers/net/ethernet/rocker/rocker_main.c
1099
if (rocker_tlv_put_u16(desc_info, ROCKER_TLV_CMD_TYPE,
drivers/net/ethernet/rocker/rocker_main.c
1102
cmd_info = rocker_tlv_nest_start(desc_info, ROCKER_TLV_CMD_INFO);
drivers/net/ethernet/rocker/rocker_main.c
1105
if (rocker_tlv_put_u32(desc_info, ROCKER_TLV_CMD_PORT_SETTINGS_PPORT,
drivers/net/ethernet/rocker/rocker_main.c
1108
rocker_tlv_nest_end(desc_info, cmd_info);
drivers/net/ethernet/rocker/rocker_main.c
1114
const struct rocker_desc_info *desc_info,
drivers/net/ethernet/rocker/rocker_main.c
1124
rocker_tlv_parse_desc(attrs, ROCKER_TLV_CMD_MAX, desc_info);
drivers/net/ethernet/rocker/rocker_main.c
1153
const struct rocker_desc_info *desc_info,
drivers/net/ethernet/rocker/rocker_main.c
1161
rocker_tlv_parse_desc(attrs, ROCKER_TLV_CMD_MAX, desc_info);
drivers/net/ethernet/rocker/rocker_main.c
1180
const struct rocker_desc_info *desc_info,
drivers/net/ethernet/rocker/rocker_main.c
1188
rocker_tlv_parse_desc(attrs, ROCKER_TLV_CMD_MAX, desc_info);
drivers/net/ethernet/rocker/rocker_main.c
1209
const struct rocker_desc_info *desc_info,
drivers/net/ethernet/rocker/rocker_main.c
1219
rocker_tlv_parse_desc(attrs, ROCKER_TLV_CMD_MAX, desc_info);
drivers/net/ethernet/rocker/rocker_main.c
1250
struct rocker_desc_info *desc_info,
drivers/net/ethernet/rocker/rocker_main.c
1256
if (rocker_tlv_put_u16(desc_info, ROCKER_TLV_CMD_TYPE,
drivers/net/ethernet/rocker/rocker_main.c
1259
cmd_info = rocker_tlv_nest_start(desc_info, ROCKER_TLV_CMD_INFO);
drivers/net/ethernet/rocker/rocker_main.c
1262
if (rocker_tlv_put_u32(desc_info, ROCKER_TLV_CMD_PORT_SETTINGS_PPORT,
drivers/net/ethernet/rocker/rocker_main.c
1265
if (rocker_tlv_put_u32(desc_info, ROCKER_TLV_CMD_PORT_SETTINGS_SPEED,
drivers/net/ethernet/rocker/rocker_main.c
1268
if (rocker_tlv_put_u8(desc_info, ROCKER_TLV_CMD_PORT_SETTINGS_DUPLEX,
drivers/net/ethernet/rocker/rocker_main.c
1271
if (rocker_tlv_put_u8(desc_info, ROCKER_TLV_CMD_PORT_SETTINGS_AUTONEG,
drivers/net/ethernet/rocker/rocker_main.c
1274
rocker_tlv_nest_end(desc_info, cmd_info);
drivers/net/ethernet/rocker/rocker_main.c
1280
struct rocker_desc_info *desc_info,
drivers/net/ethernet/rocker/rocker_main.c
1286
if (rocker_tlv_put_u16(desc_info, ROCKER_TLV_CMD_TYPE,
drivers/net/ethernet/rocker/rocker_main.c
1289
cmd_info = rocker_tlv_nest_start(desc_info, ROCKER_TLV_CMD_INFO);
drivers/net/ethernet/rocker/rocker_main.c
1292
if (rocker_tlv_put_u32(desc_info, ROCKER_TLV_CMD_PORT_SETTINGS_PPORT,
drivers/net/ethernet/rocker/rocker_main.c
1295
if (rocker_tlv_put(desc_info, ROCKER_TLV_CMD_PORT_SETTINGS_MACADDR,
drivers/net/ethernet/rocker/rocker_main.c
1298
rocker_tlv_nest_end(desc_info, cmd_info);
drivers/net/ethernet/rocker/rocker_main.c
1304
struct rocker_desc_info *desc_info,
drivers/net/ethernet/rocker/rocker_main.c
1310
if (rocker_tlv_put_u16(desc_info, ROCKER_TLV_CMD_TYPE,
drivers/net/ethernet/rocker/rocker_main.c
1313
cmd_info = rocker_tlv_nest_start(desc_info, ROCKER_TLV_CMD_INFO);
drivers/net/ethernet/rocker/rocker_main.c
1316
if (rocker_tlv_put_u32(desc_info, ROCKER_TLV_CMD_PORT_SETTINGS_PPORT,
drivers/net/ethernet/rocker/rocker_main.c
1319
if (rocker_tlv_put_u16(desc_info, ROCKER_TLV_CMD_PORT_SETTINGS_MTU,
drivers/net/ethernet/rocker/rocker_main.c
1322
rocker_tlv_nest_end(desc_info, cmd_info);
drivers/net/ethernet/rocker/rocker_main.c
1328
struct rocker_desc_info *desc_info,
drivers/net/ethernet/rocker/rocker_main.c
1334
if (rocker_tlv_put_u16(desc_info, ROCKER_TLV_CMD_TYPE,
drivers/net/ethernet/rocker/rocker_main.c
1337
cmd_info = rocker_tlv_nest_start(desc_info, ROCKER_TLV_CMD_INFO);
drivers/net/ethernet/rocker/rocker_main.c
1340
if (rocker_tlv_put_u32(desc_info, ROCKER_TLV_CMD_PORT_SETTINGS_PPORT,
drivers/net/ethernet/rocker/rocker_main.c
1343
if (rocker_tlv_put_u8(desc_info, ROCKER_TLV_CMD_PORT_SETTINGS_LEARNING,
drivers/net/ethernet/rocker/rocker_main.c
1346
rocker_tlv_nest_end(desc_info, cmd_info);
drivers/net/ethernet/rocker/rocker_main.c
1817
const struct rocker_desc_info *desc_info)
drivers/net/ethernet/rocker/rocker_main.c
1825
rocker_tlv_parse_desc(attrs, ROCKER_TLV_TX_MAX, desc_info);
drivers/net/ethernet/rocker/rocker_main.c
1847
struct rocker_desc_info *desc_info,
drivers/net/ethernet/rocker/rocker_main.c
1861
frag = rocker_tlv_nest_start(desc_info, ROCKER_TLV_TX_FRAG);
drivers/net/ethernet/rocker/rocker_main.c
1864
if (rocker_tlv_put_u64(desc_info, ROCKER_TLV_TX_FRAG_ATTR_ADDR,
drivers/net/ethernet/rocker/rocker_main.c
1867
if (rocker_tlv_put_u16(desc_info, ROCKER_TLV_TX_FRAG_ATTR_LEN,
drivers/net/ethernet/rocker/rocker_main.c
1870
rocker_tlv_nest_end(desc_info, frag);
drivers/net/ethernet/rocker/rocker_main.c
1874
rocker_tlv_nest_cancel(desc_info, frag);
drivers/net/ethernet/rocker/rocker_main.c
1884
struct rocker_desc_info *desc_info;
drivers/net/ethernet/rocker/rocker_main.c
1889
desc_info = rocker_desc_head_get(&rocker_port->tx_ring);
drivers/net/ethernet/rocker/rocker_main.c
1890
if (unlikely(!desc_info)) {
drivers/net/ethernet/rocker/rocker_main.c
1896
rocker_desc_cookie_ptr_set(desc_info, skb);
drivers/net/ethernet/rocker/rocker_main.c
1898
frags = rocker_tlv_nest_start(desc_info, ROCKER_TLV_TX_FRAGS);
drivers/net/ethernet/rocker/rocker_main.c
1901
err = rocker_tx_desc_frag_map_put(rocker_port, desc_info,
drivers/net/ethernet/rocker/rocker_main.c
1914
err = rocker_tx_desc_frag_map_put(rocker_port, desc_info,
drivers/net/ethernet/rocker/rocker_main.c
1920
rocker_tlv_nest_end(desc_info, frags);
drivers/net/ethernet/rocker/rocker_main.c
1922
rocker_desc_gen_clear(desc_info);
drivers/net/ethernet/rocker/rocker_main.c
1923
rocker_desc_head_set(rocker, &rocker_port->tx_ring, desc_info);
drivers/net/ethernet/rocker/rocker_main.c
1925
desc_info = rocker_desc_head_get(&rocker_port->tx_ring);
drivers/net/ethernet/rocker/rocker_main.c
1926
if (!desc_info)
drivers/net/ethernet/rocker/rocker_main.c
1932
rocker_tx_desc_frags_unmap(rocker_port, desc_info);
drivers/net/ethernet/rocker/rocker_main.c
1934
rocker_tlv_nest_cancel(desc_info, frags);
drivers/net/ethernet/rocker/rocker_main.c
2264
struct rocker_desc_info *desc_info,
drivers/net/ethernet/rocker/rocker_main.c
2269
if (rocker_tlv_put_u16(desc_info, ROCKER_TLV_CMD_TYPE,
drivers/net/ethernet/rocker/rocker_main.c
2273
cmd_stats = rocker_tlv_nest_start(desc_info, ROCKER_TLV_CMD_INFO);
drivers/net/ethernet/rocker/rocker_main.c
2277
if (rocker_tlv_put_u32(desc_info, ROCKER_TLV_CMD_PORT_STATS_PPORT,
drivers/net/ethernet/rocker/rocker_main.c
2281
rocker_tlv_nest_end(desc_info, cmd_stats);
drivers/net/ethernet/rocker/rocker_main.c
2288
const struct rocker_desc_info *desc_info,
drivers/net/ethernet/rocker/rocker_main.c
2298
rocker_tlv_parse_desc(attrs, ROCKER_TLV_CMD_MAX, desc_info);
drivers/net/ethernet/rocker/rocker_main.c
2379
const struct rocker_desc_info *desc_info;
drivers/net/ethernet/rocker/rocker_main.c
2384
while ((desc_info = rocker_desc_tail_get(&rocker_port->tx_ring))) {
drivers/net/ethernet/rocker/rocker_main.c
2387
err = rocker_desc_err(desc_info);
drivers/net/ethernet/rocker/rocker_main.c
2391
rocker_tx_desc_frags_unmap(rocker_port, desc_info);
drivers/net/ethernet/rocker/rocker_main.c
2393
skb = rocker_desc_cookie_ptr_get(desc_info);
drivers/net/ethernet/rocker/rocker_main.c
2416
struct rocker_desc_info *desc_info)
drivers/net/ethernet/rocker/rocker_main.c
2419
struct sk_buff *skb = rocker_desc_cookie_ptr_get(desc_info);
drivers/net/ethernet/rocker/rocker_main.c
2426
rocker_tlv_parse_desc(attrs, ROCKER_TLV_RX_MAX, desc_info);
drivers/net/ethernet/rocker/rocker_main.c
2446
return rocker_dma_rx_ring_skb_alloc(rocker_port, desc_info);
drivers/net/ethernet/rocker/rocker_main.c
2458
struct rocker_desc_info *desc_info;
drivers/net/ethernet/rocker/rocker_main.c
2464
(desc_info = rocker_desc_tail_get(&rocker_port->rx_ring))) {
drivers/net/ethernet/rocker/rocker_main.c
2465
err = rocker_desc_err(desc_info);
drivers/net/ethernet/rocker/rocker_main.c
2472
desc_info);
drivers/net/ethernet/rocker/rocker_main.c
2480
rocker_desc_gen_clear(desc_info);
drivers/net/ethernet/rocker/rocker_main.c
2481
rocker_desc_head_set(rocker, &rocker_port->rx_ring, desc_info);
drivers/net/ethernet/rocker/rocker_main.c
314
static int rocker_desc_err(const struct rocker_desc_info *desc_info)
drivers/net/ethernet/rocker/rocker_main.c
316
int err = desc_info->desc->comp_err & ~ROCKER_DMA_DESC_COMP_ERR_GEN;
drivers/net/ethernet/rocker/rocker_main.c
342
static void rocker_desc_gen_clear(const struct rocker_desc_info *desc_info)
drivers/net/ethernet/rocker/rocker_main.c
344
desc_info->desc->comp_err &= ~ROCKER_DMA_DESC_COMP_ERR_GEN;
drivers/net/ethernet/rocker/rocker_main.c
347
static bool rocker_desc_gen(const struct rocker_desc_info *desc_info)
drivers/net/ethernet/rocker/rocker_main.c
349
u32 comp_err = desc_info->desc->comp_err;
drivers/net/ethernet/rocker/rocker_main.c
355
rocker_desc_cookie_ptr_get(const struct rocker_desc_info *desc_info)
drivers/net/ethernet/rocker/rocker_main.c
357
return (void *)(uintptr_t)desc_info->desc->cookie;
drivers/net/ethernet/rocker/rocker_main.c
360
static void rocker_desc_cookie_ptr_set(const struct rocker_desc_info *desc_info,
drivers/net/ethernet/rocker/rocker_main.c
363
desc_info->desc->cookie = (uintptr_t) ptr;
drivers/net/ethernet/rocker/rocker_main.c
369
struct rocker_desc_info *desc_info;
drivers/net/ethernet/rocker/rocker_main.c
372
desc_info = &info->desc_info[info->head];
drivers/net/ethernet/rocker/rocker_main.c
375
desc_info->tlv_size = 0;
drivers/net/ethernet/rocker/rocker_main.c
376
return desc_info;
drivers/net/ethernet/rocker/rocker_main.c
379
static void rocker_desc_commit(const struct rocker_desc_info *desc_info)
drivers/net/ethernet/rocker/rocker_main.c
381
desc_info->desc->buf_size = desc_info->data_size;
drivers/net/ethernet/rocker/rocker_main.c
382
desc_info->desc->tlv_size = desc_info->tlv_size;
drivers/net/ethernet/rocker/rocker_main.c
387
const struct rocker_desc_info *desc_info)
drivers/net/ethernet/rocker/rocker_main.c
392
rocker_desc_commit(desc_info);
drivers/net/ethernet/rocker/rocker_main.c
400
struct rocker_desc_info *desc_info;
drivers/net/ethernet/rocker/rocker_main.c
404
desc_info = &info->desc_info[info->tail];
drivers/net/ethernet/rocker/rocker_main.c
405
if (!rocker_desc_gen(desc_info))
drivers/net/ethernet/rocker/rocker_main.c
408
desc_info->tlv_size = desc_info->desc->tlv_size;
drivers/net/ethernet/rocker/rocker_main.c
409
return desc_info;
drivers/net/ethernet/rocker/rocker_main.c
438
info->desc_info = kzalloc_objs(*info->desc_info, info->size);
drivers/net/ethernet/rocker/rocker_main.c
439
if (!info->desc_info)
drivers/net/ethernet/rocker/rocker_main.c
446
kfree(info->desc_info);
drivers/net/ethernet/rocker/rocker_main.c
451
info->desc_info[i].desc = &info->desc[i];
drivers/net/ethernet/rocker/rocker_main.c
469
kfree(info->desc_info);
drivers/net/ethernet/rocker/rocker_main.c
483
rocker_desc_head_set(rocker, info, &info->desc_info[i]);
drivers/net/ethernet/rocker/rocker_main.c
484
rocker_desc_commit(&info->desc_info[i]);
drivers/net/ethernet/rocker/rocker_main.c
496
struct rocker_desc_info *desc_info = &info->desc_info[i];
drivers/net/ethernet/rocker/rocker_main.c
515
desc_info->data = buf;
drivers/net/ethernet/rocker/rocker_main.c
516
desc_info->data_size = buf_size;
drivers/net/ethernet/rocker/rocker_main.c
517
dma_unmap_addr_set(desc_info, mapaddr, dma_handle);
drivers/net/ethernet/rocker/rocker_main.c
526
const struct rocker_desc_info *desc_info = &info->desc_info[i];
drivers/net/ethernet/rocker/rocker_main.c
529
dma_unmap_addr(desc_info, mapaddr),
drivers/net/ethernet/rocker/rocker_main.c
530
desc_info->data_size, direction);
drivers/net/ethernet/rocker/rocker_main.c
531
kfree(desc_info->data);
drivers/net/ethernet/rocker/rocker_main.c
544
const struct rocker_desc_info *desc_info = &info->desc_info[i];
drivers/net/ethernet/rocker/rocker_main.c
550
dma_unmap_addr(desc_info, mapaddr),
drivers/net/ethernet/rocker/rocker_main.c
551
desc_info->data_size, direction);
drivers/net/ethernet/rocker/rocker_main.c
552
kfree(desc_info->data);
drivers/net/ethernet/rocker/rocker_main.c
556
static int rocker_dma_cmd_ring_wait_alloc(struct rocker_desc_info *desc_info)
drivers/net/ethernet/rocker/rocker_main.c
563
rocker_desc_cookie_ptr_set(desc_info, wait);
drivers/net/ethernet/rocker/rocker_main.c
568
rocker_dma_cmd_ring_wait_free(const struct rocker_desc_info *desc_info)
drivers/net/ethernet/rocker/rocker_main.c
570
struct rocker_wait *wait = rocker_desc_cookie_ptr_get(desc_info);
drivers/net/ethernet/rocker/rocker_main.c
582
err = rocker_dma_cmd_ring_wait_alloc(&cmd_ring->desc_info[i]);
drivers/net/ethernet/rocker/rocker_main.c
590
rocker_dma_cmd_ring_wait_free(&cmd_ring->desc_info[i]);
drivers/net/ethernet/rocker/rocker_main.c
600
rocker_dma_cmd_ring_wait_free(&cmd_ring->desc_info[i]);
drivers/net/ethernet/rocker/rocker_main.c
672
struct rocker_desc_info *desc_info,
drivers/net/ethernet/rocker/rocker_main.c
683
if (rocker_tlv_put_u64(desc_info, ROCKER_TLV_RX_FRAG_ADDR, dma_handle))
drivers/net/ethernet/rocker/rocker_main.c
685
if (rocker_tlv_put_u16(desc_info, ROCKER_TLV_RX_FRAG_MAX_LEN, buf_len))
drivers/net/ethernet/rocker/rocker_main.c
691
desc_info->tlv_size = 0;
drivers/net/ethernet/rocker/rocker_main.c
701
struct rocker_desc_info *desc_info)
drivers/net/ethernet/rocker/rocker_main.c
711
rocker_desc_cookie_ptr_set(desc_info, NULL);
drivers/net/ethernet/rocker/rocker_main.c
712
desc_info->tlv_size = 0;
drivers/net/ethernet/rocker/rocker_main.c
717
err = rocker_dma_rx_ring_skb_map(rocker_port, desc_info, skb, buf_len);
drivers/net/ethernet/rocker/rocker_main.c
722
rocker_desc_cookie_ptr_set(desc_info, skb);
drivers/net/ethernet/rocker/rocker_main.c
742
const struct rocker_desc_info *desc_info)
drivers/net/ethernet/rocker/rocker_main.c
745
struct sk_buff *skb = rocker_desc_cookie_ptr_get(desc_info);
drivers/net/ethernet/rocker/rocker_main.c
749
rocker_tlv_parse_desc(attrs, ROCKER_TLV_RX_MAX, desc_info);
drivers/net/ethernet/rocker/rocker_main.c
763
&rx_ring->desc_info[i]);
drivers/net/ethernet/rocker/rocker_main.c
771
rocker_dma_rx_ring_skb_free(rocker, &rx_ring->desc_info[i]);
drivers/net/ethernet/rocker/rocker_main.c
782
rocker_dma_rx_ring_skb_free(rocker, &rx_ring->desc_info[i]);
drivers/net/ethernet/rocker/rocker_main.c
878
const struct rocker_desc_info *desc_info;
drivers/net/ethernet/rocker/rocker_main.c
883
while ((desc_info = rocker_desc_tail_get(&rocker->cmd_ring))) {
drivers/net/ethernet/rocker/rocker_main.c
884
wait = rocker_desc_cookie_ptr_get(desc_info);
drivers/net/ethernet/rocker/rocker_main.c
886
rocker_desc_gen_clear(desc_info);
drivers/net/ethernet/rocker/rocker_main.c
971
const struct rocker_desc_info *desc_info)
drivers/net/ethernet/rocker/rocker_main.c
977
rocker_tlv_parse_desc(attrs, ROCKER_TLV_EVENT_MAX, desc_info);
drivers/net/ethernet/rocker/rocker_main.c
999
const struct rocker_desc_info *desc_info;
drivers/net/ethernet/rocker/rocker_ofdpa.c
306
ofdpa_cmd_flow_tbl_add_ig_port(struct rocker_desc_info *desc_info,
drivers/net/ethernet/rocker/rocker_ofdpa.c
309
if (rocker_tlv_put_u32(desc_info, ROCKER_TLV_OF_DPA_IN_PPORT,
drivers/net/ethernet/rocker/rocker_ofdpa.c
312
if (rocker_tlv_put_u32(desc_info, ROCKER_TLV_OF_DPA_IN_PPORT_MASK,
drivers/net/ethernet/rocker/rocker_ofdpa.c
315
if (rocker_tlv_put_u16(desc_info, ROCKER_TLV_OF_DPA_GOTO_TABLE_ID,
drivers/net/ethernet/rocker/rocker_ofdpa.c
323
ofdpa_cmd_flow_tbl_add_vlan(struct rocker_desc_info *desc_info,
drivers/net/ethernet/rocker/rocker_ofdpa.c
326
if (rocker_tlv_put_u32(desc_info, ROCKER_TLV_OF_DPA_IN_PPORT,
drivers/net/ethernet/rocker/rocker_ofdpa.c
329
if (rocker_tlv_put_be16(desc_info, ROCKER_TLV_OF_DPA_VLAN_ID,
drivers/net/ethernet/rocker/rocker_ofdpa.c
332
if (rocker_tlv_put_be16(desc_info, ROCKER_TLV_OF_DPA_VLAN_ID_MASK,
drivers/net/ethernet/rocker/rocker_ofdpa.c
335
if (rocker_tlv_put_u16(desc_info, ROCKER_TLV_OF_DPA_GOTO_TABLE_ID,
drivers/net/ethernet/rocker/rocker_ofdpa.c
339
rocker_tlv_put_be16(desc_info, ROCKER_TLV_OF_DPA_NEW_VLAN_ID,
drivers/net/ethernet/rocker/rocker_ofdpa.c
347
ofdpa_cmd_flow_tbl_add_term_mac(struct rocker_desc_info *desc_info,
drivers/net/ethernet/rocker/rocker_ofdpa.c
350
if (rocker_tlv_put_u32(desc_info, ROCKER_TLV_OF_DPA_IN_PPORT,
drivers/net/ethernet/rocker/rocker_ofdpa.c
353
if (rocker_tlv_put_u32(desc_info, ROCKER_TLV_OF_DPA_IN_PPORT_MASK,
drivers/net/ethernet/rocker/rocker_ofdpa.c
356
if (rocker_tlv_put_be16(desc_info, ROCKER_TLV_OF_DPA_ETHERTYPE,
drivers/net/ethernet/rocker/rocker_ofdpa.c
359
if (rocker_tlv_put(desc_info, ROCKER_TLV_OF_DPA_DST_MAC,
drivers/net/ethernet/rocker/rocker_ofdpa.c
362
if (rocker_tlv_put(desc_info, ROCKER_TLV_OF_DPA_DST_MAC_MASK,
drivers/net/ethernet/rocker/rocker_ofdpa.c
365
if (rocker_tlv_put_be16(desc_info, ROCKER_TLV_OF_DPA_VLAN_ID,
drivers/net/ethernet/rocker/rocker_ofdpa.c
368
if (rocker_tlv_put_be16(desc_info, ROCKER_TLV_OF_DPA_VLAN_ID_MASK,
drivers/net/ethernet/rocker/rocker_ofdpa.c
371
if (rocker_tlv_put_u16(desc_info, ROCKER_TLV_OF_DPA_GOTO_TABLE_ID,
drivers/net/ethernet/rocker/rocker_ofdpa.c
375
rocker_tlv_put_u8(desc_info, ROCKER_TLV_OF_DPA_COPY_CPU_ACTION,
drivers/net/ethernet/rocker/rocker_ofdpa.c
383
ofdpa_cmd_flow_tbl_add_ucast_routing(struct rocker_desc_info *desc_info,
drivers/net/ethernet/rocker/rocker_ofdpa.c
386
if (rocker_tlv_put_be16(desc_info, ROCKER_TLV_OF_DPA_ETHERTYPE,
drivers/net/ethernet/rocker/rocker_ofdpa.c
389
if (rocker_tlv_put_be32(desc_info, ROCKER_TLV_OF_DPA_DST_IP,
drivers/net/ethernet/rocker/rocker_ofdpa.c
392
if (rocker_tlv_put_be32(desc_info, ROCKER_TLV_OF_DPA_DST_IP_MASK,
drivers/net/ethernet/rocker/rocker_ofdpa.c
395
if (rocker_tlv_put_u16(desc_info, ROCKER_TLV_OF_DPA_GOTO_TABLE_ID,
drivers/net/ethernet/rocker/rocker_ofdpa.c
398
if (rocker_tlv_put_u32(desc_info, ROCKER_TLV_OF_DPA_GROUP_ID,
drivers/net/ethernet/rocker/rocker_ofdpa.c
406
ofdpa_cmd_flow_tbl_add_bridge(struct rocker_desc_info *desc_info,
drivers/net/ethernet/rocker/rocker_ofdpa.c
410
rocker_tlv_put(desc_info, ROCKER_TLV_OF_DPA_DST_MAC,
drivers/net/ethernet/rocker/rocker_ofdpa.c
414
rocker_tlv_put(desc_info, ROCKER_TLV_OF_DPA_DST_MAC_MASK,
drivers/net/ethernet/rocker/rocker_ofdpa.c
418
rocker_tlv_put_be16(desc_info, ROCKER_TLV_OF_DPA_VLAN_ID,
drivers/net/ethernet/rocker/rocker_ofdpa.c
422
rocker_tlv_put_u32(desc_info, ROCKER_TLV_OF_DPA_TUNNEL_ID,
drivers/net/ethernet/rocker/rocker_ofdpa.c
425
if (rocker_tlv_put_u16(desc_info, ROCKER_TLV_OF_DPA_GOTO_TABLE_ID,
drivers/net/ethernet/rocker/rocker_ofdpa.c
428
if (rocker_tlv_put_u32(desc_info, ROCKER_TLV_OF_DPA_GROUP_ID,
drivers/net/ethernet/rocker/rocker_ofdpa.c
432
rocker_tlv_put_u8(desc_info, ROCKER_TLV_OF_DPA_COPY_CPU_ACTION,
drivers/net/ethernet/rocker/rocker_ofdpa.c
440
ofdpa_cmd_flow_tbl_add_acl(struct rocker_desc_info *desc_info,
drivers/net/ethernet/rocker/rocker_ofdpa.c
443
if (rocker_tlv_put_u32(desc_info, ROCKER_TLV_OF_DPA_IN_PPORT,
drivers/net/ethernet/rocker/rocker_ofdpa.c
446
if (rocker_tlv_put_u32(desc_info, ROCKER_TLV_OF_DPA_IN_PPORT_MASK,
drivers/net/ethernet/rocker/rocker_ofdpa.c
449
if (rocker_tlv_put(desc_info, ROCKER_TLV_OF_DPA_SRC_MAC,
drivers/net/ethernet/rocker/rocker_ofdpa.c
452
if (rocker_tlv_put(desc_info, ROCKER_TLV_OF_DPA_SRC_MAC_MASK,
drivers/net/ethernet/rocker/rocker_ofdpa.c
455
if (rocker_tlv_put(desc_info, ROCKER_TLV_OF_DPA_DST_MAC,
drivers/net/ethernet/rocker/rocker_ofdpa.c
458
if (rocker_tlv_put(desc_info, ROCKER_TLV_OF_DPA_DST_MAC_MASK,
drivers/net/ethernet/rocker/rocker_ofdpa.c
461
if (rocker_tlv_put_be16(desc_info, ROCKER_TLV_OF_DPA_ETHERTYPE,
drivers/net/ethernet/rocker/rocker_ofdpa.c
464
if (rocker_tlv_put_be16(desc_info, ROCKER_TLV_OF_DPA_VLAN_ID,
drivers/net/ethernet/rocker/rocker_ofdpa.c
467
if (rocker_tlv_put_be16(desc_info, ROCKER_TLV_OF_DPA_VLAN_ID_MASK,
drivers/net/ethernet/rocker/rocker_ofdpa.c
474
if (rocker_tlv_put_u8(desc_info, ROCKER_TLV_OF_DPA_IP_PROTO,
drivers/net/ethernet/rocker/rocker_ofdpa.c
477
if (rocker_tlv_put_u8(desc_info,
drivers/net/ethernet/rocker/rocker_ofdpa.c
481
if (rocker_tlv_put_u8(desc_info, ROCKER_TLV_OF_DPA_IP_DSCP,
drivers/net/ethernet/rocker/rocker_ofdpa.c
484
if (rocker_tlv_put_u8(desc_info,
drivers/net/ethernet/rocker/rocker_ofdpa.c
488
if (rocker_tlv_put_u8(desc_info, ROCKER_TLV_OF_DPA_IP_ECN,
drivers/net/ethernet/rocker/rocker_ofdpa.c
491
if (rocker_tlv_put_u8(desc_info,
drivers/net/ethernet/rocker/rocker_ofdpa.c
499
rocker_tlv_put_u32(desc_info, ROCKER_TLV_OF_DPA_GROUP_ID,
drivers/net/ethernet/rocker/rocker_ofdpa.c
507
struct rocker_desc_info *desc_info,
drivers/net/ethernet/rocker/rocker_ofdpa.c
514
if (rocker_tlv_put_u16(desc_info, ROCKER_TLV_CMD_TYPE, entry->cmd))
drivers/net/ethernet/rocker/rocker_ofdpa.c
516
cmd_info = rocker_tlv_nest_start(desc_info, ROCKER_TLV_CMD_INFO);
drivers/net/ethernet/rocker/rocker_ofdpa.c
519
if (rocker_tlv_put_u16(desc_info, ROCKER_TLV_OF_DPA_TABLE_ID,
drivers/net/ethernet/rocker/rocker_ofdpa.c
522
if (rocker_tlv_put_u32(desc_info, ROCKER_TLV_OF_DPA_PRIORITY,
drivers/net/ethernet/rocker/rocker_ofdpa.c
525
if (rocker_tlv_put_u32(desc_info, ROCKER_TLV_OF_DPA_HARDTIME, 0))
drivers/net/ethernet/rocker/rocker_ofdpa.c
527
if (rocker_tlv_put_u64(desc_info, ROCKER_TLV_OF_DPA_COOKIE,
drivers/net/ethernet/rocker/rocker_ofdpa.c
533
err = ofdpa_cmd_flow_tbl_add_ig_port(desc_info, entry);
drivers/net/ethernet/rocker/rocker_ofdpa.c
536
err = ofdpa_cmd_flow_tbl_add_vlan(desc_info, entry);
drivers/net/ethernet/rocker/rocker_ofdpa.c
539
err = ofdpa_cmd_flow_tbl_add_term_mac(desc_info, entry);
drivers/net/ethernet/rocker/rocker_ofdpa.c
542
err = ofdpa_cmd_flow_tbl_add_ucast_routing(desc_info, entry);
drivers/net/ethernet/rocker/rocker_ofdpa.c
545
err = ofdpa_cmd_flow_tbl_add_bridge(desc_info, entry);
drivers/net/ethernet/rocker/rocker_ofdpa.c
548
err = ofdpa_cmd_flow_tbl_add_acl(desc_info, entry);
drivers/net/ethernet/rocker/rocker_ofdpa.c
558
rocker_tlv_nest_end(desc_info, cmd_info);
drivers/net/ethernet/rocker/rocker_ofdpa.c
564
struct rocker_desc_info *desc_info,
drivers/net/ethernet/rocker/rocker_ofdpa.c
570
if (rocker_tlv_put_u16(desc_info, ROCKER_TLV_CMD_TYPE, entry->cmd))
drivers/net/ethernet/rocker/rocker_ofdpa.c
572
cmd_info = rocker_tlv_nest_start(desc_info, ROCKER_TLV_CMD_INFO);
drivers/net/ethernet/rocker/rocker_ofdpa.c
575
if (rocker_tlv_put_u64(desc_info, ROCKER_TLV_OF_DPA_COOKIE,
drivers/net/ethernet/rocker/rocker_ofdpa.c
578
rocker_tlv_nest_end(desc_info, cmd_info);
drivers/net/ethernet/rocker/rocker_ofdpa.c
584
ofdpa_cmd_group_tbl_add_l2_interface(struct rocker_desc_info *desc_info,
drivers/net/ethernet/rocker/rocker_ofdpa.c
587
if (rocker_tlv_put_u32(desc_info, ROCKER_TLV_OF_DPA_OUT_PPORT,
drivers/net/ethernet/rocker/rocker_ofdpa.c
590
if (rocker_tlv_put_u8(desc_info, ROCKER_TLV_OF_DPA_POP_VLAN,
drivers/net/ethernet/rocker/rocker_ofdpa.c
598
ofdpa_cmd_group_tbl_add_l2_rewrite(struct rocker_desc_info *desc_info,
drivers/net/ethernet/rocker/rocker_ofdpa.c
601
if (rocker_tlv_put_u32(desc_info, ROCKER_TLV_OF_DPA_GROUP_ID_LOWER,
drivers/net/ethernet/rocker/rocker_ofdpa.c
605
rocker_tlv_put(desc_info, ROCKER_TLV_OF_DPA_SRC_MAC,
drivers/net/ethernet/rocker/rocker_ofdpa.c
609
rocker_tlv_put(desc_info, ROCKER_TLV_OF_DPA_DST_MAC,
drivers/net/ethernet/rocker/rocker_ofdpa.c
613
rocker_tlv_put_be16(desc_info, ROCKER_TLV_OF_DPA_VLAN_ID,
drivers/net/ethernet/rocker/rocker_ofdpa.c
621
ofdpa_cmd_group_tbl_add_group_ids(struct rocker_desc_info *desc_info,
drivers/net/ethernet/rocker/rocker_ofdpa.c
627
if (rocker_tlv_put_u16(desc_info, ROCKER_TLV_OF_DPA_GROUP_COUNT,
drivers/net/ethernet/rocker/rocker_ofdpa.c
631
group_ids = rocker_tlv_nest_start(desc_info,
drivers/net/ethernet/rocker/rocker_ofdpa.c
638
if (rocker_tlv_put_u32(desc_info, i + 1, entry->group_ids[i]))
drivers/net/ethernet/rocker/rocker_ofdpa.c
641
rocker_tlv_nest_end(desc_info, group_ids);
drivers/net/ethernet/rocker/rocker_ofdpa.c
647
ofdpa_cmd_group_tbl_add_l3_unicast(struct rocker_desc_info *desc_info,
drivers/net/ethernet/rocker/rocker_ofdpa.c
651
rocker_tlv_put(desc_info, ROCKER_TLV_OF_DPA_SRC_MAC,
drivers/net/ethernet/rocker/rocker_ofdpa.c
655
rocker_tlv_put(desc_info, ROCKER_TLV_OF_DPA_DST_MAC,
drivers/net/ethernet/rocker/rocker_ofdpa.c
659
rocker_tlv_put_be16(desc_info, ROCKER_TLV_OF_DPA_VLAN_ID,
drivers/net/ethernet/rocker/rocker_ofdpa.c
662
if (rocker_tlv_put_u8(desc_info, ROCKER_TLV_OF_DPA_TTL_CHECK,
drivers/net/ethernet/rocker/rocker_ofdpa.c
665
if (rocker_tlv_put_u32(desc_info, ROCKER_TLV_OF_DPA_GROUP_ID_LOWER,
drivers/net/ethernet/rocker/rocker_ofdpa.c
673
struct rocker_desc_info *desc_info,
drivers/net/ethernet/rocker/rocker_ofdpa.c
680
if (rocker_tlv_put_u16(desc_info, ROCKER_TLV_CMD_TYPE, entry->cmd))
drivers/net/ethernet/rocker/rocker_ofdpa.c
682
cmd_info = rocker_tlv_nest_start(desc_info, ROCKER_TLV_CMD_INFO);
drivers/net/ethernet/rocker/rocker_ofdpa.c
686
if (rocker_tlv_put_u32(desc_info, ROCKER_TLV_OF_DPA_GROUP_ID,
drivers/net/ethernet/rocker/rocker_ofdpa.c
692
err = ofdpa_cmd_group_tbl_add_l2_interface(desc_info, entry);
drivers/net/ethernet/rocker/rocker_ofdpa.c
695
err = ofdpa_cmd_group_tbl_add_l2_rewrite(desc_info, entry);
drivers/net/ethernet/rocker/rocker_ofdpa.c
699
err = ofdpa_cmd_group_tbl_add_group_ids(desc_info, entry);
drivers/net/ethernet/rocker/rocker_ofdpa.c
702
err = ofdpa_cmd_group_tbl_add_l3_unicast(desc_info, entry);
drivers/net/ethernet/rocker/rocker_ofdpa.c
712
rocker_tlv_nest_end(desc_info, cmd_info);
drivers/net/ethernet/rocker/rocker_ofdpa.c
718
struct rocker_desc_info *desc_info,
drivers/net/ethernet/rocker/rocker_ofdpa.c
724
if (rocker_tlv_put_u16(desc_info, ROCKER_TLV_CMD_TYPE, entry->cmd))
drivers/net/ethernet/rocker/rocker_ofdpa.c
726
cmd_info = rocker_tlv_nest_start(desc_info, ROCKER_TLV_CMD_INFO);
drivers/net/ethernet/rocker/rocker_ofdpa.c
729
if (rocker_tlv_put_u32(desc_info, ROCKER_TLV_OF_DPA_GROUP_ID,
drivers/net/ethernet/rocker/rocker_ofdpa.c
732
rocker_tlv_nest_end(desc_info, cmd_info);
drivers/net/ethernet/rocker/rocker_tlv.c
32
int rocker_tlv_put(struct rocker_desc_info *desc_info,
drivers/net/ethernet/rocker/rocker_tlv.c
35
int tail_room = desc_info->data_size - desc_info->tlv_size;
drivers/net/ethernet/rocker/rocker_tlv.c
42
tlv = rocker_tlv_start(desc_info);
drivers/net/ethernet/rocker/rocker_tlv.c
43
desc_info->tlv_size += total_size;
drivers/net/ethernet/rocker/rocker_tlv.h
122
const struct rocker_desc_info *desc_info)
drivers/net/ethernet/rocker/rocker_tlv.h
124
rocker_tlv_parse(tb, maxtype, desc_info->data,
drivers/net/ethernet/rocker/rocker_tlv.h
125
desc_info->desc->tlv_size);
drivers/net/ethernet/rocker/rocker_tlv.h
129
rocker_tlv_start(struct rocker_desc_info *desc_info)
drivers/net/ethernet/rocker/rocker_tlv.h
131
return (struct rocker_tlv *) ((char *) desc_info->data +
drivers/net/ethernet/rocker/rocker_tlv.h
132
desc_info->tlv_size);
drivers/net/ethernet/rocker/rocker_tlv.h
135
int rocker_tlv_put(struct rocker_desc_info *desc_info,
drivers/net/ethernet/rocker/rocker_tlv.h
139
rocker_tlv_put_u8(struct rocker_desc_info *desc_info, int attrtype, u8 value)
drivers/net/ethernet/rocker/rocker_tlv.h
143
return rocker_tlv_put(desc_info, attrtype, sizeof(u8), &tmp);
drivers/net/ethernet/rocker/rocker_tlv.h
147
rocker_tlv_put_u16(struct rocker_desc_info *desc_info, int attrtype, u16 value)
drivers/net/ethernet/rocker/rocker_tlv.h
151
return rocker_tlv_put(desc_info, attrtype, sizeof(u16), &tmp);
drivers/net/ethernet/rocker/rocker_tlv.h
155
rocker_tlv_put_be16(struct rocker_desc_info *desc_info, int attrtype, __be16 value)
drivers/net/ethernet/rocker/rocker_tlv.h
159
return rocker_tlv_put(desc_info, attrtype, sizeof(__be16), &tmp);
drivers/net/ethernet/rocker/rocker_tlv.h
163
rocker_tlv_put_u32(struct rocker_desc_info *desc_info, int attrtype, u32 value)
drivers/net/ethernet/rocker/rocker_tlv.h
167
return rocker_tlv_put(desc_info, attrtype, sizeof(u32), &tmp);
drivers/net/ethernet/rocker/rocker_tlv.h
171
rocker_tlv_put_be32(struct rocker_desc_info *desc_info, int attrtype, __be32 value)
drivers/net/ethernet/rocker/rocker_tlv.h
175
return rocker_tlv_put(desc_info, attrtype, sizeof(__be32), &tmp);
drivers/net/ethernet/rocker/rocker_tlv.h
179
rocker_tlv_put_u64(struct rocker_desc_info *desc_info, int attrtype, u64 value)
drivers/net/ethernet/rocker/rocker_tlv.h
183
return rocker_tlv_put(desc_info, attrtype, sizeof(u64), &tmp);
drivers/net/ethernet/rocker/rocker_tlv.h
187
rocker_tlv_nest_start(struct rocker_desc_info *desc_info, int attrtype)
drivers/net/ethernet/rocker/rocker_tlv.h
189
struct rocker_tlv *start = rocker_tlv_start(desc_info);
drivers/net/ethernet/rocker/rocker_tlv.h
191
if (rocker_tlv_put(desc_info, attrtype, 0, NULL) < 0)
drivers/net/ethernet/rocker/rocker_tlv.h
197
static inline void rocker_tlv_nest_end(struct rocker_desc_info *desc_info,
drivers/net/ethernet/rocker/rocker_tlv.h
200
start->len = (char *) rocker_tlv_start(desc_info) - (char *) start;
drivers/net/ethernet/rocker/rocker_tlv.h
203
static inline void rocker_tlv_nest_cancel(struct rocker_desc_info *desc_info,
drivers/net/ethernet/rocker/rocker_tlv.h
206
desc_info->tlv_size = (const char *) start - desc_info->data;
drivers/net/ethernet/ti/netcp_core.c
116
static void get_desc_info(u32 *desc_info, u32 *pkt_info,
drivers/net/ethernet/ti/netcp_core.c
1161
set_words(&pkt_len, 1, &desc->desc_info);
drivers/net/ethernet/ti/netcp_core.c
119
*desc_info = le32_to_cpu(desc->desc_info);
drivers/net/ethernet/ti/netcp_core.c
158
static void set_desc_info(u32 desc_info, u32 pkt_info,
drivers/net/ethernet/ti/netcp_core.c
161
desc->desc_info = cpu_to_le32(desc_info);
drivers/net/ethernet/ti/netcp_core.c
855
u32 desc_info, pkt_info;
drivers/net/ethernet/ti/netcp_core.c
908
desc_info = KNAV_DMA_DESC_PS_INFO_IN_DESC;
drivers/net/ethernet/ti/netcp_core.c
909
desc_info |= buf_len & KNAV_DMA_DESC_PKT_LEN_MASK;
drivers/net/ethernet/ti/netcp_core.c
917
set_desc_info(desc_info, pkt_info, hwdesc);
drivers/net/wireless/ath/ath12k/dp.c
969
struct ath12k_rx_desc_info *desc_info;
drivers/net/wireless/ath/ath12k/dp.c
989
desc_info = dp->rxbaddr[i];
drivers/net/wireless/ath/ath12k/dp.c
992
if (!desc_info[j].in_use) {
drivers/net/wireless/ath/ath12k/dp.c
993
list_del(&desc_info[j].list);
drivers/net/wireless/ath/ath12k/dp.c
997
skb = desc_info[j].skb;
drivers/net/wireless/ath/ath12k/wifi7/dp_mon.c
2645
struct ath12k_rx_desc_info *desc_info;
drivers/net/wireless/ath/ath12k/wifi7/dp_mon.c
2692
desc_info = ath12k_dp_get_rx_desc(ar->ab->dp,
drivers/net/wireless/ath/ath12k/wifi7/dp_mon.c
2694
tail_rx_desc = (struct hal_rx_desc *)(desc_info->skb)->data;
drivers/net/wireless/ath/ath12k/wifi7/dp_mon.c
2708
desc_info =
drivers/net/wireless/ath/ath12k/wifi7/dp_mon.c
2710
msdu = desc_info->skb;
drivers/net/wireless/ath/ath12k/wifi7/dp_mon.c
2784
desc_info->skb = NULL;
drivers/net/wireless/ath/ath12k/wifi7/dp_mon.c
2785
list_add_tail(&desc_info->list, used_list);
drivers/net/wireless/ath/ath12k/wifi7/dp_rx.c
1294
struct ath12k_rx_desc_info *desc_info;
drivers/net/wireless/ath/ath12k/wifi7/dp_rx.c
1299
desc_info = (struct ath12k_rx_desc_info *)((unsigned long)desc_va);
drivers/net/wireless/ath/ath12k/wifi7/dp_rx.c
1302
if (!desc_info) {
drivers/net/wireless/ath/ath12k/wifi7/dp_rx.c
1303
desc_info = ath12k_dp_get_rx_desc(dp, cookie);
drivers/net/wireless/ath/ath12k/wifi7/dp_rx.c
1304
if (!desc_info) {
drivers/net/wireless/ath/ath12k/wifi7/dp_rx.c
1312
if (desc_info->magic != ATH12K_DP_RX_DESC_MAGIC)
drivers/net/wireless/ath/ath12k/wifi7/dp_rx.c
1315
msdu = desc_info->skb;
drivers/net/wireless/ath/ath12k/wifi7/dp_rx.c
1316
desc_info->skb = NULL;
drivers/net/wireless/ath/ath12k/wifi7/dp_rx.c
1318
list_add_tail(&desc_info->list, used_list);
drivers/net/wireless/ath/ath12k/wifi7/dp_rx.c
1369
struct ath12k_rx_desc_info *desc_info;
drivers/net/wireless/ath/ath12k/wifi7/dp_rx.c
1378
desc_info = (struct ath12k_rx_desc_info *)(uintptr_t)desc_va;
drivers/net/wireless/ath/ath12k/wifi7/dp_rx.c
1379
if (!desc_info) {
drivers/net/wireless/ath/ath12k/wifi7/dp_rx.c
1384
desc_info = ath12k_dp_get_rx_desc(dp, cookie);
drivers/net/wireless/ath/ath12k/wifi7/dp_rx.c
1385
if (!desc_info) {
drivers/net/wireless/ath/ath12k/wifi7/dp_rx.c
1392
if (desc_info->magic != ATH12K_DP_RX_DESC_MAGIC) {
drivers/net/wireless/ath/ath12k/wifi7/dp_rx.c
1394
desc_info->magic);
drivers/net/wireless/ath/ath12k/wifi7/dp_rx.c
1398
msdu = desc_info->skb;
drivers/net/wireless/ath/ath12k/wifi7/dp_rx.c
1399
desc_info->skb = NULL;
drivers/net/wireless/ath/ath12k/wifi7/dp_rx.c
1400
list_add_tail(&desc_info->list, list);
drivers/net/wireless/ath/ath12k/wifi7/dp_rx.c
1912
struct ath12k_rx_desc_info *desc_info;
drivers/net/wireless/ath/ath12k/wifi7/dp_rx.c
1943
desc_info = err_info.rx_desc;
drivers/net/wireless/ath/ath12k/wifi7/dp_rx.c
1946
if (!desc_info) {
drivers/net/wireless/ath/ath12k/wifi7/dp_rx.c
1947
desc_info = ath12k_dp_get_rx_desc(dp, err_info.cookie);
drivers/net/wireless/ath/ath12k/wifi7/dp_rx.c
1948
if (!desc_info) {
drivers/net/wireless/ath/ath12k/wifi7/dp_rx.c
1955
if (desc_info->magic != ATH12K_DP_RX_DESC_MAGIC)
drivers/net/wireless/ath/ath12k/wifi7/dp_rx.c
1958
msdu = desc_info->skb;
drivers/net/wireless/ath/ath12k/wifi7/dp_rx.c
1959
desc_info->skb = NULL;
drivers/net/wireless/ath/ath12k/wifi7/dp_rx.c
1961
device_id = desc_info->device_id;
drivers/net/wireless/ath/ath12k/wifi7/dp_rx.c
1973
list_add_tail(&desc_info->list, &rx_desc_used_list[device_id]);
drivers/net/wireless/ath/ath12k/wifi7/dp_rx.c
662
struct ath12k_rx_desc_info *desc_info;
drivers/net/wireless/ath/ath12k/wifi7/dp_rx.c
701
desc_info = (struct ath12k_rx_desc_info *)((unsigned long)desc_va);
drivers/net/wireless/ath/ath12k/wifi7/dp_rx.c
706
if (desc_info->skb) {
drivers/net/wireless/ath/ath12k/wifi7/dp_rx.c
707
dev_kfree_skb_any(desc_info->skb);
drivers/net/wireless/ath/ath12k/wifi7/dp_rx.c
708
desc_info->skb = NULL;
drivers/net/wireless/ath/ath12k/wifi7/dp_rx.c
715
if (!desc_info) {
drivers/net/wireless/ath/ath12k/wifi7/dp_rx.c
716
desc_info = ath12k_dp_get_rx_desc(partner_dp, cookie);
drivers/net/wireless/ath/ath12k/wifi7/dp_rx.c
717
if (!desc_info) {
drivers/net/wireless/ath/ath12k/wifi7/dp_rx.c
724
if (desc_info->magic != ATH12K_DP_RX_DESC_MAGIC)
drivers/net/wireless/ath/ath12k/wifi7/dp_rx.c
727
msdu = desc_info->skb;
drivers/net/wireless/ath/ath12k/wifi7/dp_rx.c
728
desc_info->skb = NULL;
drivers/net/wireless/ath/ath12k/wifi7/dp_rx.c
730
list_add_tail(&desc_info->list, &rx_desc_used_list[device_id]);
drivers/net/wireless/ath/ath12k/wifi7/dp_rx.c
862
struct ath12k_rx_desc_info *desc_info;
drivers/net/wireless/ath/ath12k/wifi7/dp_rx.c
902
desc_info = list_first_entry_or_null(&dp->rx_desc_free_list,
drivers/net/wireless/ath/ath12k/wifi7/dp_rx.c
905
if (!desc_info) {
drivers/net/wireless/ath/ath12k/wifi7/dp_rx.c
912
desc_info->skb = defrag_skb;
drivers/net/wireless/ath/ath12k/wifi7/dp_rx.c
913
desc_info->in_use = true;
drivers/net/wireless/ath/ath12k/wifi7/dp_rx.c
915
list_del(&desc_info->list);
drivers/net/wireless/ath/ath12k/wifi7/dp_rx.c
921
desc_info->cookie,
drivers/net/wireless/ath/ath12k/wifi7/dp_rx.c
981
desc_info->in_use = false;
drivers/net/wireless/ath/ath12k/wifi7/dp_rx.c
982
desc_info->skb = NULL;
drivers/net/wireless/ath/ath12k/wifi7/dp_rx.c
983
list_add_tail(&desc_info->list, &dp->rx_desc_free_list);
drivers/net/wireless/mediatek/mt76/dma.c
499
u32 ctrl, desc_info, buf1;
drivers/net/wireless/mediatek/mt76/dma.c
514
desc_info = le32_to_cpu(desc->info);
drivers/net/wireless/mediatek/mt76/dma.c
516
*info = desc_info;
drivers/net/wireless/mediatek/mt76/dma.c
519
mt76_dma_should_drop_buf(drop, ctrl, buf1, desc_info);
drivers/net/wireless/realtek/rtw89/core.c
1024
struct rtw89_tx_desc_info *desc_info = &tx_req->desc_info;
drivers/net/wireless/realtek/rtw89/core.c
1032
desc_info->pkt_size += IEEE80211_HT_CTL_LEN;
drivers/net/wireless/realtek/rtw89/core.c
1033
desc_info->a_ctrl_bsr = true;
drivers/net/wireless/realtek/rtw89/core.c
1036
if (!rtwvif_link || rtwvif_link->last_a_ctrl == desc_info->a_ctrl_bsr)
drivers/net/wireless/realtek/rtw89/core.c
1039
rtwvif_link->last_a_ctrl = desc_info->a_ctrl_bsr;
drivers/net/wireless/realtek/rtw89/core.c
1040
desc_info->bk = true;
drivers/net/wireless/realtek/rtw89/core.c
1091
struct rtw89_tx_desc_info *desc_info = &tx_req->desc_info;
drivers/net/wireless/realtek/rtw89/core.c
1098
qsel = desc_info->hiq ? RTW89_TX_QSEL_B0_HI : rtw89_core_get_qsel(rtwdev, tid);
drivers/net/wireless/realtek/rtw89/core.c
1101
desc_info->ch_dma = ch_dma;
drivers/net/wireless/realtek/rtw89/core.c
1102
desc_info->tid_indicate = tid_indicate;
drivers/net/wireless/realtek/rtw89/core.c
1103
desc_info->qsel = qsel;
drivers/net/wireless/realtek/rtw89/core.c
1104
desc_info->sw_mld = false;
drivers/net/wireless/realtek/rtw89/core.c
1105
desc_info->mac_id = rtw89_core_tx_get_mac_id(rtwdev, tx_req);
drivers/net/wireless/realtek/rtw89/core.c
1106
desc_info->port = desc_info->hiq ? rtwvif_link->port : 0;
drivers/net/wireless/realtek/rtw89/core.c
1107
desc_info->er_cap = rtwsta_link ? rtwsta_link->er_cap : false;
drivers/net/wireless/realtek/rtw89/core.c
1108
desc_info->stbc = rtwsta_link ? rtwsta_link->ra.stbc_cap : false;
drivers/net/wireless/realtek/rtw89/core.c
1109
desc_info->ldpc = rtwsta_link ? rtwsta_link->ra.ldpc_cap : false;
drivers/net/wireless/realtek/rtw89/core.c
1112
desc_info->en_wd_info = true;
drivers/net/wireless/realtek/rtw89/core.c
1117
desc_info->data_retry_lowest_rate = rtw89_core_get_data_rate(rtwdev, tx_req);
drivers/net/wireless/realtek/rtw89/core.c
1195
struct rtw89_tx_desc_info *desc_info = &tx_req->desc_info;
drivers/net/wireless/realtek/rtw89/core.c
1200
desc_info->use_rate = true;
drivers/net/wireless/realtek/rtw89/core.c
1201
desc_info->dis_data_fb = true;
drivers/net/wireless/realtek/rtw89/core.c
1204
desc_info->data_bw = 3;
drivers/net/wireless/realtek/rtw89/core.c
1206
desc_info->data_bw = 2;
drivers/net/wireless/realtek/rtw89/core.c
1208
desc_info->data_bw = 1;
drivers/net/wireless/realtek/rtw89/core.c
1211
desc_info->gi_ltf = 1;
drivers/net/wireless/realtek/rtw89/core.c
1216
desc_info->data_rate = hw_rate->vht[nss] + mcs;
drivers/net/wireless/realtek/rtw89/core.c
1218
desc_info->data_rate = hw_rate->ht + idx;
drivers/net/wireless/realtek/rtw89/core.c
1222
desc_info->data_rate = idx + (chan->band_type == RTW89_BAND_2G ?
drivers/net/wireless/realtek/rtw89/core.c
1231
struct rtw89_tx_desc_info *desc_info = &tx_req->desc_info;
drivers/net/wireless/realtek/rtw89/core.c
1241
desc_info->pkt_size = skb->len;
drivers/net/wireless/realtek/rtw89/core.c
1251
desc_info->mlo = tx_req->sta->mlo;
drivers/net/wireless/realtek/rtw89/core.c
1253
desc_info->mlo = ieee80211_vif_is_mld(tx_req->vif);
drivers/net/wireless/realtek/rtw89/core.c
1258
if (addr_cam->valid && desc_info->mlo)
drivers/net/wireless/realtek/rtw89/core.c
1267
desc_info->seq = seq;
drivers/net/wireless/realtek/rtw89/core.c
1268
desc_info->is_bmc = is_bmc;
drivers/net/wireless/realtek/rtw89/core.c
1269
desc_info->wd_page = true;
drivers/net/wireless/realtek/rtw89/core.c
1270
desc_info->hiq = info->flags & IEEE80211_TX_CTL_SEND_AFTER_DTIM;
drivers/net/wireless/realtek/rtw89/core.c
1271
desc_info->upd_wlan_hdr = upd_wlan_hdr;
drivers/net/wireless/realtek/rtw89/core.c
1282
rtw89_core_tx_update_llc_hdr(rtwdev, desc_info, skb);
drivers/net/wireless/realtek/rtw89/core.c
1354
tx_req.desc_info.fw_dl = true;
drivers/net/wireless/realtek/rtw89/core.c
1411
*qsel = tx_req.desc_info.qsel;
drivers/net/wireless/realtek/rtw89/core.c
1443
static __le32 rtw89_build_txwd_body0(struct rtw89_tx_desc_info *desc_info)
drivers/net/wireless/realtek/rtw89/core.c
1445
u32 dword = FIELD_PREP(RTW89_TXWD_BODY0_WP_OFFSET, desc_info->wp_offset) |
drivers/net/wireless/realtek/rtw89/core.c
1446
FIELD_PREP(RTW89_TXWD_BODY0_WD_INFO_EN, desc_info->en_wd_info) |
drivers/net/wireless/realtek/rtw89/core.c
1447
FIELD_PREP(RTW89_TXWD_BODY0_CHANNEL_DMA, desc_info->ch_dma) |
drivers/net/wireless/realtek/rtw89/core.c
1448
FIELD_PREP(RTW89_TXWD_BODY0_HDR_LLC_LEN, desc_info->hdr_llc_len) |
drivers/net/wireless/realtek/rtw89/core.c
1449
FIELD_PREP(RTW89_TXWD_BODY0_WD_PAGE, desc_info->wd_page) |
drivers/net/wireless/realtek/rtw89/core.c
1450
FIELD_PREP(RTW89_TXWD_BODY0_FW_DL, desc_info->fw_dl) |
drivers/net/wireless/realtek/rtw89/core.c
1451
FIELD_PREP(RTW89_TXWD_BODY0_HW_SSN_SEL, desc_info->hw_ssn_sel) |
drivers/net/wireless/realtek/rtw89/core.c
1452
FIELD_PREP(RTW89_TXWD_BODY0_HW_SSN_MODE, desc_info->hw_seq_mode);
drivers/net/wireless/realtek/rtw89/core.c
1457
static __le32 rtw89_build_txwd_body0_v1(struct rtw89_tx_desc_info *desc_info)
drivers/net/wireless/realtek/rtw89/core.c
1459
u32 dword = FIELD_PREP(RTW89_TXWD_BODY0_WP_OFFSET_V1, desc_info->wp_offset) |
drivers/net/wireless/realtek/rtw89/core.c
1460
FIELD_PREP(RTW89_TXWD_BODY0_WD_INFO_EN, desc_info->en_wd_info) |
drivers/net/wireless/realtek/rtw89/core.c
1461
FIELD_PREP(RTW89_TXWD_BODY0_CHANNEL_DMA, desc_info->ch_dma) |
drivers/net/wireless/realtek/rtw89/core.c
1462
FIELD_PREP(RTW89_TXWD_BODY0_HDR_LLC_LEN, desc_info->hdr_llc_len) |
drivers/net/wireless/realtek/rtw89/core.c
1463
FIELD_PREP(RTW89_TXWD_BODY0_WD_PAGE, desc_info->wd_page) |
drivers/net/wireless/realtek/rtw89/core.c
1464
FIELD_PREP(RTW89_TXWD_BODY0_FW_DL, desc_info->fw_dl);
drivers/net/wireless/realtek/rtw89/core.c
1469
static __le32 rtw89_build_txwd_body1_v1(struct rtw89_tx_desc_info *desc_info)
drivers/net/wireless/realtek/rtw89/core.c
1471
u32 dword = FIELD_PREP(RTW89_TXWD_BODY1_ADDR_INFO_NUM, desc_info->addr_info_nr) |
drivers/net/wireless/realtek/rtw89/core.c
1472
FIELD_PREP(RTW89_TXWD_BODY1_SEC_KEYID, desc_info->sec_keyid) |
drivers/net/wireless/realtek/rtw89/core.c
1473
FIELD_PREP(RTW89_TXWD_BODY1_SEC_TYPE, desc_info->sec_type);
drivers/net/wireless/realtek/rtw89/core.c
1478
static __le32 rtw89_build_txwd_body2(struct rtw89_tx_desc_info *desc_info)
drivers/net/wireless/realtek/rtw89/core.c
1480
u32 dword = FIELD_PREP(RTW89_TXWD_BODY2_TID_INDICATE, desc_info->tid_indicate) |
drivers/net/wireless/realtek/rtw89/core.c
1481
FIELD_PREP(RTW89_TXWD_BODY2_QSEL, desc_info->qsel) |
drivers/net/wireless/realtek/rtw89/core.c
1482
FIELD_PREP(RTW89_TXWD_BODY2_TXPKT_SIZE, desc_info->pkt_size) |
drivers/net/wireless/realtek/rtw89/core.c
1483
FIELD_PREP(RTW89_TXWD_BODY2_MACID, desc_info->mac_id);
drivers/net/wireless/realtek/rtw89/core.c
1488
static __le32 rtw89_build_txwd_body3(struct rtw89_tx_desc_info *desc_info)
drivers/net/wireless/realtek/rtw89/core.c
1490
u32 dword = FIELD_PREP(RTW89_TXWD_BODY3_SW_SEQ, desc_info->seq) |
drivers/net/wireless/realtek/rtw89/core.c
1491
FIELD_PREP(RTW89_TXWD_BODY3_AGG_EN, desc_info->agg_en) |
drivers/net/wireless/realtek/rtw89/core.c
1492
FIELD_PREP(RTW89_TXWD_BODY3_BK, desc_info->bk);
drivers/net/wireless/realtek/rtw89/core.c
1497
static __le32 rtw89_build_txwd_body4(struct rtw89_tx_desc_info *desc_info)
drivers/net/wireless/realtek/rtw89/core.c
1499
u32 dword = FIELD_PREP(RTW89_TXWD_BODY4_SEC_IV_L0, desc_info->sec_seq[0]) |
drivers/net/wireless/realtek/rtw89/core.c
1500
FIELD_PREP(RTW89_TXWD_BODY4_SEC_IV_L1, desc_info->sec_seq[1]);
drivers/net/wireless/realtek/rtw89/core.c
1505
static __le32 rtw89_build_txwd_body5(struct rtw89_tx_desc_info *desc_info)
drivers/net/wireless/realtek/rtw89/core.c
1507
u32 dword = FIELD_PREP(RTW89_TXWD_BODY5_SEC_IV_H2, desc_info->sec_seq[2]) |
drivers/net/wireless/realtek/rtw89/core.c
1508
FIELD_PREP(RTW89_TXWD_BODY5_SEC_IV_H3, desc_info->sec_seq[3]) |
drivers/net/wireless/realtek/rtw89/core.c
1509
FIELD_PREP(RTW89_TXWD_BODY5_SEC_IV_H4, desc_info->sec_seq[4]) |
drivers/net/wireless/realtek/rtw89/core.c
1510
FIELD_PREP(RTW89_TXWD_BODY5_SEC_IV_H5, desc_info->sec_seq[5]);
drivers/net/wireless/realtek/rtw89/core.c
1515
static __le32 rtw89_build_txwd_body7_v1(struct rtw89_tx_desc_info *desc_info)
drivers/net/wireless/realtek/rtw89/core.c
1517
u32 dword = FIELD_PREP(RTW89_TXWD_BODY7_USE_RATE_V1, desc_info->use_rate) |
drivers/net/wireless/realtek/rtw89/core.c
1518
FIELD_PREP(RTW89_TXWD_BODY7_DATA_BW, desc_info->data_bw) |
drivers/net/wireless/realtek/rtw89/core.c
1519
FIELD_PREP(RTW89_TXWD_BODY7_GI_LTF, desc_info->gi_ltf) |
drivers/net/wireless/realtek/rtw89/core.c
1520
FIELD_PREP(RTW89_TXWD_BODY7_DATA_RATE, desc_info->data_rate);
drivers/net/wireless/realtek/rtw89/core.c
1525
static __le32 rtw89_build_txwd_info0(struct rtw89_tx_desc_info *desc_info)
drivers/net/wireless/realtek/rtw89/core.c
1527
u32 dword = FIELD_PREP(RTW89_TXWD_INFO0_USE_RATE, desc_info->use_rate) |
drivers/net/wireless/realtek/rtw89/core.c
1528
FIELD_PREP(RTW89_TXWD_INFO0_DATA_BW, desc_info->data_bw) |
drivers/net/wireless/realtek/rtw89/core.c
1529
FIELD_PREP(RTW89_TXWD_INFO0_GI_LTF, desc_info->gi_ltf) |
drivers/net/wireless/realtek/rtw89/core.c
1530
FIELD_PREP(RTW89_TXWD_INFO0_DATA_RATE, desc_info->data_rate) |
drivers/net/wireless/realtek/rtw89/core.c
1531
FIELD_PREP(RTW89_TXWD_INFO0_DATA_STBC, desc_info->stbc) |
drivers/net/wireless/realtek/rtw89/core.c
1532
FIELD_PREP(RTW89_TXWD_INFO0_DATA_LDPC, desc_info->ldpc) |
drivers/net/wireless/realtek/rtw89/core.c
1533
FIELD_PREP(RTW89_TXWD_INFO0_DISDATAFB, desc_info->dis_data_fb) |
drivers/net/wireless/realtek/rtw89/core.c
1534
FIELD_PREP(RTW89_TXWD_INFO0_MULTIPORT_ID, desc_info->port);
drivers/net/wireless/realtek/rtw89/core.c
1539
static __le32 rtw89_build_txwd_info0_v1(struct rtw89_tx_desc_info *desc_info)
drivers/net/wireless/realtek/rtw89/core.c
1541
u32 dword = FIELD_PREP(RTW89_TXWD_INFO0_DATA_STBC, desc_info->stbc) |
drivers/net/wireless/realtek/rtw89/core.c
1542
FIELD_PREP(RTW89_TXWD_INFO0_DATA_LDPC, desc_info->ldpc) |
drivers/net/wireless/realtek/rtw89/core.c
1543
FIELD_PREP(RTW89_TXWD_INFO0_DISDATAFB, desc_info->dis_data_fb) |
drivers/net/wireless/realtek/rtw89/core.c
1544
FIELD_PREP(RTW89_TXWD_INFO0_MULTIPORT_ID, desc_info->port) |
drivers/net/wireless/realtek/rtw89/core.c
1545
FIELD_PREP(RTW89_TXWD_INFO0_DATA_ER, desc_info->er_cap) |
drivers/net/wireless/realtek/rtw89/core.c
1551
static __le32 rtw89_build_txwd_info1(struct rtw89_tx_desc_info *desc_info)
drivers/net/wireless/realtek/rtw89/core.c
1553
u32 dword = FIELD_PREP(RTW89_TXWD_INFO1_MAX_AGGNUM, desc_info->ampdu_num) |
drivers/net/wireless/realtek/rtw89/core.c
1554
FIELD_PREP(RTW89_TXWD_INFO1_A_CTRL_BSR, desc_info->a_ctrl_bsr) |
drivers/net/wireless/realtek/rtw89/core.c
1556
desc_info->data_retry_lowest_rate) |
drivers/net/wireless/realtek/rtw89/core.c
1558
desc_info->tx_cnt_lmt_en) |
drivers/net/wireless/realtek/rtw89/core.c
1559
FIELD_PREP(RTW89_TXWD_INFO1_DATA_TXCNT_LMT, desc_info->tx_cnt_lmt);
drivers/net/wireless/realtek/rtw89/core.c
1564
static __le32 rtw89_build_txwd_info2(struct rtw89_tx_desc_info *desc_info)
drivers/net/wireless/realtek/rtw89/core.c
1566
u32 dword = FIELD_PREP(RTW89_TXWD_INFO2_AMPDU_DENSITY, desc_info->ampdu_density) |
drivers/net/wireless/realtek/rtw89/core.c
1567
FIELD_PREP(RTW89_TXWD_INFO2_SEC_TYPE, desc_info->sec_type) |
drivers/net/wireless/realtek/rtw89/core.c
1568
FIELD_PREP(RTW89_TXWD_INFO2_SEC_HW_ENC, desc_info->sec_en) |
drivers/net/wireless/realtek/rtw89/core.c
1569
FIELD_PREP(RTW89_TXWD_INFO2_SEC_CAM_IDX, desc_info->sec_cam_idx);
drivers/net/wireless/realtek/rtw89/core.c
1574
static __le32 rtw89_build_txwd_info2_v1(struct rtw89_tx_desc_info *desc_info)
drivers/net/wireless/realtek/rtw89/core.c
1576
u32 dword = FIELD_PREP(RTW89_TXWD_INFO2_AMPDU_DENSITY, desc_info->ampdu_density) |
drivers/net/wireless/realtek/rtw89/core.c
1577
FIELD_PREP(RTW89_TXWD_INFO2_FORCE_KEY_EN, desc_info->sec_en) |
drivers/net/wireless/realtek/rtw89/core.c
1578
FIELD_PREP(RTW89_TXWD_INFO2_SEC_CAM_IDX, desc_info->sec_cam_idx);
drivers/net/wireless/realtek/rtw89/core.c
1583
static __le32 rtw89_build_txwd_info3(struct rtw89_tx_desc_info *desc_info)
drivers/net/wireless/realtek/rtw89/core.c
1585
u32 dword = FIELD_PREP(RTW89_TXWD_INFO3_SPE_RPT, desc_info->report);
drivers/net/wireless/realtek/rtw89/core.c
1590
static __le32 rtw89_build_txwd_info4(struct rtw89_tx_desc_info *desc_info)
drivers/net/wireless/realtek/rtw89/core.c
1592
bool rts_en = !desc_info->is_bmc;
drivers/net/wireless/realtek/rtw89/core.c
1595
FIELD_PREP(RTW89_TXWD_INFO4_SW_DEFINE, desc_info->sn);
drivers/net/wireless/realtek/rtw89/core.c
1601
struct rtw89_tx_desc_info *desc_info,
drivers/net/wireless/realtek/rtw89/core.c
1607
txwd_body->dword0 = rtw89_build_txwd_body0(desc_info);
drivers/net/wireless/realtek/rtw89/core.c
1608
txwd_body->dword2 = rtw89_build_txwd_body2(desc_info);
drivers/net/wireless/realtek/rtw89/core.c
1609
txwd_body->dword3 = rtw89_build_txwd_body3(desc_info);
drivers/net/wireless/realtek/rtw89/core.c
1611
if (!desc_info->en_wd_info)
drivers/net/wireless/realtek/rtw89/core.c
1615
txwd_info->dword0 = rtw89_build_txwd_info0(desc_info);
drivers/net/wireless/realtek/rtw89/core.c
1616
txwd_info->dword1 = rtw89_build_txwd_info1(desc_info);
drivers/net/wireless/realtek/rtw89/core.c
1617
txwd_info->dword2 = rtw89_build_txwd_info2(desc_info);
drivers/net/wireless/realtek/rtw89/core.c
1618
txwd_info->dword3 = rtw89_build_txwd_info3(desc_info);
drivers/net/wireless/realtek/rtw89/core.c
1619
txwd_info->dword4 = rtw89_build_txwd_info4(desc_info);
drivers/net/wireless/realtek/rtw89/core.c
1625
struct rtw89_tx_desc_info *desc_info,
drivers/net/wireless/realtek/rtw89/core.c
1631
txwd_body->dword0 = rtw89_build_txwd_body0_v1(desc_info);
drivers/net/wireless/realtek/rtw89/core.c
1632
txwd_body->dword1 = rtw89_build_txwd_body1_v1(desc_info);
drivers/net/wireless/realtek/rtw89/core.c
1633
txwd_body->dword2 = rtw89_build_txwd_body2(desc_info);
drivers/net/wireless/realtek/rtw89/core.c
1634
txwd_body->dword3 = rtw89_build_txwd_body3(desc_info);
drivers/net/wireless/realtek/rtw89/core.c
1635
if (desc_info->sec_en) {
drivers/net/wireless/realtek/rtw89/core.c
1636
txwd_body->dword4 = rtw89_build_txwd_body4(desc_info);
drivers/net/wireless/realtek/rtw89/core.c
1637
txwd_body->dword5 = rtw89_build_txwd_body5(desc_info);
drivers/net/wireless/realtek/rtw89/core.c
1639
txwd_body->dword7 = rtw89_build_txwd_body7_v1(desc_info);
drivers/net/wireless/realtek/rtw89/core.c
1641
if (!desc_info->en_wd_info)
drivers/net/wireless/realtek/rtw89/core.c
1645
txwd_info->dword0 = rtw89_build_txwd_info0_v1(desc_info);
drivers/net/wireless/realtek/rtw89/core.c
1646
txwd_info->dword1 = rtw89_build_txwd_info1(desc_info);
drivers/net/wireless/realtek/rtw89/core.c
1647
txwd_info->dword2 = rtw89_build_txwd_info2_v1(desc_info);
drivers/net/wireless/realtek/rtw89/core.c
1648
txwd_info->dword3 = rtw89_build_txwd_info3(desc_info);
drivers/net/wireless/realtek/rtw89/core.c
1649
txwd_info->dword4 = rtw89_build_txwd_info4(desc_info);
drivers/net/wireless/realtek/rtw89/core.c
1653
static __le32 rtw89_build_txwd_body0_v2(struct rtw89_tx_desc_info *desc_info)
drivers/net/wireless/realtek/rtw89/core.c
1655
u32 dword = FIELD_PREP(BE_TXD_BODY0_WP_OFFSET_V1, desc_info->wp_offset) |
drivers/net/wireless/realtek/rtw89/core.c
1656
FIELD_PREP(BE_TXD_BODY0_WDINFO_EN, desc_info->en_wd_info) |
drivers/net/wireless/realtek/rtw89/core.c
1657
FIELD_PREP(BE_TXD_BODY0_CH_DMA, desc_info->ch_dma) |
drivers/net/wireless/realtek/rtw89/core.c
1658
FIELD_PREP(BE_TXD_BODY0_HDR_LLC_LEN, desc_info->hdr_llc_len) |
drivers/net/wireless/realtek/rtw89/core.c
1659
FIELD_PREP(BE_TXD_BODY0_WD_PAGE, desc_info->wd_page);
drivers/net/wireless/realtek/rtw89/core.c
1664
static __le32 rtw89_build_txwd_body1_v2(struct rtw89_tx_desc_info *desc_info)
drivers/net/wireless/realtek/rtw89/core.c
1666
u32 dword = FIELD_PREP(BE_TXD_BODY1_ADDR_INFO_NUM, desc_info->addr_info_nr) |
drivers/net/wireless/realtek/rtw89/core.c
1667
FIELD_PREP(BE_TXD_BODY1_SEC_KEYID, desc_info->sec_keyid) |
drivers/net/wireless/realtek/rtw89/core.c
1668
FIELD_PREP(BE_TXD_BODY1_SEC_TYPE, desc_info->sec_type);
drivers/net/wireless/realtek/rtw89/core.c
1673
static __le32 rtw89_build_txwd_body2_v2(struct rtw89_tx_desc_info *desc_info)
drivers/net/wireless/realtek/rtw89/core.c
1675
u32 dword = FIELD_PREP(BE_TXD_BODY2_TID_IND, desc_info->tid_indicate) |
drivers/net/wireless/realtek/rtw89/core.c
1676
FIELD_PREP(BE_TXD_BODY2_QSEL, desc_info->qsel) |
drivers/net/wireless/realtek/rtw89/core.c
1677
FIELD_PREP(BE_TXD_BODY2_TXPKTSIZE, desc_info->pkt_size) |
drivers/net/wireless/realtek/rtw89/core.c
1678
FIELD_PREP(BE_TXD_BODY2_AGG_EN, desc_info->agg_en) |
drivers/net/wireless/realtek/rtw89/core.c
1679
FIELD_PREP(BE_TXD_BODY2_BK, desc_info->bk) |
drivers/net/wireless/realtek/rtw89/core.c
1680
FIELD_PREP(BE_TXD_BODY2_MACID, desc_info->mac_id);
drivers/net/wireless/realtek/rtw89/core.c
1685
static __le32 rtw89_build_txwd_body2_v3(struct rtw89_tx_desc_info *desc_info)
drivers/net/wireless/realtek/rtw89/core.c
1687
u32 dword = FIELD_PREP(BE_TXD_BODY2_TID_IND_V1, desc_info->tid_indicate) |
drivers/net/wireless/realtek/rtw89/core.c
1688
FIELD_PREP(BE_TXD_BODY2_QSEL_V1, desc_info->qsel) |
drivers/net/wireless/realtek/rtw89/core.c
1689
FIELD_PREP(BE_TXD_BODY2_TXPKTSIZE, desc_info->pkt_size) |
drivers/net/wireless/realtek/rtw89/core.c
1690
FIELD_PREP(BE_TXD_BODY2_AGG_EN, desc_info->agg_en) |
drivers/net/wireless/realtek/rtw89/core.c
1691
FIELD_PREP(BE_TXD_BODY2_MACID_V1, desc_info->mac_id);
drivers/net/wireless/realtek/rtw89/core.c
1696
static __le32 rtw89_build_txwd_body3_v2(struct rtw89_tx_desc_info *desc_info)
drivers/net/wireless/realtek/rtw89/core.c
1698
u32 dword = FIELD_PREP(BE_TXD_BODY3_WIFI_SEQ, desc_info->seq) |
drivers/net/wireless/realtek/rtw89/core.c
1699
FIELD_PREP(BE_TXD_BODY3_MLO_FLAG, desc_info->mlo) |
drivers/net/wireless/realtek/rtw89/core.c
1700
FIELD_PREP(BE_TXD_BODY3_IS_MLD_SW_EN, desc_info->sw_mld);
drivers/net/wireless/realtek/rtw89/core.c
1705
static __le32 rtw89_build_txwd_body3_v3(struct rtw89_tx_desc_info *desc_info)
drivers/net/wireless/realtek/rtw89/core.c
1707
u32 dword = FIELD_PREP(BE_TXD_BODY3_WIFI_SEQ, desc_info->seq) |
drivers/net/wireless/realtek/rtw89/core.c
1708
FIELD_PREP(BE_TXD_BODY3_MLO_FLAG, desc_info->mlo) |
drivers/net/wireless/realtek/rtw89/core.c
1709
FIELD_PREP(BE_TXD_BODY3_IS_MLD_SW_EN, desc_info->sw_mld) |
drivers/net/wireless/realtek/rtw89/core.c
1710
FIELD_PREP(BE_TXD_BODY3_BK_V1, desc_info->bk);
drivers/net/wireless/realtek/rtw89/core.c
1715
static __le32 rtw89_build_txwd_body4_v2(struct rtw89_tx_desc_info *desc_info)
drivers/net/wireless/realtek/rtw89/core.c
1717
u32 dword = FIELD_PREP(BE_TXD_BODY4_SEC_IV_L0, desc_info->sec_seq[0]) |
drivers/net/wireless/realtek/rtw89/core.c
1718
FIELD_PREP(BE_TXD_BODY4_SEC_IV_L1, desc_info->sec_seq[1]);
drivers/net/wireless/realtek/rtw89/core.c
1723
static __le32 rtw89_build_txwd_body5_v2(struct rtw89_tx_desc_info *desc_info)
drivers/net/wireless/realtek/rtw89/core.c
1725
u32 dword = FIELD_PREP(BE_TXD_BODY5_SEC_IV_H2, desc_info->sec_seq[2]) |
drivers/net/wireless/realtek/rtw89/core.c
1726
FIELD_PREP(BE_TXD_BODY5_SEC_IV_H3, desc_info->sec_seq[3]) |
drivers/net/wireless/realtek/rtw89/core.c
1727
FIELD_PREP(BE_TXD_BODY5_SEC_IV_H4, desc_info->sec_seq[4]) |
drivers/net/wireless/realtek/rtw89/core.c
1728
FIELD_PREP(BE_TXD_BODY5_SEC_IV_H5, desc_info->sec_seq[5]);
drivers/net/wireless/realtek/rtw89/core.c
1733
static __le32 rtw89_build_txwd_body6_v2(struct rtw89_tx_desc_info *desc_info)
drivers/net/wireless/realtek/rtw89/core.c
1735
u32 dword = FIELD_PREP(BE_TXD_BODY6_UPD_WLAN_HDR, desc_info->upd_wlan_hdr);
drivers/net/wireless/realtek/rtw89/core.c
1740
static __le32 rtw89_build_txwd_body7_v2(struct rtw89_tx_desc_info *desc_info)
drivers/net/wireless/realtek/rtw89/core.c
1742
u32 dword = FIELD_PREP(BE_TXD_BODY7_USERATE_SEL, desc_info->use_rate) |
drivers/net/wireless/realtek/rtw89/core.c
1743
FIELD_PREP(BE_TXD_BODY7_DATA_BW, desc_info->data_bw) |
drivers/net/wireless/realtek/rtw89/core.c
1744
FIELD_PREP(BE_TXD_BODY7_GI_LTF, desc_info->gi_ltf) |
drivers/net/wireless/realtek/rtw89/core.c
1745
FIELD_PREP(BE_TXD_BODY7_DATA_ER, desc_info->er_cap) |
drivers/net/wireless/realtek/rtw89/core.c
1747
FIELD_PREP(BE_TXD_BODY7_DATARATE, desc_info->data_rate);
drivers/net/wireless/realtek/rtw89/core.c
1752
static __le32 rtw89_build_txwd_info0_v2(struct rtw89_tx_desc_info *desc_info)
drivers/net/wireless/realtek/rtw89/core.c
1754
u32 dword = FIELD_PREP(BE_TXD_INFO0_DATA_STBC, desc_info->stbc) |
drivers/net/wireless/realtek/rtw89/core.c
1755
FIELD_PREP(BE_TXD_INFO0_DATA_LDPC, desc_info->ldpc) |
drivers/net/wireless/realtek/rtw89/core.c
1756
FIELD_PREP(BE_TXD_INFO0_DISDATAFB, desc_info->dis_data_fb) |
drivers/net/wireless/realtek/rtw89/core.c
1757
FIELD_PREP(BE_TXD_INFO0_MULTIPORT_ID, desc_info->port) |
drivers/net/wireless/realtek/rtw89/core.c
1759
desc_info->tx_cnt_lmt_en) |
drivers/net/wireless/realtek/rtw89/core.c
1760
FIELD_PREP(BE_TXD_INFO0_DATA_TXCNT_LMT, desc_info->tx_cnt_lmt);
drivers/net/wireless/realtek/rtw89/core.c
1765
static __le32 rtw89_build_txwd_info1_v2(struct rtw89_tx_desc_info *desc_info)
drivers/net/wireless/realtek/rtw89/core.c
1767
u32 dword = FIELD_PREP(BE_TXD_INFO1_MAX_AGG_NUM, desc_info->ampdu_num) |
drivers/net/wireless/realtek/rtw89/core.c
1768
FIELD_PREP(BE_TXD_INFO1_A_CTRL_BSR, desc_info->a_ctrl_bsr) |
drivers/net/wireless/realtek/rtw89/core.c
1770
desc_info->data_retry_lowest_rate) |
drivers/net/wireless/realtek/rtw89/core.c
1771
FIELD_PREP(BE_TXD_INFO1_SW_DEFINE, desc_info->sn);
drivers/net/wireless/realtek/rtw89/core.c
1776
static __le32 rtw89_build_txwd_info2_v2(struct rtw89_tx_desc_info *desc_info)
drivers/net/wireless/realtek/rtw89/core.c
1778
u32 dword = FIELD_PREP(BE_TXD_INFO2_AMPDU_DENSITY, desc_info->ampdu_density) |
drivers/net/wireless/realtek/rtw89/core.c
1779
FIELD_PREP(BE_TXD_INFO2_FORCE_KEY_EN, desc_info->sec_en) |
drivers/net/wireless/realtek/rtw89/core.c
1780
FIELD_PREP(BE_TXD_INFO2_SEC_CAM_IDX, desc_info->sec_cam_idx) |
drivers/net/wireless/realtek/rtw89/core.c
1781
FIELD_PREP(BE_TXD_INFO2_SPE_RPT_V1, desc_info->report);
drivers/net/wireless/realtek/rtw89/core.c
1786
static __le32 rtw89_build_txwd_info2_v3(struct rtw89_tx_desc_info *desc_info)
drivers/net/wireless/realtek/rtw89/core.c
1788
u32 dword = FIELD_PREP(BE_TXD_INFO2_AMPDU_DENSITY, desc_info->ampdu_density) |
drivers/net/wireless/realtek/rtw89/core.c
1789
FIELD_PREP(BE_TXD_INFO2_FORCE_KEY_EN_V1, desc_info->sec_en) |
drivers/net/wireless/realtek/rtw89/core.c
1790
FIELD_PREP(BE_TXD_INFO2_SEC_CAM_IDX_V1, desc_info->sec_cam_idx);
drivers/net/wireless/realtek/rtw89/core.c
1795
static __le32 rtw89_build_txwd_info4_v2(struct rtw89_tx_desc_info *desc_info)
drivers/net/wireless/realtek/rtw89/core.c
1797
bool rts_en = !desc_info->is_bmc;
drivers/net/wireless/realtek/rtw89/core.c
1805
struct rtw89_tx_desc_info *desc_info,
drivers/net/wireless/realtek/rtw89/core.c
1811
txwd_body->dword0 = rtw89_build_txwd_body0_v2(desc_info);
drivers/net/wireless/realtek/rtw89/core.c
1812
txwd_body->dword1 = rtw89_build_txwd_body1_v2(desc_info);
drivers/net/wireless/realtek/rtw89/core.c
1813
txwd_body->dword2 = rtw89_build_txwd_body2_v2(desc_info);
drivers/net/wireless/realtek/rtw89/core.c
1814
txwd_body->dword3 = rtw89_build_txwd_body3_v2(desc_info);
drivers/net/wireless/realtek/rtw89/core.c
1815
if (desc_info->sec_en) {
drivers/net/wireless/realtek/rtw89/core.c
1816
txwd_body->dword4 = rtw89_build_txwd_body4_v2(desc_info);
drivers/net/wireless/realtek/rtw89/core.c
1817
txwd_body->dword5 = rtw89_build_txwd_body5_v2(desc_info);
drivers/net/wireless/realtek/rtw89/core.c
1819
txwd_body->dword6 = rtw89_build_txwd_body6_v2(desc_info);
drivers/net/wireless/realtek/rtw89/core.c
1820
txwd_body->dword7 = rtw89_build_txwd_body7_v2(desc_info);
drivers/net/wireless/realtek/rtw89/core.c
1822
if (!desc_info->en_wd_info)
drivers/net/wireless/realtek/rtw89/core.c
1826
txwd_info->dword0 = rtw89_build_txwd_info0_v2(desc_info);
drivers/net/wireless/realtek/rtw89/core.c
1827
txwd_info->dword1 = rtw89_build_txwd_info1_v2(desc_info);
drivers/net/wireless/realtek/rtw89/core.c
1828
txwd_info->dword2 = rtw89_build_txwd_info2_v2(desc_info);
drivers/net/wireless/realtek/rtw89/core.c
1829
txwd_info->dword4 = rtw89_build_txwd_info4_v2(desc_info);
drivers/net/wireless/realtek/rtw89/core.c
1834
struct rtw89_tx_desc_info *desc_info,
drivers/net/wireless/realtek/rtw89/core.c
1840
txwd_body->dword0 = rtw89_build_txwd_body0_v2(desc_info);
drivers/net/wireless/realtek/rtw89/core.c
1841
txwd_body->dword1 = rtw89_build_txwd_body1_v2(desc_info);
drivers/net/wireless/realtek/rtw89/core.c
1842
txwd_body->dword2 = rtw89_build_txwd_body2_v3(desc_info);
drivers/net/wireless/realtek/rtw89/core.c
1843
txwd_body->dword3 = rtw89_build_txwd_body3_v3(desc_info);
drivers/net/wireless/realtek/rtw89/core.c
1844
if (desc_info->sec_en) {
drivers/net/wireless/realtek/rtw89/core.c
1845
txwd_body->dword4 = rtw89_build_txwd_body4_v2(desc_info);
drivers/net/wireless/realtek/rtw89/core.c
1846
txwd_body->dword5 = rtw89_build_txwd_body5_v2(desc_info);
drivers/net/wireless/realtek/rtw89/core.c
1848
txwd_body->dword6 = rtw89_build_txwd_body6_v2(desc_info);
drivers/net/wireless/realtek/rtw89/core.c
1849
txwd_body->dword7 = rtw89_build_txwd_body7_v2(desc_info);
drivers/net/wireless/realtek/rtw89/core.c
1851
if (!desc_info->en_wd_info)
drivers/net/wireless/realtek/rtw89/core.c
1855
txwd_info->dword0 = rtw89_build_txwd_info0_v2(desc_info);
drivers/net/wireless/realtek/rtw89/core.c
1856
txwd_info->dword1 = rtw89_build_txwd_info1_v2(desc_info);
drivers/net/wireless/realtek/rtw89/core.c
1857
txwd_info->dword2 = rtw89_build_txwd_info2_v3(desc_info);
drivers/net/wireless/realtek/rtw89/core.c
1858
txwd_info->dword4 = rtw89_build_txwd_info4_v2(desc_info);
drivers/net/wireless/realtek/rtw89/core.c
1862
static __le32 rtw89_build_txwd_fwcmd0_v1(struct rtw89_tx_desc_info *desc_info)
drivers/net/wireless/realtek/rtw89/core.c
1864
u32 dword = FIELD_PREP(AX_RXD_RPKT_LEN_MASK, desc_info->pkt_size) |
drivers/net/wireless/realtek/rtw89/core.c
1865
FIELD_PREP(AX_RXD_RPKT_TYPE_MASK, desc_info->fw_dl ?
drivers/net/wireless/realtek/rtw89/core.c
1873
struct rtw89_tx_desc_info *desc_info,
drivers/net/wireless/realtek/rtw89/core.c
1878
txwd_v1->dword0 = rtw89_build_txwd_fwcmd0_v1(desc_info);
drivers/net/wireless/realtek/rtw89/core.c
1882
static __le32 rtw89_build_txwd_fwcmd0_v2(struct rtw89_tx_desc_info *desc_info)
drivers/net/wireless/realtek/rtw89/core.c
1884
u32 dword = FIELD_PREP(BE_RXD_RPKT_LEN_MASK, desc_info->pkt_size) |
drivers/net/wireless/realtek/rtw89/core.c
1885
FIELD_PREP(BE_RXD_RPKT_TYPE_MASK, desc_info->fw_dl ?
drivers/net/wireless/realtek/rtw89/core.c
1893
struct rtw89_tx_desc_info *desc_info,
drivers/net/wireless/realtek/rtw89/core.c
1898
txwd_v2->dword0 = rtw89_build_txwd_fwcmd0_v2(desc_info);
drivers/net/wireless/realtek/rtw89/core.c
2401
struct rtw89_rx_desc_info *desc_info,
drivers/net/wireless/realtek/rtw89/core.c
2404
u8 band = desc_info->bb_sel ? RTW89_PHY_1 : RTW89_PHY_0;
drivers/net/wireless/realtek/rtw89/core.c
2410
data_rate = desc_info->data_rate;
drivers/net/wireless/realtek/rtw89/core.c
2426
bw = rtw89_hw_to_rate_info_bw(desc_info->bw);
drivers/net/wireless/realtek/rtw89/core.c
2427
gi_ltf = rtw89_rxdesc_to_nl_he_eht_gi(rtwdev, desc_info->gi_ltf, false, eht);
drivers/net/wireless/realtek/rtw89/core.c
2428
ret = rtwdev->ppdu_sts.curr_rx_ppdu_cnt[band] == desc_info->ppdu_cnt &&
drivers/net/wireless/realtek/rtw89/core.c
2439
struct rtw89_rx_desc_info *desc_info;
drivers/net/wireless/realtek/rtw89/core.c
3037
struct rtw89_rx_desc_info *desc_info = iter_data->desc_info;
drivers/net/wireless/realtek/rtw89/core.c
3057
rtwvif_link = rtw89_vif_get_link_inst(rtwvif, desc_info->bb_sel);
drivers/net/wireless/realtek/rtw89/core.c
3098
pkt_stat->beacon_rate = desc_info->data_rate;
drivers/net/wireless/realtek/rtw89/core.c
3107
if (desc_info->data_rate < RTW89_HW_RATE_NR)
drivers/net/wireless/realtek/rtw89/core.c
3108
pkt_stat->rx_rate_cnt[desc_info->data_rate]++;
drivers/net/wireless/realtek/rtw89/core.c
3135
struct rtw89_rx_desc_info *desc_info,
drivers/net/wireless/realtek/rtw89/core.c
3144
iter_data.desc_info = desc_info;
drivers/net/wireless/realtek/rtw89/core.c
3617
static u16 rtw89_core_get_radiotap_he_format(struct rtw89_rx_desc_info *desc_info)
drivers/net/wireless/realtek/rtw89/core.c
3619
switch (desc_info->ppdu_type) {
drivers/net/wireless/realtek/rtw89/core.c
3632
struct rtw89_rx_desc_info *desc_info,
drivers/net/wireless/realtek/rtw89/core.c
3650
he_format = rtw89_core_get_radiotap_he_format(desc_info);
drivers/net/wireless/realtek/rtw89/core.c
3756
struct rtw89_rx_desc_info *desc_info,
drivers/net/wireless/realtek/rtw89/core.c
3774
rtw89_core_update_radiotap_he(rtwdev, desc_info, skb, rx_status, phy_ppdu);
drivers/net/wireless/realtek/rtw89/core.c
3829
struct rtw89_rx_desc_info *desc_info,
drivers/net/wireless/realtek/rtw89/core.c
3837
u8 mac_id = desc_info->mac_id;
drivers/net/wireless/realtek/rtw89/core.c
3907
struct rtw89_rx_desc_info *desc_info,
drivers/net/wireless/realtek/rtw89/core.c
3926
if (!desc_info->hw_dec || !desc_info->addr1_match)
drivers/net/wireless/realtek/rtw89/core.c
3931
rtwsta_link = rtw89_assoc_link_rcu_dereference(rtwdev, desc_info->mac_id);
drivers/net/wireless/realtek/rtw89/core.c
3942
switch (desc_info->sec_type) {
drivers/net/wireless/realtek/rtw89/core.c
3974
struct rtw89_rx_desc_info *desc_info,
drivers/net/wireless/realtek/rtw89/core.c
3985
rtw89_core_rx_stats(rtwdev, phy_ppdu, desc_info, skb_ppdu);
drivers/net/wireless/realtek/rtw89/core.c
3987
rtw89_core_update_radiotap(rtwdev, desc_info, skb_ppdu, rx_status, phy_ppdu);
drivers/net/wireless/realtek/rtw89/core.c
3990
rtw89_core_correct_mcc_chan(rtwdev, desc_info, rx_status, phy_ppdu);
drivers/net/wireless/realtek/rtw89/core.c
4001
struct rtw89_rx_desc_info *desc_info,
drivers/net/wireless/realtek/rtw89/core.c
4004
u8 band = desc_info->bb_sel ? RTW89_PHY_1 : RTW89_PHY_0;
drivers/net/wireless/realtek/rtw89/core.c
4015
if (rtw89_core_rx_ppdu_match(rtwdev, desc_info, rx_status))
drivers/net/wireless/realtek/rtw89/core.c
4018
rtw89_core_rx_to_mac80211(rtwdev, phy_ppdu, desc_info, skb_ppdu, rx_status);
drivers/net/wireless/realtek/rtw89/core.c
4023
struct rtw89_rx_desc_info *desc_info,
drivers/net/wireless/realtek/rtw89/core.c
4028
.to_self = desc_info->addr1_match,
drivers/net/wireless/realtek/rtw89/core.c
4029
.rate = desc_info->data_rate,
drivers/net/wireless/realtek/rtw89/core.c
4030
.mac_id = desc_info->mac_id,
drivers/net/wireless/realtek/rtw89/core.c
4031
.phy_idx = desc_info->bb_sel};
drivers/net/wireless/realtek/rtw89/core.c
4034
if (desc_info->mac_info_valid) {
drivers/net/wireless/realtek/rtw89/core.c
4047
rtw89_core_rx_pending_skb(rtwdev, &phy_ppdu, desc_info, skb);
drivers/net/wireless/realtek/rtw89/core.c
4052
struct rtw89_rx_desc_info *desc_info,
drivers/net/wireless/realtek/rtw89/core.c
4055
switch (desc_info->pkt_type) {
drivers/net/wireless/realtek/rtw89/core.c
4060
rtw89_core_rx_process_ppdu_sts(rtwdev, desc_info, skb);
drivers/net/wireless/realtek/rtw89/core.c
4064
desc_info->pkt_type);
drivers/net/wireless/realtek/rtw89/core.c
4071
struct rtw89_rx_desc_info *desc_info,
drivers/net/wireless/realtek/rtw89/core.c
4080
desc_info->pkt_size = le32_get_bits(rxd_s->dword0, AX_RXD_RPKT_LEN_MASK);
drivers/net/wireless/realtek/rtw89/core.c
4081
desc_info->drv_info_size = le32_get_bits(rxd_s->dword0, AX_RXD_DRV_INFO_SIZE_MASK);
drivers/net/wireless/realtek/rtw89/core.c
4082
desc_info->long_rxdesc = le32_get_bits(rxd_s->dword0, AX_RXD_LONG_RXD);
drivers/net/wireless/realtek/rtw89/core.c
4083
desc_info->pkt_type = le32_get_bits(rxd_s->dword0, AX_RXD_RPKT_TYPE_MASK);
drivers/net/wireless/realtek/rtw89/core.c
4084
desc_info->mac_info_valid = le32_get_bits(rxd_s->dword0, AX_RXD_MAC_INFO_VLD);
drivers/net/wireless/realtek/rtw89/core.c
4086
desc_info->bw = le32_get_bits(rxd_s->dword1, AX_RXD_BW_v1_MASK);
drivers/net/wireless/realtek/rtw89/core.c
4088
desc_info->bw = le32_get_bits(rxd_s->dword1, AX_RXD_BW_MASK);
drivers/net/wireless/realtek/rtw89/core.c
4089
desc_info->data_rate = le32_get_bits(rxd_s->dword1, AX_RXD_RX_DATARATE_MASK);
drivers/net/wireless/realtek/rtw89/core.c
4090
desc_info->gi_ltf = le32_get_bits(rxd_s->dword1, AX_RXD_RX_GI_LTF_MASK);
drivers/net/wireless/realtek/rtw89/core.c
4091
desc_info->user_id = le32_get_bits(rxd_s->dword1, AX_RXD_USER_ID_MASK);
drivers/net/wireless/realtek/rtw89/core.c
4092
desc_info->sr_en = le32_get_bits(rxd_s->dword1, AX_RXD_SR_EN);
drivers/net/wireless/realtek/rtw89/core.c
4093
desc_info->ppdu_cnt = le32_get_bits(rxd_s->dword1, AX_RXD_PPDU_CNT_MASK);
drivers/net/wireless/realtek/rtw89/core.c
4094
desc_info->ppdu_type = le32_get_bits(rxd_s->dword1, AX_RXD_PPDU_TYPE_MASK);
drivers/net/wireless/realtek/rtw89/core.c
4095
desc_info->free_run_cnt = le32_get_bits(rxd_s->dword2, AX_RXD_FREERUN_CNT_MASK);
drivers/net/wireless/realtek/rtw89/core.c
4096
desc_info->icv_err = le32_get_bits(rxd_s->dword3, AX_RXD_ICV_ERR);
drivers/net/wireless/realtek/rtw89/core.c
4097
desc_info->crc32_err = le32_get_bits(rxd_s->dword3, AX_RXD_CRC32_ERR);
drivers/net/wireless/realtek/rtw89/core.c
4098
desc_info->hw_dec = le32_get_bits(rxd_s->dword3, AX_RXD_HW_DEC);
drivers/net/wireless/realtek/rtw89/core.c
4099
desc_info->sw_dec = le32_get_bits(rxd_s->dword3, AX_RXD_SW_DEC);
drivers/net/wireless/realtek/rtw89/core.c
4100
desc_info->addr1_match = le32_get_bits(rxd_s->dword3, AX_RXD_A1_MATCH);
drivers/net/wireless/realtek/rtw89/core.c
4101
desc_info->ampdu = le32_get_bits(rxd_s->dword3, AX_RXD_AMPDU);
drivers/net/wireless/realtek/rtw89/core.c
4103
shift_len = desc_info->shift << 1; /* 2-byte unit */
drivers/net/wireless/realtek/rtw89/core.c
4104
drv_info_len = desc_info->drv_info_size << 3; /* 8-byte unit */
drivers/net/wireless/realtek/rtw89/core.c
4105
desc_info->offset = data_offset + shift_len + drv_info_len;
drivers/net/wireless/realtek/rtw89/core.c
4106
if (desc_info->long_rxdesc)
drivers/net/wireless/realtek/rtw89/core.c
4107
desc_info->rxd_len = sizeof(struct rtw89_rxdesc_long);
drivers/net/wireless/realtek/rtw89/core.c
4109
desc_info->rxd_len = sizeof(struct rtw89_rxdesc_short);
drivers/net/wireless/realtek/rtw89/core.c
4110
desc_info->ready = true;
drivers/net/wireless/realtek/rtw89/core.c
4112
if (!desc_info->long_rxdesc)
drivers/net/wireless/realtek/rtw89/core.c
4116
desc_info->frame_type = le32_get_bits(rxd_l->dword4, AX_RXD_TYPE_MASK);
drivers/net/wireless/realtek/rtw89/core.c
4117
desc_info->addr_cam_valid = le32_get_bits(rxd_l->dword5, AX_RXD_ADDR_CAM_VLD);
drivers/net/wireless/realtek/rtw89/core.c
4118
desc_info->addr_cam_id = le32_get_bits(rxd_l->dword5, AX_RXD_ADDR_CAM_MASK);
drivers/net/wireless/realtek/rtw89/core.c
4119
desc_info->sec_cam_id = le32_get_bits(rxd_l->dword5, AX_RXD_SEC_CAM_IDX_MASK);
drivers/net/wireless/realtek/rtw89/core.c
4120
desc_info->mac_id = le32_get_bits(rxd_l->dword5, AX_RXD_MAC_ID_MASK);
drivers/net/wireless/realtek/rtw89/core.c
4121
desc_info->rx_pl_id = le32_get_bits(rxd_l->dword5, AX_RXD_RX_PL_ID_MASK);
drivers/net/wireless/realtek/rtw89/core.c
4122
desc_info->sec_type = le32_get_bits(rxd_l->dword7, AX_RXD_SEC_TYPE_MASK);
drivers/net/wireless/realtek/rtw89/core.c
4127
struct rtw89_rx_desc_info *desc_info,
drivers/net/wireless/realtek/rtw89/core.c
4137
desc_info->pkt_size = le32_get_bits(rxd_s->dword0, BE_RXD_RPKT_LEN_MASK);
drivers/net/wireless/realtek/rtw89/core.c
4138
desc_info->drv_info_size = le32_get_bits(rxd_s->dword0, BE_RXD_DRV_INFO_SZ_MASK);
drivers/net/wireless/realtek/rtw89/core.c
4139
desc_info->phy_rpt_size = le32_get_bits(rxd_s->dword0, BE_RXD_PHY_RPT_SZ_MASK);
drivers/net/wireless/realtek/rtw89/core.c
4140
desc_info->hdr_cnv_size = le32_get_bits(rxd_s->dword0, BE_RXD_HDR_CNV_SZ_MASK);
drivers/net/wireless/realtek/rtw89/core.c
4141
desc_info->shift = le32_get_bits(rxd_s->dword0, BE_RXD_SHIFT_MASK);
drivers/net/wireless/realtek/rtw89/core.c
4142
desc_info->long_rxdesc = le32_get_bits(rxd_s->dword0, BE_RXD_LONG_RXD);
drivers/net/wireless/realtek/rtw89/core.c
4143
desc_info->pkt_type = le32_get_bits(rxd_s->dword0, BE_RXD_RPKT_TYPE_MASK);
drivers/net/wireless/realtek/rtw89/core.c
4144
desc_info->bb_sel = le32_get_bits(rxd_s->dword0, BE_RXD_BB_SEL);
drivers/net/wireless/realtek/rtw89/core.c
4145
if (desc_info->pkt_type == RTW89_CORE_RX_TYPE_PPDU_STAT)
drivers/net/wireless/realtek/rtw89/core.c
4146
desc_info->mac_info_valid = true;
drivers/net/wireless/realtek/rtw89/core.c
4148
desc_info->frame_type = le32_get_bits(rxd_s->dword2, BE_RXD_TYPE_MASK);
drivers/net/wireless/realtek/rtw89/core.c
4149
desc_info->mac_id = le32_get_bits(rxd_s->dword2, BE_RXD_MAC_ID_MASK);
drivers/net/wireless/realtek/rtw89/core.c
4150
desc_info->addr_cam_valid = le32_get_bits(rxd_s->dword2, BE_RXD_ADDR_CAM_VLD);
drivers/net/wireless/realtek/rtw89/core.c
4152
desc_info->sec_type = le32_get_bits(rxd_s->dword3, BE_RXD_SEC_TYPE_MASK);
drivers/net/wireless/realtek/rtw89/core.c
4153
desc_info->icv_err = le32_get_bits(rxd_s->dword3, BE_RXD_ICV_ERR);
drivers/net/wireless/realtek/rtw89/core.c
4154
desc_info->crc32_err = le32_get_bits(rxd_s->dword3, BE_RXD_CRC32_ERR);
drivers/net/wireless/realtek/rtw89/core.c
4155
desc_info->hw_dec = le32_get_bits(rxd_s->dword3, BE_RXD_HW_DEC);
drivers/net/wireless/realtek/rtw89/core.c
4156
desc_info->sw_dec = le32_get_bits(rxd_s->dword3, BE_RXD_SW_DEC);
drivers/net/wireless/realtek/rtw89/core.c
4157
desc_info->addr1_match = le32_get_bits(rxd_s->dword3, BE_RXD_A1_MATCH);
drivers/net/wireless/realtek/rtw89/core.c
4158
desc_info->ampdu = le32_get_bits(rxd_s->dword3, BE_RXD_AMPDU);
drivers/net/wireless/realtek/rtw89/core.c
4160
desc_info->bw = le32_get_bits(rxd_s->dword4, BE_RXD_BW_MASK);
drivers/net/wireless/realtek/rtw89/core.c
4161
desc_info->data_rate = le32_get_bits(rxd_s->dword4, BE_RXD_RX_DATARATE_MASK);
drivers/net/wireless/realtek/rtw89/core.c
4162
desc_info->gi_ltf = le32_get_bits(rxd_s->dword4, BE_RXD_RX_GI_LTF_MASK);
drivers/net/wireless/realtek/rtw89/core.c
4163
desc_info->ppdu_cnt = le32_get_bits(rxd_s->dword4, BE_RXD_PPDU_CNT_MASK);
drivers/net/wireless/realtek/rtw89/core.c
4164
desc_info->ppdu_type = le32_get_bits(rxd_s->dword4, BE_RXD_PPDU_TYPE_MASK);
drivers/net/wireless/realtek/rtw89/core.c
4166
desc_info->free_run_cnt = le32_to_cpu(rxd_s->dword5);
drivers/net/wireless/realtek/rtw89/core.c
4168
shift_len = desc_info->shift << 1; /* 2-byte unit */
drivers/net/wireless/realtek/rtw89/core.c
4169
drv_info_len = desc_info->drv_info_size << 3; /* 8-byte unit */
drivers/net/wireless/realtek/rtw89/core.c
4170
phy_rtp_len = desc_info->phy_rpt_size << 3; /* 8-byte unit */
drivers/net/wireless/realtek/rtw89/core.c
4171
hdr_cnv_len = desc_info->hdr_cnv_size << 4; /* 16-byte unit */
drivers/net/wireless/realtek/rtw89/core.c
4172
desc_info->offset = data_offset + shift_len + drv_info_len +
drivers/net/wireless/realtek/rtw89/core.c
4175
if (desc_info->long_rxdesc)
drivers/net/wireless/realtek/rtw89/core.c
4176
desc_info->rxd_len = sizeof(struct rtw89_rxdesc_long_v2);
drivers/net/wireless/realtek/rtw89/core.c
4178
desc_info->rxd_len = sizeof(struct rtw89_rxdesc_short_v2);
drivers/net/wireless/realtek/rtw89/core.c
4179
desc_info->ready = true;
drivers/net/wireless/realtek/rtw89/core.c
4183
desc_info->rxd_len);
drivers/net/wireless/realtek/rtw89/core.c
4184
desc_info->rssi = le32_get_bits(rxd_rpt->dword0, BE_RXD_PHY_RSSI);
drivers/net/wireless/realtek/rtw89/core.c
4187
if (!desc_info->long_rxdesc)
drivers/net/wireless/realtek/rtw89/core.c
4192
desc_info->sr_en = le32_get_bits(rxd_l->dword6, BE_RXD_SR_EN);
drivers/net/wireless/realtek/rtw89/core.c
4193
desc_info->user_id = le32_get_bits(rxd_l->dword6, BE_RXD_USER_ID_MASK);
drivers/net/wireless/realtek/rtw89/core.c
4194
desc_info->addr_cam_id = le32_get_bits(rxd_l->dword6, BE_RXD_ADDR_CAM_MASK);
drivers/net/wireless/realtek/rtw89/core.c
4195
desc_info->sec_cam_id = le32_get_bits(rxd_l->dword6, BE_RXD_SEC_CAM_IDX_MASK);
drivers/net/wireless/realtek/rtw89/core.c
4197
desc_info->rx_pl_id = le32_get_bits(rxd_l->dword7, BE_RXD_RX_PL_ID_MASK);
drivers/net/wireless/realtek/rtw89/core.c
4202
struct rtw89_rx_desc_info *desc_info,
drivers/net/wireless/realtek/rtw89/core.c
4212
desc_info->pkt_size = le32_get_bits(rxd_s->dword0, BE_RXD_RPKT_LEN_MASK);
drivers/net/wireless/realtek/rtw89/core.c
4213
desc_info->drv_info_size = le32_get_bits(rxd_s->dword0, BE_RXD_DRV_INFO_SZ_MASK);
drivers/net/wireless/realtek/rtw89/core.c
4214
desc_info->phy_rpt_size = le32_get_bits(rxd_s->dword0, BE_RXD_PHY_RPT_SZ_MASK);
drivers/net/wireless/realtek/rtw89/core.c
4215
desc_info->hdr_cnv_size = le32_get_bits(rxd_s->dword0, BE_RXD_HDR_CNV_SZ_MASK);
drivers/net/wireless/realtek/rtw89/core.c
4216
desc_info->shift = le32_get_bits(rxd_s->dword0, BE_RXD_SHIFT_MASK);
drivers/net/wireless/realtek/rtw89/core.c
4217
desc_info->long_rxdesc = le32_get_bits(rxd_s->dword0, BE_RXD_LONG_RXD);
drivers/net/wireless/realtek/rtw89/core.c
4218
desc_info->pkt_type = le32_get_bits(rxd_s->dword0, BE_RXD_RPKT_TYPE_MASK);
drivers/net/wireless/realtek/rtw89/core.c
4219
desc_info->bb_sel = le32_get_bits(rxd_s->dword0, BE_RXD_BB_SEL);
drivers/net/wireless/realtek/rtw89/core.c
4220
if (desc_info->pkt_type == RTW89_CORE_RX_TYPE_PPDU_STAT)
drivers/net/wireless/realtek/rtw89/core.c
4221
desc_info->mac_info_valid = true;
drivers/net/wireless/realtek/rtw89/core.c
4223
desc_info->frame_type = le32_get_bits(rxd_s->dword2, BE_RXD_TYPE_MASK);
drivers/net/wireless/realtek/rtw89/core.c
4224
desc_info->mac_id = le32_get_bits(rxd_s->dword2, BE_RXD_MAC_ID_V1);
drivers/net/wireless/realtek/rtw89/core.c
4225
desc_info->addr_cam_valid = le32_get_bits(rxd_s->dword2, BE_RXD_ADDR_CAM_VLD);
drivers/net/wireless/realtek/rtw89/core.c
4227
desc_info->sec_type = le32_get_bits(rxd_s->dword3, BE_RXD_SEC_TYPE_MASK);
drivers/net/wireless/realtek/rtw89/core.c
4228
desc_info->icv_err = le32_get_bits(rxd_s->dword3, BE_RXD_ICV_ERR);
drivers/net/wireless/realtek/rtw89/core.c
4229
desc_info->crc32_err = le32_get_bits(rxd_s->dword3, BE_RXD_CRC32_ERR);
drivers/net/wireless/realtek/rtw89/core.c
4230
desc_info->hw_dec = le32_get_bits(rxd_s->dword3, BE_RXD_HW_DEC);
drivers/net/wireless/realtek/rtw89/core.c
4231
desc_info->sw_dec = le32_get_bits(rxd_s->dword3, BE_RXD_SW_DEC);
drivers/net/wireless/realtek/rtw89/core.c
4232
desc_info->addr1_match = le32_get_bits(rxd_s->dword3, BE_RXD_A1_MATCH);
drivers/net/wireless/realtek/rtw89/core.c
4233
desc_info->ampdu = le32_get_bits(rxd_s->dword3, BE_RXD_AMPDU);
drivers/net/wireless/realtek/rtw89/core.c
4235
desc_info->bw = le32_get_bits(rxd_s->dword4, BE_RXD_BW_MASK);
drivers/net/wireless/realtek/rtw89/core.c
4236
desc_info->data_rate = le32_get_bits(rxd_s->dword4, BE_RXD_RX_DATARATE_MASK);
drivers/net/wireless/realtek/rtw89/core.c
4237
desc_info->gi_ltf = le32_get_bits(rxd_s->dword4, BE_RXD_RX_GI_LTF_MASK);
drivers/net/wireless/realtek/rtw89/core.c
4238
desc_info->ppdu_cnt = le32_get_bits(rxd_s->dword4, BE_RXD_PPDU_CNT_MASK);
drivers/net/wireless/realtek/rtw89/core.c
4239
desc_info->ppdu_type = le32_get_bits(rxd_s->dword4, BE_RXD_PPDU_TYPE_MASK);
drivers/net/wireless/realtek/rtw89/core.c
4241
desc_info->free_run_cnt = le32_to_cpu(rxd_s->dword5);
drivers/net/wireless/realtek/rtw89/core.c
4243
shift_len = desc_info->shift << 1; /* 2-byte unit */
drivers/net/wireless/realtek/rtw89/core.c
4244
drv_info_len = desc_info->drv_info_size << 3; /* 8-byte unit */
drivers/net/wireless/realtek/rtw89/core.c
4245
phy_rtp_len = desc_info->phy_rpt_size << 3; /* 8-byte unit */
drivers/net/wireless/realtek/rtw89/core.c
4246
hdr_cnv_len = desc_info->hdr_cnv_size << 4; /* 16-byte unit */
drivers/net/wireless/realtek/rtw89/core.c
4247
desc_info->offset = data_offset + shift_len + drv_info_len +
drivers/net/wireless/realtek/rtw89/core.c
4250
if (desc_info->long_rxdesc)
drivers/net/wireless/realtek/rtw89/core.c
4251
desc_info->rxd_len = sizeof(struct rtw89_rxdesc_long_v3);
drivers/net/wireless/realtek/rtw89/core.c
4253
desc_info->rxd_len = sizeof(struct rtw89_rxdesc_short_v3);
drivers/net/wireless/realtek/rtw89/core.c
4254
desc_info->ready = true;
drivers/net/wireless/realtek/rtw89/core.c
4258
desc_info->rxd_len);
drivers/net/wireless/realtek/rtw89/core.c
4259
desc_info->rssi = le32_get_bits(rxd_rpt->dword0, BE_RXD_PHY_RSSI);
drivers/net/wireless/realtek/rtw89/core.c
4262
if (!desc_info->long_rxdesc)
drivers/net/wireless/realtek/rtw89/core.c
4267
desc_info->sr_en = le32_get_bits(rxd_l->dword6, BE_RXD_SR_EN);
drivers/net/wireless/realtek/rtw89/core.c
4268
desc_info->user_id = le32_get_bits(rxd_l->dword6, BE_RXD_USER_ID_MASK);
drivers/net/wireless/realtek/rtw89/core.c
4269
desc_info->addr_cam_id = le32_get_bits(rxd_l->dword6, BE_RXD_ADDR_CAM_V1);
drivers/net/wireless/realtek/rtw89/core.c
4270
desc_info->sec_cam_id = le32_get_bits(rxd_l->dword6, BE_RXD_SEC_CAM_IDX_V1);
drivers/net/wireless/realtek/rtw89/core.c
4272
desc_info->rx_pl_id = le32_get_bits(rxd_l->dword7, BE_RXD_RX_PL_ID_MASK);
drivers/net/wireless/realtek/rtw89/core.c
4279
struct rtw89_rx_desc_info *desc_info;
drivers/net/wireless/realtek/rtw89/core.c
4289
struct rtw89_rx_desc_info *desc_info = iter_data->desc_info;
drivers/net/wireless/realtek/rtw89/core.c
4294
rtwsta_link = rtw89_sta_get_link_inst(rtwsta, desc_info->bb_sel);
drivers/net/wireless/realtek/rtw89/core.c
4302
rtwsta_link->rx_hw_rate = desc_info->data_rate;
drivers/net/wireless/realtek/rtw89/core.c
4306
struct rtw89_rx_desc_info *desc_info,
drivers/net/wireless/realtek/rtw89/core.c
4311
if (!desc_info->addr1_match || !desc_info->long_rxdesc)
drivers/net/wireless/realtek/rtw89/core.c
4314
if (desc_info->frame_type != RTW89_RX_TYPE_DATA)
drivers/net/wireless/realtek/rtw89/core.c
4319
iter_data.desc_info = desc_info;
drivers/net/wireless/realtek/rtw89/core.c
4320
iter_data.mac_id = desc_info->mac_id;
drivers/net/wireless/realtek/rtw89/core.c
4328
struct rtw89_rx_desc_info *desc_info,
drivers/net/wireless/realtek/rtw89/core.c
4359
if (desc_info->icv_err || desc_info->crc32_err)
drivers/net/wireless/realtek/rtw89/core.c
4362
if (desc_info->hw_dec &&
drivers/net/wireless/realtek/rtw89/core.c
4363
!(desc_info->sw_dec || desc_info->icv_err))
drivers/net/wireless/realtek/rtw89/core.c
4366
if (desc_info->ampdu) {
drivers/net/wireless/realtek/rtw89/core.c
4368
rx_status->ampdu_reference = desc_info->ppdu_cnt;
drivers/net/wireless/realtek/rtw89/core.c
4371
rx_status->bw = rtw89_hw_to_rate_info_bw(desc_info->bw);
drivers/net/wireless/realtek/rtw89/core.c
4373
data_rate = desc_info->data_rate;
drivers/net/wireless/realtek/rtw89/core.c
4382
if (desc_info->gi_ltf)
drivers/net/wireless/realtek/rtw89/core.c
4388
if (desc_info->gi_ltf)
drivers/net/wireless/realtek/rtw89/core.c
4404
gi = rtw89_rxdesc_to_nl_he_eht_gi(rtwdev, desc_info->gi_ltf, true, eht);
drivers/net/wireless/realtek/rtw89/core.c
4410
rx_status->mactime = desc_info->free_run_cnt;
drivers/net/wireless/realtek/rtw89/core.c
4412
rtw89_chip_phy_rpt_to_rssi(rtwdev, desc_info, rx_status);
drivers/net/wireless/realtek/rtw89/core.c
4413
rtw89_core_stats_sta_rx_status(rtwdev, desc_info, rx_status);
drivers/net/wireless/realtek/rtw89/core.c
4441
struct rtw89_rx_desc_info *desc_info)
drivers/net/wireless/realtek/rtw89/core.c
4444
u8 band = desc_info->bb_sel ? RTW89_PHY_1 : RTW89_PHY_0;
drivers/net/wireless/realtek/rtw89/core.c
4451
rtw89_core_rx_to_mac80211(rtwdev, NULL, desc_info, skb_ppdu, rx_status);
drivers/net/wireless/realtek/rtw89/core.c
4491
struct rtw89_rx_desc_info *desc_info,
drivers/net/wireless/realtek/rtw89/core.c
4496
u8 ppdu_cnt = desc_info->ppdu_cnt;
drivers/net/wireless/realtek/rtw89/core.c
4497
u8 band = desc_info->bb_sel ? RTW89_PHY_1 : RTW89_PHY_0;
drivers/net/wireless/realtek/rtw89/core.c
4499
if (desc_info->pkt_type != RTW89_CORE_RX_TYPE_WIFI) {
drivers/net/wireless/realtek/rtw89/core.c
4500
rtw89_core_rx_process_report(rtwdev, desc_info, skb);
drivers/net/wireless/realtek/rtw89/core.c
4505
rtw89_core_flush_ppdu_rx_queue(rtwdev, desc_info);
drivers/net/wireless/realtek/rtw89/core.c
4511
rtw89_core_update_rx_status(rtwdev, skb, desc_info, rx_status);
drivers/net/wireless/realtek/rtw89/core.c
4512
rtw89_core_rx_pkt_hdl(rtwdev, skb, desc_info);
drivers/net/wireless/realtek/rtw89/core.c
4514
if (!rtw89_core_skb_pn_valid(rtwdev, desc_info, skb))
drivers/net/wireless/realtek/rtw89/core.c
4517
if (desc_info->long_rxdesc &&
drivers/net/wireless/realtek/rtw89/core.c
4518
BIT(desc_info->frame_type) & PPDU_FILTER_BITMAP)
drivers/net/wireless/realtek/rtw89/core.c
4521
rtw89_core_rx_to_mac80211(rtwdev, NULL, desc_info, skb, rx_status);
drivers/net/wireless/realtek/rtw89/core.c
605
struct rtw89_tx_desc_info *desc_info = &tx_req->desc_info;
drivers/net/wireless/realtek/rtw89/core.c
613
desc_info->bk = true;
drivers/net/wireless/realtek/rtw89/core.c
635
desc_info->agg_en = true;
drivers/net/wireless/realtek/rtw89/core.c
636
desc_info->ampdu_density = link_sta->ht_cap.ampdu_density;
drivers/net/wireless/realtek/rtw89/core.c
637
desc_info->ampdu_num = ampdu_num;
drivers/net/wireless/realtek/rtw89/core.c
651
struct rtw89_tx_desc_info *desc_info = &tx_req->desc_info;
drivers/net/wireless/realtek/rtw89/core.c
693
desc_info->sec_en = true;
drivers/net/wireless/realtek/rtw89/core.c
694
desc_info->sec_keyid = key->keyidx;
drivers/net/wireless/realtek/rtw89/core.c
695
desc_info->sec_type = sec_type;
drivers/net/wireless/realtek/rtw89/core.c
696
desc_info->sec_cam_idx = sec_cam->sec_cam_idx;
drivers/net/wireless/realtek/rtw89/core.c
702
desc_info->sec_seq[0] = pn64;
drivers/net/wireless/realtek/rtw89/core.c
703
desc_info->sec_seq[1] = pn64 >> 8;
drivers/net/wireless/realtek/rtw89/core.c
704
desc_info->sec_seq[2] = pn64 >> 16;
drivers/net/wireless/realtek/rtw89/core.c
705
desc_info->sec_seq[3] = pn64 >> 24;
drivers/net/wireless/realtek/rtw89/core.c
706
desc_info->sec_seq[4] = pn64 >> 32;
drivers/net/wireless/realtek/rtw89/core.c
707
desc_info->sec_seq[5] = pn64 >> 40;
drivers/net/wireless/realtek/rtw89/core.c
708
desc_info->wp_offset = 1; /* in unit of 8 bytes for security header */
drivers/net/wireless/realtek/rtw89/core.c
754
struct rtw89_tx_desc_info *desc_info = &tx_req->desc_info;
drivers/net/wireless/realtek/rtw89/core.c
758
if (desc_info->mlo && !desc_info->sw_mld) {
drivers/net/wireless/realtek/rtw89/core.c
772
struct rtw89_tx_desc_info *desc_info,
drivers/net/wireless/realtek/rtw89/core.c
778
desc_info->hdr_llc_len = ieee80211_hdrlen(fc);
drivers/net/wireless/realtek/rtw89/core.c
779
desc_info->hdr_llc_len >>= 1; /* in unit of 2 bytes */
drivers/net/wireless/realtek/rtw89/core.c
870
struct rtw89_tx_desc_info *desc_info = &tx_req->desc_info;
drivers/net/wireless/realtek/rtw89/core.c
879
desc_info->qsel = qsel;
drivers/net/wireless/realtek/rtw89/core.c
880
desc_info->ch_dma = ch_dma;
drivers/net/wireless/realtek/rtw89/core.c
881
desc_info->sw_mld = true;
drivers/net/wireless/realtek/rtw89/core.c
882
desc_info->port = desc_info->hiq ? rtwvif_link->port : 0;
drivers/net/wireless/realtek/rtw89/core.c
883
desc_info->mac_id = rtw89_core_tx_get_mac_id(rtwdev, tx_req);
drivers/net/wireless/realtek/rtw89/core.c
884
desc_info->hw_ssn_sel = RTW89_MGMT_HW_SSN_SEL;
drivers/net/wireless/realtek/rtw89/core.c
885
desc_info->hw_seq_mode = RTW89_MGMT_HW_SEQ_MODE;
drivers/net/wireless/realtek/rtw89/core.c
888
desc_info->en_wd_info = true;
drivers/net/wireless/realtek/rtw89/core.c
889
desc_info->use_rate = true;
drivers/net/wireless/realtek/rtw89/core.c
890
desc_info->dis_data_fb = true;
drivers/net/wireless/realtek/rtw89/core.c
891
desc_info->data_rate = rtw89_core_get_mgmt_rate(rtwdev, tx_req, chan);
drivers/net/wireless/realtek/rtw89/core.c
895
rtw89_core_tx_update_llc_hdr(rtwdev, desc_info, skb);
drivers/net/wireless/realtek/rtw89/core.c
900
desc_info->data_rate, chan->channel, chan->band_type,
drivers/net/wireless/realtek/rtw89/core.c
908
struct rtw89_tx_desc_info *desc_info = &tx_req->desc_info;
drivers/net/wireless/realtek/rtw89/core.c
910
desc_info->is_bmc = false;
drivers/net/wireless/realtek/rtw89/core.c
911
desc_info->wd_page = false;
drivers/net/wireless/realtek/rtw89/core.c
912
desc_info->ch_dma = RTW89_DMA_H2C;
drivers/net/wireless/realtek/rtw89/core.h
1306
struct rtw89_tx_desc_info desc_info;
drivers/net/wireless/realtek/rtw89/core.h
3901
struct rtw89_rx_desc_info *desc_info,
drivers/net/wireless/realtek/rtw89/core.h
3918
struct rtw89_rx_desc_info *desc_info,
drivers/net/wireless/realtek/rtw89/core.h
3921
struct rtw89_tx_desc_info *desc_info,
drivers/net/wireless/realtek/rtw89/core.h
3924
struct rtw89_tx_desc_info *desc_info,
drivers/net/wireless/realtek/rtw89/core.h
7697
struct rtw89_rx_desc_info *desc_info,
drivers/net/wireless/realtek/rtw89/core.h
7703
chip->ops->phy_rpt_to_rssi(rtwdev, desc_info, rx_status);
drivers/net/wireless/realtek/rtw89/core.h
7801
struct rtw89_rx_desc_info *desc_info,
drivers/net/wireless/realtek/rtw89/core.h
7806
chip->ops->query_rxdesc(rtwdev, desc_info, data, data_offset);
drivers/net/wireless/realtek/rtw89/core.h
7811
struct rtw89_tx_desc_info *desc_info,
drivers/net/wireless/realtek/rtw89/core.h
7816
chip->ops->fill_txdesc(rtwdev, desc_info, txdesc);
drivers/net/wireless/realtek/rtw89/core.h
7821
struct rtw89_tx_desc_info *desc_info,
drivers/net/wireless/realtek/rtw89/core.h
7826
chip->ops->fill_txdesc_fwcmd(rtwdev, desc_info, txdesc);
drivers/net/wireless/realtek/rtw89/core.h
8074
struct rtw89_tx_desc_info *desc_info,
drivers/net/wireless/realtek/rtw89/core.h
8077
struct rtw89_tx_desc_info *desc_info,
drivers/net/wireless/realtek/rtw89/core.h
8080
struct rtw89_tx_desc_info *desc_info,
drivers/net/wireless/realtek/rtw89/core.h
8083
struct rtw89_tx_desc_info *desc_info,
drivers/net/wireless/realtek/rtw89/core.h
8086
struct rtw89_tx_desc_info *desc_info,
drivers/net/wireless/realtek/rtw89/core.h
8089
struct rtw89_tx_desc_info *desc_info,
drivers/net/wireless/realtek/rtw89/core.h
8095
struct rtw89_rx_desc_info *desc_info,
drivers/net/wireless/realtek/rtw89/core.h
8098
struct rtw89_rx_desc_info *desc_info,
drivers/net/wireless/realtek/rtw89/core.h
8101
struct rtw89_rx_desc_info *desc_info,
drivers/net/wireless/realtek/rtw89/core.h
8104
struct rtw89_rx_desc_info *desc_info,
drivers/net/wireless/realtek/rtw89/mac.h
1793
tx_req->desc_info.report = true;
drivers/net/wireless/realtek/rtw89/mac.h
1795
tx_req->desc_info.sn = atomic_inc_return(&tx_rpt->sn) &
drivers/net/wireless/realtek/rtw89/mac.h
1797
tx_req->desc_info.tx_cnt_lmt_en = true;
drivers/net/wireless/realtek/rtw89/mac.h
1798
tx_req->desc_info.tx_cnt_lmt = 8;
drivers/net/wireless/realtek/rtw89/pci.c
1501
struct rtw89_tx_desc_info *desc_info = &tx_req->desc_info;
drivers/net/wireless/realtek/rtw89/pci.c
1507
bool en_wd_info = desc_info->en_wd_info;
drivers/net/wireless/realtek/rtw89/pci.c
1537
dma, &desc_info->addr_info_nr);
drivers/net/wireless/realtek/rtw89/pci.c
1541
rtw89_chip_fill_txdesc(rtwdev, desc_info, txwd->vaddr);
drivers/net/wireless/realtek/rtw89/pci.c
1558
struct rtw89_tx_desc_info *desc_info = &tx_req->desc_info;
drivers/net/wireless/realtek/rtw89/pci.c
1569
rtw89_chip_fill_txdesc_fwcmd(rtwdev, desc_info, txdesc);
drivers/net/wireless/realtek/rtw89/pci.c
1682
struct rtw89_tx_desc_info *desc_info = &tx_req->desc_info;
drivers/net/wireless/realtek/rtw89/pci.c
1685
ret = rtw89_pci_tx_write(rtwdev, tx_req, desc_info->ch_dma);
drivers/net/wireless/realtek/rtw89/pci.c
1687
rtw89_err(rtwdev, "failed to TX Queue %d\n", desc_info->ch_dma);
drivers/net/wireless/realtek/rtw89/pci.c
282
const struct rtw89_rx_desc_info *desc_info)
drivers/net/wireless/realtek/rtw89/pci.c
289
rx_info->len, desc_info->pkt_size, offset, fs, ls);
drivers/net/wireless/realtek/rtw89/pci.c
294
copy_len = desc_info->pkt_size;
drivers/net/wireless/realtek/rtw89/pci.c
324
struct rtw89_rx_desc_info *desc_info = &rx_ring->diliver_desc;
drivers/net/wireless/realtek/rtw89/pci.c
362
if (desc_info->ready) {
drivers/net/wireless/realtek/rtw89/pci.c
367
rtw89_chip_query_rxdesc(rtwdev, desc_info, skb->data, rxinfo_size);
drivers/net/wireless/realtek/rtw89/pci.c
369
new = rtw89_alloc_skb_for_rx(rtwdev, desc_info->pkt_size);
drivers/net/wireless/realtek/rtw89/pci.c
376
offset = desc_info->offset + desc_info->rxd_len;
drivers/net/wireless/realtek/rtw89/pci.c
384
if (!rtw89_skb_put_rx_data(rtwdev, fs, ls, new, skb, offset, rx_info, desc_info))
drivers/net/wireless/realtek/rtw89/pci.c
389
if (!desc_info->ready) {
drivers/net/wireless/realtek/rtw89/pci.c
394
rtw89_core_rx(rtwdev, desc_info, new);
drivers/net/wireless/realtek/rtw89/pci.c
396
desc_info->ready = false;
drivers/net/wireless/realtek/rtw89/pci.c
408
desc_info->ready = false;
drivers/net/wireless/realtek/rtw89/pci.c
650
struct rtw89_rx_desc_info desc_info = {};
drivers/net/wireless/realtek/rtw89/pci.c
677
rtw89_chip_query_rxdesc(rtwdev, &desc_info, skb->data, rxinfo_size);
drivers/net/wireless/realtek/rtw89/pci.c
680
offset = desc_info.offset + desc_info.rxd_len;
drivers/net/wireless/realtek/rtw89/rtw8922a.c
3034
struct rtw89_rx_desc_info *desc_info,
drivers/net/wireless/realtek/rtw89/rtw8922a.c
3037
if (desc_info->rssi <= 0x1 || (desc_info->rssi >> 2) > MAX_RSSI)
drivers/net/wireless/realtek/rtw89/rtw8922a.c
3040
rx_status->signal = (desc_info->rssi >> 2) - MAX_RSSI;
drivers/net/wireless/realtek/rtw89/rtw8922d.c
3183
struct rtw89_rx_desc_info *desc_info,
drivers/net/wireless/realtek/rtw89/rtw8922d.c
3186
if (desc_info->rssi <= 0x1 || (desc_info->rssi >> 2) > MAX_RSSI)
drivers/net/wireless/realtek/rtw89/rtw8922d.c
3189
rx_status->signal = (desc_info->rssi >> 2) - MAX_RSSI;
drivers/net/wireless/realtek/rtw89/txrx.h
857
struct rtw89_tx_desc_info *desc_info = &tx_req->desc_info;
drivers/net/wireless/realtek/rtw89/txrx.h
860
if (desc_info->hiq) {
drivers/net/wireless/realtek/rtw89/usb.c
354
struct rtw89_tx_desc_info *desc_info = &tx_req->desc_info;
drivers/net/wireless/realtek/rtw89/usb.c
361
if (((desc_info->pkt_size + txdesc_size) % 512) == 0) {
drivers/net/wireless/realtek/rtw89/usb.c
364
skb512 = dev_alloc_skb(txdesc_size + desc_info->pkt_size +
drivers/net/wireless/realtek/rtw89/usb.c
381
desc_info->pkt_size += RTW89_USB_MOD512_PADDING;
drivers/net/wireless/realtek/rtw89/usb.c
386
rtw89_chip_fill_txdesc_fwcmd(rtwdev, desc_info, txdesc);
drivers/net/wireless/realtek/rtw89/usb.c
388
skb_queue_tail(&rtwusb->tx_queue[desc_info->ch_dma], skb);
drivers/net/wireless/realtek/rtw89/usb.c
396
struct rtw89_tx_desc_info *desc_info = &tx_req->desc_info;
drivers/net/wireless/realtek/rtw89/usb.c
403
if ((desc_info->ch_dma == RTW89_TXCH_CH12 ||
drivers/net/wireless/realtek/rtw89/usb.c
405
(desc_info->ch_dma != RTW89_TXCH_CH12 ||
drivers/net/wireless/realtek/rtw89/usb.c
408
desc_info->ch_dma, tx_req->tx_type);
drivers/net/wireless/realtek/rtw89/usb.c
412
if (desc_info->ch_dma == RTW89_TXCH_CH12)
drivers/net/wireless/realtek/rtw89/usb.c
416
if (desc_info->en_wd_info)
drivers/net/wireless/realtek/rtw89/usb.c
421
rtw89_chip_fill_txdesc(rtwdev, desc_info, txdesc);
drivers/net/wireless/realtek/rtw89/usb.c
426
if (tx_req->desc_info.sn)
drivers/net/wireless/realtek/rtw89/usb.c
427
skb_data->tx_rpt_sn = tx_req->desc_info.sn;
drivers/net/wireless/realtek/rtw89/usb.c
428
if (tx_req->desc_info.tx_cnt_lmt)
drivers/net/wireless/realtek/rtw89/usb.c
429
skb_data->tx_pkt_cnt_lmt = tx_req->desc_info.tx_cnt_lmt;
drivers/net/wireless/realtek/rtw89/usb.c
431
skb_queue_tail(&rtwusb->tx_queue[desc_info->ch_dma], skb);
drivers/net/wireless/realtek/rtw89/usb.c
441
struct rtw89_rx_desc_info desc_info;
drivers/net/wireless/realtek/rtw89/usb.c
463
memset(&desc_info, 0, sizeof(desc_info));
drivers/net/wireless/realtek/rtw89/usb.c
464
rtw89_chip_query_rxdesc(rtwdev, &desc_info, pkt_ptr, 0);
drivers/net/wireless/realtek/rtw89/usb.c
466
pkt_offset = desc_info.offset + desc_info.rxd_len;
drivers/net/wireless/realtek/rtw89/usb.c
467
if (remaining < (pkt_offset + desc_info.pkt_size)) {
drivers/net/wireless/realtek/rtw89/usb.c
470
pkt_offset + desc_info.pkt_size, remaining);
drivers/net/wireless/realtek/rtw89/usb.c
474
skb = rtw89_alloc_skb_for_rx(rtwdev, desc_info.pkt_size);
drivers/net/wireless/realtek/rtw89/usb.c
478
desc_info.pkt_size);
drivers/net/wireless/realtek/rtw89/usb.c
482
skb_put_data(skb, pkt_ptr + pkt_offset, desc_info.pkt_size);
drivers/net/wireless/realtek/rtw89/usb.c
483
rtw89_core_rx(rtwdev, &desc_info, skb);
drivers/net/wireless/realtek/rtw89/usb.c
486
pkt_offset += desc_info.pkt_size;
include/linux/soc/ti/knav_dma.h
146
__le32 desc_info;