- const u8 *addr = (const u8 *)&spec->dst.addr_bytes[0];
- const u8 *m = (const u8 *)&mask->dst.addr_bytes[0];
- struct rte_flow *flow = (struct rte_flow *)fs->private;
- struct port_info *pi = (struct port_info *)
- (flow->dev->data->dev_private);
- int idx;
-
- idx = cxgbe_mpstcam_alloc(pi, addr, m);
- if (idx <= 0)
- return rte_flow_error_set(e, idx,
- RTE_FLOW_ERROR_TYPE_ITEM,
- NULL, "unable to allocate mac"
- " entry in h/w");
- CXGBE_FILL_FS(idx, 0x1ff, macidx);
+ CXGBE_FILL_FS(0, 0x1ff, macidx);
+ CXGBE_FILL_FS_MEMCPY(spec->dst.addr_bytes, mask->dst.addr_bytes,
+ dmac);