Commit Graph

3807 Commits

Author SHA1 Message Date
zhuyanlin
57b91a8cfc include/nuttx/kmalloc.h: Add {kumm/kmm}_calloc API. Add calloc API for manage user memory and kernel memory in Flat Build/Kernel Build without kernel heap. 2018-08-27 05:55:09 -06:00
Xiang Xiao
439aac1449 include/nuttx/compiler.h: fix warning: __cplusplus is not defined. Some gcc derived compiler do not define __cplusplus 2018-08-27 05:53:16 -06:00
Xiang Xiao
c139478f60 nclude/nuttx/fs/binfs.h: Fix warning: Type defaults to 'int' in declaration of 'mountpt_operations' 2018-08-27 05:50:52 -06:00
Xiang Xiao
1d9546ac1b include/crc64.h: fix warning: integer constant is too large for its type 2018-08-27 05:47:59 -06:00
Gregory Nutt
05faba2514 include/nuttx/fs/fs.h: ... conflicting types for file_fstat(). 2018-08-26 16:13:09 -06:00
dongjianli
23f14c2660 net/usrsock: Add the listen/accept/getpeername/ioctl support 2018-08-26 15:15:48 -06:00
Xiang Xiao
4c61565bbc include/nuttx/net/ethernet.h: Remove CONFIG_NET_ETHERNET guard 2018-08-26 14:55:47 -06:00
dongjianli
b48804cfc2 net/netdev/netdev_ioctl.c: Add si_ioctl callback and net_ioctl_arglen so usrsock could forward the ioctl to the remote end 2018-08-26 14:54:26 -06:00
Xiang Xiao
3eedabfded net/socket/getsockname.c: Add psock_getsockname function 2018-08-26 14:43:13 -06:00
Xiang Xiao
bcf9360e5f Move psock check from [get|set]sockopt to psock_[get|set]sockopt 2018-08-26 14:25:54 -06:00
Gregory Nutt
655be281e6 include/nuttx/compiler.h, include/poll.h: Add logic to determine if the compiler supports anonymous structures and unions. 2018-08-26 14:20:58 -06:00
dongjianli
56883eef3b fs/vfs/fs_poll.c: Add poll use in kernel space. 2018-08-26 13:44:07 -06:00
Xiang Xiao
3f50451046 fs/vfs/fs_fcntl.c, net/socket/net_dupsd.c, and net/socket/net_vfcntl.c: Add file_fcntl, psock_fcntl, and psock_dupsd for use within the kernel. 2018-08-26 13:31:18 -06:00
ligd
aa52c457cc fs/vfs/fs_fstat.c: Add file_fstat() function for internal OS use. 2018-08-26 13:26:37 -06:00
Xiang Xiao
ead2c40cd4 Squashed commit of the following:
drivers/serial/uart_16550.c: Support 16550 auto hardware flow control

    drivers/serial/uart_16550.c:  Add configuration option CONFIG_16550_SUPRESS_INITIAL_CONFIG.  This is identical to the standard configuration in arch/Kconfig CONFIG_SUPPRESS_UART_CONFIG, but with scope of only the 16550 driver.
2018-08-26 11:37:16 -06:00
Xiang Xiao
46e47c8dcf Squashed commit of the following:
drivers/serial/uart_16550.c:  Add a configuration, analogous to the STM32 configuration option, to suppress the NuttX standard re-ordering for /dev/ttySN for special case of the 16550 UART.

    config/serial: UART 16550: Add CONFIG_SERIAL_UART_ARCH_MMIO option so the a memory mapped device doesn't need to provide uart_getreg() and uart_putreg() implementations.

    u16550_txempty() should check UART_LSR_TEMT to avoid some data left in the transmit FIFO
2018-08-26 11:17:33 -06:00
ligd
11f8dc735c Squashed commit of the following:
drivers/serial:  Add Ctrl-C/Ctrl-X support.  This is an initial working implementation that still requires that several details be resolved.

    sched/task/task_start.c: Add default signal action to SIGKILL.
2018-08-26 08:49:08 -06:00
xuanlin
7e63b0b288 sched/wqueue, libs/libc/wqueue, configs: Remove work queue polling delay to simplify the code logic and save the power. 2018-08-25 14:58:07 -06:00
ligd
631071cded Squashed commit of the following:
sched/wqueue:  Modify high priority work queue to support multiple threads.

    sched/wqueue and libs/libc/wqueue:  workqueues don't need set global data to zero since .bss is cleared automatically.  Removing this unnecessary initialization also avoids the loss the work items queued before initialization.
2018-08-25 14:52:13 -06:00
Gregory Nutt
3f1869ea9d Rename CONFIG_ARCH_HAVE_TRIGGER_HOOK to CONFIG_ARCH_HAVE_IRQTRIGGER 2018-08-25 09:10:30 -06:00
Gregory Nutt
9bc951a335 Rename devif_loopback_out to devi_loopback 2018-08-25 08:33:21 -06:00
DisruptiveNL
cd2ced4d9a drivers/sensors and configs/nucleo-l476g: Add support for LSM303AGR and LSM6DSL sensors 2018-08-25 08:19:31 -06:00
Gregory Nutt
3bf96c8e7e net/arp: Improve arp_find() commit 9774d35010 to reduce the amount and frequency of data copies. 2018-08-25 07:12:21 -06:00
zhuguangqing
d38be46655 sched/irq: Add support interrupt chains in NuttX. IRQ chain is very useful in these cases: (1) Multiple hardware connect to the same request line(e.g. PCI), (2) Need multiple driver to support one hardware block (like Linux MFD) 2018-08-24 15:10:23 -06:00
Xiang Xiao
149748e4ed drivers/net: drivers/net: Add support for Microchip LAN91C111 driver 2018-08-24 11:07:07 -06:00
Xiang Xiao
fc194cf2ec drivers/timers: Add a new method to the struct oneshot_operations_s interface to get the current time from a oneshot timer driver (if it is available from the lower half) 2018-08-24 10:21:29 -06:00
Xiang Xiao
a6c68d233d drivers/timers: Add maxtimeout method to the struct timer_ops_s interface 2018-08-24 10:16:17 -06:00
Xiang Xiao
3af35699b9 include/nuttx/clock.h, sched/sched: Support the CPU load measurement using timer_lowerhalf_s interface 2018-08-24 10:10:57 -06:00
Xiang Xiao
0074afa0ac net/netdev: add devif_loopback_out() to check the loopback case where a packet is being sent to itself. Modify the net driver to call this function in this case. This function will simply re-inject the packet back into the network and the network driver will not put anything on the wire. 2018-08-24 09:21:33 -06:00
ligd
fb90f821fb include/nuttx/arch.h: Add architecture-specific prototypes for conversions between physical and virtual address. 2018-08-24 08:40:45 -06:00
Xiang Xiao
430bf16f1e Squashed commit of the following:
include/nuttx/arch.h:  Add prototype for an architecture-specific up_trigger_irq function
    arch/, include/nuttx, sched/sched:  Add the garbage collection hook so each architecture can do custom memory cleanup if necesary.
    arch/Kconfig:  Add configureation CONFIG_ARCH_GNU_NO_WEAKFUNCTIONS to suppress use of weak functions.  Some gnu derived toolchains do not support weak symbols
2018-08-24 08:30:01 -06:00
dongjianli
0df5e56e20 include/nuttx/arch.h: Add prototype for an architecture-specific up_trigger_irq function 2018-08-24 08:25:06 -06:00
Xiang Xiao
36b46a6a40 arch/ and task/sched: vfork operation needs to allocate and copy the task argument too. Also correction of the address correction cannot depend on the stack pointer since it is not available in all architectures. Rather callculate the offset from the stack allocation pointer 2018-08-24 07:43:00 -06:00
Gregory Nutt
e90f0403a6 binfmt/: Mostly cosmetic changes from review of a previous commit. 2018-08-24 06:10:50 -06:00
Gregory Nutt
9157422312 include/dsp.h: Add extern C support for use with C++ 2018-08-23 12:54:13 -06:00
xuanlin
2c93467436 pthreads: Add support static pthread stack. Add standard pthread_attr_setstack() and pthread_attr_getstack(). In all cases where the stack is released, add check to see which allocator must be used to free the stack: The user or the kernel allocator. 2018-08-23 09:49:20 -06:00
Xiang Xiao
86eef8ce3a mm/: add mm_heapmember function and reimplement kmm_heapmember base on mm_heapmember since this function is very useful if multiple heaps exist. 2018-08-23 09:38:49 -06:00
Xiang Xiao
377eb30129 binfmt: Add binfmt_initialize(). All binary formats are now registered centrally vs. in board-specific logic. This simplifies the usage of the binfmt subsystem. 2018-08-23 09:09:39 -06:00
Xiang Xiao
e2ccce1f2e apps/system/system/system.c: Add 'const' to make function prototype compatible with OpenGroup.org requirement 2018-08-23 06:40:59 -06:00
Gregory Nutt
07ef3fe018 Another update to the coding standard; Add some comments detailing the POSIX non-compliance in include/signal.h 2018-08-21 15:27:37 -06:00
Gregory Nutt
f20a2b4dcd include/sys/param.h: Add a dummy sys/param.h header file. This is not a standard file but is used by other systems and having the dummy file may minimize some porting efforts. 2018-08-19 08:24:30 -06:00
Gregory Nutt
ed4aae0fe0 include/endian.h and libs/libc/endian: Add support for endian.h. 2018-08-19 07:44:04 -06:00
Gregory Nutt
0e5b02552a inclued/stdio.h: popen()/pclose() are not available in KERNEL mode because they depend on task_spawn() which is not available in KERNEL mode. 2018-08-17 16:06:01 -06:00
Gregory Nutt
4dac881e24 include/stdio.h: Add prototypes for popen() and pclose(). Actual implementation is in apps/system/popen() 2018-08-17 10:40:59 -06:00
ichael Jung
aad8f6e45f drivers/usbdev/cdcecm.c: Adds USB Device Support for CDC/ECM 2018-08-16 08:49:11 -06:00
Gregory Nutt
4a724b1f3c net/: Remove all references to CONFIG_NET_USER_DEVFMT. That feature is now unconditionally enabled. This was done because (1) the feature does not require very much additional memory, and (2) it causes confusion in the configuration due to the additional complexity. And network drivers that fail to zero the device structure interface name field (d_ifname) because calling netdev_register() will, however, get a nasty surprise. 2018-08-14 08:01:52 -06:00
Gregory Nutt
ef3abe1423 Add missing function names in function headers. 2018-08-13 15:53:15 -06:00
Gregory Nutt
8c61c2f31b Remove trailing spaces at the end of lines. 2018-08-13 07:39:38 -06:00
Gregory Nutt
25fa50d504 fs/proc and sched/environ: Add support for a procfs entry that will permit examining the environment of any task. 2018-08-10 10:16:39 -06:00
Gregory Nutt
3973640fff Update some comments. Remove references to non-existent CONFIG_MAX_TASK_ARG. 2018-08-08 17:06:46 -06:00