linux_dsm_epyc7002/drivers/net/ethernet/qlogic/qed
Michal Kalderon fcb39f6c10 qed: Add mpa buffer descriptors for storing and processing mpa fpdus
The mpa buff is a descriptor for iwarp ll2 buffers that contains
additional information required for aligining fpdu's.
In some cases, an additional packet will arrive which will complete
the alignment of a fpdu, but we won't be able to post the fpdu due to
insufficient place on the tx ring. In this case we can't loose the data
and require storing it for later. Processing is therefore done
in two places, during rx completion, where we initialize a mpa buffer
descriptor and add it to the pending list, and during tx-completion, since
we free up an entry in the tx chain we can process any pending mpa packets.
The mpa buff descriptors are pre-allocated since we have to ensure that
we won't reach a state where we can't store an incoming unaligned packet.
All packets received on the ll2 MUST be processed by the driver at some
stage. Since they are preallocated, we hold a free list.

Signed-off-by: Michal Kalderon <Michal.Kalderon@cavium.com>
Signed-off-by: Ariel Elior <Ariel.Elior@cavium.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2017-10-09 10:21:26 -07:00
..
Makefile qed: Implement iWARP initialization, teardown and qp operations 2017-07-03 01:43:44 -07:00
qed_cxt.c qed: Add iWARP enablement support 2017-09-26 11:22:03 -07:00
qed_cxt.h qed: Add bitmaps for VF CIDs 2017-06-04 23:08:30 -04:00
qed_dcbx.c qed: Delete redundant check on dcb_app priority 2017-10-08 21:21:02 -07:00
qed_dcbx.h qed: Correct DCBx update scheme 2017-05-30 12:07:01 -04:00
qed_debug.c qed: Get rid of the attention-arrays 2017-05-30 12:07:03 -04:00
qed_debug.h qed: Utilize FW 8.20.0.0 2017-05-18 13:21:40 -04:00
qed_dev_api.h qed: Read per queue coalesce from hardware 2017-07-27 00:05:22 -07:00
qed_dev.c qed: Add support for vf coalesce configuration. 2017-07-27 00:05:22 -07:00
qed_fcoe.c qed: Share additional information with qedf 2017-06-02 10:33:03 -04:00
qed_fcoe.h qed: Revise alloc/setup/free flow 2017-05-21 12:56:53 -04:00
qed_hsi.h qed: Add support for Energy efficient ethernet. 2017-07-27 00:05:22 -07:00
qed_hw.c qed: Warn PTT usage by wrong hw-function 2017-04-06 14:26:31 -07:00
qed_hw.h qed: Revise QM cofiguration 2017-04-03 19:16:37 -07:00
qed_init_fw_funcs.c qed: Utilize FW 8.20.0.0 2017-05-18 13:21:40 -04:00
qed_init_ops.c qed: Revise alloc/setup/free flow 2017-05-21 12:56:53 -04:00
qed_init_ops.h qed*: Update to dual-license 2017-01-01 21:02:14 -05:00
qed_int.c qed: Reset IGU CAM to default on init 2017-06-01 12:17:20 -04:00
qed_int.h qed: Reset IGU CAM to default on init 2017-06-01 12:17:20 -04:00
qed_iscsi.c qed: SPQ async callback registration 2017-06-20 12:34:09 -04:00
qed_iscsi.h qed: Revise alloc/setup/free flow 2017-05-21 12:56:53 -04:00
qed_iwarp.c qed: Add mpa buffer descriptors for storing and processing mpa fpdus 2017-10-09 10:21:26 -07:00
qed_iwarp.h qed: Add mpa buffer descriptors for storing and processing mpa fpdus 2017-10-09 10:21:26 -07:00
qed_l2.c qed: fix spelling mistake: "calescing" -> "coalescing" 2017-08-30 15:32:16 -07:00
qed_l2.h qed: Read per queue coalesce from hardware 2017-07-27 00:05:22 -07:00
qed_ll2.c qed: Add LL2 slowpath handling 2017-10-09 10:21:26 -07:00
qed_ll2.h qed: Add ll2 ability of opening a secondary queue 2017-10-09 10:21:26 -07:00
qed_main.c qed: Read per queue coalesce from hardware 2017-07-27 00:05:22 -07:00
qed_mcp.c qed: Add iWARP enablement support 2017-09-26 11:22:03 -07:00
qed_mcp.h qed: Add support for Energy efficient ethernet. 2017-07-27 00:05:22 -07:00
qed_ooo.c qed: Revise alloc/setup/free flow 2017-05-21 12:56:53 -04:00
qed_ooo.h qed: Revise alloc/setup/free flow 2017-05-21 12:56:53 -04:00
qed_ptp.c qed: Drop the 's' from num_ports_in_engines 2017-05-24 15:17:19 -04:00
qed_rdma.c qed: Fix maximum number of CQs for iWARP 2017-09-26 11:22:03 -07:00
qed_rdma.h qed: iWARP CM add passive side connect 2017-07-03 01:43:45 -07:00
qed_reg_addr.h qed: RoCE EDPM to honor PFC 2017-06-20 12:34:07 -04:00
qed_roce.c qed: Implement iWARP initialization, teardown and qp operations 2017-07-03 01:43:44 -07:00
qed_roce.h qed: Split rdma content between qed_rdma and qed_roce 2017-06-21 15:32:59 -04:00
qed_selftest.c qed*: Update to dual-license 2017-01-01 21:02:14 -05:00
qed_selftest.h qed: Add nvram selftest 2016-10-31 15:52:35 -04:00
qed_sp_commands.c qed: Add iWARP enablement support 2017-09-26 11:22:03 -07:00
qed_sp.h qed: iWARP CM add passive side connect 2017-07-03 01:43:45 -07:00
qed_spq.c qed: Split rdma content between qed_rdma and qed_roce 2017-06-21 15:32:59 -04:00
qed_sriov.c qed: Read per queue coalesce from hardware 2017-07-27 00:05:22 -07:00
qed_sriov.h qed: Read per queue coalesce from hardware 2017-07-27 00:05:22 -07:00
qed_vf.c qed: Read per queue coalesce from hardware 2017-07-27 00:05:22 -07:00
qed_vf.h qed: Read per queue coalesce from hardware 2017-07-27 00:05:22 -07:00
qed.h qed: iWARP CM add passive side connect 2017-07-03 01:43:45 -07:00