drivers: disable OCTEON TX2 in 32-bit build
authorThomas Monjalon <thomas@monjalon.net>
Mon, 9 Nov 2020 16:44:30 +0000 (17:44 +0100)
committerThomas Monjalon <thomas@monjalon.net>
Thu, 12 Nov 2020 15:39:10 +0000 (16:39 +0100)
The drivers for OCTEON TX2 are not supported in 32-bit mode.

Suggested-by: Jerin Jacob <jerinj@marvell.com>
Signed-off-by: Thomas Monjalon <thomas@monjalon.net>
Acked-by: Jerin Jacob <jerinj@marvell.com>
drivers/common/octeontx2/meson.build
drivers/crypto/octeontx2/meson.build
drivers/event/octeontx2/meson.build
drivers/mempool/octeontx2/meson.build
drivers/net/octeontx2/meson.build
drivers/regex/octeontx2/meson.build

index f2c0434..84fb115 100644 (file)
@@ -2,6 +2,12 @@
 # Copyright(C) 2019 Marvell International Ltd.
 #
 
+if not dpdk_conf.get('RTE_ARCH_64')
+       build = false
+       reason = 'only supported on 64-bit'
+       subdir_done()
+endif
+
 sources= files('otx2_dev.c',
                'otx2_irq.c',
                'otx2_mbox.c',
@@ -9,18 +15,6 @@ sources= files('otx2_dev.c',
                'otx2_sec_idev.c',
               )
 
-extra_flags = []
-# This integrated controller runs only on a arm64 machine, remove 32bit warnings
-if not dpdk_conf.get('RTE_ARCH_64')
-       extra_flags += ['-Wno-int-to-pointer-cast', '-Wno-pointer-to-int-cast']
-endif
-
-foreach flag: extra_flags
-       if cc.has_argument(flag)
-               cflags += flag
-       endif
-endforeach
-
 deps = ['eal', 'pci', 'ethdev', 'kvargs']
 includes += include_directories('../../common/octeontx2',
                '../../mempool/octeontx2', '../../bus/pci')
index 4e4522c..0aad4e9 100644 (file)
@@ -1,9 +1,10 @@
 # SPDX-License-Identifier: BSD-3-Clause
 # Copyright (C) 2019 Marvell International Ltd.
 
-if not is_linux
+if not is_linux or not dpdk_conf.get('RTE_ARCH_64')
        build = false
-       reason = 'only supported on Linux'
+       reason = 'only supported on 64-bit Linux'
+       subdir_done()
 endif
 
 deps += ['bus_pci']
@@ -21,18 +22,6 @@ sources = files('otx2_cryptodev.c',
                'otx2_cryptodev_ops.c',
                'otx2_cryptodev_sec.c')
 
-extra_flags = []
-# This integrated controller runs only on a arm64 machine, remove 32bit warnings
-if not dpdk_conf.get('RTE_ARCH_64')
-       extra_flags += ['-Wno-int-to-pointer-cast', '-Wno-pointer-to-int-cast']
-endif
-
-foreach flag: extra_flags
-       if cc.has_argument(flag)
-               cflags += flag
-       endif
-endforeach
-
 includes += include_directories('../../common/cpt')
 includes += include_directories('../../common/octeontx2')
 includes += include_directories('../../crypto/octeontx2')
index 724da2e..22e7e4c 100644 (file)
@@ -2,6 +2,12 @@
 # Copyright(C) 2019 Marvell International Ltd.
 #
 
+if not dpdk_conf.get('RTE_ARCH_64')
+       build = false
+       reason = 'only supported on 64-bit'
+       subdir_done()
+endif
+
 sources = files('otx2_worker.c',
                'otx2_worker_dual.c',
                'otx2_evdev.c',
@@ -13,18 +19,6 @@ sources = files('otx2_worker.c',
                'otx2_tim_worker.c'
                )
 
-extra_flags = []
-# This integrated controller runs only on a arm64 machine, remove 32bit warnings
-if not dpdk_conf.get('RTE_ARCH_64')
-       extra_flags += ['-Wno-int-to-pointer-cast', '-Wno-pointer-to-int-cast']
-endif
-
-foreach flag: extra_flags
-       if cc.has_argument(flag)
-               cflags += flag
-       endif
-endforeach
-
 deps += ['bus_pci', 'common_octeontx2', 'crypto_octeontx2', 'mempool_octeontx2', 'net_octeontx2']
 
 includes += include_directories('../../crypto/octeontx2')
index 0226f76..0586321 100644 (file)
@@ -5,6 +5,12 @@
 if is_windows
        build = false
        reason = 'not supported on Windows'
+       subdir_done()
+endif
+if not dpdk_conf.get('RTE_ARCH_64')
+       build = false
+       reason = 'only supported on 64-bit'
+       subdir_done()
 endif
 
 sources = files('otx2_mempool_ops.c',
@@ -13,16 +19,4 @@ sources = files('otx2_mempool_ops.c',
                'otx2_mempool_debug.c'
                )
 
-extra_flags = []
-# This integrated controller runs only on a arm64 machine, remove 32bit warnings
-if not dpdk_conf.get('RTE_ARCH_64')
-       extra_flags += ['-Wno-int-to-pointer-cast', '-Wno-pointer-to-int-cast']
-endif
-
-foreach flag: extra_flags
-       if cc.has_argument(flag)
-               cflags += flag
-       endif
-endforeach
-
 deps += ['eal', 'mbuf', 'kvargs', 'bus_pci', 'common_octeontx2', 'mempool']
index 599ade6..638c04a 100644 (file)
@@ -2,6 +2,12 @@
 # Copyright(C) 2019 Marvell International Ltd.
 #
 
+if not dpdk_conf.get('RTE_ARCH_64')
+       build = false
+       reason = 'only supported on 64-bit'
+       subdir_done()
+endif
+
 sources = files('otx2_rx.c',
                'otx2_tx.c',
                'otx2_tm.c',
@@ -29,11 +35,6 @@ deps += ['bus_pci', 'cryptodev', 'eventdev', 'security']
 deps += ['common_octeontx2', 'mempool_octeontx2']
 
 extra_flags = ['-flax-vector-conversions']
-# This integrated controller runs only on a arm64 machine, remove 32bit warnings
-if not dpdk_conf.get('RTE_ARCH_64')
-       extra_flags += ['-Wno-int-to-pointer-cast', '-Wno-pointer-to-int-cast']
-endif
-
 foreach flag: extra_flags
        if cc.has_argument(flag)
                cflags += flag
index aada0b5..34e5172 100644 (file)
@@ -2,9 +2,10 @@
 # Copyright(C) 2020 Marvell International Ltd.
 #
 
-if not is_linux
+if not is_linux or not dpdk_conf.get('RTE_ARCH_64')
        build = false
-       reason = 'only supported on Linux'
+       reason = 'only supported on 64-bit Linux'
+       subdir_done()
 endif
 
 lib = cc.find_library('librxp_compiler', required: false)
@@ -21,23 +22,6 @@ sources = files('otx2_regexdev.c',
                'otx2_regexdev_compiler.c'
                )
 
-extra_flags = []
-# This integrated controller runs only on a arm64 machine, remove 32bit warnings
-if not dpdk_conf.get('RTE_ARCH_64')
-       extra_flags += ['-Wno-int-to-pointer-cast', '-Wno-pointer-to-int-cast']
-endif
-
-# for clang 32-bit compiles we need libatomic for 64-bit atomic ops
-if cc.get_id() == 'clang' and dpdk_conf.get('RTE_ARCH_64') == false
-       ext_deps += cc.find_library('atomic')
-endif
-
-foreach flag: extra_flags
-       if cc.has_argument(flag)
-               cflags += flag
-       endif
-endforeach
-
 fmt_name = 'octeontx2_regex'
 deps += ['bus_pci', 'common_octeontx2', 'regexdev']