chao.an
8bce416c25
sim/tapdev: follow the tunnel MTU size
...
Change-Id: Ia32255517650d95ea3a675ee9fe5b69e923fb51a
Signed-off-by: chao.an <anchao@xiaomi.com>
2020-05-14 07:54:57 -06:00
Gregory Nutt
f92dba212d
sched/sched/sched.h: Make naming of all internal names consistent:
...
1. Add internal scheduler functions should begin with nxsched_, not sched_
2. Follow the consistent naming patter of https://cwiki.apache.org/confluence/display/NUTTX/Naming+of+OS+Internal+Functions
2020-05-09 16:58:42 -03:00
Gregory Nutt
a4218e2144
include/nuttx/sched.h: Make naming of all internal names consistent:
...
1. Add internal scheduler functions should begin with nxsched_, not sched_
2. Follow the consistent naming patter of https://cwiki.apache.org/confluence/display/NUTTX/Naming+of+OS+Internal+Functions
2020-05-09 14:19:08 -03:00
Gregory Nutt
2d78ed7c7e
arch/sim/src/nuttx-names.dat: Add __errno()
...
Needed to avoid collision with the host on simulator build.
2020-05-08 01:58:25 +01:00
Gregory Nutt
c2244a2382
Remove CONFIG_TLS
...
A first step in implementing the user-space error is force TLS to be enabled at all times. It is no longer optional
2020-05-07 12:04:16 -06:00
Gregory Nutt
bda24f09c2
libs/libc/tls/tls_getinfo.c: Add tls_get_info()
...
Move the logic to get TLS information from an inline function to a normal function. For the unaligned case, it is probably too large to be inlined.
Also fixes some minor things from review of previous commits.
2020-05-05 18:56:33 +01:00
Abdelatif Guettouche
b7e7fba732
TLS_UNALIGNED ( #2 )
...
* Implement the TLS_UNALIGNED
2020-05-05 18:56:33 +01:00
Xiang Xiao
2476aad5b4
sim: Fix librt can't find on macOS
...
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2020-05-01 13:09:44 -06:00
YAMAMOTO Takashi
8b054dba98
sim: Update hostfs after the recent struct stat timespec changes
...
Fix it after the following change:
commit bb4458b63f
Author: Ouss4 <abdelatif.guettouche@gmail.com>
Date: Thu Apr 30 19:05:12 2020 +0100
include/sys/stat.h: Per the POSIX standard, the atime, ctime and mtime field
s
have changed their type from time_t to struct timespec.
2020-05-01 17:42:46 +08:00
liuhaitao
bab61180db
sim: Add host mmap and perror support
...
Change-Id: I20bb8cba7ed6ab3e06c91f275fa2be6a633efe9e
Signed-off-by: liuhaitao <liuhaitao@xiaomi.com>
2020-04-30 20:20:32 +08:00
zhongan
ef9735febd
arch/sim: initialize 'rxbuf_size' and 'txbuf_size' instead of 'buf_size'.
...
Change-Id: I5442f022cafef6c0f636614ba739e11249713134
Signed-off-by: zhongan <zhongan@xiaomi.com>
2020-04-26 19:59:16 -06:00
zhongan
4ec8fd521f
arch/sim: change 'VIRTIO_RPMSG_F_BIND' to 'VIRTIO_RPMSG_F_ACK'
...
Change-Id: I4d6b6b700130e264199f490ab4e922f699955113
Signed-off-by: zhongan <zhongan@xiaomi.com>
2020-04-26 19:59:16 -06:00
Nathan Hartman
d6f7821b15
Docs and comments: Change OSX -> macOS
...
Mac OS X was renamed to macOS at some point. Update references to
OSX, OS X, Mac OS X, Mac OSX, and other permutations, to macOS,
in README files and in comments of other files.
2020-04-26 07:48:33 -06:00
Xiang Xiao
090a4d1690
Update .gitignore per testbuild.sh report
...
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2020-04-20 07:07:32 -06:00
Xiang Xiao
3d10f8cf8f
Fix nxstyle warning
...
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2020-04-19 07:51:18 -06:00
Xiang Xiao
2a7029dd52
arch/sim: All cpu core need conform to CONFIG_SIM_WALLTIME behaviour
...
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2020-04-19 07:51:18 -06:00
zhongan
b4a50a9192
fix nxstyle warning.
...
Signed-off-by: zhongan <zhongan@xiaomi.com>
2020-04-15 12:30:50 -03:00
zhongan
4ff0edce25
arch/sim: add implemntation of 'host_sleep'.
...
Change-Id: Ib82343565ca9541499dec52c753c3f15923f7d1c
Signed-off-by: zhongan <zhongan@xiaomi.com>
2020-04-15 12:30:50 -03:00
zhongan
a41c5e01e1
arch/sim: add header to remove warning when build with 'CONFIG_SYSLOG_RPMSG_SERVER'.
...
Change-Id: I58ebe25434aaebce3812abb52caf3c670118cb66
Signed-off-by: zhongan <zhongan@xiaomi.com>
2020-04-15 12:30:50 -03:00
liuhaitao
459ad99373
Use EXTRAFLAGS instead of EXTRADEFINES to be used by make via command line
...
So call 'make EXTRAFLAGS=-Wno-cpp' could suppress the warnings with pre-processor
directive #warning in GCC.
Change-Id: Iaa618238924c9969bf91db22117b39e6d2fc9bb6
Signed-off-by: liuhaitao <liuhaitao@xiaomi.com>
2020-04-11 08:31:08 -06:00
ligd
231ad202ee
global change: repace sched_xfree() to kxmm_free()
...
Changes:
sched_xfree() => kxmm_free()
remove garbage related APIs
remove ARCH_HAVE_GARBAGE
Cause garbage feature move to mm_heap, then don't need
garbage anymore.
Change-Id: If310790a3208155ca8ab319e8d038cb6ff92c518
Signed-off-by: ligd <liguiding@fishsemi.com>
2020-04-09 10:29:28 -06:00
Nakamura, Yuuichi
9029e4daee
Fix nxstyle issues
2020-04-07 06:23:15 -06:00
Nakamura, Yuuichi
e264484c16
Remove type casting to wdentry_t (arch/)
2020-04-07 06:23:15 -06:00
Nathan Hartman
679b4fbee2
arch: Fix included directed -> included directly
...
This typo had been copied and pasted into numerous irq and syscall
headers.
2020-04-05 22:31:15 +01:00
Alan Carvalho de Assis
30ca00c0a9
Check for return of nxsem_wait_uninterruptible. This commit is for files under arch/sim
2020-04-01 19:50:39 +01:00
YAMAMOTO Takashi
40d7f83e31
sim: Appease a few prototype warnings
2020-03-28 12:08:57 +01:00
YAMAMOTO Takashi
a493c92826
sim: Use executable memory for the heap
...
On modern environments, bss is not executable.
Alternatively we can use the ARCH_HAVE_MODULE_TEXT mechanism.
But it's considered overkill for the sim, which is mainly
for development.
2020-03-27 00:04:36 -05:00
YAMAMOTO Takashi
d6d03d64d5
sim: Hide strerror/strerror_r
2020-03-25 21:35:17 -06:00
YAMAMOTO Takashi
27aa16111c
sim: hostfs: Stop assuming CONFIG_NAME_MAX=32
2020-03-25 20:31:32 -06:00
YAMAMOTO Takashi
f89ccf873e
sim: host_readdir: Ensure NUL termination when truncating d_name
2020-03-25 20:31:32 -06:00
YAMAMOTO Takashi
2991836ee8
sim: Appease nxstyle errors
2020-03-25 00:09:21 -05:00
YAMAMOTO Takashi
9fdda58eca
sim: Hide putenv
2020-03-23 18:17:58 -06:00
YAMAMOTO Takashi
2e933102e1
sim: Hide getopt related globals
...
Right now this is rather theorethic as we don't actually
use getopt though.
2020-03-23 14:38:17 -05:00
YAMAMOTO Takashi
702d82d052
vpnkit: Add a config to specify the socket
2020-03-23 14:37:56 -05:00
YAMAMOTO Takashi
12a97acaed
vpnkit: Make this less verbose on connection errors
2020-03-23 14:37:28 -05: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
YAMAMOTO Takashi
9b88ecc1b2
sim: Make SIM_NETDEV_TAP depends on LINUX||WINDOWS
2020-03-21 00:23:40 -05:00
YAMAMOTO Takashi
a5f8b20fcd
sim: Add a netdev backed by VPNKit
2020-03-19 09:13:32 -05:00
YAMAMOTO Takashi
124c00b661
Appease nxstyle complaints in files from vpnkit
2020-03-19 09:13:32 -05:00
YAMAMOTO Takashi
cd10bd67c4
Add copyright notices to files from vpnkit
2020-03-19 09:13:32 -05:00
YAMAMOTO Takashi
4062727333
negotiate() function extracted from vpnkit
...
From:
https://github.com/moby/vpnkit
commit 2ffc1dd8a84ea7359dd09b1f4b51bb728d4f46a0
c/vpnkit-tap-vsockd/tap-vsockd.c
With minimum changes to make it build.
2020-03-19 09:13:32 -05:00
YAMAMOTO Takashi
b748fcde0a
vpnkit/protocol.c: make this compile
2020-03-19 09:13:32 -05:00
YAMAMOTO Takashi
261249cc99
vpnkit: Add a few files from vpnkit
...
From:
https://github.com/moby/vpnkit
commit 2ffc1dd8a84ea7359dd09b1f4b51bb728d4f46a0
c/vpnkit-tap-vsockd/protocol.h
c/vpnkit-tap-vsockd/protocol.c
2020-03-19 09:13:32 -05:00
Nathan Hartman
a5e643b0cd
Fix typos in comments and documentation.
2020-03-16 20:01:11 -06:00
Petro Karashchenko
3fa6baec98
spi: change spi_send() interface to support of 32-bit word transfer
...
Signed-off-by: Petro Karashchenko <petro.karashchenko@gmail.com>
2020-03-09 08:03:35 -06:00
Juha Niskanen
f3490e42c3
Fix typos in comments
2020-03-03 09:11:57 -06:00
Xiang Xiao
b9b86fcc63
arch/sim: Handle tap device initializition failure gracefully
2020-02-24 08:42:03 -06:00
Xiang Xiao
96adb827a3
arch/sim: Ensure all host printf end with \r\n
...
Since simulator switch console to raw mode, we have to add \r manually
2020-02-24 08:41:45 -06:00
Xiang Xiao
cde88cabcc
Run codespell -w with the latest dictonary again
...
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2020-02-23 22:27:46 +01:00
liuhaitao
b4cf5f5dab
arch: refine up_serialinit/up_earlyserialinit/rpmsg_serialinit
2020-02-23 09:11:57 -06:00
Xiang Xiao
bd4e8e19d3
Run codespell -w against all files
...
and fix the wrong correction
2020-02-22 14:45:07 -06:00
Gregory Nutt
d06d8fbca2
Run all .c and .h files modified by PR301 through nxstyle.
2020-02-19 07:23:41 -06:00
Xiang Xiao
892290f76b
syslog: Call syslog_rpmsg_init inside syslog_initialize like other syslog driver
2020-02-19 07:19:34 -06:00
Xiang Xiao
51a2171c71
ramlog: Remove g_ramlog_syslog_channel since it's same as g_default_channel
...
And remove syslog_init_e because all initialization is later now and we don't
distinguish the initialition phase anymore after ramlog don't need special
initialize.
2020-02-18 13:04:45 -06:00
Xiang Xiao
dcaaf2d912
ramlog: Remove all ramlog_consoleinit related code
...
Because we can get the same function by CONSOLE_SYSLOG/syslog_console_init.
BTW, it isn't a good choice to use g_ramlogfops as /dev/console since nsh
will read back what it send out which will surprise most people.
2020-02-18 12:57:43 -06:00
Xiang Xiao
6b77f73583
arch: Move iob_initialize into nx_start just after heap initialization
...
it doesn't make sense that iob initialization is in up_initialize
but other memory components initialization is called in nx_start
Change-Id: Id43aeaa995f340c5943f59a0067a483ff3ac34a2
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2020-02-18 10:26:19 -03:00
Xiang Xiao
e7d9260014
arch: Customize the typedef of size_t instead of intptr_t
...
To ensure size_t same as toolchain definition in the first place and rename CXX_NEWLONG to ARCH_SIZET_LONG. The change also check whether __SIZE_TYPE__ exist before CONFIG_ARCH_SIZET_LONG so our definition can align with toolchain(gcc/clang) definition automatically.
2020-02-18 07:15:19 -06:00
Xiang Xiao
866a531899
sim/rtc: Don't change the host wall clock in sim_rtc_settime
2020-02-16 09:44:04 -06:00
Gregory Nutt
5d850fb197
arch/sim/src/sim/up_oneshot.c: Eliminate warning from build test.
2020-02-15 19:47:02 +01:00
Gregory Nutt
f5e0bb2d30
Run all files modified by PR274 through nxstyle.
2020-02-15 07:17:22 -06:00
Xiang Xiao
8b5658b918
arch/sim: Implement arch rtc interface on top of rtc driver
2020-02-15 07:17:19 -06:00
Xiang Xiao
d0d4b7a531
Reimplement arch alarm timer on top of oneshot driver framework
...
The benefit include:
1. Simplify the implementation
2. Support both tick and tickless automatically
3. No time drift in tickless mode
4. Support critmon arch API automatically
2020-02-15 07:17:16 -06:00
YAMAMOTO Takashi
1a3f59be58
sim: Make hostfs build for macOS
...
* Ignore O_DIRECT if the host OS doesn't provide it.
* Use statvfs instead of statfs. The former is in POSIX and
more widely available these days.
2020-02-13 15:17:36 +08:00
YAMAMOTO Takashi
22d002762b
sim: Add more names to nuttx-names.dat
2020-02-12 20:39:08 -06:00
YAMAMOTO Takashi
3d425280b6
simuart: Don't assume a specific endian
2020-02-12 20:38:25 -06:00
Gregory Nutt
5f306b0461
Run all .c and .h files modified by PR 249 through nxstyle.
2020-02-12 08:17:03 -06:00
Xiang Xiao
5e99e64d9f
sim/net: Replace the busy polling with work
...
netdriver_loop should check there is data to read before queue the work
2020-02-12 08:16:43 -06:00
Xiang Xiao
5a00657ac4
arch/sim: Change CONFIG_NET_ETHERNET to CONFIG_SIM_NETDEV
2020-02-12 08:16:33 -06:00
Xiang Xiao
6b1187b402
arch/sim: Change the return type of netdriver_setmacaddr to void
2020-02-12 08:16:23 -06:00
Xiang Xiao
582b2af912
arch/sim: Change syslog to printf in up_tapdev.c
...
since this file is compiled with host environment, can't call NuttX's syslog
2020-02-12 08:16:08 -06:00
Ouss4
2ff43fb8a8
Run files modified by PR239 through nxstyle.
2020-02-11 21:09:12 +00:00
Xiang Xiao
e6c67bdd78
arch/sim: Drive up_x11update by work to simplify up_idle.
2020-02-11 21:07:22 +00:00
Xiang Xiao
14a82f40d2
arch/sim: Make eventloop as an internal variable to simplify up_idle.
2020-02-11 21:07:12 +00:00
Gregory Nutt
d09af3b7f3
Run .c and .h files modified by PR241 through nxstyle.
2020-02-10 08:57:20 -06:00
Xiang Xiao
f2f385902b
arch/sim: Remove the unnecessary file guard
...
since the same protection is already done in Makefile
2020-02-10 08:57:06 -06:00
Xiang Xiao
7fd3a3bcca
xarch/sim: Call pm_initialize from up_initialize directly
...
We don't need the additional flexibility since sim just has one chip.
2020-02-10 08:56:51 -06:00
Xiang Xiao
978575d79a
arch/sim: Pass X11 related config to host environment
...
Remove the hard code CONFIG_SIM_X11NOSHM value from up_x11framebuffer.c
2020-02-10 08:56:37 -06:00
Xiang Xiao
856b62ca09
arch/sim: Fix X11 segmentation fault when CONFIG_SIM_X11NOSHM isn't enabled
...
up_x11mapsharedmem should assign the share memory to g_framebuffer
2020-02-10 08:56:22 -06:00
Xiang Xiao
406a9adfdd
arch/sim: fix up_idle call the wrong pthread_yield version
...
The logic want the host version but link to NuttX version
2020-02-09 07:44:51 -06:00
Xiang Xiao
e06a4226ed
arch/sim: Reuse the main thread as the simulated CPU0
2020-02-09 07:43:47 -06:00
Xiang Xiao
a87271617a
arch/sim: Replace pthread mutex with atomic function for up_testset
...
up_testset may be called from signal hander but it isn't safe to call pthread API in that context
2020-02-09 07:43:10 -06:00
Xiang Xiao
7794dc8821
arch/sim: Set idle thread stack size to zero
...
To avoid ps generate "Segmentation fault" because do_stackcheck
check the stack color if the stack size doesn't equal zero
BTW, it is better to set idle task stack size to zero since idle
task use the host thread and the stack size from config isn't the
actual value.
2020-02-09 07:42:19 -06:00
Xiang Xiao
bfe1d471ce
sim/arch: Fix up_head.c:122:11:implicit declaration of function 'up_cpu_index'
2020-02-09 07:41:42 -06:00
Xiang Xiao
04128b4570
arch/sim/src: Rename board_lcd.c to up_lcd.c like other sim code
...
Rename board_lcd.c to up_lcd.c like other sim code and compile up_spiflash.c and up_qspiflash.c conditionally
2020-02-08 08:52:34 -06:00
Xiang Xiao
fa3e66fe82
arch/sim/src/: Reimplement sim uart on top of serial driver framework
...
The benefits include:
1. Simplify the implementation
2. Support Ctrl+C automatically
3. Support poll automatically
4. Call pm_activity automatically
5. Save one polling thread
2020-02-08 07:52:26 -06:00
Xiang Xiao
6d69439f58
Call xxx_timer_initialize from clock subsystem
...
Call xxx_timer_initialize from clock subsystem to make timer ready for use as soon as possiblei and revert the workaround:
commit 0863e771a9
Author: Gregory Nutt <gnutt@nuttx.org>
Date: Fri Apr 26 07:24:57 2019 -0600
Revert "sched/clock/clock_initialize.c: clock_inittime() needs to be done with CONFIG_SCHED_TICKLESS and clock_initialize should skip clock_inittime() for external RTC case since the RTC isn't ready yet."
This reverts commit 2bc709d4b9
.
Commit 2bc709d4b9
was intended to handle the case where up_timer_gettime may not start from zero case. However, this change has the side-effect of breaking every implementation of tickless mode: After this change the tickless timer structures are used before they are initialized in clock_inittime(). Initialization happens later when up_initialize is called() when arm_timer_initialize().
Since the tickless mode timer is very special, one solution might be to
1. Rename xxx_timer_initialize to up_timer_initialize
2 Move up_timer_initialize to include/nuttx/arch.h
3. Call it from clock subsystem instead up_initialize
Basically, this change make timer initialization almost same as rtc initialization(up_rtc_initialize).
For now, however, we just need to revert the change.
2020-02-08 07:40:06 -06:00
Xiang Xiao
76bbed07a4
Call up_irqinitialize from irq subsystem
...
Call up_irqinitialize from irq subsystem to make the irq ready for use as soon as possible
2020-02-08 07:39:22 -06:00
Xiang Xiao
a8de37fbec
Ensure all source code end with one and only one newline
...
by this command:
git ls-files -z | while IFS= read -rd '' f; do tail -c1 < "$f" | read -r _ || echo >> "$f"; done
2020-02-08 07:25:56 -06:00
Xiang Xiao
c5b1554d84
Remove NETDEV_LOOPBACK option, NET_LOOPBACK is enough
2020-02-02 08:25:06 -06:00
Xiang Xiao
5c80b94820
Replace #include <semaphore.h> to #include <nuttx/semaphore.h>
...
Since the kernel side should call nxsem_xxx instead and remove the unused inclusion
2020-02-01 08:27:30 -06:00
Xiang Xiao
80277d1630
Refine the preprocessor conditional guard style ( #190 )
2020-01-31 19:07:39 +01:00
Xiang Xiao
68951e8d72
Remove exra whitespace from files ( #189 )
...
* Remove multiple newlines at the end of files
* Remove the whitespace from the end of lines
2020-01-31 09:24:49 -06:00
YAMAMOTO Takashi
2983fcdeb7
Fix an inverted logic in the following commit.
...
commit 39bd9ff670
Author: YAMAMOTO Takashi <yamamoto@midokura.com>
Date: Wed Jan 29 00:17:05 2020 +0900
sim: Prefix symbols with _ for non-ELF
Namely for Mach-O. Leave __CYGWIN__ case as it is.
2020-01-29 10:02:39 -08:00
YAMAMOTO Takashi
4174c818df
sim: Don't bother to remove nuttx.rel after consuming
...
We usually don't remove input files like $OBJS.
2020-01-29 09:03:48 +01:00
YAMAMOTO Takashi
b5573c5b51
sim: Fix nuttx.rel for macOS
...
* ld doesn't have --start-groupi/--end-group things. As far as I know,
it works that way by default.
* objcopy with Mach-O support is not widely available.
(GNU binutils seem to claim the support but it didn't actually work
for me. llvm-objcopy --redefine-syms explicitly rejects Mach-O.)
Instead, use -unexported_symbols_list linker flag to hide symbols
to avoid conflicts with host symbols.
2020-01-29 09:03:48 +01:00
YAMAMOTO Takashi
298c2e5e4f
sim: Fix stack alignment
...
The recent x86-64 convention requires 16-byte alignment before
(not after) calling a function.
This fixes snprintf crash I observed on macOS while saving XMM registers.
2020-01-29 09:03:48 +01:00
YAMAMOTO Takashi
39bd9ff670
sim: Prefix symbols with _ for non-ELF
...
Namely for Mach-O. Leave __CYGWIN__ case as it is.
2020-01-29 09:03:48 +01:00
YAMAMOTO Takashi
69a8b9721c
sim: Check __ELF__ for .type/.size directives
...
Mach-O assembler doesn't have them either.
2020-01-29 09:03:48 +01:00
chao.an
4d74aa6ec9
sim/netdev: dependens on LPWORK by default
...
Change-Id: Ic2d42d29fc84bef1cc279ef443897d5191888e72
Signed-off-by: chao.an <anchao@xiaomi.com>
2020-01-21 14:17:24 +08:00