diff options
| author | Yashaswini Raghuram Prathivadi Bhayankaram <yashaswini.raghuram.prathivadi.bhayankaram@intel.com> | 2018-08-10 03:17:44 -0400 |
|---|---|---|
| committer | Jeff Kirsher <jeffrey.t.kirsher@intel.com> | 2018-10-03 10:42:29 -0400 |
| commit | 16fc087b9cb22c9a97307cc24a5413d0df68fe11 (patch) | |
| tree | f1bb4340a031169fb1889972d6d9b17fdaf8635e | |
| parent | 4e6d47206c32d1bbb4931f1d851dae3870e0df81 (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.h | 15 |
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 { | |||
| 596 | struct virtchnl_pf_event { | 598 | struct 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; |
