1 # SPDX-License-Identifier: GPL-2.0
3 # Makefile for Mellanox 5th generation network adapters
4 # (ConnectX series) core & netdev driver
7 subdir-ccflags-y
+= -I
$(src
)
9 obj-
$(CONFIG_MLX5_CORE
) += mlx5_core.o
14 mlx5_core-y
:= main.o cmd.o debugfs.o fw.o eq.o uar.o pagealloc.o \
15 health.o mcg.o cq.o alloc.o port.o mr.o pd.o \
16 transobj.o vport.o sriov.o fs_cmd.o fs_core.o pci_irq.o \
17 fs_counters.o rl.o lag.o dev.o events.o wq.o lib
/gid.o \
18 lib
/devcom.o lib
/pci_vsc.o lib
/dm.o diag
/fs_tracepoint.o \
19 diag
/fw_tracer.o diag
/crdump.o devlink.o diag
/rsc_dump.o fw_reset.o
24 mlx5_core-
$(CONFIG_MLX5_CORE_EN
) += en_main.o en_common.o en_fs.o en_ethtool.o \
25 en_tx.o en_rx.o en_dim.o en_txrx.o en
/xdp.o en_stats.o \
26 en_selftest.o en
/port.o en
/monitor_stats.o en
/health.o \
27 en
/reporter_tx.o en
/reporter_rx.o en
/params.o en
/xsk
/pool.o \
28 en
/xsk
/setup.o en
/xsk
/rx.o en
/xsk
/tx.o en
/devlink.o en
/ptp.o
33 mlx5_core-
$(CONFIG_MLX5_EN_ARFS
) += en_arfs.o
34 mlx5_core-
$(CONFIG_MLX5_EN_RXNFC
) += en_fs_ethtool.o
35 mlx5_core-
$(CONFIG_MLX5_CORE_EN_DCB
) += en_dcbnl.o en
/port_buffer.o
36 mlx5_core-
$(CONFIG_PCI_HYPERV_INTERFACE
) += en
/hv_vhca_stats.o
37 mlx5_core-
$(CONFIG_MLX5_ESWITCH
) += lag_mp.o lib
/geneve.o lib
/port_tun.o \
38 en_rep.o en
/rep
/bond.o en
/mod_hdr.o
39 mlx5_core-
$(CONFIG_MLX5_CLS_ACT
) += en_tc.o en
/rep
/tc.o en
/rep
/neigh.o \
40 en
/mapping.o lib
/fs_chains.o en
/tc_tun.o \
41 en
/tc_tun_vxlan.o en
/tc_tun_gre.o en
/tc_tun_geneve.o \
42 en
/tc_tun_mplsoudp.o diag
/en_tc_tracepoint.o
43 mlx5_core-
$(CONFIG_MLX5_TC_CT
) += en
/tc_ct.o
48 mlx5_core-
$(CONFIG_MLX5_ESWITCH
) += eswitch.o eswitch_offloads.o eswitch_offloads_termtbl.o \
50 mlx5_core-
$(CONFIG_MLX5_ESWITCH
) += esw
/acl
/helper.o \
51 esw
/acl
/egress_lgcy.o esw
/acl
/egress_ofld.o \
52 esw
/acl
/ingress_lgcy.o esw
/acl
/ingress_ofld.o \
55 mlx5_core-
$(CONFIG_MLX5_MPFS
) += lib
/mpfs.o
56 mlx5_core-
$(CONFIG_VXLAN
) += lib
/vxlan.o
57 mlx5_core-
$(CONFIG_PTP_1588_CLOCK
) += lib
/clock.o
58 mlx5_core-
$(CONFIG_PCI_HYPERV_INTERFACE
) += lib
/hv.o lib
/hv_vhca.o
63 mlx5_core-
$(CONFIG_MLX5_CORE_IPOIB
) += ipoib
/ipoib.o ipoib
/ethtool.o ipoib
/ipoib_vlan.o
66 # Accelerations & FPGA
68 mlx5_core-
$(CONFIG_MLX5_IPSEC
) += accel
/ipsec_offload.o
69 mlx5_core-
$(CONFIG_MLX5_FPGA_IPSEC
) += fpga
/ipsec.o
70 mlx5_core-
$(CONFIG_MLX5_FPGA_TLS
) += fpga
/tls.o
71 mlx5_core-
$(CONFIG_MLX5_ACCEL
) += lib
/crypto.o accel
/tls.o accel
/ipsec.o
73 mlx5_core-
$(CONFIG_MLX5_FPGA
) += fpga
/cmd.o fpga
/core.o fpga
/conn.o fpga
/sdk.o
75 mlx5_core-
$(CONFIG_MLX5_EN_IPSEC
) += en_accel
/ipsec.o en_accel
/ipsec_rxtx.o \
76 en_accel
/ipsec_stats.o en_accel
/ipsec_fs.o
78 mlx5_core-
$(CONFIG_MLX5_EN_TLS
) += en_accel
/tls.o en_accel
/tls_rxtx.o en_accel
/tls_stats.o \
79 en_accel
/fs_tcp.o en_accel
/ktls.o en_accel
/ktls_txrx.o \
80 en_accel
/ktls_tx.o en_accel
/ktls_rx.o
82 mlx5_core-
$(CONFIG_MLX5_SW_STEERING
) += steering
/dr_domain.o steering
/dr_table.o \
83 steering
/dr_matcher.o steering
/dr_rule.o \
84 steering
/dr_icm_pool.o steering
/dr_buddy.o \
85 steering
/dr_ste.o steering
/dr_send.o \
86 steering
/dr_cmd.o steering
/dr_fw.o \
87 steering
/dr_action.o steering
/fs_dr.o