Merge tag 'net-6.1-rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net
[sfrench/cifs-2.6.git] / drivers / net / ethernet / mellanox / mlx5 / core / Makefile
1 # SPDX-License-Identifier: GPL-2.0
2 #
3 # Makefile for Mellanox 5th generation network adapters
4 # (ConnectX series) core & netdev driver
5 #
6
7 subdir-ccflags-y += -I$(src)
8
9 obj-$(CONFIG_MLX5_CORE) += mlx5_core.o
10
11 #
12 # mlx5 core basic
13 #
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 fs_ft_pool.o rl.o lag/debugfs.o lag/lag.o dev.o events.o wq.o lib/gid.o \
18                 lib/devcom.o lib/pci_vsc.o lib/dm.o lib/fs_ttc.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 lib/tout.o lib/aso.o
21
22 #
23 # Netdev basic
24 #
25 mlx5_core-$(CONFIG_MLX5_CORE_EN) += en/rqt.o en/tir.o en/rss.o en/rx_res.o \
26                 en/channels.o en_main.o en_common.o en_fs.o en_ethtool.o \
27                 en_tx.o en_rx.o en_dim.o en_txrx.o en/xdp.o en_stats.o \
28                 en_selftest.o en/port.o en/monitor_stats.o en/health.o \
29                 en/reporter_tx.o en/reporter_rx.o en/params.o en/xsk/pool.o \
30                 en/xsk/setup.o en/xsk/rx.o en/xsk/tx.o en/devlink.o en/ptp.o \
31                 en/qos.o en/htb.o en/trap.o en/fs_tt_redirect.o en/selq.o \
32                 lib/crypto.o
33
34 #
35 # Netdev extra
36 #
37 mlx5_core-$(CONFIG_MLX5_EN_ARFS)     += en_arfs.o
38 mlx5_core-$(CONFIG_MLX5_EN_RXNFC)    += en_fs_ethtool.o
39 mlx5_core-$(CONFIG_MLX5_CORE_EN_DCB) += en_dcbnl.o en/port_buffer.o
40 mlx5_core-$(CONFIG_PCI_HYPERV_INTERFACE) += en/hv_vhca_stats.o
41 mlx5_core-$(CONFIG_MLX5_ESWITCH)     += lag/mp.o lag/port_sel.o lib/geneve.o lib/port_tun.o \
42                                         en_rep.o en/rep/bond.o en/mod_hdr.o \
43                                         en/mapping.o lag/mpesw.o
44 mlx5_core-$(CONFIG_MLX5_CLS_ACT)     += en_tc.o en/rep/tc.o en/rep/neigh.o \
45                                         lib/fs_chains.o en/tc_tun.o \
46                                         esw/indir_table.o en/tc_tun_encap.o \
47                                         en/tc_tun_vxlan.o en/tc_tun_gre.o en/tc_tun_geneve.o \
48                                         en/tc_tun_mplsoudp.o diag/en_tc_tracepoint.o \
49                                         en/tc/post_act.o en/tc/int_port.o en/tc/meter.o \
50                                         en/tc/post_meter.o
51
52 mlx5_core-$(CONFIG_MLX5_CLS_ACT)     += en/tc/act/act.o en/tc/act/drop.o en/tc/act/trap.o \
53                                         en/tc/act/accept.o en/tc/act/mark.o en/tc/act/goto.o \
54                                         en/tc/act/tun.o en/tc/act/csum.o en/tc/act/pedit.o \
55                                         en/tc/act/vlan.o en/tc/act/vlan_mangle.o en/tc/act/mpls.o \
56                                         en/tc/act/mirred.o en/tc/act/mirred_nic.o \
57                                         en/tc/act/ct.o en/tc/act/sample.o en/tc/act/ptype.o \
58                                         en/tc/act/redirect_ingress.o en/tc/act/police.o
59
60 ifneq ($(CONFIG_MLX5_TC_CT),)
61         mlx5_core-y                          += en/tc_ct.o en/tc/ct_fs_dmfs.o
62         mlx5_core-$(CONFIG_MLX5_SW_STEERING) += en/tc/ct_fs_smfs.o
63 endif
64
65 mlx5_core-$(CONFIG_MLX5_TC_SAMPLE)   += en/tc/sample.o
66
67 #
68 # Core extra
69 #
70 mlx5_core-$(CONFIG_MLX5_ESWITCH)   += eswitch.o eswitch_offloads.o eswitch_offloads_termtbl.o \
71                                       ecpf.o rdma.o esw/legacy.o \
72                                       esw/debugfs.o esw/devlink_port.o esw/vporttbl.o esw/qos.o
73
74 mlx5_core-$(CONFIG_MLX5_ESWITCH)   += esw/acl/helper.o \
75                                       esw/acl/egress_lgcy.o esw/acl/egress_ofld.o \
76                                       esw/acl/ingress_lgcy.o esw/acl/ingress_ofld.o
77
78 mlx5_core-$(CONFIG_MLX5_BRIDGE)    += esw/bridge.o en/rep/bridge.o
79
80 mlx5_core-$(CONFIG_MLX5_MPFS)      += lib/mpfs.o
81 mlx5_core-$(CONFIG_VXLAN)          += lib/vxlan.o
82 mlx5_core-$(CONFIG_PTP_1588_CLOCK) += lib/clock.o
83 mlx5_core-$(CONFIG_PCI_HYPERV_INTERFACE) += lib/hv.o lib/hv_vhca.o
84
85 #
86 # Ipoib netdev
87 #
88 mlx5_core-$(CONFIG_MLX5_CORE_IPOIB) += ipoib/ipoib.o ipoib/ethtool.o ipoib/ipoib_vlan.o
89
90 #
91 # Accelerations & FPGA
92 #
93 mlx5_core-$(CONFIG_MLX5_FPGA) += fpga/cmd.o fpga/core.o fpga/conn.o fpga/sdk.o
94
95 mlx5_core-$(CONFIG_MLX5_EN_MACSEC) += en_accel/macsec.o en_accel/macsec_fs.o \
96                                       en_accel/macsec_stats.o
97
98 mlx5_core-$(CONFIG_MLX5_EN_IPSEC) += en_accel/ipsec.o en_accel/ipsec_rxtx.o \
99                                      en_accel/ipsec_stats.o en_accel/ipsec_fs.o \
100                                      en_accel/ipsec_offload.o
101
102 mlx5_core-$(CONFIG_MLX5_EN_TLS) += en_accel/ktls_stats.o \
103                                    en_accel/fs_tcp.o en_accel/ktls.o en_accel/ktls_txrx.o \
104                                    en_accel/ktls_tx.o en_accel/ktls_rx.o
105
106 mlx5_core-$(CONFIG_MLX5_SW_STEERING) += steering/dr_domain.o steering/dr_table.o \
107                                         steering/dr_matcher.o steering/dr_rule.o \
108                                         steering/dr_icm_pool.o steering/dr_buddy.o \
109                                         steering/dr_ste.o steering/dr_send.o \
110                                         steering/dr_ste_v0.o steering/dr_ste_v1.o \
111                                         steering/dr_ste_v2.o \
112                                         steering/dr_cmd.o steering/dr_fw.o \
113                                         steering/dr_action.o steering/fs_dr.o \
114                                         steering/dr_dbg.o lib/smfs.o
115 #
116 # SF device
117 #
118 mlx5_core-$(CONFIG_MLX5_SF) += sf/vhca_event.o sf/dev/dev.o sf/dev/driver.o irq_affinity.o
119
120 #
121 # SF manager
122 #
123 mlx5_core-$(CONFIG_MLX5_SF_MANAGER) += sf/cmd.o sf/hw_table.o sf/devlink.o