Commit Graph

37189 Commits

Author SHA1 Message Date
Gregory Nutt 4b44b628ea Run nxstyle against all .c and .h files modified by this PR.
All complaints fixed except for those that were not possible to fix:

- Used of Mixed case identifier in ESP32 files.  These are references to Expressif ROM functions which are outside of the scope of NuttX.
2020-05-09 14:19:08 -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
chao.an 8b289023bf semaphore: do not assert if the count exceeds the limit
Linux Programmer's Manual:

SEM_POST(3)

NAME
       sem_post - unlock a semaphore
...

ERRORS
...
       EOVERFLOW
              The maximum allowable value for a semaphore would be exceeded.

Change-Id: I57c1a797a5510df4290a10aa2f3106fd01754b37
Signed-off-by: chao.an <anchao@xiaomi.com>
2020-05-09 07:25:59 -06:00
chao.an 0887203c57 tcp/conn: request arp before the 3-way handshake
Since the request address was not properly resolved before the handshake,
every time of connection, the handshake data will be overwitten into
arp packet and retransmitted until the next tcp timer.
Request the arp address before the handshake to avoid the retransmission.

Change-Id: I80118b9a8096c126c8e16cdf2f7b3d98fca92437
Signed-off-by: chao.an <anchao@xiaomi.com>
2020-05-09 07:25:03 -06:00
chao.an 027ffa1530 boards: update the defconfig
reuse the router ip/mask from dhcpd lib

CONFIG_EXAMPLES_DHCPD_IPADDR   -> CONFIG_NETUTILS_DHCPD_ROUTERIP
CONFIG_EXAMPLES_DHCPD_DRIPADDR -> CONFIG_NETUTILS_DHCPD_ROUTERIP
CONFIG_EXAMPLES_DHCPD_NETMASK  -> CONFIG_NETUTILS_DHCPD_NETMASK

Signed-off-by: chao.an <anchao@xiaomi.com>
2020-05-09 07:24:27 -06:00
liuhaitao b94a7698d9 Revert "CI: use 'git diff $commits' as a whole patchset to do checkpatch"
This reverts commit 350131d00e.

If one PR is on a former master code base, using 'git diff $commits' would result in
abnormal checkpatch report sometimes. So revert it anyway.
2020-05-09 14:10:34 +08:00
Masayuki Ishikawa 75a8883f07 net: netdev: Fix netdev_vioctl()
Signed-off-by: Masayuki Ishikawa <Masayuki.Ishikawa@jp.sony.com>
2020-05-09 02:10:23 +01:00
Gregory Nutt 4301682fbc Fix up some problems/issues remaining from PR 1007
1. Add missing conditional logic in include/sys/syscall_lookup.h
2. CONFIG_NPTHREAD_KEYS removed from code but was still in sched/Kconfig
3. Refresh all configurations affected by PR 1007
4. syscall/syscall_funclookup.c needs to include nuttx/tls.h
2020-05-08 20:13:40 +01:00
Gregory Nutt 9ce03b1660 Move pthread-specific data into TLS
1. Move pthread-specific data files from sched/pthread/ to libs/libc/pthread.
2. Remove pthread-specific data functions from syscalls.
3. Implement tls_alloc() and tls_free() with system calls.
4. Reimplement pthread_key_create() and pthread_key_free() using tls_alloc() and tls_free().
5. Reimplement pthread_set_specific() and pthread_get_specicif() using tls_set_value() and tls_get_value()
2020-05-08 18:05:04 +01:00
Xiang Xiao a6c82a27db tools/mksyscall: Unify the fixed and variable arguments process
Signed-off-by: Xiang Xiao <iaoxiang@xiaomi.com>
2020-05-08 10:38:05 -06:00
Xiang Xiao e7e81dd74d tools/LibTargets.mk: Remove # from the action of syscall
this typo error make libstub.a is compiled without __KERNEL__

Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2020-05-08 10:38:05 -06:00
Xiang Xiao b7d922960f Fix nxstyle issue
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2020-05-08 07:20:49 -06:00
Xiang Xiao de33f86ae3 fs: Add nx_mount/nx_umount2 function
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2020-05-08 07:20:49 -06:00
Xiang Xiao 4a3d28a957 fs: Move inode_checkflags from include/nuttx/fs/fs.h to fs/inode/inode.h
since this function is only used inside fs subsystem

Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2020-05-08 07:20:49 -06:00
Tobias Johansson f2c957144a cxd56: Add input support to Spresense audio driver
Add recording support to the Nuttx audio driver for Spresense.
- Supports 16 bit data with 48 kHz sample rate only for now.
- Supports 1 (dual mono) 2 or 4 channels.
- Only analog mics have been tested so digital is considered
  unsupported.
2020-05-08 07:18:22 -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
liuhaitao 350131d00e CI: use 'git diff $commits' as a whole patchset to do checkpatch
So avoid the duplicate print logs sometimes and rename file not opened
issue.

Signed-off-by: liuhaitao <liuhaitao@xiaomi.com>
2020-05-08 17:44:43 +08:00
Gregory Nutt f801d049b0 boards/Board.mk: Fix MSYS build problem w/ ZDS-II Toolchain
POSIX style paths must always be converted to Windows style paths when
using the ZDS-II Toolchain with Cygwin or MSYS
2020-05-08 04:37:41 +01: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
Ouss4 958999c443 arch/mips/src/common/mips_usestack.c: Include tls.h header. 2020-05-07 18:41:43 -06:00
Gregory Nutt 26a1e76092 Merge branch 'errno' of github.com:apache/incubator-nuttx into errno 2020-05-07 16:25:13 -06:00
Gregory Nutt 3dca5eba15 Completes the Implementation of the TLS-based errno
- Remove per-thread errno from the TCB structure (pterrno)
- Remove get_errno() and set_errno() as functions.  The macros are still available as stubs and will be needed in the future if we need to access the errno from a different address environment (KERNEL mode).
- Add errno value to the tls_info_s structure definitions
- Move sched/errno to libs/libc/errno.  Replace old TCB access to the errno with TLS access to the errno.
2020-05-07 23:11:34 +01:00
Nathan Hartman 930a446a7b sched/init/nx_start.c: Reinstate logic to remove compiler warning
Revert a portion of eca7059785 that
causes compiler warnings about unused variables if nx_start() is not
initializing any of the user-mode heap, kernel-mode heap, or page
allocator:

    init/nx_start.c: In function 'nx_start':
    init/nx_start.c:552:14: warning: unused variable 'heap_size'
    [-Wunused-variable]
           size_t heap_size;
                  ^~~~~~~~~
    init/nx_start.c:551:17: warning: unused variable 'heap_start'
    [-Wunused-variable]
           FAR void *heap_start;
                     ^~~~~~~~~~

See dev@nuttx.apache.org mailing list discussion "New unused variables
warning in nx_start()" starting 6 May 2020, archived here:

https://lists.apache.org/thread.html/r3900727e6a06f4445d6eb881d065119ba6647daab89600c3d45d1424%40%3Cdev.nuttx.apache.org%3E

sched/init/nx_start.c:

    * If none of MM_KERNEL_USRHEAP_INIT, CONFIG_MM_KERNEL_HEAP, or
      CONFIG_MM_PGALLOC are defined, the variables heap_start and
      heap_size were declared but never used.

    * This change reinstates wrapping the block with a preprocessor
      conditional to prevent the variables being declared if they will
      not be used. This preprocessor condition was removed in the
      above-mentioned commit.
2020-05-07 13:49:15 -06:00
Ouss4 a6da3c2cb6 arch/*/*_checkstack.c: Get aligned address only when CONFIG_TLS_ALIGNED is
enabled.
2020-05-07 12:04:51 -06:00
Ouss4 e74899ff6d arch/risc-v/src/common/riscv_createstack.c: Fix the stack_color name. 2020-05-07 12:04:32 -06: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
Xiang Xiao 1ad03a5a13 syscall: Generate STUB prototype automatically
reduce the maintainance effort

Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2020-05-07 10:31:05 -06:00
Xiang Xiao 32cec2a439 syscall: Generate SYS_ number from syscall_lookup.h
to reduce the maintainance effort

Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2020-05-07 10:31:05 -06:00
Xiang Xiao a2d924eea4 syscall: Fix typo error in cvs and header file
and reoder the entry in cvs file

Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2020-05-07 10:31:05 -06:00
Xiang Xiao 2c0381da87 syscall: Apply the new vararg syntax to fcntl
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2020-05-07 10:31:05 -06:00
Pierre-Olivier Vauboin 608e0920d4 boards/arm/stm32h7/stm32h747i-disco: fix style issues 2020-05-07 10:29:01 -06:00
Pierre-Olivier Vauboin 8d8ceee838 boards/arm/stm32h7/stm32h747i-disco: support for FMC SDRAM 2020-05-07 10:29:01 -06:00
liuhaitao 2c9f91205f tools/pic32: update pic32 scripts to fix jobserver unavailable warning
Always build mkpichex to make sure it newest, also correct target name.

Signed-off-by: liuhaitao <liuhaitao@xiaomi.com>
2020-05-07 11:19:25 -03:00
Nakamura, Yuuichi d07fde06ae Fix syscall lookup table 2020-05-07 16:54:40 +08:00
Masayuki Ishikawa 1cf62c7db9 arch: k210: Fix cpu1 hangup during boot with qemu 2020-05-07 08:33:50 +02:00
Ouss4 6eb6d31c32 Fix nxstyle complaints 2020-05-06 21:56:40 -06:00
Ouss4 d56c613b7d arch/avr,renesas,risc-v: The *_getsp function was moved to a header
file, remove it from the different source files that used to implement
it to avoid redefinitions.
2020-05-06 21:56:40 -06:00
Ouss4 a4dd967440 arch/: Implement up_tls_info() for the rest of the architectures. 2020-05-06 21:56:40 -06:00
Ouss4 1e3ec6ecd0 arch/: Implement Thread Local Storage for the rest of the architectures.
The change consisted on modifying *_usestack.c and *_createstack.c
2020-05-06 21:56:40 -06:00
Xiang Xiao 3e00d182d2 Fix nxstyle issue
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2020-05-06 20:53:11 -06:00
Xiang Xiao 94bb2e05bb syslog: Code outside libc shouldn't call nx_vsyslog directly
since nx_vsyslog is the implementation detail

Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2020-05-06 20:53:11 -06:00
Yang Chung-Fan 6b1f94ee49 arch: x86_64: real-mode bootstrap code should jump to 1M 2020-05-06 08:35:09 -07:00
Yang Chung-Fan ffa2027226 arch: x86_64: Add option to disable interrupt controller initialization 2020-05-06 08:35:09 -07:00
Yang Chung-Fan c63c8a3841 arch: x86_64: Add real-mode bootstrap stub 2020-05-06 08:35:09 -07:00
Yang Chung-Fan 9ab6b92ad7 arch: x86_64: move the disable multiboot2 marco around to retain labels 2020-05-06 08:35:09 -07:00
Yang Chung-Fan 235d905001 arch: x86_64: remove leftover debug output 2020-05-06 23:33:46 +08:00
Gregory Nutt 6077124b38 syscall/syscall.csv: Corect type for ioctl parameter
Variable argument should be of type unsigned long, not unsigned int.
2020-05-06 23:33:27 +08:00
Xiang Xiao 7fa20cf40e board/sim: Change CONFIG_SYSTEM_USRSOCK_RPMSG to CONFIG_NETUTILS_USRSOCK_RPMSG
follow up the apps side change

Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2020-05-06 08:59:07 -06:00
Gregory Nutt 180ddd0275 syscall/README.txt: Describe new sycall.csv extensions.
Provides documentation of recent extensions to the format of the syscall/sycall.csv file.
2020-05-06 02:15:23 +01:00
Masayuki Ishikawa ca8f0aa87e boards: maix-bit: Add descriptions on how to write nuttx.bin to SPI-Flash 2020-05-05 17:21:32 -07:00