dpdk.git
7 years agonet/qede/base: add new image types
Rasesh Mody [Wed, 29 Mar 2017 20:36:38 +0000 (13:36 -0700)]
net/qede/base: add new image types

Add new image types - RECOVERY and PK (Public Key) towards
the second phase of NVRAM security support.

Signed-off-by: Rasesh Mody <rasesh.mody@cavium.com>
7 years agonet/qede/base: remove clock slowdown option
Rasesh Mody [Wed, 29 Mar 2017 20:36:37 +0000 (13:36 -0700)]
net/qede/base: remove clock slowdown option

Remove clock slowdown NVM config option as this is not supported
for current chipsets.

Signed-off-by: Rasesh Mody <rasesh.mody@cavium.com>
7 years agonet/qede/base: add API for using MFW resource lock
Rasesh Mody [Wed, 29 Mar 2017 20:36:36 +0000 (13:36 -0700)]
net/qede/base: add API for using MFW resource lock

Add base driver API for using the Management FW resource lock

Signed-off-by: Rasesh Mody <rasesh.mody@cavium.com>
7 years agonet/qede/base: add mask/shift defines for resource command
Rasesh Mody [Wed, 29 Mar 2017 20:36:35 +0000 (13:36 -0700)]
net/qede/base: add mask/shift defines for resource command

Add several mask/shift defines for the resource command

Signed-off-by: Rasesh Mody <rasesh.mody@cavium.com>
7 years agonet/qede/base: prevent transmitter stuck condition
Rasesh Mody [Wed, 29 Mar 2017 20:36:34 +0000 (13:36 -0700)]
net/qede/base: prevent transmitter stuck condition

Change OOO TC properly to prevent transmitter stuck condition
due to credit underruns.

Signed-off-by: Rasesh Mody <rasesh.mody@cavium.com>
7 years agonet/qede/base: formatting changes
Rasesh Mody [Wed, 29 Mar 2017 20:36:33 +0000 (13:36 -0700)]
net/qede/base: formatting changes

Signed-off-by: Rasesh Mody <rasesh.mody@cavium.com>
7 years agonet/qede/base: support tunnelling for VF
Rasesh Mody [Wed, 29 Mar 2017 20:36:32 +0000 (13:36 -0700)]
net/qede/base: support tunnelling for VF

Add new tunnelling support for VFs.

Signed-off-by: Rasesh Mody <rasesh.mody@cavium.com>
7 years agonet/qede/base: revise tunnel APIs/structs
Rasesh Mody [Wed, 29 Mar 2017 20:36:31 +0000 (13:36 -0700)]
net/qede/base: revise tunnel APIs/structs

Revise tunnel APIs/structs.
 - Unite tunnel start and update params in single struct
   "ecore_tunnel_info"
 - Remove A0 chip tunnelling support.
 - Added per tunnel info - removed bitmasks.

Signed-off-by: Rasesh Mody <rasesh.mody@cavium.com>
7 years agonet/qede/base: change infrastructure for VF tunnelling
Rasesh Mody [Wed, 29 Mar 2017 20:36:30 +0000 (13:36 -0700)]
net/qede/base: change infrastructure for VF tunnelling

Infrastructure changes for VF tunnelling.

Signed-off-by: Rasesh Mody <rasesh.mody@cavium.com>
7 years agonet/qede/base: optimize cache-line access
Rasesh Mody [Wed, 29 Mar 2017 20:36:29 +0000 (13:36 -0700)]
net/qede/base: optimize cache-line access

Optimize cache-line access in ecore_chain -
re-arrange fields so that fields that are needed for fastpath
[mostly produce/consume and their derivatives] are in the first cache
line, and the rest are in the second.

This is true for both PBL and NEXT_PTR kind of chains.
Advancing a page in a SINGLE_PAGE chain would still require the 2nd
cacheline as well, but afaik only SPQ uses it and so it isn't
considered as 'fastpath'.

Signed-off-by: Rasesh Mody <rasesh.mody@cavium.com>
7 years agonet/qede/base: support handling TLV request from MFW
Rasesh Mody [Wed, 29 Mar 2017 20:36:28 +0000 (13:36 -0700)]
net/qede/base: support handling TLV request from MFW

Add support for handling the TLV request from Management FW.

Signed-off-by: Rasesh Mody <rasesh.mody@cavium.com>
7 years agonet/qede/base: make L2 queues handle based
Rasesh Mody [Wed, 29 Mar 2017 20:36:27 +0000 (13:36 -0700)]
net/qede/base: make L2 queues handle based

L2 handler changes:

This is change to remove the queue-id/qzone difference for Tx queues.

It does that by mainly doing:

a. VFs queues are no longer determined by the SBs they're using.
Instead, the ecore-client needs to maintain those and choose the values
to be used by VF when initializing it.

b. Eliminate the HW-cid array in the hw-function.
To do that, have all the rx/tx functionality turn into 'handle' base -
when queue would be started the caller would get a (void*) handle,
which it would later use with ecore for configuring various
queue-related stop [update, close].

Signed-off-by: Rasesh Mody <rasesh.mody@cavium.com>
7 years agonet/qede/base: refactor code of SP queues
Rasesh Mody [Wed, 29 Mar 2017 20:36:26 +0000 (13:36 -0700)]
net/qede/base: refactor code of SP queues

Maintain slowpath event queue and consumer queue within HW function
structure, update corresponding alloc and free APIs accordingly.
Cleanup unused code under CONFIG_ECORE_LL2 ifdef.

Signed-off-by: Rasesh Mody <rasesh.mody@cavium.com>
7 years agonet/qede/base: add interfaces for MFW TLV request processing
Rasesh Mody [Wed, 29 Mar 2017 20:36:25 +0000 (13:36 -0700)]
net/qede/base: add interfaces for MFW TLV request processing

Add new base driver interfaces for Management FW TLV request processing.

Signed-off-by: Rasesh Mody <rasesh.mody@cavium.com>
7 years agonet/qede/base: prevent driver load with invalid resources
Rasesh Mody [Wed, 29 Mar 2017 20:36:24 +0000 (13:36 -0700)]
net/qede/base: prevent driver load with invalid resources

Prevent storage drivers from attempting to load with invalid resources.

Signed-off-by: Rasesh Mody <rasesh.mody@cavium.com>
7 years agonet/qede/base: set driver type before sending load request
Rasesh Mody [Wed, 29 Mar 2017 20:36:23 +0000 (13:36 -0700)]
net/qede/base: set driver type before sending load request

Set the drv_type before sending LOAD_REQ and remove the
ver_str which is not used by the MFW

Signed-off-by: Rasesh Mody <rasesh.mody@cavium.com>
7 years agonet/qede/base: check active VF queues before stopping
Rasesh Mody [Wed, 29 Mar 2017 20:36:22 +0000 (13:36 -0700)]
net/qede/base: check active VF queues before stopping

Make sure VF queue are closed before stopping vport.

Signed-off-by: Rasesh Mody <rasesh.mody@cavium.com>
7 years agonet/qede/base: print firmware MFW and MBI versions
Rasesh Mody [Wed, 29 Mar 2017 20:36:21 +0000 (13:36 -0700)]
net/qede/base: print firmware MFW and MBI versions

Add a printout of the FW, Management FW and MBI versions.

Signed-off-by: Rasesh Mody <rasesh.mody@cavium.com>
7 years agonet/qede/base: revamp qm initialization
Rasesh Mody [Wed, 29 Mar 2017 20:36:20 +0000 (13:36 -0700)]
net/qede/base: revamp qm initialization

This patch revamps queue initialization.

Signed-off-by: Rasesh Mody <rasesh.mody@cavium.com>
7 years agonet/qede/base: allow only trusted VFs to be promisc
Rasesh Mody [Wed, 29 Mar 2017 20:36:19 +0000 (13:36 -0700)]
net/qede/base: allow only trusted VFs to be promisc

Allow only trusted VFs to be promisc/multi-promisc. The reasonable
thing is to use the 'trusted' node instead of simply allowing VFs to
become promiscuous.

Signed-off-by: Rasesh Mody <rasesh.mody@cavium.com>
7 years agonet/qede/base: remove unneeded step in HW init
Rasesh Mody [Wed, 29 Mar 2017 20:36:18 +0000 (13:36 -0700)]
net/qede/base: remove unneeded step in HW init

There is no need to close the OUT_EN NIG registers, so remove that.

Signed-off-by: Rasesh Mody <rasesh.mody@cavium.com>
7 years agonet/qede/base: allow probe to succeed with minor HW-issues
Rasesh Mody [Wed, 29 Mar 2017 20:36:17 +0000 (13:36 -0700)]
net/qede/base: allow probe to succeed with minor HW-issues

Allow probe to succeed with various 'minor' HW-issues [if requested]

Signed-off-by: Rasesh Mody <rasesh.mody@cavium.com>
7 years agonet/qede/base: read card personality via MFW commands
Rasesh Mody [Wed, 29 Mar 2017 20:36:16 +0000 (13:36 -0700)]
net/qede/base: read card personality via MFW commands

Add support to read NIC personality via management FW for non-L2
protocols.

Signed-off-by: Rasesh Mody <rasesh.mody@cavium.com>
7 years agonet/qede/base: prevent device init failure
Rasesh Mody [Wed, 29 Mar 2017 20:36:15 +0000 (13:36 -0700)]
net/qede/base: prevent device init failure

Device initialization flow should not be failed because the FW interface
command is not available.

Signed-off-by: Rasesh Mody <rasesh.mody@cavium.com>
7 years agonet/qede/base: update MFW when default MTU is changed
Rasesh Mody [Wed, 29 Mar 2017 20:36:14 +0000 (13:36 -0700)]
net/qede/base: update MFW when default MTU is changed

Send mailbox command to Management FW when MTU changes.

Signed-off-by: Rasesh Mody <rasesh.mody@cavium.com>
7 years agonet/qede/base: change queue/sb-id from 8 bit to 16 bit
Rasesh Mody [Wed, 29 Mar 2017 20:36:13 +0000 (13:36 -0700)]
net/qede/base: change queue/sb-id from 8 bit to 16 bit

Change the queue/sb-id values from 8 bit fields to 16 bit fields.

Signed-off-by: Rasesh Mody <rasesh.mody@cavium.com>
7 years agonet/qede/base: use default MTU from shared memory
Rasesh Mody [Wed, 29 Mar 2017 20:36:12 +0000 (13:36 -0700)]
net/qede/base: use default MTU from shared memory

Read and use the default MTU value from shared-memory.

Signed-off-by: Rasesh Mody <rasesh.mody@cavium.com>
7 years agonet/qede/base: add comment
Rasesh Mody [Wed, 29 Mar 2017 20:36:11 +0000 (13:36 -0700)]
net/qede/base: add comment

Add a comment for the endianness manipulation in
ecore_mcp_send_drv_version().

Signed-off-by: Rasesh Mody <rasesh.mody@cavium.com>
7 years agonet/qede/base: add nvram options
Rasesh Mody [Wed, 29 Mar 2017 20:36:10 +0000 (13:36 -0700)]
net/qede/base: add nvram options

Add a bunch of NVRAM options like MCOT, FEC selection, temperature
threshold, Reset On Lan, etc.

Signed-off-by: Rasesh Mody <rasesh.mody@cavium.com>
7 years agonet/qede/base: remove attribute from update current config
Rasesh Mody [Wed, 29 Mar 2017 20:36:09 +0000 (13:36 -0700)]
net/qede/base: remove attribute from update current config

Remove attribute field from update_current_config() API, Management FW
need to know only the last entity who configured the device.

Signed-off-by: Rasesh Mody <rasesh.mody@cavium.com>
7 years agonet/qede/base: move mask constants defining NIC type
Rasesh Mody [Wed, 29 Mar 2017 20:36:08 +0000 (13:36 -0700)]
net/qede/base: move mask constants defining NIC type

Move mask constants defining NIC type to ecore.h

Signed-off-by: Rasesh Mody <rasesh.mody@cavium.com>
7 years agonet/qede/base: decrease maximum HW func per device
Rasesh Mody [Wed, 29 Mar 2017 20:36:07 +0000 (13:36 -0700)]
net/qede/base: decrease maximum HW func per device

Decrease MAX_HWFNS_PER_DEVICE from 4 to 2

Signed-off-by: Rasesh Mody <rasesh.mody@cavium.com>
7 years agonet/qede: upgrade the FW to 8.18.9.0
Rasesh Mody [Wed, 29 Mar 2017 20:36:06 +0000 (13:36 -0700)]
net/qede: upgrade the FW to 8.18.9.0

This patchset adds changes to upgrade to 8.18.9.0 FW.

Signed-off-by: Rasesh Mody <rasesh.mody@cavium.com>
7 years agonet/qede/base: utilize FW 8.18.9.0
Rasesh Mody [Wed, 29 Mar 2017 20:36:05 +0000 (13:36 -0700)]
net/qede/base: utilize FW 8.18.9.0

This change is in preparation to work with new FW 8.18.9.0.
Rename the defines to use E4_ and structs to use e4_. This renaming
is to add support for future chipsets.

Signed-off-by: Rasesh Mody <rasesh.mody@cavium.com>
7 years agonet/qede/base: print various indication on Tx-timeouts
Rasesh Mody [Wed, 29 Mar 2017 20:36:04 +0000 (13:36 -0700)]
net/qede/base: print various indication on Tx-timeouts

Print various indication on Tx-timeouts.

Signed-off-by: Rasesh Mody <rasesh.mody@cavium.com>
7 years agonet/qede/base: mask Rx buffer attention bits
Rasesh Mody [Wed, 29 Mar 2017 20:36:03 +0000 (13:36 -0700)]
net/qede/base: mask Rx buffer attention bits

Mask the BRB "RC0_EOP_OUT_SYNC_FIFO_PUSH_ERROR" attention.

Signed-off-by: Rasesh Mody <rasesh.mody@cavium.com>
7 years agonet/qede/base: send FW version driver state to MFW
Rasesh Mody [Wed, 29 Mar 2017 20:36:02 +0000 (13:36 -0700)]
net/qede/base: send FW version driver state to MFW

Add support to send FW version and driver state to Management FW.

Signed-off-by: Rasesh Mody <rasesh.mody@cavium.com>
7 years agonet/qede/base: return an initialized return value
Rasesh Mody [Wed, 29 Mar 2017 20:36:01 +0000 (13:36 -0700)]
net/qede/base: return an initialized return value

Make sure ecore_iov_mark_vf_flr() always returns an initialized return
value.

Signed-off-by: Rasesh Mody <rasesh.mody@cavium.com>
7 years agodoc: detail new tap features in release note
Pascal Mazon [Mon, 27 Mar 2017 14:02:21 +0000 (16:02 +0200)]
doc: detail new tap features in release note

Signed-off-by: Pascal Mazon <pascal.mazon@6wind.com>
Acked-by: Keith Wiles <keith.wiles@intel.com>
7 years agonet/fm10k: fix pointer cast
Xiao Wang [Tue, 28 Mar 2017 03:57:47 +0000 (20:57 -0700)]
net/fm10k: fix pointer cast

The device specific data is located at dev->data->dev_private.

Fixes: 162f32290a99 ("fm10k: move parameters initialization")
Fixes: 039991bc28ff ("fm10k: add vector pre-condition check")
Fixes: 77a8ab47eb38 ("fm10k: select best Rx function")
Cc: stable@dpdk.org
Signed-off-by: Xiao Wang <xiao.w.wang@intel.com>
Acked-by: Ferruh Yigit <ferruh.yigit@intel.com>
7 years agodoc: add AVP
Allain Legacy [Tue, 28 Mar 2017 11:54:09 +0000 (07:54 -0400)]
doc: add AVP

Updates the documentation and feature lists for the AVP PMD device.

Signed-off-by: Allain Legacy <allain.legacy@windriver.com>
Signed-off-by: Matt Peters <matt.peters@windriver.com>
Acked-by: John McNamara <john.mcnamara@intel.com>
Acked-by: Vincent Jardin <vincent.jardin@6wind.com>
7 years agonet/avp: handle interrupt migration
Allain Legacy [Tue, 28 Mar 2017 11:54:08 +0000 (07:54 -0400)]
net/avp: handle interrupt migration

This commit introduces changes required to support VM live-migration.  This
is done by registering and responding to interrupts coming from the host to
signal that the memory is about to be made invalid and replaced with a new
memory zone on the destination compute node.

Enabling and disabling of the interrupts are maintained outside of the
start/stop functions because they must be enabled for the lifetime of the
device.  This is so that host interrupts are serviced and acked even in
cases where the app may have stopped the device.

Signed-off-by: Allain Legacy <allain.legacy@windriver.com>
Signed-off-by: Matt Peters <matt.peters@windriver.com>
Acked-by: Vincent Jardin <vincent.jardin@6wind.com>
7 years agonet/avp: add device start and stop operations
Allain Legacy [Tue, 28 Mar 2017 11:54:07 +0000 (07:54 -0400)]
net/avp: add device start and stop operations

Adds support for device start and stop functions.  This allows an
application to control the administrative state of an AVP device.  Stopping
the device will notify the host application to stop sending packets on that
device's receive queues.

Signed-off-by: Allain Legacy <allain.legacy@windriver.com>
Signed-off-by: Matt Peters <matt.peters@windriver.com>
Acked-by: Vincent Jardin <vincent.jardin@6wind.com>
7 years agonet/avp: add device promiscuous functions
Allain Legacy [Tue, 28 Mar 2017 11:54:06 +0000 (07:54 -0400)]
net/avp: add device promiscuous functions

Adds support for setting and clearing promiscuous mode on an AVP device.
When enabled the _mac_filter function will allow packets destined to any
MAC address to be processed by the receive functions.

Signed-off-by: Allain Legacy <allain.legacy@windriver.com>
Signed-off-by: Matt Peters <matt.peters@windriver.com>
Acked-by: Vincent Jardin <vincent.jardin@6wind.com>
7 years agonet/avp: add device statistics operations
Allain Legacy [Tue, 28 Mar 2017 11:54:05 +0000 (07:54 -0400)]
net/avp: add device statistics operations

Adds device functions to query and reset statistics.

Signed-off-by: Allain Legacy <allain.legacy@windriver.com>
Acked-by: Vincent Jardin <vincent.jardin@6wind.com>
7 years agonet/avp: add packet transmit functions
Allain Legacy [Tue, 28 Mar 2017 11:54:04 +0000 (07:54 -0400)]
net/avp: add packet transmit functions

Adds support for packet transmit functions so that an application can send
packets to the host application via an AVP device queue.  Both the simple
and scattered functions are supported.

Signed-off-by: Allain Legacy <allain.legacy@windriver.com>
Signed-off-by: Matt Peters <matt.peters@windriver.com>
Acked-by: Vincent Jardin <vincent.jardin@6wind.com>
7 years agonet/avp: add packet receive functions
Allain Legacy [Tue, 28 Mar 2017 11:54:03 +0000 (07:54 -0400)]
net/avp: add packet receive functions

Adds function required for receiving packets from the host application via
AVP device queues.  Both the simple and scattered functions are supported.

Signed-off-by: Allain Legacy <allain.legacy@windriver.com>
Signed-off-by: Matt Peters <matt.peters@windriver.com>
Acked-by: Vincent Jardin <vincent.jardin@6wind.com>
7 years agonet/avp: add queue setup and release
Allain Legacy [Tue, 28 Mar 2017 11:54:02 +0000 (07:54 -0400)]
net/avp: add queue setup and release

Adds queue management operations so that an application can setup and
release the transmit and receive queues.

Signed-off-by: Allain Legacy <allain.legacy@windriver.com>
Signed-off-by: Matt Peters <matt.peters@windriver.com>
Acked-by: Vincent Jardin <vincent.jardin@6wind.com>
7 years agonet/avp: add device configuration
Allain Legacy [Tue, 28 Mar 2017 11:54:01 +0000 (07:54 -0400)]
net/avp: add device configuration

Adds support for "dev_configure" operations to allow an application to
configure the device.

Signed-off-by: Allain Legacy <allain.legacy@windriver.com>
Signed-off-by: Matt Peters <matt.peters@windriver.com>
Acked-by: Vincent Jardin <vincent.jardin@6wind.com>
7 years agonet/avp: add device initialization
Allain Legacy [Tue, 28 Mar 2017 11:54:00 +0000 (07:54 -0400)]
net/avp: add device initialization

Adds support for initialization newly probed AVP PCI devices.  Initial
queue translations are setup in preparation for device configuration.

Signed-off-by: Allain Legacy <allain.legacy@windriver.com>
Signed-off-by: Matt Peters <matt.peters@windriver.com>
Acked-by: Vincent Jardin <vincent.jardin@6wind.com>
7 years agonet/avp: support driver registration
Allain Legacy [Tue, 28 Mar 2017 11:53:59 +0000 (07:53 -0400)]
net/avp: support driver registration

Adds the initial framework for registering the driver against the support
PCI device identifiers.

Signed-off-by: Allain Legacy <allain.legacy@windriver.com>
Signed-off-by: Matt Peters <matt.peters@windriver.com>
Acked-by: Vincent Jardin <vincent.jardin@6wind.com>
7 years agonet/avp: add debug log macros
Allain Legacy [Tue, 28 Mar 2017 11:53:58 +0000 (07:53 -0400)]
net/avp: add debug log macros

Adds a header file with log macros for the AVP PMD

Signed-off-by: Allain Legacy <allain.legacy@windriver.com>
Signed-off-by: Matt Peters <matt.peters@windriver.com>
Acked-by: Vincent Jardin <vincent.jardin@6wind.com>
7 years agonet/avp: add public header files
Allain Legacy [Tue, 28 Mar 2017 11:53:57 +0000 (07:53 -0400)]
net/avp: add public header files

Adds public/exported header files for the AVP PMD.  The AVP device is a
shared memory based device.  The structures and constants that define the
method of operation of the device must be visible by both the PMD and the
host DPDK application.  They must not change without proper version
controls and updates to both the hypervisor DPDK application and the PMD.

The hypervisor DPDK application is a Wind River Systems proprietary
virtual switch.

Signed-off-by: Allain Legacy <allain.legacy@windriver.com>
Signed-off-by: Matt Peters <matt.peters@windriver.com>
Acked-by: Vincent Jardin <vincent.jardin@6wind.com>
7 years agonet/avp: add base files
Allain Legacy [Tue, 28 Mar 2017 11:53:56 +0000 (07:53 -0400)]
net/avp: add base files

This commit introduces the AVP PMD file structure without adding any actual
driver functionality.  Functional blocks will be added in later patches.

Signed-off-by: Allain Legacy <allain.legacy@windriver.com>
Signed-off-by: Matt Peters <matt.peters@windriver.com>
Acked-by: Vincent Jardin <vincent.jardin@6wind.com>
7 years agonet/mlx5: fix returned values upon failed probing
Gaetan Rivet [Tue, 28 Mar 2017 14:13:12 +0000 (16:13 +0200)]
net/mlx5: fix returned values upon failed probing

Fixes: 771fa900b73a ("mlx5: introduce new driver for Mellanox ConnectX-4 adapters")
Cc: stable@dpdk.org
Signed-off-by: Gaetan Rivet <gaetan.rivet@6wind.com>
Acked-by: Adrien Mazarguil <adrien.mazarguil@6wind.com>
7 years agonet/mlx4: fix returned values upon failed probing
Gaetan Rivet [Tue, 28 Mar 2017 14:13:11 +0000 (16:13 +0200)]
net/mlx4: fix returned values upon failed probing

Let error messages in place, but return unambiguous values upon
probing errors.

Fixes: 66e1591687ac ("mlx4: avoid init errors when kernel modules are not loaded")
Cc: stable@dpdk.org
Signed-off-by: Gaetan Rivet <gaetan.rivet@6wind.com>
Acked-by: Adrien Mazarguil <adrien.mazarguil@6wind.com>
7 years agonet/mlx: enhance Rx scatter mode detection
Vasily Philipov [Tue, 28 Mar 2017 10:18:49 +0000 (13:18 +0300)]
net/mlx: enhance Rx scatter mode detection

Toggle Rx scatter mode based on the scatter_enable flag and the maximum
packet size only instead of deriving this information from the jumbo_frame
setting and the MTU configuration.

Signed-off-by: Vasily Philipov <vasilyf@mellanox.com>
Acked-by: Adrien Mazarguil <adrien.mazarguil@6wind.com>
7 years agonet/mlx4: add port parameter
Gaetan Rivet [Mon, 27 Mar 2017 15:41:37 +0000 (17:41 +0200)]
net/mlx4: add port parameter

Most ConnectX-3 adapters expose two physical ports on a single PCI bus
address.

Add a new port parameter allowing the user to choose
either or both physical ports to be used by the application.

This parameter is used as follows:

Selecting only the second port:
   -w 00:00.0,port=1

Selecting both ports:
   -w 00:00.0,port=0,port=1

If no parameter is given, the default behavior is unchanged: all ports
are probed.

Signed-off-by: Gaetan Rivet <gaetan.rivet@6wind.com>
Acked-by: Adrien Mazarguil <adrien.mazarguil@6wind.com>
7 years agoapp/testpmd: set TC strict link priority mode
Wenzhuo Lu [Fri, 24 Feb 2017 03:24:35 +0000 (11:24 +0800)]
app/testpmd: set TC strict link priority mode

Add a CLI to set some TCs' strict link priority mode
on a physical port.

Signed-off-by: Wenzhuo Lu <wenzhuo.lu@intel.com>
Acked-by: Jingjing Wu <jingjing.wu@intel.com>
7 years agoapp/testpmd: set VF TC Tx max bandwidth
Wenzhuo Lu [Fri, 24 Feb 2017 03:24:34 +0000 (11:24 +0800)]
app/testpmd: set VF TC Tx max bandwidth

Add CLI to set a specific TC's max bandwidth
on a specific VF from PF.

Signed-off-by: Wenzhuo Lu <wenzhuo.lu@intel.com>
Acked-by: Jingjing Wu <jingjing.wu@intel.com>
7 years agoapp/testpmd: set VF TC Tx min bandwidth
Wenzhuo Lu [Fri, 24 Feb 2017 03:24:33 +0000 (11:24 +0800)]
app/testpmd: set VF TC Tx min bandwidth

Add CLI to set TCs' min bandwidth on a specific VF
from PF.

Signed-off-by: Wenzhuo Lu <wenzhuo.lu@intel.com>
Acked-by: Jingjing Wu <jingjing.wu@intel.com>
7 years agoapp/testpmd: set VF Tx max bandwidth
Wenzhuo Lu [Fri, 24 Feb 2017 03:24:32 +0000 (11:24 +0800)]
app/testpmd: set VF Tx max bandwidth

Add CLI to set a specific VF's TX max bandwidth
from PF.

Signed-off-by: Wenzhuo Lu <wenzhuo.lu@intel.com>
Acked-by: Jingjing Wu <jingjing.wu@intel.com>
7 years agonet/i40e: set TC strict priority mode
Wenzhuo Lu [Fri, 24 Feb 2017 03:24:31 +0000 (11:24 +0800)]
net/i40e: set TC strict priority mode

Set some TCs to strict priority mode.
It's a global setting on a physical port.

Signed-off-by: Wenzhuo Lu <wenzhuo.lu@intel.com>
Acked-by: Jingjing Wu <jingjing.wu@intel.com>
7 years agonet/i40e: set VF TC max bandwidth from PF
Wenzhuo Lu [Fri, 24 Feb 2017 03:24:30 +0000 (11:24 +0800)]
net/i40e: set VF TC max bandwidth from PF

Set a specific TC's max bandwidth on a VF.
User can call the API to set VF TC's max bandwidth
from PF.

Signed-off-by: Wenzhuo Lu <wenzhuo.lu@intel.com>
Acked-by: Jingjing Wu <jingjing.wu@intel.com>
7 years agonet/i40e: allocate VF TC bandwidth from PF
Wenzhuo Lu [Fri, 24 Feb 2017 03:24:29 +0000 (11:24 +0800)]
net/i40e: allocate VF TC bandwidth from PF

Allocate all TCs' relative bandwidth (percentage) on
a specific VF.
It can be taken as relative min bandwidth setting.
User can call the API to set VF TC's min bandwidth
from PF.

Signed-off-by: Wenzhuo Lu <wenzhuo.lu@intel.com>
Acked-by: Jingjing Wu <jingjing.wu@intel.com>
7 years agonet/i40e: set VF max bandwidth from PF
Wenzhuo Lu [Fri, 24 Feb 2017 03:24:28 +0000 (11:24 +0800)]
net/i40e: set VF max bandwidth from PF

Support setting VF max bandwidth from PF.
User can call the API on PF to set a specific VF's
max bandwidth.

Signed-off-by: Wenzhuo Lu <wenzhuo.lu@intel.com>
Acked-by: Jingjing Wu <jingjing.wu@intel.com>
7 years agodoc: add liquidio
Shijith Thotton [Sat, 25 Mar 2017 06:24:57 +0000 (11:54 +0530)]
doc: add liquidio

Add liquidio driver documentation and update 17.05 release notes.

Signed-off-by: Shijith Thotton <shijith.thotton@caviumnetworks.com>
Signed-off-by: Jerin Jacob <jerin.jacob@caviumnetworks.com>
Signed-off-by: Derek Chickles <derek.chickles@caviumnetworks.com>
Signed-off-by: Venkat Koppula <venkat.koppula@caviumnetworks.com>
Signed-off-by: Srisivasubramanian S <ssrinivasan@caviumnetworks.com>
Signed-off-by: Mallesham Jatharakonda <mjatharakonda@oneconvergence.com>
7 years agonet/liquidio: add API to add and remove VLAN port
Shijith Thotton [Sat, 25 Mar 2017 06:24:56 +0000 (11:54 +0530)]
net/liquidio: add API to add and remove VLAN port

Signed-off-by: Shijith Thotton <shijith.thotton@caviumnetworks.com>
Signed-off-by: Jerin Jacob <jerin.jacob@caviumnetworks.com>
Signed-off-by: Derek Chickles <derek.chickles@caviumnetworks.com>
Signed-off-by: Venkat Koppula <venkat.koppula@caviumnetworks.com>
Signed-off-by: Srisivasubramanian S <ssrinivasan@caviumnetworks.com>
Signed-off-by: Mallesham Jatharakonda <mjatharakonda@oneconvergence.com>
7 years agonet/liquidio: add API to close device
Shijith Thotton [Sat, 25 Mar 2017 06:24:55 +0000 (11:54 +0530)]
net/liquidio: add API to close device

Signed-off-by: Shijith Thotton <shijith.thotton@caviumnetworks.com>
Signed-off-by: Jerin Jacob <jerin.jacob@caviumnetworks.com>
Signed-off-by: Derek Chickles <derek.chickles@caviumnetworks.com>
Signed-off-by: Venkat Koppula <venkat.koppula@caviumnetworks.com>
Signed-off-by: Srisivasubramanian S <ssrinivasan@caviumnetworks.com>
Signed-off-by: Mallesham Jatharakonda <mjatharakonda@oneconvergence.com>
7 years agonet/liquidio: add API to stop device
Shijith Thotton [Sat, 25 Mar 2017 06:24:54 +0000 (11:54 +0530)]
net/liquidio: add API to stop device

Signed-off-by: Shijith Thotton <shijith.thotton@caviumnetworks.com>
Signed-off-by: Jerin Jacob <jerin.jacob@caviumnetworks.com>
Signed-off-by: Derek Chickles <derek.chickles@caviumnetworks.com>
Signed-off-by: Venkat Koppula <venkat.koppula@caviumnetworks.com>
Signed-off-by: Srisivasubramanian S <ssrinivasan@caviumnetworks.com>
Signed-off-by: Mallesham Jatharakonda <mjatharakonda@oneconvergence.com>
7 years agonet/liquidio: add APIs for hardware stats
Shijith Thotton [Sat, 25 Mar 2017 06:24:53 +0000 (11:54 +0530)]
net/liquidio: add APIs for hardware stats

Signed-off-by: Shijith Thotton <shijith.thotton@caviumnetworks.com>
Signed-off-by: Jerin Jacob <jerin.jacob@caviumnetworks.com>
Signed-off-by: Derek Chickles <derek.chickles@caviumnetworks.com>
Signed-off-by: Venkat Koppula <venkat.koppula@caviumnetworks.com>
Signed-off-by: Srisivasubramanian S <ssrinivasan@caviumnetworks.com>
Signed-off-by: Mallesham Jatharakonda <mjatharakonda@oneconvergence.com>
7 years agonet/liquidio: support Tx stats
Shijith Thotton [Sat, 25 Mar 2017 06:24:52 +0000 (11:54 +0530)]
net/liquidio: support Tx stats

Signed-off-by: Shijith Thotton <shijith.thotton@caviumnetworks.com>
Signed-off-by: Jerin Jacob <jerin.jacob@caviumnetworks.com>
Signed-off-by: Derek Chickles <derek.chickles@caviumnetworks.com>
Signed-off-by: Venkat Koppula <venkat.koppula@caviumnetworks.com>
Signed-off-by: Srisivasubramanian S <ssrinivasan@caviumnetworks.com>
Signed-off-by: Mallesham Jatharakonda <mjatharakonda@oneconvergence.com>
7 years agonet/liquidio: support Rx stats
Shijith Thotton [Sat, 25 Mar 2017 06:24:51 +0000 (11:54 +0530)]
net/liquidio: support Rx stats

Signed-off-by: Shijith Thotton <shijith.thotton@caviumnetworks.com>
Signed-off-by: Jerin Jacob <jerin.jacob@caviumnetworks.com>
Signed-off-by: Derek Chickles <derek.chickles@caviumnetworks.com>
Signed-off-by: Venkat Koppula <venkat.koppula@caviumnetworks.com>
Signed-off-by: Srisivasubramanian S <ssrinivasan@caviumnetworks.com>
Signed-off-by: Mallesham Jatharakonda <mjatharakonda@oneconvergence.com>
7 years agonet/liquidio: add APIs to configure UDP tunnel port
Shijith Thotton [Sat, 25 Mar 2017 06:24:50 +0000 (11:54 +0530)]
net/liquidio: add APIs to configure UDP tunnel port

Add APIs to configure VXLAN port and enable tunnel checksum.

Signed-off-by: Shijith Thotton <shijith.thotton@caviumnetworks.com>
Signed-off-by: Jerin Jacob <jerin.jacob@caviumnetworks.com>
Signed-off-by: Derek Chickles <derek.chickles@caviumnetworks.com>
Signed-off-by: Venkat Koppula <venkat.koppula@caviumnetworks.com>
Signed-off-by: Srisivasubramanian S <ssrinivasan@caviumnetworks.com>
Signed-off-by: Mallesham Jatharakonda <mjatharakonda@oneconvergence.com>
7 years agonet/liquidio: add APIs to set link up and down
Shijith Thotton [Sat, 25 Mar 2017 06:24:49 +0000 (11:54 +0530)]
net/liquidio: add APIs to set link up and down

Signed-off-by: Shijith Thotton <shijith.thotton@caviumnetworks.com>
Signed-off-by: Jerin Jacob <jerin.jacob@caviumnetworks.com>
Signed-off-by: Derek Chickles <derek.chickles@caviumnetworks.com>
Signed-off-by: Venkat Koppula <venkat.koppula@caviumnetworks.com>
Signed-off-by: Srisivasubramanian S <ssrinivasan@caviumnetworks.com>
Signed-off-by: Mallesham Jatharakonda <mjatharakonda@oneconvergence.com>
7 years agonet/liquidio: add APIs to enable and disable multicast
Shijith Thotton [Sat, 25 Mar 2017 06:24:48 +0000 (11:54 +0530)]
net/liquidio: add APIs to enable and disable multicast

Signed-off-by: Shijith Thotton <shijith.thotton@caviumnetworks.com>
Signed-off-by: Jerin Jacob <jerin.jacob@caviumnetworks.com>
Signed-off-by: Derek Chickles <derek.chickles@caviumnetworks.com>
Signed-off-by: Venkat Koppula <venkat.koppula@caviumnetworks.com>
Signed-off-by: Srisivasubramanian S <ssrinivasan@caviumnetworks.com>
Signed-off-by: Mallesham Jatharakonda <mjatharakonda@oneconvergence.com>
7 years agonet/liquidio: add API to validate VF MTU
Shijith Thotton [Sat, 25 Mar 2017 06:24:47 +0000 (11:54 +0530)]
net/liquidio: add API to validate VF MTU

Signed-off-by: Shijith Thotton <shijith.thotton@caviumnetworks.com>
Signed-off-by: Jerin Jacob <jerin.jacob@caviumnetworks.com>
Signed-off-by: Derek Chickles <derek.chickles@caviumnetworks.com>
Signed-off-by: Venkat Koppula <venkat.koppula@caviumnetworks.com>
Signed-off-by: Srisivasubramanian S <ssrinivasan@caviumnetworks.com>
Signed-off-by: Mallesham Jatharakonda <mjatharakonda@oneconvergence.com>
7 years agonet/liquidio: add API to get device info
Shijith Thotton [Sat, 25 Mar 2017 06:24:46 +0000 (11:54 +0530)]
net/liquidio: add API to get device info

Signed-off-by: Shijith Thotton <shijith.thotton@caviumnetworks.com>
Signed-off-by: Jerin Jacob <jerin.jacob@caviumnetworks.com>
Signed-off-by: Derek Chickles <derek.chickles@caviumnetworks.com>
Signed-off-by: Venkat Koppula <venkat.koppula@caviumnetworks.com>
Signed-off-by: Srisivasubramanian S <ssrinivasan@caviumnetworks.com>
Signed-off-by: Mallesham Jatharakonda <mjatharakonda@oneconvergence.com>
7 years agonet/liquidio: support RSS
Shijith Thotton [Sat, 25 Mar 2017 06:24:45 +0000 (11:54 +0530)]
net/liquidio: support RSS

Signed-off-by: Shijith Thotton <shijith.thotton@caviumnetworks.com>
Signed-off-by: Jerin Jacob <jerin.jacob@caviumnetworks.com>
Signed-off-by: Derek Chickles <derek.chickles@caviumnetworks.com>
Signed-off-by: Venkat Koppula <venkat.koppula@caviumnetworks.com>
Signed-off-by: Srisivasubramanian S <ssrinivasan@caviumnetworks.com>
Signed-off-by: Mallesham Jatharakonda <mjatharakonda@oneconvergence.com>
7 years agonet/liquidio: add API to control Rx
Shijith Thotton [Sat, 25 Mar 2017 06:24:44 +0000 (11:54 +0530)]
net/liquidio: add API to control Rx

Enable or disable packet reception.

Signed-off-by: Shijith Thotton <shijith.thotton@caviumnetworks.com>
Signed-off-by: Jerin Jacob <jerin.jacob@caviumnetworks.com>
Signed-off-by: Derek Chickles <derek.chickles@caviumnetworks.com>
Signed-off-by: Venkat Koppula <venkat.koppula@caviumnetworks.com>
Signed-off-by: Srisivasubramanian S <ssrinivasan@caviumnetworks.com>
Signed-off-by: Mallesham Jatharakonda <mjatharakonda@oneconvergence.com>
7 years agonet/liquidio: add APIs to alloc and send control command
Shijith Thotton [Sat, 25 Mar 2017 06:24:43 +0000 (11:54 +0530)]
net/liquidio: add APIs to alloc and send control command

Signed-off-by: Shijith Thotton <shijith.thotton@caviumnetworks.com>
Signed-off-by: Jerin Jacob <jerin.jacob@caviumnetworks.com>
Signed-off-by: Derek Chickles <derek.chickles@caviumnetworks.com>
Signed-off-by: Venkat Koppula <venkat.koppula@caviumnetworks.com>
Signed-off-by: Srisivasubramanian S <ssrinivasan@caviumnetworks.com>
Signed-off-by: Mallesham Jatharakonda <mjatharakonda@oneconvergence.com>
7 years agonet/liquidio: add APIs to start device and update link
Shijith Thotton [Sat, 25 Mar 2017 06:24:42 +0000 (11:54 +0530)]
net/liquidio: add APIs to start device and update link

Signed-off-by: Shijith Thotton <shijith.thotton@caviumnetworks.com>
Signed-off-by: Jerin Jacob <jerin.jacob@caviumnetworks.com>
Signed-off-by: Derek Chickles <derek.chickles@caviumnetworks.com>
Signed-off-by: Venkat Koppula <venkat.koppula@caviumnetworks.com>
Signed-off-by: Srisivasubramanian S <ssrinivasan@caviumnetworks.com>
Signed-off-by: Mallesham Jatharakonda <mjatharakonda@oneconvergence.com>
7 years agonet/liquidio: add API to release Tx queue
Shijith Thotton [Sat, 25 Mar 2017 06:24:41 +0000 (11:54 +0530)]
net/liquidio: add API to release Tx queue

Signed-off-by: Shijith Thotton <shijith.thotton@caviumnetworks.com>
Signed-off-by: Jerin Jacob <jerin.jacob@caviumnetworks.com>
Signed-off-by: Derek Chickles <derek.chickles@caviumnetworks.com>
Signed-off-by: Venkat Koppula <venkat.koppula@caviumnetworks.com>
Signed-off-by: Srisivasubramanian S <ssrinivasan@caviumnetworks.com>
Signed-off-by: Mallesham Jatharakonda <mjatharakonda@oneconvergence.com>
7 years agonet/liquidio: add API to flush IQ
Shijith Thotton [Sat, 25 Mar 2017 06:24:40 +0000 (11:54 +0530)]
net/liquidio: add API to flush IQ

API to flush instruction queue checks how many packets reached device
and frees associated host buffers using request list.

Signed-off-by: Shijith Thotton <shijith.thotton@caviumnetworks.com>
Signed-off-by: Jerin Jacob <jerin.jacob@caviumnetworks.com>
Signed-off-by: Derek Chickles <derek.chickles@caviumnetworks.com>
Signed-off-by: Venkat Koppula <venkat.koppula@caviumnetworks.com>
Signed-off-by: Srisivasubramanian S <ssrinivasan@caviumnetworks.com>
Signed-off-by: Mallesham Jatharakonda <mjatharakonda@oneconvergence.com>
7 years agonet/liquidio: add Tx data path for multiple segments
Shijith Thotton [Sat, 25 Mar 2017 06:24:39 +0000 (11:54 +0530)]
net/liquidio: add Tx data path for multiple segments

Signed-off-by: Shijith Thotton <shijith.thotton@caviumnetworks.com>
Signed-off-by: Jerin Jacob <jerin.jacob@caviumnetworks.com>
Signed-off-by: Derek Chickles <derek.chickles@caviumnetworks.com>
Signed-off-by: Venkat Koppula <venkat.koppula@caviumnetworks.com>
Signed-off-by: Srisivasubramanian S <ssrinivasan@caviumnetworks.com>
Signed-off-by: Mallesham Jatharakonda <mjatharakonda@oneconvergence.com>
7 years agonet/liquidio: add Tx data path for single segment
Shijith Thotton [Sat, 25 Mar 2017 06:24:38 +0000 (11:54 +0530)]
net/liquidio: add Tx data path for single segment

Signed-off-by: Shijith Thotton <shijith.thotton@caviumnetworks.com>
Signed-off-by: Jerin Jacob <jerin.jacob@caviumnetworks.com>
Signed-off-by: Derek Chickles <derek.chickles@caviumnetworks.com>
Signed-off-by: Venkat Koppula <venkat.koppula@caviumnetworks.com>
Signed-off-by: Srisivasubramanian S <ssrinivasan@caviumnetworks.com>
Signed-off-by: Mallesham Jatharakonda <mjatharakonda@oneconvergence.com>
7 years agonet/liquidio: add APIs to enable and disable IO queues
Shijith Thotton [Sat, 25 Mar 2017 06:24:37 +0000 (11:54 +0530)]
net/liquidio: add APIs to enable and disable IO queues

Signed-off-by: Shijith Thotton <shijith.thotton@caviumnetworks.com>
Signed-off-by: Jerin Jacob <jerin.jacob@caviumnetworks.com>
Signed-off-by: Derek Chickles <derek.chickles@caviumnetworks.com>
Signed-off-by: Venkat Koppula <venkat.koppula@caviumnetworks.com>
Signed-off-by: Srisivasubramanian S <ssrinivasan@caviumnetworks.com>
Signed-off-by: Mallesham Jatharakonda <mjatharakonda@oneconvergence.com>
7 years agonet/liquidio: add APIs for SG list
Shijith Thotton [Sat, 25 Mar 2017 06:24:36 +0000 (11:54 +0530)]
net/liquidio: add APIs for SG list

Add APIs to setup and free Scatter-Gather list. SG list is used while
sending packets with multiple segments.

Signed-off-by: Shijith Thotton <shijith.thotton@caviumnetworks.com>
Signed-off-by: Jerin Jacob <jerin.jacob@caviumnetworks.com>
Signed-off-by: Derek Chickles <derek.chickles@caviumnetworks.com>
Signed-off-by: Venkat Koppula <venkat.koppula@caviumnetworks.com>
Signed-off-by: Srisivasubramanian S <ssrinivasan@caviumnetworks.com>
Signed-off-by: Mallesham Jatharakonda <mjatharakonda@oneconvergence.com>
7 years agonet/liquidio: add API to setup Tx queue
Shijith Thotton [Sat, 25 Mar 2017 06:24:35 +0000 (11:54 +0530)]
net/liquidio: add API to setup Tx queue

Signed-off-by: Shijith Thotton <shijith.thotton@caviumnetworks.com>
Signed-off-by: Jerin Jacob <jerin.jacob@caviumnetworks.com>
Signed-off-by: Derek Chickles <derek.chickles@caviumnetworks.com>
Signed-off-by: Venkat Koppula <venkat.koppula@caviumnetworks.com>
Signed-off-by: Srisivasubramanian S <ssrinivasan@caviumnetworks.com>
Signed-off-by: Mallesham Jatharakonda <mjatharakonda@oneconvergence.com>
7 years agonet/liquidio: add API to release Rx queue
Shijith Thotton [Sat, 25 Mar 2017 06:24:34 +0000 (11:54 +0530)]
net/liquidio: add API to release Rx queue

Signed-off-by: Shijith Thotton <shijith.thotton@caviumnetworks.com>
Signed-off-by: Jerin Jacob <jerin.jacob@caviumnetworks.com>
Signed-off-by: Derek Chickles <derek.chickles@caviumnetworks.com>
Signed-off-by: Venkat Koppula <venkat.koppula@caviumnetworks.com>
Signed-off-by: Srisivasubramanian S <ssrinivasan@caviumnetworks.com>
Signed-off-by: Mallesham Jatharakonda <mjatharakonda@oneconvergence.com>
7 years agonet/liquidio: add Rx data path
Shijith Thotton [Sat, 25 Mar 2017 06:24:33 +0000 (11:54 +0530)]
net/liquidio: add Rx data path

Add APIs to receive packets and re-fill ring buffers.

Signed-off-by: Shijith Thotton <shijith.thotton@caviumnetworks.com>
Signed-off-by: Jerin Jacob <jerin.jacob@caviumnetworks.com>
Signed-off-by: Derek Chickles <derek.chickles@caviumnetworks.com>
Signed-off-by: Venkat Koppula <venkat.koppula@caviumnetworks.com>
Signed-off-by: Srisivasubramanian S <ssrinivasan@caviumnetworks.com>
Signed-off-by: Mallesham Jatharakonda <mjatharakonda@oneconvergence.com>
7 years agonet/liquidio: initialize Rx queue
Shijith Thotton [Sat, 25 Mar 2017 06:24:32 +0000 (11:54 +0530)]
net/liquidio: initialize Rx queue

Initialize Rx queue registers and allocate packet buffers for Rx queue.

Signed-off-by: Shijith Thotton <shijith.thotton@caviumnetworks.com>
Signed-off-by: Jerin Jacob <jerin.jacob@caviumnetworks.com>
Signed-off-by: Derek Chickles <derek.chickles@caviumnetworks.com>
Signed-off-by: Venkat Koppula <venkat.koppula@caviumnetworks.com>
Signed-off-by: Srisivasubramanian S <ssrinivasan@caviumnetworks.com>
Signed-off-by: Mallesham Jatharakonda <mjatharakonda@oneconvergence.com>
7 years agonet/liquidio: add API to setup Rx queue
Shijith Thotton [Sat, 25 Mar 2017 06:24:31 +0000 (11:54 +0530)]
net/liquidio: add API to setup Rx queue

Signed-off-by: Shijith Thotton <shijith.thotton@caviumnetworks.com>
Signed-off-by: Jerin Jacob <jerin.jacob@caviumnetworks.com>
Signed-off-by: Derek Chickles <derek.chickles@caviumnetworks.com>
Signed-off-by: Venkat Koppula <venkat.koppula@caviumnetworks.com>
Signed-off-by: Srisivasubramanian S <ssrinivasan@caviumnetworks.com>
Signed-off-by: Mallesham Jatharakonda <mjatharakonda@oneconvergence.com>
7 years agonet/liquidio: add API to configure device
Shijith Thotton [Sat, 25 Mar 2017 06:24:30 +0000 (11:54 +0530)]
net/liquidio: add API to configure device

Add API to configure device and initialize ethernet device operations.

Signed-off-by: Shijith Thotton <shijith.thotton@caviumnetworks.com>
Signed-off-by: Jerin Jacob <jerin.jacob@caviumnetworks.com>
Signed-off-by: Derek Chickles <derek.chickles@caviumnetworks.com>
Signed-off-by: Venkat Koppula <venkat.koppula@caviumnetworks.com>
Signed-off-by: Srisivasubramanian S <ssrinivasan@caviumnetworks.com>
Signed-off-by: Mallesham Jatharakonda <mjatharakonda@oneconvergence.com>
7 years agonet/liquidio: add API to send packet to device
Shijith Thotton [Sat, 25 Mar 2017 06:24:29 +0000 (11:54 +0530)]
net/liquidio: add API to send packet to device

Add API to send control and data packets to device. Request list keeps
track of host buffers to be freed till it reaches device.

Signed-off-by: Shijith Thotton <shijith.thotton@caviumnetworks.com>
Signed-off-by: Jerin Jacob <jerin.jacob@caviumnetworks.com>
Signed-off-by: Derek Chickles <derek.chickles@caviumnetworks.com>
Signed-off-by: Venkat Koppula <venkat.koppula@caviumnetworks.com>
Signed-off-by: Srisivasubramanian S <ssrinivasan@caviumnetworks.com>
Signed-off-by: Mallesham Jatharakonda <mjatharakonda@oneconvergence.com>
7 years agonet/liquidio: add APIs for response list
Shijith Thotton [Sat, 25 Mar 2017 06:24:28 +0000 (11:54 +0530)]
net/liquidio: add APIs for response list

Add APIs to setup and process response list. Response list holds soft
commands waiting for response from device. Entries of this list are
processed to check for command response or timeout.

Signed-off-by: Shijith Thotton <shijith.thotton@caviumnetworks.com>
Signed-off-by: Jerin Jacob <jerin.jacob@caviumnetworks.com>
Signed-off-by: Derek Chickles <derek.chickles@caviumnetworks.com>
Signed-off-by: Venkat Koppula <venkat.koppula@caviumnetworks.com>
Signed-off-by: Srisivasubramanian S <ssrinivasan@caviumnetworks.com>
Signed-off-by: Mallesham Jatharakonda <mjatharakonda@oneconvergence.com>
7 years agonet/liquidio: add APIs to allocate and free soft command
Shijith Thotton [Sat, 25 Mar 2017 06:24:27 +0000 (11:54 +0530)]
net/liquidio: add APIs to allocate and free soft command

Get buffers from SC buffer pool and create soft command. Buffers are
freed to the pool once the command reaches device.

Signed-off-by: Shijith Thotton <shijith.thotton@caviumnetworks.com>
Signed-off-by: Jerin Jacob <jerin.jacob@caviumnetworks.com>
Signed-off-by: Derek Chickles <derek.chickles@caviumnetworks.com>
Signed-off-by: Venkat Koppula <venkat.koppula@caviumnetworks.com>
Signed-off-by: Srisivasubramanian S <ssrinivasan@caviumnetworks.com>
Signed-off-by: Mallesham Jatharakonda <mjatharakonda@oneconvergence.com>
7 years agonet/liquidio: add APIs to allocate and free SC buffer pool
Shijith Thotton [Sat, 25 Mar 2017 06:24:26 +0000 (11:54 +0530)]
net/liquidio: add APIs to allocate and free SC buffer pool

Soft command (SC) holds device control command and related information.
SC buffer pool holds buffers which are used during soft command
allocation.

Signed-off-by: Shijith Thotton <shijith.thotton@caviumnetworks.com>
Signed-off-by: Jerin Jacob <jerin.jacob@caviumnetworks.com>
Signed-off-by: Derek Chickles <derek.chickles@caviumnetworks.com>
Signed-off-by: Venkat Koppula <venkat.koppula@caviumnetworks.com>
Signed-off-by: Srisivasubramanian S <ssrinivasan@caviumnetworks.com>
Signed-off-by: Mallesham Jatharakonda <mjatharakonda@oneconvergence.com>
7 years agonet/liquidio: add API to setup IQ
Shijith Thotton [Sat, 25 Mar 2017 06:24:25 +0000 (11:54 +0530)]
net/liquidio: add API to setup IQ

Map instruction queue registers and set queue size.

Signed-off-by: Shijith Thotton <shijith.thotton@caviumnetworks.com>
Signed-off-by: Jerin Jacob <jerin.jacob@caviumnetworks.com>
Signed-off-by: Derek Chickles <derek.chickles@caviumnetworks.com>
Signed-off-by: Venkat Koppula <venkat.koppula@caviumnetworks.com>
Signed-off-by: Srisivasubramanian S <ssrinivasan@caviumnetworks.com>
Signed-off-by: Mallesham Jatharakonda <mjatharakonda@oneconvergence.com>
7 years agonet/liquidio: add APIs to allocate and free IQ
Shijith Thotton [Sat, 25 Mar 2017 06:24:24 +0000 (11:54 +0530)]
net/liquidio: add APIs to allocate and free IQ

Instruction queue (IQ) is used to send control and data packets to
device from host. IQ 0 is used to send device configuration commands
during initialization and later re-allocated as per application
requirement.

Signed-off-by: Shijith Thotton <shijith.thotton@caviumnetworks.com>
Signed-off-by: Jerin Jacob <jerin.jacob@caviumnetworks.com>
Signed-off-by: Derek Chickles <derek.chickles@caviumnetworks.com>
Signed-off-by: Venkat Koppula <venkat.koppula@caviumnetworks.com>
Signed-off-by: Srisivasubramanian S <ssrinivasan@caviumnetworks.com>
Signed-off-by: Mallesham Jatharakonda <mjatharakonda@oneconvergence.com>