From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga11.intel.com (mga11.intel.com [192.55.52.93]) by dpdk.org (Postfix) with ESMTP id AD60F4A65 for ; Wed, 8 Feb 2017 02:37:31 +0100 (CET) Received: from orsmga003.jf.intel.com ([10.7.209.27]) by fmsmga102.fm.intel.com with ESMTP; 07 Feb 2017 17:37:30 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.33,346,1477983600"; d="scan'208";a="931337535" Received: from dpdk26.sh.intel.com ([10.239.128.228]) by orsmga003.jf.intel.com with ESMTP; 07 Feb 2017 17:37:29 -0800 From: Wenzhuo Lu To: dev@dpdk.org Cc: Wenzhuo Lu Date: Wed, 8 Feb 2017 09:37:36 +0800 Message-Id: <1486517856-52812-1-git-send-email-wenzhuo.lu@intel.com> X-Mailer: git-send-email 1.9.3 Subject: [dpdk-dev] [PATCH] net/i40e: i40e PMD check enhancement X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 08 Feb 2017 01:37:32 -0000 Change is_i40e_pmd to is_device_supported to make it more generic. Signed-off-by: Wenzhuo Lu --- drivers/net/i40e/i40e_ethdev.c | 42 ++++++++++++++++++++---------------------- 1 file changed, 20 insertions(+), 22 deletions(-) diff --git a/drivers/net/i40e/i40e_ethdev.c b/drivers/net/i40e/i40e_ethdev.c index b2dd6d6..caebf57 100644 --- a/drivers/net/i40e/i40e_ethdev.c +++ b/drivers/net/i40e/i40e_ethdev.c @@ -10260,16 +10260,14 @@ static void i40e_set_default_mac_addr(struct rte_eth_dev *dev, i40e_fdir_filter_restore(pf); } -static int -is_i40e_pmd(const char *driver_name) +static bool +is_device_supported(struct rte_eth_dev *dev, struct eth_driver *drv) { - if (!strstr(driver_name, "i40e")) - return -ENOTSUP; + if (strcmp(dev->driver->pci_drv.driver.name, + drv->pci_drv.driver.name)) + return false; - if (strstr(driver_name, "i40e_vf")) - return -ENOTSUP; - - return 0; + return true; } int @@ -10282,7 +10280,7 @@ static void i40e_set_default_mac_addr(struct rte_eth_dev *dev, dev = &rte_eth_devices[port]; - if (is_i40e_pmd(dev->data->drv_name)) + if (!is_device_supported(dev, &rte_i40e_pmd)) return -ENOTSUP; pf = I40E_DEV_PRIVATE_TO_PF(dev->data->dev_private); @@ -10311,7 +10309,7 @@ static void i40e_set_default_mac_addr(struct rte_eth_dev *dev, dev = &rte_eth_devices[port]; - if (is_i40e_pmd(dev->data->drv_name)) + if (!is_device_supported(dev, &rte_i40e_pmd)) return -ENOTSUP; pf = I40E_DEV_PRIVATE_TO_PF(dev->data->dev_private); @@ -10415,7 +10413,7 @@ static void i40e_set_default_mac_addr(struct rte_eth_dev *dev, dev = &rte_eth_devices[port]; - if (is_i40e_pmd(dev->data->drv_name)) + if (!is_device_supported(dev, &rte_i40e_pmd)) return -ENOTSUP; pf = I40E_DEV_PRIVATE_TO_PF(dev->data->dev_private); @@ -10673,7 +10671,7 @@ static void i40e_set_default_mac_addr(struct rte_eth_dev *dev, dev = &rte_eth_devices[port]; - if (is_i40e_pmd(dev->data->drv_name)) + if (!is_device_supported(dev, &rte_i40e_pmd)) return -ENOTSUP; pf = I40E_DEV_PRIVATE_TO_PF(dev->data->dev_private); @@ -10715,7 +10713,7 @@ static void i40e_set_default_mac_addr(struct rte_eth_dev *dev, dev = &rte_eth_devices[port]; - if (is_i40e_pmd(dev->data->drv_name)) + if (!is_device_supported(dev, &rte_i40e_pmd)) return -ENOTSUP; pf = I40E_DEV_PRIVATE_TO_PF(dev->data->dev_private); @@ -10756,7 +10754,7 @@ static void i40e_set_default_mac_addr(struct rte_eth_dev *dev, dev = &rte_eth_devices[port]; - if (is_i40e_pmd(dev->data->drv_name)) + if (!is_device_supported(dev, &rte_i40e_pmd)) return -ENOTSUP; pf = I40E_DEV_PRIVATE_TO_PF(dev->data->dev_private); @@ -10802,7 +10800,7 @@ static void i40e_set_default_mac_addr(struct rte_eth_dev *dev, dev = &rte_eth_devices[port]; - if (is_i40e_pmd(dev->data->drv_name)) + if (!is_device_supported(dev, &rte_i40e_pmd)) return -ENOTSUP; pf = I40E_DEV_PRIVATE_TO_PF(dev->data->dev_private); @@ -10839,7 +10837,7 @@ static void i40e_set_default_mac_addr(struct rte_eth_dev *dev, dev = &rte_eth_devices[port]; - if (is_i40e_pmd(dev->data->drv_name)) + if (!is_device_supported(dev, &rte_i40e_pmd)) return -ENOTSUP; pf = I40E_DEV_PRIVATE_TO_PF(dev->data->dev_private); @@ -10882,7 +10880,7 @@ int rte_pmd_i40e_set_vf_vlan_insert(uint8_t port, uint16_t vf_id, dev = &rte_eth_devices[port]; - if (is_i40e_pmd(dev->data->drv_name)) + if (!is_device_supported(dev, &rte_i40e_pmd)) return -ENOTSUP; pf = I40E_DEV_PRIVATE_TO_PF(dev->data->dev_private); @@ -10946,7 +10944,7 @@ int rte_pmd_i40e_set_vf_broadcast(uint8_t port, uint16_t vf_id, dev = &rte_eth_devices[port]; - if (is_i40e_pmd(dev->data->drv_name)) + if (!is_device_supported(dev, &rte_i40e_pmd)) return -ENOTSUP; pf = I40E_DEV_PRIVATE_TO_PF(dev->data->dev_private); @@ -11002,7 +11000,7 @@ int rte_pmd_i40e_set_vf_vlan_tag(uint8_t port, uint16_t vf_id, uint8_t on) dev = &rte_eth_devices[port]; - if (is_i40e_pmd(dev->data->drv_name)) + if (!is_device_supported(dev, &rte_i40e_pmd)) return -ENOTSUP; pf = I40E_DEV_PRIVATE_TO_PF(dev->data->dev_private); @@ -11065,7 +11063,7 @@ int rte_pmd_i40e_set_vf_vlan_filter(uint8_t port, uint16_t vlan_id, dev = &rte_eth_devices[port]; - if (is_i40e_pmd(dev->data->drv_name)) + if (!is_device_supported(dev, &rte_i40e_pmd)) return -ENOTSUP; if (vlan_id > ETHER_MAX_VLAN_ID) { @@ -11128,7 +11126,7 @@ int rte_pmd_i40e_set_vf_vlan_filter(uint8_t port, uint16_t vlan_id, dev = &rte_eth_devices[port]; - if (is_i40e_pmd(dev->data->drv_name)) + if (!is_device_supported(dev, &rte_i40e_pmd)) return -ENOTSUP; pf = I40E_DEV_PRIVATE_TO_PF(dev->data->dev_private); @@ -11172,7 +11170,7 @@ int rte_pmd_i40e_set_vf_vlan_filter(uint8_t port, uint16_t vlan_id, dev = &rte_eth_devices[port]; - if (is_i40e_pmd(dev->data->drv_name)) + if (!is_device_supported(dev, &rte_i40e_pmd)) return -ENOTSUP; pf = I40E_DEV_PRIVATE_TO_PF(dev->data->dev_private); -- 1.9.3