[v2,6/8] net/i40e/base: support unused ports disabling
Checks
Commit Message
This patch adds support for disabling unused ports.
Signed-off-by: Damian Milosek <damian.milosek@intel.com>
Signed-off-by: Guinan Sun <guinanx.sun@intel.com>
---
V2:
* Modifiy title and message
---
drivers/net/i40e/base/i40e_adminq_cmd.h | 1 +
drivers/net/i40e/base/i40e_common.c | 6 ++++++
drivers/net/i40e/base/i40e_type.h | 1 +
3 files changed, 8 insertions(+)
Comments
Acked-by: Jeff Guo <jia.guo@intel.com>
On 7/27/2020 1:34 PM, Guinan Sun wrote:
> This patch adds support for disabling unused ports.
>
> Signed-off-by: Damian Milosek <damian.milosek@intel.com>
> Signed-off-by: Guinan Sun <guinanx.sun@intel.com>
> ---
> V2:
> * Modifiy title and message
> ---
> drivers/net/i40e/base/i40e_adminq_cmd.h | 1 +
> drivers/net/i40e/base/i40e_common.c | 6 ++++++
> drivers/net/i40e/base/i40e_type.h | 1 +
> 3 files changed, 8 insertions(+)
>
> diff --git a/drivers/net/i40e/base/i40e_adminq_cmd.h b/drivers/net/i40e/base/i40e_adminq_cmd.h
> index e1018ed49..c7686b0d3 100644
> --- a/drivers/net/i40e/base/i40e_adminq_cmd.h
> +++ b/drivers/net/i40e/base/i40e_adminq_cmd.h
> @@ -440,6 +440,7 @@ struct i40e_aqc_list_capabilities_element_resp {
> #define I40E_AQ_CAP_ID_SDP 0x0062
> #define I40E_AQ_CAP_ID_MDIO 0x0063
> #define I40E_AQ_CAP_ID_WSR_PROT 0x0064
> +#define I40E_AQ_CAP_ID_DIS_UNUSED_PORTS 0x0067
> #define I40E_AQ_CAP_ID_NVM_MGMT 0x0080
> #define I40E_AQ_CAP_ID_FLEX10 0x00F1
> #define I40E_AQ_CAP_ID_CEM 0x00F2
> diff --git a/drivers/net/i40e/base/i40e_common.c b/drivers/net/i40e/base/i40e_common.c
> index 85c22849e..65317f6c6 100644
> --- a/drivers/net/i40e/base/i40e_common.c
> +++ b/drivers/net/i40e/base/i40e_common.c
> @@ -4021,6 +4021,12 @@ STATIC void i40e_parse_discover_capabilities(struct i40e_hw *hw, void *buff,
> "HW Capability: wr_csr_prot = 0x%llX\n\n",
> (p->wr_csr_prot & 0xffff));
> break;
> + case I40E_AQ_CAP_ID_DIS_UNUSED_PORTS:
> + p->dis_unused_ports = (bool)number;
> + i40e_debug(hw, I40E_DEBUG_INIT,
> + "HW Capability: dis_unused_ports = %d\n\n",
> + p->dis_unused_ports);
> + break;
> case I40E_AQ_CAP_ID_NVM_MGMT:
> if (number & I40E_NVM_MGMT_SEC_REV_DISABLED)
> p->sec_rev_disabled = true;
> diff --git a/drivers/net/i40e/base/i40e_type.h b/drivers/net/i40e/base/i40e_type.h
> index 0eeb55975..cf4134583 100644
> --- a/drivers/net/i40e/base/i40e_type.h
> +++ b/drivers/net/i40e/base/i40e_type.h
> @@ -425,6 +425,7 @@ struct i40e_hw_capabilities {
> u32 enabled_tcmap;
> u32 maxtc;
> u64 wr_csr_prot;
> + bool dis_unused_ports;
> bool apm_wol_support;
> enum i40e_acpi_programming_method acpi_prog_method;
> bool proxy_support;
@@ -440,6 +440,7 @@ struct i40e_aqc_list_capabilities_element_resp {
#define I40E_AQ_CAP_ID_SDP 0x0062
#define I40E_AQ_CAP_ID_MDIO 0x0063
#define I40E_AQ_CAP_ID_WSR_PROT 0x0064
+#define I40E_AQ_CAP_ID_DIS_UNUSED_PORTS 0x0067
#define I40E_AQ_CAP_ID_NVM_MGMT 0x0080
#define I40E_AQ_CAP_ID_FLEX10 0x00F1
#define I40E_AQ_CAP_ID_CEM 0x00F2
@@ -4021,6 +4021,12 @@ STATIC void i40e_parse_discover_capabilities(struct i40e_hw *hw, void *buff,
"HW Capability: wr_csr_prot = 0x%llX\n\n",
(p->wr_csr_prot & 0xffff));
break;
+ case I40E_AQ_CAP_ID_DIS_UNUSED_PORTS:
+ p->dis_unused_ports = (bool)number;
+ i40e_debug(hw, I40E_DEBUG_INIT,
+ "HW Capability: dis_unused_ports = %d\n\n",
+ p->dis_unused_ports);
+ break;
case I40E_AQ_CAP_ID_NVM_MGMT:
if (number & I40E_NVM_MGMT_SEC_REV_DISABLED)
p->sec_rev_disabled = true;
@@ -425,6 +425,7 @@ struct i40e_hw_capabilities {
u32 enabled_tcmap;
u32 maxtc;
u64 wr_csr_prot;
+ bool dis_unused_ports;
bool apm_wol_support;
enum i40e_acpi_programming_method acpi_prog_method;
bool proxy_support;