[Intel-wired-lan] [PATCH 1/4] i40e: Remove CONFIG_I40E_VXLAN
Keller, Jacob E
jacob.e.keller at intel.com
Thu Aug 20 20:30:18 UTC 2015
On Thu, 2015-08-20 at 11:46 -0700, Anjali Singhai Jain wrote:
> If the kernel flag CONFIG_VXLAN is true or CONFIG_VXLAN_MODULE is
> true,
> enable VXLAN offload in the driver.
>
> Signed-off-by: Kiran Patil <kiran.patil at intel.com>
> Signed-off-by: Anjali Singhai Jain <anjali.singhai at intel.com>
> ---
> drivers/net/ethernet/intel/Kconfig | 11 -----------
> drivers/net/ethernet/intel/i40e/i40e.h | 4 ----
> drivers/net/ethernet/intel/i40e/i40e_main.c | 14 ++++----------
> 3 files changed, 4 insertions(+), 25 deletions(-)
>
> diff --git a/drivers/net/ethernet/intel/Kconfig
> b/drivers/net/ethernet/intel/Kconfig
> index 4163b16..061e4e0 100644
> --- a/drivers/net/ethernet/intel/Kconfig
> +++ b/drivers/net/ethernet/intel/Kconfig
> @@ -269,17 +269,6 @@ config I40E
> To compile this driver as a module, choose M here. The
> module
> will be called i40e.
>
> -config I40E_VXLAN
> - bool "Virtual eXtensible Local Area Network Support"
> - default n
> - depends on I40E && VXLAN && !(I40E=y && VXLAN=m)
> - ---help---
> - This allows one to create VXLAN virtual interfaces that
> provide
> - Layer 2 Networks over Layer 3 Networks. VXLAN is often
> used
> - to tunnel virtual network infrastructure in virtualized
> environments.
> - Say Y here if you want to use Virtual eXtensible Local
> Area Network
> - (VXLAN) in the driver.
> -
> config I40E_DCB
> bool "Data Center Bridging (DCB) Support"
> default n
> diff --git a/drivers/net/ethernet/intel/i40e/i40e.h
> b/drivers/net/ethernet/intel/i40e/i40e.h
> index c9fa289..257f7d8 100644
> --- a/drivers/net/ethernet/intel/i40e/i40e.h
> +++ b/drivers/net/ethernet/intel/i40e/i40e.h
> @@ -274,11 +274,9 @@ struct i40e_pf {
> u32 fd_atr_cnt;
> u32 fd_tcp_rule;
>
> -#ifdef CONFIG_I40E_VXLAN
> __be16 vxlan_ports[I40E_MAX_PF_UDP_OFFLOAD_PORTS];
> u16 pending_vxlan_bitmap;
>
> -#endif
> enum i40e_interrupt_policy int_policy;
> u16 rx_itr_default;
> u16 tx_itr_default;
> @@ -316,9 +314,7 @@ struct i40e_pf {
> #define I40E_FLAG_FD_ATR_ENABLED BIT_ULL(22)
> #define I40E_FLAG_PTP BIT_ULL(25)
> #define I40E_FLAG_MFP_ENABLED BIT_ULL(26)
> -#ifdef CONFIG_I40E_VXLAN
> #define I40E_FLAG_VXLAN_FILTER_SYNC BIT_ULL(27)
> -#endif
> #define I40E_FLAG_PORT_ID_VALID BIT_ULL(28)
> #define I40E_FLAG_DCB_CAPABLE BIT_ULL(29)
> #define I40E_FLAG_RSS_AQ_CAPABLE BIT_ULL(31)
> diff --git a/drivers/net/ethernet/intel/i40e/i40e_main.c
> b/drivers/net/ethernet/intel/i40e/i40e_main.c
> index aef0a4c..05081d1 100644
> --- a/drivers/net/ethernet/intel/i40e/i40e_main.c
> +++ b/drivers/net/ethernet/intel/i40e/i40e_main.c
> @@ -28,7 +28,7 @@
> #include "i40e.h"
> #include "i40e_helper.h"
> #include "i40e_diag.h"
> -#ifdef CONFIG_I40E_VXLAN
> +#if defined(CONFIG_VXLAN) || defined(CONFIG_VXLAN_MODULE)
>
Use the following idiom instead for modules.
#if IS_ENABLED(CONFIG_VXLAN)
> #include <net/vxlan.h>
> #endif
>
> @@ -4934,7 +4934,7 @@ int i40e_open(struct net_device *netdev)
> TCP_FLAG_CWR)
> >> 16);
> wr32(&pf->hw, I40E_GLLAN_TSOMSK_L, be32_to_cpu(TCP_FLAG_CWR)
> >> 16);
>
> -#ifdef CONFIG_I40E_VXLAN
> +#if defined(CONFIG_VXLAN) || defined(CONFIG_VXLAN_MODULE)
> vxlan_get_rx_port(netdev);
> #endif
>
> @@ -6659,13 +6659,13 @@ static void i40e_handle_mdd_event(struct
> i40e_pf *pf)
> i40e_flush(hw);
> }
>
> -#ifdef CONFIG_I40E_VXLAN
> /**
> * i40e_sync_vxlan_filters_subtask - Sync the VSI filter list with
> HW
> * @pf: board private structure
> **/
> static void i40e_sync_vxlan_filters_subtask(struct i40e_pf *pf)
> {
> +#if defined(CONFIG_VXLAN) || defined(CONFIG_VXLAN_MODULE)
> struct i40e_hw *hw = &pf->hw;
> i40e_status ret;
> __be16 port;
> @@ -6699,9 +6699,9 @@ static void
> i40e_sync_vxlan_filters_subtask(struct i40e_pf *pf)
> }
> }
> }
> +#endif
> }
>
> -#endif
> /**
> * i40e_service_task - Run the driver's async subtasks
> * @work: pointer to work_struct containing our data
> @@ -6725,9 +6725,7 @@ static void i40e_service_task(struct
> work_struct *work)
> i40e_watchdog_subtask(pf);
> i40e_fdir_reinit_subtask(pf);
> i40e_sync_filters_subtask(pf);
> -#ifdef CONFIG_I40E_VXLAN
> i40e_sync_vxlan_filters_subtask(pf);
> -#endif
> i40e_clean_adminq_subtask(pf);
>
> i40e_service_event_complete(pf);
> @@ -7944,7 +7942,6 @@ static int i40e_set_features(struct net_device
> *netdev,
> return 0;
> }
>
> -#ifdef CONFIG_I40E_VXLAN
> /**
> * i40e_get_vxlan_port_idx - Lookup a possibly offloaded for Rx UDP
> port
> * @pf: board private structure
> @@ -8039,7 +8036,6 @@ static void i40e_del_vxlan_port(struct
> net_device *netdev,
> }
> }
>
> -#endif
> static int i40e_get_phys_port_id(struct net_device *netdev,
> struct netdev_phys_item_id *ppid)
> {
> @@ -8262,10 +8258,8 @@ static const struct net_device_ops
> i40e_netdev_ops = {
> .ndo_get_vf_config = i40e_ndo_get_vf_config,
> .ndo_set_vf_link_state = i40e_ndo_set_vf_link_state,
> .ndo_set_vf_spoofchk = i40e_ndo_set_vf_spoofchk,
> -#ifdef CONFIG_I40E_VXLAN
> .ndo_add_vxlan_port = i40e_add_vxlan_port,
> .ndo_del_vxlan_port = i40e_del_vxlan_port,
> -#endif
> .ndo_get_phys_port_id = i40e_get_phys_port_id,
> .ndo_fdb_add = i40e_ndo_fdb_add,
> .ndo_features_check = i40e_features_check,
More information about the Intel-wired-lan
mailing list