aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/ethernet/intel/i40evf/i40e_hmc.h
diff options
context:
space:
mode:
authorFaisal Latif <faisal.latif@intel.com>2015-04-27 14:57:19 -0400
committerJeff Kirsher <jeffrey.t.kirsher@intel.com>2015-07-14 18:26:43 -0700
commit3bbf0faa90cb8d541d8b2ce01610dcec6828bd00 (patch)
tree88753d6ba6749b12d4945207d59310c0218f5161 /drivers/net/ethernet/intel/i40evf/i40e_hmc.h
parenti40evf: add MAC address filter in open, not init (diff)
downloadlinux-dev-3bbf0faa90cb8d541d8b2ce01610dcec6828bd00.tar.xz
linux-dev-3bbf0faa90cb8d541d8b2ce01610dcec6828bd00.zip
i40e/i40evf: Add support for pre-allocated pages for PD
The i40e_add_pd_table_entry() routine is being modified to handle both cases where a backing page is passed and where backing page is allocated in i40e_add_pd_table_entry(). For PBLE resource management, it is more efficient for it to manage its backing pages. For VF, PBLE backing page addresses will be send to PF driver for PBLE resource. The i40e_remove_pd_bp() is also modified to not free pre-allocated pages and free only ones which were allocated in i40e_add_pd_table_entry(). Change-ID: Ie673f0403f22979e9406f5a94048dceb91bcf9a8 Signed-off-by: Faisal Latif <faisal.latif@intel.com> Tested-by: Jim Young <james.m.young@intel.com> Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Diffstat (limited to '')
-rw-r--r--drivers/net/ethernet/intel/i40evf/i40e_hmc.h4
1 files changed, 3 insertions, 1 deletions
diff --git a/drivers/net/ethernet/intel/i40evf/i40e_hmc.h b/drivers/net/ethernet/intel/i40evf/i40e_hmc.h
index 931c88044300..adc6f71f40a8 100644
--- a/drivers/net/ethernet/intel/i40evf/i40e_hmc.h
+++ b/drivers/net/ethernet/intel/i40evf/i40e_hmc.h
@@ -62,6 +62,7 @@ struct i40e_hmc_bp {
struct i40e_hmc_pd_entry {
struct i40e_hmc_bp bp;
u32 sd_index;
+ bool rsrc_pg;
bool valid;
};
@@ -218,7 +219,8 @@ i40e_status i40e_add_sd_table_entry(struct i40e_hw *hw,
i40e_status i40e_add_pd_table_entry(struct i40e_hw *hw,
struct i40e_hmc_info *hmc_info,
- u32 pd_index);
+ u32 pd_index,
+ struct i40e_dma_mem *rsrc_pg);
i40e_status i40e_remove_pd_bp(struct i40e_hw *hw,
struct i40e_hmc_info *hmc_info,
u32 idx);