016a79b2a822db0802cc2783efa8be9f808ea029
[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_ethdev_sec_telemetry.c',
19         'cnxk_link.c',
20         'cnxk_lookup.c',
21         'cnxk_ptp.c',
22         'cnxk_flow.c',
23         'cnxk_stats.c',
24         'cnxk_tm.c',
25 )
26
27 # CN9K
28 sources += files(
29         'cn9k_ethdev.c',
30         'cn9k_ethdev_sec.c',
31         'cn9k_flow.c',
32         'cn9k_rx_select.c',
33         'cn9k_tx_select.c',
34 )
35
36 sources += files(
37         'rx/cn9k/rx_0_15.c',
38         'rx/cn9k/rx_16_31.c',
39         'rx/cn9k/rx_32_47.c',
40         'rx/cn9k/rx_48_63.c',
41         'rx/cn9k/rx_64_79.c',
42         'rx/cn9k/rx_80_95.c',
43         'rx/cn9k/rx_96_111.c',
44         'rx/cn9k/rx_112_127.c',
45         'rx/cn9k/rx_0_15_mseg.c',
46         'rx/cn9k/rx_16_31_mseg.c',
47         'rx/cn9k/rx_32_47_mseg.c',
48         'rx/cn9k/rx_48_63_mseg.c',
49         'rx/cn9k/rx_64_79_mseg.c',
50         'rx/cn9k/rx_80_95_mseg.c',
51         'rx/cn9k/rx_96_111_mseg.c',
52         'rx/cn9k/rx_112_127_mseg.c',
53         'rx/cn9k/rx_0_15_vec.c',
54         'rx/cn9k/rx_16_31_vec.c',
55         'rx/cn9k/rx_32_47_vec.c',
56         'rx/cn9k/rx_48_63_vec.c',
57         'rx/cn9k/rx_64_79_vec.c',
58         'rx/cn9k/rx_80_95_vec.c',
59         'rx/cn9k/rx_96_111_vec.c',
60         'rx/cn9k/rx_112_127_vec.c',
61         'rx/cn9k/rx_0_15_vec_mseg.c',
62         'rx/cn9k/rx_16_31_vec_mseg.c',
63         'rx/cn9k/rx_32_47_vec_mseg.c',
64         'rx/cn9k/rx_48_63_vec_mseg.c',
65         'rx/cn9k/rx_64_79_vec_mseg.c',
66         'rx/cn9k/rx_80_95_vec_mseg.c',
67         'rx/cn9k/rx_96_111_vec_mseg.c',
68         'rx/cn9k/rx_112_127_vec_mseg.c',
69 )
70
71 sources += files(
72         'tx/cn9k/tx_0_15.c',
73         'tx/cn9k/tx_16_31.c',
74         'tx/cn9k/tx_32_47.c',
75         'tx/cn9k/tx_48_63.c',
76         'tx/cn9k/tx_64_79.c',
77         'tx/cn9k/tx_80_95.c',
78         'tx/cn9k/tx_96_111.c',
79         'tx/cn9k/tx_112_127.c',
80         'tx/cn9k/tx_0_15_mseg.c',
81         'tx/cn9k/tx_16_31_mseg.c',
82         'tx/cn9k/tx_32_47_mseg.c',
83         'tx/cn9k/tx_48_63_mseg.c',
84         'tx/cn9k/tx_64_79_mseg.c',
85         'tx/cn9k/tx_80_95_mseg.c',
86         'tx/cn9k/tx_96_111_mseg.c',
87         'tx/cn9k/tx_112_127_mseg.c',
88         'tx/cn9k/tx_0_15_vec.c',
89         'tx/cn9k/tx_16_31_vec.c',
90         'tx/cn9k/tx_32_47_vec.c',
91         'tx/cn9k/tx_48_63_vec.c',
92         'tx/cn9k/tx_64_79_vec.c',
93         'tx/cn9k/tx_80_95_vec.c',
94         'tx/cn9k/tx_96_111_vec.c',
95         'tx/cn9k/tx_112_127_vec.c',
96         'tx/cn9k/tx_0_15_vec_mseg.c',
97         'tx/cn9k/tx_16_31_vec_mseg.c',
98         'tx/cn9k/tx_32_47_vec_mseg.c',
99         'tx/cn9k/tx_48_63_vec_mseg.c',
100         'tx/cn9k/tx_64_79_vec_mseg.c',
101         'tx/cn9k/tx_80_95_vec_mseg.c',
102         'tx/cn9k/tx_96_111_vec_mseg.c',
103         'tx/cn9k/tx_112_127_vec_mseg.c',
104 )
105
106 # CN10K
107 sources += files(
108         'cn10k_ethdev.c',
109         'cn10k_ethdev_sec.c',
110         'cn10k_flow.c',
111         'cn10k_rx_select.c',
112         'cn10k_tx_select.c',
113 )
114
115 sources += files(
116         'rx/cn10k/rx_0_15.c',
117         'rx/cn10k/rx_16_31.c',
118         'rx/cn10k/rx_32_47.c',
119         'rx/cn10k/rx_48_63.c',
120         'rx/cn10k/rx_64_79.c',
121         'rx/cn10k/rx_80_95.c',
122         'rx/cn10k/rx_96_111.c',
123         'rx/cn10k/rx_112_127.c',
124         'rx/cn10k/rx_0_15_mseg.c',
125         'rx/cn10k/rx_16_31_mseg.c',
126         'rx/cn10k/rx_32_47_mseg.c',
127         'rx/cn10k/rx_48_63_mseg.c',
128         'rx/cn10k/rx_64_79_mseg.c',
129         'rx/cn10k/rx_80_95_mseg.c',
130         'rx/cn10k/rx_96_111_mseg.c',
131         'rx/cn10k/rx_112_127_mseg.c',
132         'rx/cn10k/rx_0_15_vec.c',
133         'rx/cn10k/rx_16_31_vec.c',
134         'rx/cn10k/rx_32_47_vec.c',
135         'rx/cn10k/rx_48_63_vec.c',
136         'rx/cn10k/rx_64_79_vec.c',
137         'rx/cn10k/rx_80_95_vec.c',
138         'rx/cn10k/rx_96_111_vec.c',
139         'rx/cn10k/rx_112_127_vec.c',
140         'rx/cn10k/rx_0_15_vec_mseg.c',
141         'rx/cn10k/rx_16_31_vec_mseg.c',
142         'rx/cn10k/rx_32_47_vec_mseg.c',
143         'rx/cn10k/rx_48_63_vec_mseg.c',
144         'rx/cn10k/rx_64_79_vec_mseg.c',
145         'rx/cn10k/rx_80_95_vec_mseg.c',
146         'rx/cn10k/rx_96_111_vec_mseg.c',
147         'rx/cn10k/rx_112_127_vec_mseg.c',
148 )
149
150 sources += files(
151         'tx/cn10k/tx_0_15.c',
152         'tx/cn10k/tx_16_31.c',
153         'tx/cn10k/tx_32_47.c',
154         'tx/cn10k/tx_48_63.c',
155         'tx/cn10k/tx_64_79.c',
156         'tx/cn10k/tx_80_95.c',
157         'tx/cn10k/tx_96_111.c',
158         'tx/cn10k/tx_112_127.c',
159         'tx/cn10k/tx_0_15_mseg.c',
160         'tx/cn10k/tx_16_31_mseg.c',
161         'tx/cn10k/tx_32_47_mseg.c',
162         'tx/cn10k/tx_48_63_mseg.c',
163         'tx/cn10k/tx_64_79_mseg.c',
164         'tx/cn10k/tx_80_95_mseg.c',
165         'tx/cn10k/tx_96_111_mseg.c',
166         'tx/cn10k/tx_112_127_mseg.c',
167         'tx/cn10k/tx_0_15_vec.c',
168         'tx/cn10k/tx_16_31_vec.c',
169         'tx/cn10k/tx_32_47_vec.c',
170         'tx/cn10k/tx_48_63_vec.c',
171         'tx/cn10k/tx_64_79_vec.c',
172         'tx/cn10k/tx_80_95_vec.c',
173         'tx/cn10k/tx_96_111_vec.c',
174         'tx/cn10k/tx_112_127_vec.c',
175         'tx/cn10k/tx_0_15_vec_mseg.c',
176         'tx/cn10k/tx_16_31_vec_mseg.c',
177         'tx/cn10k/tx_32_47_vec_mseg.c',
178         'tx/cn10k/tx_48_63_vec_mseg.c',
179         'tx/cn10k/tx_64_79_vec_mseg.c',
180         'tx/cn10k/tx_80_95_vec_mseg.c',
181         'tx/cn10k/tx_96_111_vec_mseg.c',
182         'tx/cn10k/tx_112_127_vec_mseg.c',
183 )
184
185 deps += ['bus_pci', 'cryptodev', 'eventdev', 'security']
186 deps += ['common_cnxk', 'mempool_cnxk']
187
188 # Allow implicit vector conversions and strict aliasing warning
189 extra_flags = ['-flax-vector-conversions', '-Wno-strict-aliasing']
190 foreach flag: extra_flags
191     if cc.has_argument(flag)
192         cflags += flag
193     endif
194 endforeach