#include <linux/etherdevice.h>
#include <linux/mlx5/driver.h>
#include "mlx5_core.h"
#include "lib/mlx5.h"
#include "lib/eq.h"
#include "fpga/core.h"
#include "fpga/conn.h"
static const char *const mlx5_fpga_error_strings[] = …;
static const char * const mlx5_fpga_qp_error_strings[] = …;
static struct mlx5_fpga_device *mlx5_fpga_device_alloc(void)
{ … }
static const char *mlx5_fpga_image_name(enum mlx5_fpga_image image)
{ … }
static const char *mlx5_fpga_name(u32 fpga_id)
{ … }
static int mlx5_is_fpga_lookaside(u32 fpga_id)
{ … }
static int mlx5_fpga_device_load_check(struct mlx5_fpga_device *fdev)
{ … }
static int mlx5_fpga_device_brb(struct mlx5_fpga_device *fdev)
{ … }
static int mlx5_fpga_event(struct mlx5_fpga_device *, unsigned long, void *);
static int fpga_err_event(struct notifier_block *nb, unsigned long event, void *eqe)
{ … }
static int fpga_qp_err_event(struct notifier_block *nb, unsigned long event, void *eqe)
{ … }
int mlx5_fpga_device_start(struct mlx5_core_dev *mdev)
{ … }
int mlx5_fpga_init(struct mlx5_core_dev *mdev)
{ … }
void mlx5_fpga_device_stop(struct mlx5_core_dev *mdev)
{ … }
void mlx5_fpga_cleanup(struct mlx5_core_dev *mdev)
{ … }
static const char *mlx5_fpga_syndrome_to_string(u8 syndrome)
{ … }
static const char *mlx5_fpga_qp_syndrome_to_string(u8 syndrome)
{ … }
static int mlx5_fpga_event(struct mlx5_fpga_device *fdev,
unsigned long event, void *eqe)
{ … }