1fd388a1f00cbf38c370fac72dee5fe984837a8a
[dpdk.git] / drivers / net / cnxk / meson.build
1 # SPDX-License-Identifier: BSD-3-Clause
2 # Copyright(C) 2021 Marvell.
3 #
4
5 if not dpdk_conf.get('RTE_ARCH_64')
6     build = false
7     reason = 'only supported on 64-bit'
8     subdir_done()
9 endif
10
11 sources = files(
12         'cnxk_ethdev.c',
13         'cnxk_ethdev_devargs.c',
14         'cnxk_ethdev_mtr.c',
15         'cnxk_ethdev_ops.c',
16         'cnxk_ethdev_sec.c',
17         'cnxk_ethdev_telemetry.c',
18         'cnxk_link.c',
19         'cnxk_lookup.c',
20         'cnxk_ptp.c',
21         'cnxk_rte_flow.c',
22         'cnxk_stats.c',
23         'cnxk_tm.c',
24 )
25
26 # CN9K
27 sources += files(
28         'cn9k_ethdev.c',
29         'cn9k_ethdev_sec.c',
30         'cn9k_rte_flow.c',
31         'cn9k_rx_select.c',
32         'cn9k_tx_select.c',
33 )
34
35 sources += files(
36         'rx/cn9k/rx_0_15.c',
37         'rx/cn9k/rx_16_31.c',
38         'rx/cn9k/rx_32_47.c',
39         'rx/cn9k/rx_48_63.c',
40         'rx/cn9k/rx_64_79.c',
41         'rx/cn9k/rx_80_95.c',
42         'rx/cn9k/rx_96_111.c',
43         'rx/cn9k/rx_112_127.c',
44         'rx/cn9k/rx_0_15_mseg.c',
45         'rx/cn9k/rx_16_31_mseg.c',
46         'rx/cn9k/rx_32_47_mseg.c',
47         'rx/cn9k/rx_48_63_mseg.c',
48         'rx/cn9k/rx_64_79_mseg.c',
49         'rx/cn9k/rx_80_95_mseg.c',
50         'rx/cn9k/rx_96_111_mseg.c',
51         'rx/cn9k/rx_112_127_mseg.c',
52         'rx/cn9k/rx_0_15_vec.c',
53         'rx/cn9k/rx_16_31_vec.c',
54         'rx/cn9k/rx_32_47_vec.c',
55         'rx/cn9k/rx_48_63_vec.c',
56         'rx/cn9k/rx_64_79_vec.c',
57         'rx/cn9k/rx_80_95_vec.c',
58         'rx/cn9k/rx_96_111_vec.c',
59         'rx/cn9k/rx_112_127_vec.c',
60         'rx/cn9k/rx_0_15_vec_mseg.c',
61         'rx/cn9k/rx_16_31_vec_mseg.c',
62         'rx/cn9k/rx_32_47_vec_mseg.c',
63         'rx/cn9k/rx_48_63_vec_mseg.c',
64         'rx/cn9k/rx_64_79_vec_mseg.c',
65         'rx/cn9k/rx_80_95_vec_mseg.c',
66         'rx/cn9k/rx_96_111_vec_mseg.c',
67         'rx/cn9k/rx_112_127_vec_mseg.c',
68 )
69
70 sources += files(
71         'tx/cn9k/tx_0_15.c',
72         'tx/cn9k/tx_16_31.c',
73         'tx/cn9k/tx_32_47.c',
74         'tx/cn9k/tx_48_63.c',
75         'tx/cn9k/tx_64_79.c',
76         'tx/cn9k/tx_80_95.c',
77         'tx/cn9k/tx_96_111.c',
78         'tx/cn9k/tx_112_127.c',
79         'tx/cn9k/tx_0_15_mseg.c',
80         'tx/cn9k/tx_16_31_mseg.c',
81         'tx/cn9k/tx_32_47_mseg.c',
82         'tx/cn9k/tx_48_63_mseg.c',
83         'tx/cn9k/tx_64_79_mseg.c',
84         'tx/cn9k/tx_80_95_mseg.c',
85         'tx/cn9k/tx_96_111_mseg.c',
86         'tx/cn9k/tx_112_127_mseg.c',
87         'tx/cn9k/tx_0_15_vec.c',
88         'tx/cn9k/tx_16_31_vec.c',
89         'tx/cn9k/tx_32_47_vec.c',
90         'tx/cn9k/tx_48_63_vec.c',
91         'tx/cn9k/tx_64_79_vec.c',
92         'tx/cn9k/tx_80_95_vec.c',
93         'tx/cn9k/tx_96_111_vec.c',
94         'tx/cn9k/tx_112_127_vec.c',
95         'tx/cn9k/tx_0_15_vec_mseg.c',
96         'tx/cn9k/tx_16_31_vec_mseg.c',
97         'tx/cn9k/tx_32_47_vec_mseg.c',
98         'tx/cn9k/tx_48_63_vec_mseg.c',
99         'tx/cn9k/tx_64_79_vec_mseg.c',
100         'tx/cn9k/tx_80_95_vec_mseg.c',
101         'tx/cn9k/tx_96_111_vec_mseg.c',
102         'tx/cn9k/tx_112_127_vec_mseg.c',
103 )
104
105 # CN10K
106 sources += files(
107         'cn10k_ethdev.c',
108         'cn10k_ethdev_sec.c',
109         'cn10k_rte_flow.c',
110         'cn10k_tx.c',
111         'cn10k_tx_mseg.c',
112         'cn10k_tx_vec.c',
113         'cn10k_tx_vec_mseg.c',
114         'cn10k_rx_select.c',
115 )
116
117 sources += files(
118         'rx/cn10k/rx_0_15.c',
119         'rx/cn10k/rx_16_31.c',
120         'rx/cn10k/rx_32_47.c',
121         'rx/cn10k/rx_48_63.c',
122         'rx/cn10k/rx_64_79.c',
123         'rx/cn10k/rx_80_95.c',
124         'rx/cn10k/rx_96_111.c',
125         'rx/cn10k/rx_112_127.c',
126         'rx/cn10k/rx_0_15_mseg.c',
127         'rx/cn10k/rx_16_31_mseg.c',
128         'rx/cn10k/rx_32_47_mseg.c',
129         'rx/cn10k/rx_48_63_mseg.c',
130         'rx/cn10k/rx_64_79_mseg.c',
131         'rx/cn10k/rx_80_95_mseg.c',
132         'rx/cn10k/rx_96_111_mseg.c',
133         'rx/cn10k/rx_112_127_mseg.c',
134         'rx/cn10k/rx_0_15_vec.c',
135         'rx/cn10k/rx_16_31_vec.c',
136         'rx/cn10k/rx_32_47_vec.c',
137         'rx/cn10k/rx_48_63_vec.c',
138         'rx/cn10k/rx_64_79_vec.c',
139         'rx/cn10k/rx_80_95_vec.c',
140         'rx/cn10k/rx_96_111_vec.c',
141         'rx/cn10k/rx_112_127_vec.c',
142         'rx/cn10k/rx_0_15_vec_mseg.c',
143         'rx/cn10k/rx_16_31_vec_mseg.c',
144         'rx/cn10k/rx_32_47_vec_mseg.c',
145         'rx/cn10k/rx_48_63_vec_mseg.c',
146         'rx/cn10k/rx_64_79_vec_mseg.c',
147         'rx/cn10k/rx_80_95_vec_mseg.c',
148         'rx/cn10k/rx_96_111_vec_mseg.c',
149         'rx/cn10k/rx_112_127_vec_mseg.c',
150 )
151
152 deps += ['bus_pci', 'cryptodev', 'eventdev', 'security']
153 deps += ['common_cnxk', 'mempool_cnxk']
154
155 # Allow implicit vector conversions and strict aliasing warning
156 extra_flags = ['-flax-vector-conversions', '-Wno-strict-aliasing']
157 foreach flag: extra_flags
158     if cc.has_argument(flag)
159         cflags += flag
160     endif
161 endforeach