Lines Matching refs:rmt
14277 struct rsm_map_table *rmt;
14280 rmt = kmalloc(sizeof(*rmt), GFP_KERNEL);
14281 if (rmt) {
14282 memset(rmt->map, rxcontext, sizeof(rmt->map));
14283 rmt->used = 0;
14286 return rmt;
14294 struct rsm_map_table *rmt)
14298 if (rmt) {
14301 write_csr(dd, RCV_RSM_MAP_TABLE + (8 * i), rmt->map[i]);
14395 * @rmt - RSM map table
14406 static void init_qos(struct hfi1_devdata *dd, struct rsm_map_table *rmt)
14413 if (!rmt)
14422 if (rmt->used + rmt_entries >= NUM_MAP_ENTRIES)
14434 idx = rmt->used + ((qpn << n) ^ i);
14438 reg = rmt->map[regidx];
14442 rmt->map[regidx] = reg;
14449 rrd.offset = rmt->used;
14466 rmt->used += rmt_entries;
14477 struct rsm_map_table *rmt)
14494 if (rmt->used + total_cnt >= NUM_MAP_ENTRIES) {
14509 offset = (u8)(NUM_MAP_ENTRIES + rmt->used - start);
14511 for (i = start, idx = rmt->used; i < dd->num_rcv_contexts;
14516 reg = rmt->map[regidx];
14519 rmt->map[regidx] = reg;
14547 rmt->used += total_cnt;
14686 struct rsm_map_table *rmt;
14692 rmt = alloc_rsm_map_table(dd);
14693 if (!rmt)
14697 init_qos(dd, rmt);
14698 init_fecn_handling(dd, rmt);
14699 complete_rsm_map_table(dd, rmt);
14701 hfi1_netdev_set_free_rmt_idx(dd, rmt->used);
14702 kfree(rmt);