net/hns3: increase VF reset retry maximum
[dpdk.git] / drivers / net / bnxt / meson.build
1 # SPDX-License-Identifier: BSD-3-Clause
2 # Copyright(c) 2018 Intel Corporation
3 # Copyright(c) 2020 Broadcom
4
5 if is_windows
6     build = false
7     reason = 'not supported on Windows'
8     subdir_done()
9 endif
10
11 headers = files('rte_pmd_bnxt.h')
12
13 includes += include_directories('tf_ulp')
14 includes += include_directories('tf_core')
15
16 sources = files(
17         'bnxt_cpr.c',
18         'bnxt_ethdev.c',
19         'bnxt_filter.c',
20         'bnxt_flow.c',
21         'bnxt_hwrm.c',
22         'bnxt_irq.c',
23         'bnxt_ring.c',
24         'bnxt_rxq.c',
25         'bnxt_rxr.c',
26         'bnxt_stats.c',
27         'bnxt_txq.c',
28         'bnxt_txr.c',
29         'bnxt_util.c',
30         'bnxt_vnic.c',
31         'bnxt_reps.c',
32
33         'tf_core/tf_core.c',
34         'tf_core/bitalloc.c',
35         'tf_core/tf_msg.c',
36         'tf_core/rand.c',
37         'tf_core/stack.c',
38         'tf_core/tf_em_common.c',
39         'tf_core/tf_em_internal.c',
40         'tf_core/tf_rm.c',
41         'tf_core/tf_tbl.c',
42         'tf_core/tfp.c',
43         'tf_core/tf_session.c',
44         'tf_core/tf_device.c',
45         'tf_core/tf_device_p4.c',
46         'tf_core/tf_identifier.c',
47         'tf_core/tf_shadow_tbl.c',
48         'tf_core/tf_shadow_tcam.c',
49         'tf_core/tf_tcam.c',
50         'tf_core/tf_util.c',
51         'tf_core/tf_if_tbl.c',
52         'tf_core/ll.c',
53         'tf_core/tf_global_cfg.c',
54         'tf_core/tf_em_host.c',
55         'tf_core/tf_shadow_identifier.c',
56         'tf_core/tf_hash.c',
57
58         'hcapi/hcapi_cfa_p4.c',
59
60         'tf_ulp/bnxt_ulp.c',
61         'tf_ulp/ulp_mark_mgr.c',
62         'tf_ulp/ulp_flow_db.c',
63         'tf_ulp/ulp_template_db_tbl.c',
64         'tf_ulp/ulp_template_db_class.c',
65         'tf_ulp/ulp_template_db_act.c',
66         'tf_ulp/ulp_utils.c',
67         'tf_ulp/ulp_mapper.c',
68         'tf_ulp/ulp_matcher.c',
69         'tf_ulp/ulp_rte_parser.c',
70         'tf_ulp/bnxt_ulp_flow.c',
71         'tf_ulp/ulp_port_db.c',
72         'tf_ulp/ulp_def_rules.c',
73         'tf_ulp/ulp_fc_mgr.c',
74         'tf_ulp/ulp_tun.c',
75         'tf_ulp/ulp_template_db_wh_plus_act.c',
76         'tf_ulp/ulp_template_db_wh_plus_class.c',
77         'tf_ulp/ulp_template_db_stingray_act.c',
78         'tf_ulp/ulp_template_db_stingray_class.c',
79
80         'rte_pmd_bnxt.c',
81 )
82
83 if arch_subdir == 'x86'
84     sources += files('bnxt_rxtx_vec_sse.c')
85     # compile AVX2 version if either:
86     # a. we have AVX supported in minimum instruction set baseline
87     # b. it's not minimum instruction set, but supported by compiler
88     if cc.get_define('__AVX2__', args: machine_args) != ''
89             cflags += ['-DCC_AVX2_SUPPORT']
90             sources += files('bnxt_rxtx_vec_avx2.c')
91     elif cc.has_argument('-mavx2')
92             cflags += ['-DCC_AVX2_SUPPORT']
93             bnxt_avx2_lib = static_library('bnxt_avx2_lib',
94                             'bnxt_rxtx_vec_avx2.c',
95                             dependencies: [static_rte_ethdev,
96                                     static_rte_bus_pci,
97                                     static_rte_kvargs, static_rte_hash],
98                             include_directories: includes,
99                             c_args: [cflags, '-mavx2'])
100             objs += bnxt_avx2_lib.extract_objects('bnxt_rxtx_vec_avx2.c')
101      endif
102 elif arch_subdir == 'arm' and host_machine.cpu_family().startswith('aarch64')
103     sources += files('bnxt_rxtx_vec_neon.c')
104 endif