chenrun1
cfcf347515
nuttx/atomic.h:replace ALL stdatomic.h with nuttx/stdatomic.h in nuttx/
...
Summary:
1. use nuttx/atomic.h instead of stdatomic
2. remove CONFIG_HAVE_ATOMIC,because we now support atomic on all platforms
Signed-off-by: chenrun1 <chenrun1@xiaomi.com>
2024-08-22 01:44:29 +08:00
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
chao an
ec150b21d9
Revert "Check whether 64-bit atomic is supported"
...
Signed-off-by: chao an <anchao@lixiang.com>
2024-06-29 22:38:48 +08:00
xuxin19
0e8aecfe64
cmake:reuse OpenAMP own CMake script for CMake build
...
Check whether 64-bit atomic is supported
Co-authored-by: xuxin19 <xuxin19@xiaomi.com>
Co-authored-by: Bowen Wang <wangbowen6@xiaomi.com>
2024-06-26 00:22:03 +08:00
Yanfeng Liu
6b608ab6a2
openamp/libmetal.cmake: sync with libmetal.defs
...
This adds missing patches so that to be in sync with libmetal.defs
Signed-off-by: Yanfeng Liu <yfliu2008@qq.com>
2024-03-28 16:07:49 +08:00
Jukka Laitinen
72f9bd142f
openamp: Fix void pointer arithmetic in openamp to remove compilation warnings
...
Signed-off-by: Jukka Laitinen <jukkax@ssrc.tii.ae>
2024-02-12 17:06:33 +01:00
Xiang Xiao
b9bd88d9d3
rptun: Select OPENMAP under RPTUN
...
to simplify the IPC related configuration
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2023-12-28 11:08:57 +08:00
liqinhui
681b84b15d
openamp: Add the virtio_negotiate_features interface for virtio-net.
...
Signed-off-by: liqinhui <liqinhui@xiaomi.com>
2023-12-13 05:00:59 -08:00
Bowen Wang
8ed836f05e
openamp/libmetal: aligned io read/write when size=1,2,3,4
...
Make NuttX implemented metal io read/write to aligned access
Signed-off-by: Bowen Wang <wangbowen6@xiaomi.com>
2023-11-17 09:42:52 +01:00
ligd
378470f611
add remote poweroff support
...
Signed-off-by: yintao <yintao@xiaomi.com>
2023-09-20 00:42:02 +08:00
xuxin19
48d95b8d82
cmake:replace custom_patch_target with PATCH_COMMAND
...
Signed-off-by: xuxin19 <xuxin19@xiaomi.com>
2023-08-24 17:46:43 +02:00
chao an
f10b54a081
cmake: fix CMake build break
...
Signed-off-by: chao an <anchao@xiaomi.com>
2023-07-15 23:32:36 +08:00
Zhe Weng
fef52b11ee
openamp/libmetal: Check CONFIG_HAVE_ATOMICS instead of HAVE_STDATOMIC_H in atomic.h
...
When we use libmetal with other headers using stdatomic.h, we'll get
symbol conflict if we don't enable HAVE_STDATOMIC_H in libmetal. The
best solution might be using cmake to detect headers automatically, but
we can't. Fortunately we have CONFIG_HAVE_ATOMICS macro now, which can
replace HAVE_STDATOMIC_H when we're not using cmake.
Note: 2-Steps to use CONFIG_HAVE_ATOMICS
1. Include compiler.h for CONFIG_HAVE_ATOMICS definition
2. Check CONFIG_HAVE_ATOMICS instead of HAVE_STDATOMIC_H
Signed-off-by: Zhe Weng <wengzhe@xiaomi.com>
2023-07-10 20:44:16 +08:00
chao an
6ee9ec7656
build: add initial cmake build system
...
1. Update all CMakeLists.txt to adapt to new layout
2. Fix cmake build break
3. Update all new file license
4. Fully compatible with current compilation environment(use configure.sh or cmake as you choose)
------------------
How to test
From within nuttx/. Configure:
cmake -B build -DBOARD_CONFIG=sim/nsh -GNinja
cmake -B build -DBOARD_CONFIG=sim:nsh -GNinja
cmake -B build -DBOARD_CONFIG=sabre-6quad/smp -GNinja
cmake -B build -DBOARD_CONFIG=lm3s6965-ek/qemu-flat -GNinja
(or full path in custom board) :
cmake -B build -DBOARD_CONFIG=$PWD/boards/sim/sim/sim/configs/nsh -GNinja
This uses ninja generator (install with sudo apt install ninja-build). To build:
$ cmake --build build
menuconfig:
$ cmake --build build -t menuconfig
--------------------------
2. cmake/build: reformat the cmake style by cmake-format
https://github.com/cheshirekow/cmake_format
$ pip install cmakelang
$ for i in `find -name CMakeLists.txt`;do cmake-format $i -o $i;done
$ for i in `find -name *\.cmake`;do cmake-format $i -o $i;done
Co-authored-by: Matias N <matias@protobits.dev>
Signed-off-by: chao an <anchao@xiaomi.com>
2023-07-08 13:50:48 +08:00
wangbowen6
b3fead9d28
openamp: add OPENAMP_DEBUG config to enable/disable openamp debug
...
Signed-off-by: wangbowen6 <wangbowen6@xiaomi.com>
2023-06-18 16:17:44 +03:00
wangbowen6
fa94317447
openamp/Kconfig: add config to enable/disable the cache feature
...
Signed-off-by: wangbowen6 <wangbowen6@xiaomi.com>
2023-06-18 16:17:44 +03:00
wangbowen6
4a8331a019
openamp: virtio.h add version field in device id table struct
...
Add new patch 0019, this patch is used to support the legacy virtio
mmio trasport.
Signed-off-by: wangbowen6 <wangbowen6@xiaomi.com>
2023-05-27 18:51:04 +08:00
wangbowen6
1f4b71d576
openamp: decoupling the transport layer and virtio device layer
...
Patch 17:
virtio: follow virtio 1.2 spec, add more virtio status and device
Patch 18:
virtio: decoupling the transport layer and virtio device layer
1. Add virtio device api to decouple the transport layer and virtio
device layer.
2. Move the vrings info and virtqueue allocation/free to the
remoteproc transport layer;
3. Because 2, modify the rpmsg device also;
Signed-off-by: wangbowen6 <wangbowen6@xiaomi.com>
2023-05-20 21:51:24 +08:00
wangbowen6
52525796ab
openamp: libmetal compile pass with arm64 arch
...
Signed-off-by: wangbowen6 <wangbowen6@xiaomi.com>
2023-03-21 07:43:20 +01:00
Karel Kočí
62661600b2
treewide: add DOWNLOAD variable as unification of curl call
...
This is a followup to the commit
03b164f59c
.
2023-03-08 17:05:05 +08:00
ligd
c398375cc8
openamp: update openamp lib
...
Signed-off-by: ligd <liguiding1@xiaomi.com>
2023-02-23 22:38:02 +08:00
Xiang Xiao
fdc1aa6ae3
openamp: don't depend on pen-amp.zip and libmetal.zip in the git mode
...
since both don't exist in this mode
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-12-08 09:54:00 +01:00
Xiang Xiao
98a9762e2a
rptun: fix rptun don't wait issue when get tx patyload
...
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-11-23 19:42:30 +09:00
Xiang Xiao
7ad4b573fb
openamp: update openmap lib version to 2022.10.0
...
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-11-07 17:14:58 -03:00
ligd
fd07e7b012
openamp: fix rptun don't wait issue when get tx patyload buffer
...
Signed-off-by: ligd <liguiding1@xiaomi.com>
2022-10-27 21:21:35 +08:00
Peter Bee
9c7bb9e088
openamp/libmetal: support other arch sim host
...
Add support for x86, arm and arm64 host. Tested on M2 mac.
Signed-off-by: Peter Bee <bijunda1@xiaomi.com>
2022-10-11 14:58:51 +09:00
Huang Qi
e0185faa78
Don't download tarballs if a local git repo found
...
Signed-off-by: Huang Qi <huangqi3@xiaomi.com>
2022-08-28 03:07:58 +08:00
ligd
546889d524
openamp: update openmap lib version to 2022.04.0
...
Signed-off-by: ligd <liguiding1@xiaomi.com>
2022-08-03 01:22:53 +08:00
ligd
bae9a97d31
openamp: add openamp patches
...
0006-openamp-fix-scenario-case.patch
0007-openamp-divide-shram-to-TX-shram-RX-shram.patch
0008-rpmsg_virtio-don-t-need-check-status-when-get_tx_pay.patch
Signed-off-by: ligd <liguiding1@xiaomi.com>
2022-03-30 10:00:07 +03:00
ligd
f5ddbb317f
rptun: support can_recursive check for openamp
...
Signed-off-by: ligd <liguiding1@xiaomi.com>
2021-12-13 08:32:57 -06:00
ligd
163109c80f
openamp: notify the user when the remote address is received
...
Signed-off-by: ligd <liguiding1@xiaomi.com>
2021-11-04 13:29:51 -05:00
ligd
8c3996c001
openamp: add ns_unbind_notify support
...
This is for notify rdev unbind event
Signed-off-by: ligd <liguiding1@xiaomi.com>
2021-11-01 06:57:33 -05:00
Xiang Xiao
a941c93f72
openamp: Move the download to context target
...
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2021-08-29 20:02:24 +02:00
Xiang Xiao
f8f1270f9b
openamp: Update to 2020.10.0 official release
...
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2021-05-13 18:43:19 +01:00
Huang Qi
073912e232
Replace all wget with curl
...
wget is missing from some system (like macOS and Windows native),
it's better to use curl to simplify build environment.
Signed-off-by: Huang Qi <huangqi3@xiaomi.com>
2020-12-22 03:36:10 -06:00
Matias N
d5b6ec450f
Parallelize depend file generation
2020-11-22 09:02:59 -03:00
Xiang Xiao
ae356001cf
Change all files come from Xiaomi/Pinecone to Apache License 2.0
...
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2020-08-22 17:37:21 -06:00
SPRESENSE
e249a2f82f
Makefile: Fix Make.dep not updated by config changes
...
Make.dep file should be updated by .config changed after first make.
There are 2 cases affected for this problem:
1) Add source files by config symbol
2) Include header files in #ifdef directive
These 2 cases may not be included in Make.dep and this may prevent the
differential build from working correctly.
2020-07-28 03:59:45 -05:00
Xiang Xiao
23668a4b9b
build: Remove the empty variable assignment
...
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2020-05-24 08:24:13 -06:00
Xiang Xiao
dd61d3d9f9
build: Remve the unnecessary .gitignore
...
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2020-05-23 18:00:40 +01:00
Xiang Xiao
1a95cce1a3
build: Move .config check to the top Makefile
...
remove the workaround to handle the inexistence of .config/Make.defs
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2020-05-20 17:57:34 +01:00
Xiang Xiao
517974787f
Rename clock_systime[r|spec] to clock_systime_[ticks|timespec]
...
follow up the new naming convention:
https://cwiki.apache.org/confluence/display/NUTTX/Naming+of+OS+Internal+Functions
2020-05-10 14:35:50 -06:00
Xiang Xiao
610fa1aadc
openamp: Fix libmetal build break for arm
...
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2020-05-08 12:34:51 +02:00
Xiang Xiao
17112f4eed
openamp: Update to 2020.04.0 release
...
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2020-05-01 13:09:11 -06:00
Xiang Xiao
2bfc03f636
openamp: Download libmetal and open-amp from github
...
and apply the patch which is pending merge to upstream
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2020-04-27 20:21:23 +08:00
YAMAMOTO Takashi
1ffa009c8b
Revert "Don't generate .depend anymore"
...
This reverts commit 79af7fbf4e
.
Because:
* btashton reported some issues in local builds:
https://github.com/apache/incubator-nuttx/pull/603#issuecomment-602264860
* this might be related to the current CI breakage:
> /bin/sh: 1: /__w/incubator-nuttx/incubator-nuttx/nuttx/tools/mkdeps: not found
2020-03-22 23:07:29 -05:00
Xiang Xiao
79af7fbf4e
Don't generate .depend anymore
2020-03-22 18:15:29 +00:00
Xiang Xiao
a82da37059
openamp/Makefile: Linker input file unused because linking not done.
2019-11-10 08:09:32 -06:00
hao.an
4d64634137
openamp/: Add Makefile defines.
2019-11-10 08:09:32 -06:00
Gregory Nutt
bec32fbd5c
openamp/Makefile: libmetal/Make.defs and open-amp/Make.defs. may not be present.
2019-11-03 09:30:34 -06:00