aboutsummaryrefslogtreecommitdiffstats
path: root/include/linux/mlx4
diff options
context:
space:
mode:
authorYishai Hadas <yishaih@mellanox.com>2015-01-25 09:59:35 -0500
committerDavid S. Miller <davem@davemloft.net>2015-01-25 17:43:13 -0500
commit872bf2fb69d90e3619befee842fc26db39d8e475 (patch)
treecd57553d6b75b48bf75a9aa6c4358fbed88e7b4a /include/linux/mlx4
parent7aee42c6764bae75d0eb2f674f0874193de90c05 (diff)
net/mlx4_core: Maintain a persistent memory for mlx4 device
Maintain a persistent memory that should survive reset flow/PCI error. This comes as a preparation for coming series to support above flows. Signed-off-by: Yishai Hadas <yishaih@mellanox.com> Signed-off-by: Or Gerlitz <ogerlitz@mellanox.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'include/linux/mlx4')
-rw-r--r--include/linux/mlx4/device.h11
1 files changed, 8 insertions, 3 deletions
diff --git a/include/linux/mlx4/device.h b/include/linux/mlx4/device.h
index f1e41b33462f..1069ce65e8b4 100644
--- a/include/linux/mlx4/device.h
+++ b/include/linux/mlx4/device.h
@@ -744,8 +744,15 @@ struct mlx4_vf_dev {
744 u8 n_ports; 744 u8 n_ports;
745}; 745};
746 746
747struct mlx4_dev { 747struct mlx4_dev_persistent {
748 struct pci_dev *pdev; 748 struct pci_dev *pdev;
749 struct mlx4_dev *dev;
750 int nvfs[MLX4_MAX_PORTS + 1];
751 int num_vfs;
752};
753
754struct mlx4_dev {
755 struct mlx4_dev_persistent *persist;
749 unsigned long flags; 756 unsigned long flags;
750 unsigned long num_slaves; 757 unsigned long num_slaves;
751 struct mlx4_caps caps; 758 struct mlx4_caps caps;
@@ -754,13 +761,11 @@ struct mlx4_dev {
754 struct radix_tree_root qp_table_tree; 761 struct radix_tree_root qp_table_tree;
755 u8 rev_id; 762 u8 rev_id;
756 char board_id[MLX4_BOARD_ID_LEN]; 763 char board_id[MLX4_BOARD_ID_LEN];
757 int num_vfs;
758 int numa_node; 764 int numa_node;
759 int oper_log_mgm_entry_size; 765 int oper_log_mgm_entry_size;
760 u64 regid_promisc_array[MLX4_MAX_PORTS + 1]; 766 u64 regid_promisc_array[MLX4_MAX_PORTS + 1];
761 u64 regid_allmulti_array[MLX4_MAX_PORTS + 1]; 767 u64 regid_allmulti_array[MLX4_MAX_PORTS + 1];
762 struct mlx4_vf_dev *dev_vfs; 768 struct mlx4_vf_dev *dev_vfs;
763 int nvfs[MLX4_MAX_PORTS + 1];
764}; 769};
765 770
766struct mlx4_eqe { 771struct mlx4_eqe {