xref: /linux/tools/testing/selftests/drivers/net/hw/Makefile (revision 91ec2035134982b98fab0609a9fd8480e8217dc1)
140d269c0SPetr Machata# SPDX-License-Identifier: GPL-2.0+ OR MIT
240d269c0SPetr Machata
3f81171feSJakub Kicinski# Check if io_uring supports zero-copy receive
4f81171feSJakub KicinskiHAS_IOURING_ZCRX := $(shell \
5f81171feSJakub Kicinski	echo -e '#include <liburing.h>\n' \
6f81171feSJakub Kicinski	     'void *func = (void *)io_uring_register_ifq;\n' \
7f81171feSJakub Kicinski	     'int main() {return 0;}' | \
8f81171feSJakub Kicinski	$(CC) -luring -x c - -o /dev/null 2>&1 && echo y)
9f81171feSJakub Kicinski
10f81171feSJakub Kicinskiifeq ($(HAS_IOURING_ZCRX),y)
11f81171feSJakub KicinskiCOND_GEN_FILES += iou-zcrx
12f81171feSJakub Kicinskielse
13f81171feSJakub Kicinski$(warning excluding iouring tests, liburing not installed or too old)
14f81171feSJakub Kicinskiendif
15f81171feSJakub Kicinski
1689268f7dSJakub KicinskiTEST_GEN_FILES := \
17f81171feSJakub Kicinski	$(COND_GEN_FILES) \
1889268f7dSJakub Kicinski# end of TEST_GEN_FILES
1971082faaSDavid Wei
2040d269c0SPetr MachataTEST_PROGS = \
211d0dc857SWillem de Bruijn	csum.py \
22b2aa7390SCosmin Ratiu	devlink_rate_cross_esw.py \
23a8658f7bSCarolina Jubran	devlink_rate_tc_bw.py \
2480230864SStanislav Fomichev	devmem.py \
2540d269c0SPetr Machata	ethtool.sh \
2640d269c0SPetr Machata	ethtool_extended_state.sh \
2740d269c0SPetr Machata	ethtool_mm.sh \
2840d269c0SPetr Machata	ethtool_rmon.sh \
293016574eSIoana Ciornei	ethtool_std_stats.sh \
30ba5d4128SJakub Kicinski	gro_hw.py \
3140d269c0SPetr Machata	hw_stats_l3.sh \
3240d269c0SPetr Machata	hw_stats_l3_gre.sh \
3371082faaSDavid Wei	iou-zcrx.py \
340e1368a2SJakub Kicinski	ipsec_vxlan.py \
35185646a8SJakub Kicinski	irq.py \
3640d269c0SPetr Machata	loopback.sh \
37b9c8a2c5SVadim Fedorenko	nic_timestamp.py \
3828c1cc99SBobby Eshleman	nk_devmem.py \
3937d24994SDavid Wei	nk_netns.py \
4065d657d8SDavid Wei	nk_qlease.py \
4118589df9SDimitri Daskalakis	ntuple.py \
429da271f8SJakub Kicinski	pp_alloc_fail.py \
435ae3bcc2SJakub Kicinski	rss_api.py \
44f898c16aSJakub Kicinski	rss_ctx.py \
459e3d4daeSJakub Kicinski	rss_drv.py \
4626dbe030SJakub Kicinski	rss_flow_label.py \
47da87cabaSGal Pressman	rss_input_xfrm.py \
489cf9aa77SJakub Kicinski	toeplitz.py \
490d0f4174SJakub Kicinski	tso.py \
5078c19301SBobby Eshleman	userns_devmem.py \
515d3b12d1SJoe Damato	uso.py \
52e3cdf6cfSChris J Arges	xdp_metadata.py \
53c347fb0fSBui Quang Minh	xsk_reconfig.py \
5440d269c0SPetr Machata	#
5540d269c0SPetr Machata
56*878b56deSJakub KicinskiTEST_PROGS_EXTENDED := \
57*878b56deSJakub Kicinski	devlink_port_split.py \
58*878b56deSJakub Kicinski# end of TEST_PROGS_EXTENDED
59*878b56deSJakub Kicinski
6040d269c0SPetr MachataTEST_FILES := \
616cac32fcSBobby Eshleman	devmem_lib.py \
6240d269c0SPetr Machata	ethtool_lib.sh \
6340d269c0SPetr Machata	#
6440d269c0SPetr Machata
6540d269c0SPetr MachataTEST_INCLUDES := \
66ff4b2bfaSJakub Kicinski	$(wildcard lib/py/*.py ../lib/py/*.py) \
6740d269c0SPetr Machata	../../../net/lib.sh \
6840d269c0SPetr Machata	../../../net/forwarding/ipip_lib.sh \
69f07f91a3SJakub Kicinski	../../../net/forwarding/lib.sh \
7040d269c0SPetr Machata	../../../net/forwarding/tc_common.sh \
7140d269c0SPetr Machata	#
7240d269c0SPetr Machata
73be43a6b2SStanislav Fomichev# YNL files, must be before "include ..lib.mk"
74aa91dbf3SJakub KicinskiYNL_GEN_FILES := \
75aa91dbf3SJakub Kicinski	ncdevmem \
76aa91dbf3SJakub Kicinski	toeplitz \
77aa91dbf3SJakub Kicinski# end of YNL_GEN_FILES
78be43a6b2SStanislav FomichevTEST_GEN_FILES += $(YNL_GEN_FILES)
79185646a8SJakub KicinskiTEST_GEN_FILES += $(patsubst %.c,%.o,$(wildcard *.bpf.c))
80be43a6b2SStanislav Fomichev
8140d269c0SPetr Machatainclude ../../../lib.mk
82be43a6b2SStanislav Fomichev
83be43a6b2SStanislav Fomichev# YNL build
84f07f91a3SJakub KicinskiYNL_GENS := \
85f07f91a3SJakub Kicinski	ethtool \
86f07f91a3SJakub Kicinski	netdev \
87f07f91a3SJakub Kicinski# end of YNL_GENS
88f07f91a3SJakub Kicinski
89be43a6b2SStanislav Fomichevinclude ../../../net/ynl.mk
90185646a8SJakub Kicinski
91185646a8SJakub Kicinskiinclude ../../../net/bpf.mk
92ca0b04baSLinus Torvalds
93f81171feSJakub Kicinskiifeq ($(HAS_IOURING_ZCRX),y)
9471082faaSDavid Wei$(OUTPUT)/iou-zcrx: LDLIBS += -luring
95f81171feSJakub Kicinskiendif
96