We plan on sending 2 new protocol drivers in the imminent future -
both our RoCE [qedr] and iSCSI [qedi] drivers. As both submissions
would be rather massive and in order to avoid collisions between them,
the common infrastructure on the qed side was prepared as an independent
patch-series to be sent ahead of those 2 submissions.
This patch series introduces in QED 2 new 'ids' - one for iscsi and
one for roce. It then goes and adds logic required for configuring
said protocols in HW. Notice it *doesn't* actually add any client using
said ids, but rather only the infrastructure to allow their later usage.
What this patch doesn't contain is the slowpath protocol-configuration
toward the firmware. I.e., it contains register-setting logic, memory
allocations, etc., but not actual flow-related configuration specific
to the protocl. Those would be sent as part of the protocol driver
submissions.
Dave,
Please consider applying this series to `net-next'.
Thanks,
Yuval
Yuval Mintz (4):
qed: Revisit chain implementation
qed: Add common HSI for new protocols
qed: Add iscsi/rdma personalities
qed: Initialize hardware for new protocols
drivers/net/ethernet/qlogic/qed/qed.h | 13 +
drivers/net/ethernet/qlogic/qed/qed_cxt.c | 1347 -
drivers/net/ethernet/qlogic/qed/qed_cxt.h | 24 +
drivers/net/ethernet/qlogic/qed/qed_dev.c | 474 +++-
drivers/net/ethernet/qlogic/qed/qed_dev_api.h |8 +-
drivers/net/ethernet/qlogic/qed/qed_hsi.h | 3014 -
drivers/net/ethernet/qlogic/qed/qed_hw.c | 26 +-
drivers/net/ethernet/qlogic/qed/qed_hw.h | 12 +-
drivers/net/ethernet/qlogic/qed/qed_main.c|5 +-
drivers/net/ethernet/qlogic/qed/qed_mcp.c | 13 +-
drivers/net/ethernet/qlogic/qed/qed_reg_addr.h| 33 +
drivers/net/ethernet/qlogic/qed/qed_sp.h | 26 +
drivers/net/ethernet/qlogic/qed/qed_sp_commands.c | 22 +-
drivers/net/ethernet/qlogic/qed/qed_spq.c | 40 +-
drivers/net/ethernet/qlogic/qede/qede_main.c |6 +-
include/linux/qed/common_hsi.h| 194 +-
include/linux/qed/iscsi_common.h | 1439 ++
include/linux/qed/qed_chain.h | 553 ++--
include/linux/qed/qed_if.h| 68 +-
include/linux/qed/rdma_common.h | 44 +
include/linux/qed/roce_common.h | 17 +
include/linux/qed/storage_common.h| 91 +
include/linux/qed/tcp_common.h| 226 ++
23 files changed, 7312 insertions(+), 383 deletions(-)
create mode 100644 include/linux/qed/iscsi_common.h
create mode 100644 include/linux/qed/rdma_common.h
create mode 100644 include/linux/qed/roce_common.h
create mode 100644 include/linux/qed/storage_common.h
create mode 100644 include/linux/qed/tcp_common.h
--
1.9.3