1# SPDX-License-Identifier: GPL-2.0 2# 3# Makefile for Mellanox 5th generation network adapters 4# (ConnectX series) core & netdev driver 5# 6 7subdir-ccflags-y += -I$(src) 8 9obj-$(CONFIG_MLX5_CORE) += mlx5_core.o 10 11# 12# mlx5 core basic 13# 14mlx5_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 \ 20 fw_reset.o qos.o 21 22# 23# Netdev basic 24# 25mlx5_core-$(CONFIG_MLX5_CORE_EN) += en_main.o en_common.o en_fs.o en_ethtool.o \ 26 en_tx.o en_rx.o en_dim.o en_txrx.o en/xdp.o en_stats.o \ 27 en_selftest.o en/port.o en/monitor_stats.o en/health.o \ 28 en/reporter_tx.o en/reporter_rx.o en/params.o en/xsk/pool.o \ 29 en/xsk/setup.o en/xsk/rx.o en/xsk/tx.o en/devlink.o en/ptp.o \ 30 en/qos.o en/trap.o 31 32# 33# Netdev extra 34# 35mlx5_core-$(CONFIG_MLX5_EN_ARFS) += en_arfs.o 36mlx5_core-$(CONFIG_MLX5_EN_RXNFC) += en_fs_ethtool.o 37mlx5_core-$(CONFIG_MLX5_CORE_EN_DCB) += en_dcbnl.o en/port_buffer.o 38mlx5_core-$(CONFIG_PCI_HYPERV_INTERFACE) += en/hv_vhca_stats.o 39mlx5_core-$(CONFIG_MLX5_ESWITCH) += lag_mp.o lib/geneve.o lib/port_tun.o \ 40 en_rep.o en/rep/bond.o en/mod_hdr.o 41mlx5_core-$(CONFIG_MLX5_CLS_ACT) += en_tc.o en/rep/tc.o en/rep/neigh.o \ 42 en/mapping.o lib/fs_chains.o en/tc_tun.o \ 43 esw/indir_table.o en/tc_tun_encap.o \ 44 en/tc_tun_vxlan.o en/tc_tun_gre.o en/tc_tun_geneve.o \ 45 en/tc_tun_mplsoudp.o diag/en_tc_tracepoint.o 46mlx5_core-$(CONFIG_MLX5_TC_CT) += en/tc_ct.o 47 48# 49# Core extra 50# 51mlx5_core-$(CONFIG_MLX5_ESWITCH) += eswitch.o eswitch_offloads.o eswitch_offloads_termtbl.o \ 52 ecpf.o rdma.o 53mlx5_core-$(CONFIG_MLX5_ESWITCH) += esw/acl/helper.o \ 54 esw/acl/egress_lgcy.o esw/acl/egress_ofld.o \ 55 esw/acl/ingress_lgcy.o esw/acl/ingress_ofld.o \ 56 esw/devlink_port.o 57 58mlx5_core-$(CONFIG_MLX5_MPFS) += lib/mpfs.o 59mlx5_core-$(CONFIG_VXLAN) += lib/vxlan.o 60mlx5_core-$(CONFIG_PTP_1588_CLOCK) += lib/clock.o 61mlx5_core-$(CONFIG_PCI_HYPERV_INTERFACE) += lib/hv.o lib/hv_vhca.o 62 63# 64# Ipoib netdev 65# 66mlx5_core-$(CONFIG_MLX5_CORE_IPOIB) += ipoib/ipoib.o ipoib/ethtool.o ipoib/ipoib_vlan.o 67 68# 69# Accelerations & FPGA 70# 71mlx5_core-$(CONFIG_MLX5_IPSEC) += accel/ipsec_offload.o 72mlx5_core-$(CONFIG_MLX5_FPGA_IPSEC) += fpga/ipsec.o 73mlx5_core-$(CONFIG_MLX5_FPGA_TLS) += fpga/tls.o 74mlx5_core-$(CONFIG_MLX5_ACCEL) += lib/crypto.o accel/tls.o accel/ipsec.o 75 76mlx5_core-$(CONFIG_MLX5_FPGA) += fpga/cmd.o fpga/core.o fpga/conn.o fpga/sdk.o 77 78mlx5_core-$(CONFIG_MLX5_EN_IPSEC) += en_accel/ipsec.o en_accel/ipsec_rxtx.o \ 79 en_accel/ipsec_stats.o en_accel/ipsec_fs.o 80 81mlx5_core-$(CONFIG_MLX5_EN_TLS) += en_accel/tls.o en_accel/tls_rxtx.o en_accel/tls_stats.o \ 82 en_accel/fs_tcp.o en_accel/ktls.o en_accel/ktls_txrx.o \ 83 en_accel/ktls_tx.o en_accel/ktls_rx.o 84 85mlx5_core-$(CONFIG_MLX5_SW_STEERING) += steering/dr_domain.o steering/dr_table.o \ 86 steering/dr_matcher.o steering/dr_rule.o \ 87 steering/dr_icm_pool.o steering/dr_buddy.o \ 88 steering/dr_ste.o steering/dr_send.o \ 89 steering/dr_ste_v0.o steering/dr_ste_v1.o \ 90 steering/dr_cmd.o steering/dr_fw.o \ 91 steering/dr_action.o steering/fs_dr.o 92# 93# SF device 94# 95mlx5_core-$(CONFIG_MLX5_SF) += sf/vhca_event.o sf/dev/dev.o sf/dev/driver.o 96 97# 98# SF manager 99# 100mlx5_core-$(CONFIG_MLX5_SF_MANAGER) += sf/cmd.o sf/hw_table.o sf/devlink.o 101