diff options
| author | Mark Brown <[email protected]> | 2015-10-12 18:09:27 +0100 | 
|---|---|---|
| committer | Mark Brown <[email protected]> | 2015-10-12 18:09:27 +0100 | 
| commit | 79828b4fa835f73cdaf4bffa48696abdcbea9d02 (patch) | |
| tree | 5e0fa7156acb75ba603022bc807df8f2fedb97a8 /include/linux/mlx5/driver.h | |
| parent | 721b51fcf91898299d96f4b72cb9434cda29dce6 (diff) | |
| parent | 8c1a9d6323abf0fb1e5dad96cf3f1c783505ea5a (diff) | |
Merge remote-tracking branch 'asoc/fix/rt5645' into asoc-fix-rt5645
Diffstat (limited to 'include/linux/mlx5/driver.h')
| -rw-r--r-- | include/linux/mlx5/driver.h | 30 | 
1 files changed, 24 insertions, 6 deletions
diff --git a/include/linux/mlx5/driver.h b/include/linux/mlx5/driver.h index 5722d88c2429..27b53f9a24ad 100644 --- a/include/linux/mlx5/driver.h +++ b/include/linux/mlx5/driver.h @@ -103,6 +103,8 @@ enum {  	MLX5_REG_PMTU		 = 0x5003,  	MLX5_REG_PTYS		 = 0x5004,  	MLX5_REG_PAOS		 = 0x5006, +	MLX5_REG_PFCC            = 0x5007, +	MLX5_REG_PPCNT		 = 0x5008,  	MLX5_REG_PMAOS		 = 0x5012,  	MLX5_REG_PUDE		 = 0x5009,  	MLX5_REG_PMPE		 = 0x5010, @@ -151,8 +153,8 @@ enum mlx5_dev_event {  };  enum mlx5_port_status { -	MLX5_PORT_UP        = 1 << 1, -	MLX5_PORT_DOWN      = 1 << 2, +	MLX5_PORT_UP        = 1, +	MLX5_PORT_DOWN      = 2,  };  struct mlx5_uuar_info { @@ -380,7 +382,7 @@ struct mlx5_uar {  	u32			index;  	struct list_head	bf_list;  	unsigned		free_bf_bmap; -	void __iomem	       *wc_map; +	void __iomem	       *bf_map;  	void __iomem	       *map;  }; @@ -435,6 +437,8 @@ struct mlx5_priv {  	struct mlx5_uuar_info	uuari;  	MLX5_DECLARE_DOORBELL_LOCK(cq_uar_lock); +	struct io_mapping	*bf_mapping; +  	/* pages stuff */  	struct workqueue_struct *pg_wq;  	struct rb_root		page_root; @@ -463,6 +467,10 @@ struct mlx5_priv {  	/* end: mr staff */  	/* start: alloc staff */ +	/* protect buffer alocation according to numa node */ +	struct mutex            alloc_mutex; +	int                     numa_node; +  	struct mutex            pgdir_mutex;  	struct list_head        pgdir_list;  	/* end: alloc staff */ @@ -672,6 +680,8 @@ void mlx5_health_cleanup(void);  void  __init mlx5_health_init(void);  void mlx5_start_health_poll(struct mlx5_core_dev *dev);  void mlx5_stop_health_poll(struct mlx5_core_dev *dev); +int mlx5_buf_alloc_node(struct mlx5_core_dev *dev, int size, +			struct mlx5_buf *buf, int node);  int mlx5_buf_alloc(struct mlx5_core_dev *dev, int size, struct mlx5_buf *buf);  void mlx5_buf_free(struct mlx5_core_dev *dev, struct mlx5_buf *buf);  struct mlx5_cmd_mailbox *mlx5_alloc_cmd_mailbox_chain(struct mlx5_core_dev *dev, @@ -752,9 +762,10 @@ int mlx5_query_port_proto_oper(struct mlx5_core_dev *dev,  			       u8 local_port);  int mlx5_set_port_proto(struct mlx5_core_dev *dev, u32 proto_admin,  			int proto_mask); -int mlx5_set_port_status(struct mlx5_core_dev *dev, -			 enum mlx5_port_status status); -int mlx5_query_port_status(struct mlx5_core_dev *dev, u8 *status); +int mlx5_set_port_admin_status(struct mlx5_core_dev *dev, +			       enum mlx5_port_status status); +int mlx5_query_port_admin_status(struct mlx5_core_dev *dev, +				 enum mlx5_port_status *status);  int mlx5_set_port_mtu(struct mlx5_core_dev *dev, int mtu, u8 port);  void mlx5_query_port_max_mtu(struct mlx5_core_dev *dev, int *max_mtu, u8 port); @@ -764,6 +775,10 @@ void mlx5_query_port_oper_mtu(struct mlx5_core_dev *dev, int *oper_mtu,  int mlx5_query_port_vl_hw_cap(struct mlx5_core_dev *dev,  			      u8 *vl_hw_cap, u8 local_port); +int mlx5_set_port_pause(struct mlx5_core_dev *dev, u32 rx_pause, u32 tx_pause); +int mlx5_query_port_pause(struct mlx5_core_dev *dev, +			  u32 *rx_pause, u32 *tx_pause); +  int mlx5_debug_eq_add(struct mlx5_core_dev *dev, struct mlx5_eq *eq);  void mlx5_debug_eq_remove(struct mlx5_core_dev *dev, struct mlx5_eq *eq);  int mlx5_core_eq_query(struct mlx5_core_dev *dev, struct mlx5_eq *eq, @@ -773,6 +788,8 @@ void mlx5_eq_debugfs_cleanup(struct mlx5_core_dev *dev);  int mlx5_cq_debugfs_init(struct mlx5_core_dev *dev);  void mlx5_cq_debugfs_cleanup(struct mlx5_core_dev *dev);  int mlx5_db_alloc(struct mlx5_core_dev *dev, struct mlx5_db *db); +int mlx5_db_alloc_node(struct mlx5_core_dev *dev, struct mlx5_db *db, +		       int node);  void mlx5_db_free(struct mlx5_core_dev *dev, struct mlx5_db *db);  const char *mlx5_command_str(int command); @@ -828,6 +845,7 @@ void *mlx5_get_protocol_dev(struct mlx5_core_dev *mdev, int protocol);  int mlx5_register_interface(struct mlx5_interface *intf);  void mlx5_unregister_interface(struct mlx5_interface *intf);  int mlx5_core_query_vendor_id(struct mlx5_core_dev *mdev, u32 *vendor_id); +int mlx5_core_query_special_context(struct mlx5_core_dev *dev, u32 *rsvd_lkey);  struct mlx5_profile {  	u64	mask;  |