aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorYashaswini Raghuram Prathivadi Bhayankaram <yashaswini.raghuram.prathivadi.bhayankaram@intel.com>2018-08-10 03:17:44 -0400
committerJeff Kirsher <jeffrey.t.kirsher@intel.com>2018-10-03 10:42:29 -0400
commit16fc087b9cb22c9a97307cc24a5413d0df68fe11 (patch)
treef1bb4340a031169fb1889972d6d9b17fdaf8635e
parent4e6d47206c32d1bbb4931f1d851dae3870e0df81 (diff)
virtchnl: Added support to exchange additional speed values
Introduced a new virtchnl capability flag and a struct to support exchange of additional supported speeds. Signed-off-by: Yashaswini Raghuram Prathivadi Bhayankaram <yashaswini.raghuram.prathivadi.bhayankaram@intel.com> Signed-off-by: Anirudh Venkataramanan <anirudh.venkataramanan@intel.com> Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
-rw-r--r--include/linux/avf/virtchnl.h15
1 files changed, 15 insertions, 0 deletions
diff --git a/include/linux/avf/virtchnl.h b/include/linux/avf/virtchnl.h
index b41f7bc958ef..2c9756bd9c4c 100644
--- a/include/linux/avf/virtchnl.h
+++ b/include/linux/avf/virtchnl.h
@@ -252,6 +252,8 @@ VIRTCHNL_CHECK_STRUCT_LEN(16, virtchnl_vsi_resource);
252#define VIRTCHNL_VF_OFFLOAD_RX_ENCAP_CSUM 0X00400000 252#define VIRTCHNL_VF_OFFLOAD_RX_ENCAP_CSUM 0X00400000
253#define VIRTCHNL_VF_OFFLOAD_ADQ 0X00800000 253#define VIRTCHNL_VF_OFFLOAD_ADQ 0X00800000
254 254
255/* Define below the capability flags that are not offloads */
256#define VIRTCHNL_VF_CAP_ADV_LINK_SPEED 0x00000080
255#define VF_BASE_MODE_OFFLOADS (VIRTCHNL_VF_OFFLOAD_L2 | \ 257#define VF_BASE_MODE_OFFLOADS (VIRTCHNL_VF_OFFLOAD_L2 | \
256 VIRTCHNL_VF_OFFLOAD_VLAN | \ 258 VIRTCHNL_VF_OFFLOAD_VLAN | \
257 VIRTCHNL_VF_OFFLOAD_RSS_PF) 259 VIRTCHNL_VF_OFFLOAD_RSS_PF)
@@ -596,10 +598,23 @@ enum virtchnl_event_codes {
596struct virtchnl_pf_event { 598struct virtchnl_pf_event {
597 enum virtchnl_event_codes event; 599 enum virtchnl_event_codes event;
598 union { 600 union {
601 /* If the PF driver does not support the new speed reporting
602 * capabilities then use link_event else use link_event_adv to
603 * get the speed and link information. The ability to understand
604 * new speeds is indicated by setting the capability flag
605 * VIRTCHNL_VF_CAP_ADV_LINK_SPEED in vf_cap_flags parameter
606 * in virtchnl_vf_resource struct and can be used to determine
607 * which link event struct to use below.
608 */
599 struct { 609 struct {
600 enum virtchnl_link_speed link_speed; 610 enum virtchnl_link_speed link_speed;
601 bool link_status; 611 bool link_status;
602 } link_event; 612 } link_event;
613 struct {
614 /* link_speed provided in Mbps */
615 u32 link_speed;
616 u8 link_status;
617 } link_event_adv;
603 } event_data; 618 } event_data;
604 619
605 int severity; 620 int severity;