incubator-nuttx/openamp
chao an ab51eae836 libmetal/atomic: enable 64-bit atomic by toolchain builtin flags
Fix compile error:
arm-none-eabi-ld: (remoteproc_virtio.o): in function `metal_io_read':
metal/io.h:252: undefined reference to `__atomic_load_8'
arm-none-eabi-ld: (remoteproc_virtio.o): in function `metal_io_write':
metal/io.h:290: undefined reference to `__atomic_store_8'

Not all 32-bit architectures support 64bit atomic, gcc/clang
toolchains have built-in properties to indicate whether support atomic64:

| $ arm-none-eabi-gcc -march=armv7e-m  -dM -E - < /dev/null | grep SYNC
| #define __GCC_HAVE_SYNC_COMPARE_AND_SWAP_1 1
| #define __GCC_HAVE_SYNC_COMPARE_AND_SWAP_2 1
| #define __GCC_HAVE_SYNC_COMPARE_AND_SWAP_4 1

Signed-off-by: chao an <anchao@lixiang.com>
2024-06-29 22:38:48 +08:00
..
.gitignore cmake:reuse OpenAMP own CMake script for CMake build 2024-06-26 00:22:03 +08:00
0001-libmetal-add-metal_list_for_each_safe-support.patch add remote poweroff support 2023-09-20 00:42:02 +08:00
0001-ns-acknowledge-the-received-creation-message.patch
0002-Negotiate-individual-buffer-size-dynamically.patch
0002-libmetal-nuttx-io.c-align-access-when-read-write-siz.patch openamp/libmetal: aligned io read/write when size=1,2,3,4 2023-11-17 09:42:52 +01:00
0003-libmetal-nuttx-io.c-Fix-void-pointer-arithmetic-in-a.patch openamp: Fix void pointer arithmetic in openamp to remove compilation warnings 2024-02-12 17:06:33 +01:00
0003-rpmsg-wait-endpoint-ready-in-rpmsg_send-and-rpmsg_se.patch
0004-libmetal-atomic-enable-64-bit-atomic-by-toolchain-bu.patch libmetal/atomic: enable 64-bit atomic by toolchain builtin flags 2024-06-29 22:38:48 +08:00
0004-openamp-add-new-ops-notify_wait-support.patch
0005-rpmsg_virtio-don-t-need-check-status-when-get_tx_pay.patch
0006-rpmsg-notify-the-user-when-the-remote-address-is-rec.patch
0007-openamp-avoid-double-calling-ns_bound-when-each-othe.patch
0008-remoteproc-make-all-elf_-functions-static-except-elf.patch
0009-Fix-warn-declaration-of-vring_rsc-shadows-a-previous.patch
0010-rptun-fix-rptun-don-t-wait-issue-when-get-tx-patyloa.patch
0011-rpmsg-fix-rpmsg_virtio_get_tx_buffer-no-idx-return.patch
0012-rpmsg-add-new-API-rpdev_release_tx-rx_buffer.patch
0013-openamp-add-error-log-when-ept-cb-return-error.patch
0014-rpmsg-add-cache-flash-when-hold-rx-buffer.patch
0015-rpmsg-do-cache_invalidate-when-real-data-returned.patch
0016-openamp-add-new-API-rpmsg_virtio_get_rxbuffer_size.patch
0017-virtio-follow-virtio-1.2-spec-add-more-virtio-status.patch openamp: decoupling the transport layer and virtio device layer 2023-05-20 21:51:24 +08:00
0018-virtio-decoupling-the-transport-layer-and-virtio-dev.patch openamp: decoupling the transport layer and virtio device layer 2023-05-20 21:51:24 +08:00
0019-virtio.h-add-version-in-device-id-table.patch openamp: virtio.h add version field in device id table struct 2023-05-27 18:51:04 +08:00
0020-virtio-Add-the-virtio_negotiate_features-interface.patch openamp: Add the virtio_negotiate_features interface for virtio-net. 2023-12-13 05:00:59 -08:00
CMakeLists.txt cmake: fix CMake build break 2023-07-15 23:32:36 +08:00
Kconfig rptun: Select OPENMAP under RPTUN 2023-12-28 11:08:57 +08:00
Makefile
libmetal.cmake libmetal/atomic: enable 64-bit atomic by toolchain builtin flags 2024-06-29 22:38:48 +08:00
libmetal.defs libmetal/atomic: enable 64-bit atomic by toolchain builtin flags 2024-06-29 22:38:48 +08:00
open-amp.cmake cmake:reuse OpenAMP own CMake script for CMake build 2024-06-26 00:22:03 +08:00
open-amp.defs openamp: Add the virtio_negotiate_features interface for virtio-net. 2023-12-13 05:00:59 -08:00