| .. | .. |
|---|
| 37 | 37 | #include "accel/ipsec.h" |
|---|
| 38 | 38 | #include "fs_cmd.h" |
|---|
| 39 | 39 | |
|---|
| 40 | | -#ifdef CONFIG_MLX5_FPGA |
|---|
| 41 | | - |
|---|
| 40 | +#ifdef CONFIG_MLX5_FPGA_IPSEC |
|---|
| 41 | +const struct mlx5_accel_ipsec_ops *mlx5_fpga_ipsec_ops(struct mlx5_core_dev *mdev); |
|---|
| 42 | 42 | u32 mlx5_fpga_ipsec_device_caps(struct mlx5_core_dev *mdev); |
|---|
| 43 | | -unsigned int mlx5_fpga_ipsec_counters_count(struct mlx5_core_dev *mdev); |
|---|
| 44 | | -int mlx5_fpga_ipsec_counters_read(struct mlx5_core_dev *mdev, u64 *counters, |
|---|
| 45 | | - unsigned int counters_count); |
|---|
| 46 | | - |
|---|
| 47 | | -void *mlx5_fpga_ipsec_create_sa_ctx(struct mlx5_core_dev *mdev, |
|---|
| 48 | | - struct mlx5_accel_esp_xfrm *accel_xfrm, |
|---|
| 49 | | - const __be32 saddr[4], |
|---|
| 50 | | - const __be32 daddr[4], |
|---|
| 51 | | - const __be32 spi, bool is_ipv6); |
|---|
| 52 | | -void mlx5_fpga_ipsec_delete_sa_ctx(void *context); |
|---|
| 53 | | - |
|---|
| 54 | | -int mlx5_fpga_ipsec_init(struct mlx5_core_dev *mdev); |
|---|
| 55 | | -void mlx5_fpga_ipsec_cleanup(struct mlx5_core_dev *mdev); |
|---|
| 56 | | -void mlx5_fpga_ipsec_build_fs_cmds(void); |
|---|
| 57 | | - |
|---|
| 58 | | -struct mlx5_accel_esp_xfrm * |
|---|
| 59 | | -mlx5_fpga_esp_create_xfrm(struct mlx5_core_dev *mdev, |
|---|
| 60 | | - const struct mlx5_accel_esp_xfrm_attrs *attrs, |
|---|
| 61 | | - u32 flags); |
|---|
| 62 | | -void mlx5_fpga_esp_destroy_xfrm(struct mlx5_accel_esp_xfrm *xfrm); |
|---|
| 63 | | -int mlx5_fpga_esp_modify_xfrm(struct mlx5_accel_esp_xfrm *xfrm, |
|---|
| 64 | | - const struct mlx5_accel_esp_xfrm_attrs *attrs); |
|---|
| 65 | | - |
|---|
| 66 | 43 | const struct mlx5_flow_cmds * |
|---|
| 67 | 44 | mlx5_fs_cmd_get_default_ipsec_fpga_cmds(enum fs_flow_table_type type); |
|---|
| 68 | | - |
|---|
| 45 | +void mlx5_fpga_ipsec_build_fs_cmds(void); |
|---|
| 69 | 46 | #else |
|---|
| 70 | | - |
|---|
| 71 | | -static inline u32 mlx5_fpga_ipsec_device_caps(struct mlx5_core_dev *mdev) |
|---|
| 72 | | -{ |
|---|
| 73 | | - return 0; |
|---|
| 74 | | -} |
|---|
| 75 | | - |
|---|
| 76 | | -static inline unsigned int |
|---|
| 77 | | -mlx5_fpga_ipsec_counters_count(struct mlx5_core_dev *mdev) |
|---|
| 78 | | -{ |
|---|
| 79 | | - return 0; |
|---|
| 80 | | -} |
|---|
| 81 | | - |
|---|
| 82 | | -static inline int mlx5_fpga_ipsec_counters_read(struct mlx5_core_dev *mdev, |
|---|
| 83 | | - u64 *counters) |
|---|
| 84 | | -{ |
|---|
| 85 | | - return 0; |
|---|
| 86 | | -} |
|---|
| 87 | | - |
|---|
| 88 | | -static inline void * |
|---|
| 89 | | -mlx5_fpga_ipsec_create_sa_ctx(struct mlx5_core_dev *mdev, |
|---|
| 90 | | - struct mlx5_accel_esp_xfrm *accel_xfrm, |
|---|
| 91 | | - const __be32 saddr[4], |
|---|
| 92 | | - const __be32 daddr[4], |
|---|
| 93 | | - const __be32 spi, bool is_ipv6) |
|---|
| 94 | | -{ |
|---|
| 95 | | - return NULL; |
|---|
| 96 | | -} |
|---|
| 97 | | - |
|---|
| 98 | | -static inline void mlx5_fpga_ipsec_delete_sa_ctx(void *context) |
|---|
| 99 | | -{ |
|---|
| 100 | | -} |
|---|
| 101 | | - |
|---|
| 102 | | -static inline int mlx5_fpga_ipsec_init(struct mlx5_core_dev *mdev) |
|---|
| 103 | | -{ |
|---|
| 104 | | - return 0; |
|---|
| 105 | | -} |
|---|
| 106 | | - |
|---|
| 107 | | -static inline void mlx5_fpga_ipsec_cleanup(struct mlx5_core_dev *mdev) |
|---|
| 108 | | -{ |
|---|
| 109 | | -} |
|---|
| 110 | | - |
|---|
| 111 | | -static inline void mlx5_fpga_ipsec_build_fs_cmds(void) |
|---|
| 112 | | -{ |
|---|
| 113 | | -} |
|---|
| 114 | | - |
|---|
| 115 | | -static inline struct mlx5_accel_esp_xfrm * |
|---|
| 116 | | -mlx5_fpga_esp_create_xfrm(struct mlx5_core_dev *mdev, |
|---|
| 117 | | - const struct mlx5_accel_esp_xfrm_attrs *attrs, |
|---|
| 118 | | - u32 flags) |
|---|
| 119 | | -{ |
|---|
| 120 | | - return ERR_PTR(-EOPNOTSUPP); |
|---|
| 121 | | -} |
|---|
| 122 | | - |
|---|
| 123 | | -static inline void mlx5_fpga_esp_destroy_xfrm(struct mlx5_accel_esp_xfrm *xfrm) |
|---|
| 124 | | -{ |
|---|
| 125 | | -} |
|---|
| 126 | | - |
|---|
| 127 | | -static inline int |
|---|
| 128 | | -mlx5_fpga_esp_modify_xfrm(struct mlx5_accel_esp_xfrm *xfrm, |
|---|
| 129 | | - const struct mlx5_accel_esp_xfrm_attrs *attrs) |
|---|
| 130 | | -{ |
|---|
| 131 | | - return -EOPNOTSUPP; |
|---|
| 132 | | -} |
|---|
| 133 | | - |
|---|
| 47 | +static inline |
|---|
| 48 | +const struct mlx5_accel_ipsec_ops *mlx5_fpga_ipsec_ops(struct mlx5_core_dev *mdev) |
|---|
| 49 | +{ return NULL; } |
|---|
| 50 | +static inline u32 mlx5_fpga_ipsec_device_caps(struct mlx5_core_dev *mdev) { return 0; } |
|---|
| 134 | 51 | static inline const struct mlx5_flow_cmds * |
|---|
| 135 | 52 | mlx5_fs_cmd_get_default_ipsec_fpga_cmds(enum fs_flow_table_type type) |
|---|
| 136 | 53 | { |
|---|
| 137 | 54 | return mlx5_fs_cmd_get_default(type); |
|---|
| 138 | 55 | } |
|---|
| 139 | 56 | |
|---|
| 140 | | -#endif /* CONFIG_MLX5_FPGA */ |
|---|
| 57 | +static inline void mlx5_fpga_ipsec_build_fs_cmds(void) {}; |
|---|
| 141 | 58 | |
|---|
| 142 | | -#endif /* __MLX5_FPGA_SADB_H__ */ |
|---|
| 59 | +#endif /* CONFIG_MLX5_FPGA_IPSEC */ |
|---|
| 60 | +#endif /* __MLX5_FPGA_IPSEC_H__ */ |
|---|