1 
   2 
   3 
   4 #ifndef __LIB_HV_H__
   5 #define __LIB_HV_H__
   6 
   7 #if IS_ENABLED(CONFIG_PCI_HYPERV_INTERFACE)
   8 
   9 #include <linux/hyperv.h>
  10 #include <linux/mlx5/driver.h>
  11 
  12 int mlx5_hv_read_config(struct mlx5_core_dev *dev, void *buf, int len,
  13                         int offset);
  14 int mlx5_hv_write_config(struct mlx5_core_dev *dev, void *buf, int len,
  15                          int offset);
  16 int mlx5_hv_register_invalidate(struct mlx5_core_dev *dev, void *context,
  17                                 void (*block_invalidate)(void *context,
  18                                                          u64 block_mask));
  19 void mlx5_hv_unregister_invalidate(struct mlx5_core_dev *dev);
  20 #endif
  21 
  22 #endif