Commit Graph

11 Commits

Author SHA1 Message Date
Qi Zhang
32f5a9b34a net/ice/base: add function for DSCP configure
ice_aq_set_pfc_mode is used to configure DSCP.

Signed-off-by: Anirudh Venkataramanan <anirudh.venkataramanan@intel.com>
Signed-off-by: Qi Zhang <qi.z.zhang@intel.com>
2021-06-10 12:04:16 +02:00
Qi Zhang
8ea78b1696 net/ice/base: support L3 DSCP QoS
The base code support to build configuration TLVs
in DSCP mode has not been implemented before, so
the functions to do so and the flow control to determine
if we are in VLAN or DSCP mode need to be added.

The current value for maximum number of DCB APPs
(ICE_DCBX_MAX_APPS) is not sufficient when supporting
DSCP mode.  Each DSCP->TC mapping will come in as a
single APP value.  So, there can be up to 64 APPs for
DSCP mapping.

Need to keep track of the current DSCP to TC mapping
so that TLVs can be built up to send to the FW.  Add
an u8 array to hold this info.

A u64 is also needed to keep track of the DSCP values
that have had an APP submitted to map its value to a
TC.  Since it would be unwise to allow an APP to be
overwritten by subsequent APPs, reject mappings for a
DSCP value that already has a user mapped value.  This
will allow us to easily track which DSCP values have
been mapped, and when the last one has been deleted.

Signed-off-by: Dave Ertman <david.m.ertman@intel.com>
Signed-off-by: Anirudh Venkataramanan <anirudh.venkataramanan@intel.com>
Signed-off-by: Qi Zhang <qi.z.zhang@intel.com>
Acked-by: Qi Zhang <qi.z.zhang@intel.com>
2021-04-30 15:47:50 +02:00
Qi Zhang
d84e220a8d net/ice/base: update copyright date
Updated the Copyright for 2021
Updated ice driver version.

Signed-off-by: Qi Zhang <qi.z.zhang@intel.com>
2021-01-08 19:03:09 +01:00
Qi Zhang
170d34ac43 net/ice/base: replace single-element array hack
Convert the pre-C90-extension "C struct hack" method (using a single-
element array at the end of a structure for implementing variable-length
types) to the preferred use of C99 flexible array member.

Signed-off-by: Bruce Allan <bruce.w.allan@intel.com>
Signed-off-by: Qi Zhang <qi.z.zhang@intel.com>
Acked-by: Qiming Yang <qiming.yang@intel.com>
2020-09-18 18:55:09 +02:00
Qi Zhang
946a5337b2 net/ice/base: move LLDP function to common module
To implement a FW workaround for LFC, a set_local_mib must be
performed after every link up event.  For systems that do not
have DCB configured, we need to move the function
ice_aq_set_lldp_mib() from the DCB specific ice_dcb.c to
ice_common.c so that the driver always has access to this AQ
command.

Signed-off-by: Dave Ertman <david.m.ertman@intel.com>
Signed-off-by: Paul M Stillwell Jr <paul.m.stillwell.jr@intel.com>
Signed-off-by: Qi Zhang <qi.z.zhang@intel.com>
Acked-by: Qiming Yang <qiming.yang@intel.com>
2020-07-07 23:38:26 +02:00
Xiaoyun Li
dc496974cd net/ice/base: update copyright
Clarify Intel copyright and update the date to 2020.

Fixes: f3202a097f ("net/ice/base: add ACL module")
Fixes: a90fae1d07 ("net/ice/base: add admin queue structures and commands")
Fixes: 2d2bdc0267 ("net/ice/base: add various headers")
Fixes: c9e37832c9 ("net/ice/base: rework on bit ops")
Fixes: 453d087cca ("net/ice/base: add common functions")
Fixes: 6c1f26be50 ("net/ice/base: add control queue information")
Fixes: 1082f78654 ("net/ice/base: support DCB")
Fixes: 6aa406714a ("net/ice/base: add device IDs for Intel E800 Series NICs")
Fixes: bd984f155f ("net/ice/base: support FDIR")
Fixes: 51d04e4933 ("net/ice/base: add flexible pipeline module")
Fixes: 2d2bdc0267 ("net/ice/base: add various headers")
Fixes: aa1cd410fa ("net/ice/base: add flow module")
Fixes: 51c7f09f3f ("net/ice/base: add registers for Intel E800 Series NIC")
Fixes: 64e9587d56 ("net/ice/base: add structures for Rx/Tx queues")
Fixes: 557fa75bcf ("net/ice/base: add code to work with the NVM")
Fixes: b06499a433 ("net/ice/base: update Boot Configuration Section read of NVM")
Fixes: 04b8ec1ea8 ("net/ice/base: add protocol structures and defines")
Fixes: 2a27e0a16d ("net/ice/base: add sideband queue info")
Fixes: 93e84b1bfc ("net/ice/base: add basic Tx scheduler")
Fixes: c7dd159311 ("net/ice/base: add virtual switch code")
Fixes: a240ff5050 ("net/ice/base: add basic structures")
Cc: stable@dpdk.org

Signed-off-by: Xiaoyun Li <xiaoyun.li@intel.com>
Reviewed-by: Ferruh Yigit <ferruh.yigit@intel.com>
2020-05-18 20:35:57 +02:00
Qi Zhang
e0b977dddb net/ice/base: update copyright date
Update copyright date to 2020.

Signed-off-by: Paul M Stillwell Jr <paul.m.stillwell.jr@intel.com>
Signed-off-by: Qi Zhang <qi.z.zhang@intel.com>
Acked-by: Qiming Yang <qiming.yang@intel.com>
2020-04-21 13:57:05 +02:00
Qi Zhang
4b6e8c03be net/ice/base: enhance NVM read
Add an option to read NVM from flash directly.

Signed-off-by: Paul M Stillwell Jr <paul.m.stillwell.jr@intel.com>
Signed-off-by: Qi Zhang <qi.z.zhang@intel.com>
Acked-by: Xiaolong Ye <xiaolong.ye@intel.com>
2019-10-07 15:00:52 +02:00
Leyi Rong
9c710f2ad0 net/ice/base: implement LLDP persistent settings
This patch implements persistent, across reboots, start and stop
of LLDP agent. Added additional function parameter to
ice_aq_start_lldp and ice_aq_stop_lldp.

Signed-off-by: Jaroslaw Ilgiewicz <jaroslaw.ilgiewicz@intel.com>
Signed-off-by: Paul M Stillwell Jr <paul.m.stillwell.jr@intel.com>
Signed-off-by: Leyi Rong <leyi.rong@intel.com>
Acked-by: Qi Zhang <qi.z.zhang@intel.com>
2019-06-28 20:31:48 +02:00
Leyi Rong
53c7ea0c53 net/ice/base: add function to configure MIB
Decouple ice_cfg_lldp_mib_change from the ice_init_dcb function call.

Signed-off-by: Chinh T Cao <chinh.t.cao@intel.com>
Signed-off-by: Paul M Stillwell Jr <paul.m.stillwell.jr@intel.com>
Signed-off-by: Leyi Rong <leyi.rong@intel.com>
Acked-by: Qi Zhang <qi.z.zhang@intel.com>
2019-06-28 20:31:48 +02:00
Qi Zhang
1082f78654 net/ice/base: support DCB
Add module to support DCB related features.

Signed-off-by: Paul M Stillwell Jr <paul.m.stillwell.jr@intel.com>
Signed-off-by: Qi Zhang <qi.z.zhang@intel.com>
Reviewed-by: Qiming Yang <qiming.yang@intel.com>
Reviewed-by: Wenzhuo Lu <wenzhuo.lu@intel.com>
2019-03-29 17:25:31 +01:00