Commit Graph

334 Commits

Author SHA1 Message Date
Gregory Nutt
4800d3f545 Add syscall support for pthread_mutex_consistent() 2017-03-27 09:36:03 -06:00
Gregory Nutt
7b89a7789f Correct error in syscall.h 2017-02-27 11:18:31 -06:00
Gregory Nutt
74160ccc4e Add syscall support for fstatfs. 2017-02-17 08:46:07 -06:00
Gregory Nutt
e7404280e8 fstat(): Add syscall support 2017-02-14 10:44:01 -06:00
Gregory Nutt
10378bb10b fstat: Add fstat() support to nfs. 2017-02-13 10:07:43 -06:00
Gregory Nutt
c5a8e96dbc Add basic fstat() support. Now all that is needed is to modify ALL of the file systems. 2017-02-12 12:48:24 -06:00
Gregory Nutt
2d2fe301cb Update some comments; link counter can be uint8_t; Add a debug assertion. 2017-02-07 15:50:54 -06:00
Gregory Nutt
b758176963 stat(): Add logic to avoid infinite recursive in circular paths containing soft links. 2017-02-07 12:32:45 -06:00
Gregory Nutt
4417e74977 Soft links: Add an (untested) implementation of readlink() 2017-02-03 13:57:12 -06:00
Gregory Nutt
60ba5a5261 Soft links: Fix logic and remove kludge of last commit. Rename inode_dereference() as inode_linktarget() and make global. 2017-02-03 13:22:33 -06:00
Gregory Nutt
b39d962021 Soft links: Update Documentation, rename file, add system calls 2017-02-02 17:11:08 -06:00
Gregory Nutt
34e539926a Syscalls: Remove modsym() syscall. There is no reason why appication code could ever use symbolic information from a symbol within a kernel module. The modsym() interface is only meaningful within the kernel. 2017-01-28 11:03:06 -06:00
Gregory Nutt
4574a1ca42 Modules: Extend the module interface so that we can access symbols exported by the module. 2017-01-22 14:26:22 -06:00
Gregory Nutt
d648f9c8b4 Add task_testcancel() 2016-12-10 16:34:14 -06:00
Gregory Nutt
f132960789 Add task_setcanceltype() 2016-12-10 16:06:14 -06:00
Gregory Nutt
5fb207eb36 Add task_setcancelstate() 2016-12-10 15:16:46 -06:00
Gregory Nutt
e62b3bccd3 pthread_setcanceltype() and pthread_testcancel() do not have to be system calls if cancellation points are not enabled. 2016-12-10 07:40:48 -06:00
Gregory Nutt
18ce5496e4 Fix upper- vs. lower-case typo. 2016-12-10 07:15:33 -06:00
Gregory Nutt
1b2135a90a Add pthread_setcanceltype() and pthread_testcancel() as system calls. 2016-12-10 07:12:11 -06:00
Gregory Nutt
a1fbc2ad0d pthreads: Add pthread_cleanup_push() and pthread_cleanup_pop() 2016-12-08 09:27:13 -06:00
Gregory Nutt
35dfe25430 Remove BOARDIOC_CAN_INITIALIZE. CAN initialization is now done in the board initialization logic just like every other device driver. 2016-12-06 08:51:37 -06:00
Gregory Nutt
55dd1c87b3 Remove all references to BOARDIOC_ADCSETUP 2016-12-05 15:31:40 -06:00
Gregory Nutt
b999e63c82 Remove some references to BOARDIOC_PWMTEST and board_pwm_setup(). Still lots more. 2016-12-05 13:54:12 -06:00
Gregory Nutt
553f6d22fc Boardctl: Add a boardctrl() command to start the NX server. Refresh all NX configurations. 2016-12-01 13:52:13 -06:00
Gregory Nutt
b738a646ad sem_getprotocol() can be in C library 2016-11-02 09:29:16 -06:00
Gregory Nutt
92d3022411 Add pthread_mutexattr_get/set_protocol and non-standard sem_get/set_protocol. These may use to enable or disable priority inheritance on a single semaphore. 2016-11-02 09:05:18 -06:00
Gregory Nutt
54fd0f0a04 Fix a few more compile issues with the new wide character support 2016-10-19 08:18:46 -06:00
Gregory Nutt
bbf1627024 sys/time.h: timersub macro modified per recommendations of phreakuencies 2016-10-18 19:47:42 -06:00
Gregory Nutt
469aff0584 Fix names of pre-processor variables used in header file idempotence 2016-08-06 19:21:42 -06:00
Gregory Nutt
309480d0f9 Merge branch 'timekeeping' of bitbucket.org:nuttx/nuttx 2016-07-28 09:34:00 -06:00
Gregory Nutt
cf1d0e3222 Grrr.. more errors in same conditional compilation 2016-07-20 15:34:53 -06:00
Gregory Nutt
3218862616 Fix some backward conditional compilation 2016-07-20 15:32:56 -06:00
Gregory Nutt
bfc664af49 Fix pipe2() and mkfifo2() syscall logic 2016-07-20 15:26:54 -06:00
Gregory Nutt
e73e82a923 Move prototypes of mkfifo2() from sys/stat.h and pipe2() from unistd.h. They are non-standard and should not be in such a public place. They are not in include/nuttx/fs/fs.h (which isn't a great place either). 2016-07-20 11:57:18 -06:00
Gregory Nutt
b28fa8a609 Move pipe() and mkpipe() to nuttx/libc. Change syscalls to pipe2() and mkfifo2() 2016-07-19 14:15:26 -06:00
Gregory Nutt
671d7fae31 Add mkfifo2() and pipe2() which are just like mkfifo() and pipe(), but allow control of the size of the underlying, in-memory circular buffer 2016-07-19 13:51:05 -06:00
Gregory Nutt
246773faa7 Rename CONFIG_SCHED_TIMEKEEPING to CONFIG_CLOCK_TIMEKEEPING. That is a better compartmentalized name. 2016-07-11 06:54:02 -06:00
Gregory Nutt
f47b69e1f0 Add support for adjtime system call 2016-07-10 16:55:32 -06:00
Gregory Nutt
c326b6320a Add description of adjtime() from Linux man page 2016-07-10 16:47:06 -06:00
Max Neklyudov
8db29071da timekeeping: initial implementation 2016-07-10 16:14:25 -06:00
Gregory Nutt
34f776dce9 Move the OS intensive part of vsyslog and vlowsyslog to drivers/syslog/vsyslog.c and vlowsyslog.c. Also move lib_syslogstrem to drivers/syslog/syslogstream.c 2016-06-19 07:56:24 -06:00
Gregory Nutt
f5e5908a70 vsyslog is now a system call 2016-06-19 07:03:44 -06:00
Gregory Nutt
0c8c7fecf0 Add _ to the beginning of all debug macros to avoid name collisions 2016-06-16 12:33:32 -06:00
Gregory Nutt
37dd4e52a1 boardctl.h needs to be include-able from C++ files 2016-06-05 12:14:34 -06:00
Gregory Nutt
4b3e710af6 Add an argument to board_app_initialize() 2016-05-24 10:51:22 -06:00
Gregory Nutt
cc5a678a9e Extend boardctl() USB device control to include PL2303 serial 2016-03-25 16:01:59 -06:00
Gregory Nutt
3e4ae24387 Fix a few issues related to new USB device boardctl() commands 2016-03-25 14:23:27 -06:00
Gregory Nutt
9b9c374a83 Add basic definitions for control of USB devices via boardctl() 2016-03-25 10:52:39 -06:00
Gregory Nutt
300edb9b0f Update ChangeLog 2016-02-27 10:37:42 -06:00
Gregory Nutt
3c5cd96646 Remove definitions for unsupported protocol families and address families 2016-02-27 07:59:26 -06:00
Gregory Nutt
fdddebbffd net/: Finish IEEE802154->6LOWPAN renaming; remove PF_IEEE804154; Move 6LoWPAN menu to inside Internet Protocol Menu 2016-02-27 07:26:20 -06:00
Gregory Nutt
2f28ca86c2 Clean up some naming; rename net/ieee802154 to net/6lowpan 2016-02-26 10:08:36 -06:00
Gregory Nutt
e4e6181098 net/: IEEE 802.15-4 basic build build structure. 2016-02-25 10:43:51 -06:00
Gregory Nutt
1ed1765e1a sys/socket.h: Add IEEE802.15-4 protocol family 2016-02-25 08:19:10 -06:00
Gregory Nutt
5a590e99b9 Add SYSCALLS for pthread_setaffinity() and pthread_getaffinity() 2016-02-19 18:13:06 -06:00
Gregory Nutt
2075eb7932 Fix a typo introduced in the last commit and a file that was missed in the last commit 2016-02-19 16:03:01 -06:00
Gregory Nutt
3147dfc7d5 SMP: Add some tentative initialization logic 2016-02-10 13:49:27 -06:00
Gregory Nutt
032ad1b70b Remove clock_systimer32 and clock_systimer64. There is now only clock_systimer 2016-01-21 16:49:24 -06:00
Gregory Nutt
7db9a952bc Fix an error in conditional compilation introduced in the last set of changes 2016-01-21 13:42:34 -06:00
Gregory Nutt
f348e68069 Update to use 64-bit timer when available 2016-01-21 11:54:26 -06:00
Gregory Nutt
b1938c065d sys/time.h: Fix timersub macro; time_t is unsigned 2015-12-31 09:05:35 -06:00
Manuel Stühn
4350b0ba0c Move macros timeradd() and friends from time.h to sys/time.h. 2015-12-24 07:09:39 -06:00
Gregory Nutt
e8d0f85c8b Modules: Add mod_setsymtab to set global symtol table once. Now we can remove symbol table parameters from the insmod call. This will make implementing an NSH insmod command much easier 2015-12-13 08:10:01 -06:00
Gregory Nutt
303123deb9 Add syscall support for insmod and rmmod 2015-12-12 11:11:09 -06:00
Ken Pettit
c0b9dcf8a9 fs/hostfs: Add a special file system for use with simulator that supports access to the host file system from the simulation. From Ken Petit 2015-11-25 08:26:26 -06:00
Gregory Nutt
6230e6e199 size_t should be 64-bits on a 64-bit machine. mmsize_t should be 32-bits (unless CONFIG_MM_SMALL is selected). This commit backs out the last change to stddef.h 2015-11-23 12:03:36 -06:00
Gregory Nutt
4579f0c1fc Add a command to boardctl() to obtain a baord unique ID 2015-11-18 07:31:53 -06:00
Gregory Nutt
0f90500f72 Standardize the width of all comment boxes in header files 2015-10-02 17:48:24 -06:00
Gregory Nutt
cb9e27c3b0 Standardize naming used for public data and function groupings 2015-10-02 16:30:35 -06:00
Gregory Nutt
8a87e3ca6e Add an empty function that can serve as a placeholder for the network shutdown() function 2015-09-09 07:03:05 -06:00
Gregory Nutt
6fc449f689 Moving canned_symtab from nuttx/libc to apps/system 2015-08-23 11:33:29 -06:00
Gregory Nutt
f12692b78f Extend canned symbol table logic to work in protected build mode 2015-08-23 10:44:04 -06:00
Gregory Nutt
02306044b2 boardctl.h: Extended boardctl() commands with BOARDIOC_CAN_INITIALIZE 2015-08-18 13:23:34 -06:00
Gregory Nutt
c74dc5f83f Changes from review epoll() implementation for consistency with NuttX naming and coding style 2015-08-10 10:38:41 -06:00
Anton D. Kachalov
fd07043180 Add simple epoll' wrapper around poll'
Signed-off-by: Anton D. Kachalov <mouse@yandex-team.ru>
2015-08-10 18:15:24 +03:00
Gregory Nutt
2a7416238a Syscall fixes: Add support for Cortex-M7; mount syscall has to be suppressed if there are no mountable file systems 2015-07-21 11:20:46 -06:00
Gregory Nutt
fb70a0a95b Fix a confitional compilation error introduced with the last commit 2015-07-10 15:52:55 -06:00
Gregory Nutt
ed004be6d0 Clean up some syscall logic that has changed due to revised netdb configuration 2015-07-10 15:41:20 -06:00
Gregory Nutt
c19fd13291 gethostname() should not be the system call, uname() should and gethostname should get the host name from uname 2015-07-05 10:41:58 -06:00
Gregory Nutt
f31a96cfbf Add system calls for gethostname and sethostname 2015-07-05 08:42:32 -06:00
Gregory Nutt
6576672e09 uname: version string must hold 40 character value; strings returned by uname must always be NUL terminated 2015-07-05 06:46:00 -06:00
Gregory Nutt
049224f544 Add support for a BOARDIOC_RESET boardctl() command. Enable configuration options to support BOARDIOC_RESET for ARMv6-M and ARMv7-M 2015-07-04 10:39:24 -06:00
Stavros Polymenis
701509f9bd Add implementations of uname() and gethost(). From Stavros Polymenis. 2015-07-03 07:50:27 -06:00
Gregory Nutt
27ea02a85f Modify board_power_off() so that is is called only via boardctl() 2015-07-02 17:09:54 -06:00
Gregory Nutt
b578c98fa9 Clean up and review of header files for conformance to standards 2015-06-12 19:26:01 -06:00
Gregory Nutt
1d370178fb Add support for a union file system that can be used to overlay and merge the content of two mounted file systems. 2015-06-05 13:18:06 -06:00
Gregory Nutt
d8db596b3b POSIX message queues: Move mq_setattr() and mq_getattr() from nuttx/libc/mqueue to nuttx/sched/mqueue. Also add sysyscall support for mq_setattr() and mq_getattr(). This is necessary in protected and kernel builds because in those cases the message queue structure is protect and cannot be accessed directly from user mode code. Noted by Jouko Holopainen. 2015-06-03 09:24:17 -06:00
Gregory Nutt
c704a5289c Comment out references to fstat(). It is not yet supported. 2015-06-02 11:43:44 -06:00
Gregory Nutt
4adda9d428 Fix numerous typos in configuration variable names. Tracked down by Alan Carvalho de Assis 2015-05-23 17:08:35 -06:00
Gregory Nutt
ca29c652c3 Remove duplicate prototype of statfs from stdio.h. Belongs in sys/statfs.h only. Note by Michael Hope 2015-05-12 07:00:11 -06:00
Gregory Nutt
e78e762dd6 Add a very basic driver for the CS2100-CP Fractional-N Multipler chip. 2015-04-02 13:00:10 -06:00
Gregory Nutt
97acb5d9ee Update Documentation 2015-04-01 09:05:43 -06:00
Gregory Nutt
f6e6dacb17 Rename pwm_devinit() to board_pwm_setup(). Add CONFIG_BOARDCTL_PWMTEST that will enable calling board_pwm_setup() from boardctl(). Replace calls to pwm_devinit() in apps/examples/pwm with calls to boardctl(). In all configurations that enable the apps/examples/pwm test, make sure that boardctl() suppoprt is properly enabled. 2015-03-31 16:59:22 -06:00
Gregory Nutt
ded2001121 Rename up_nxdrvinit() to board_graphics_setup(). Add CONFIG_BOARDCTL_GRAPHICS that will enabled calls to board_graphics_setup() from boardctrl(). In apps/ and NxWidgts/, replace all calls to up_nxdrvinit with calls to boardctl(). 2015-03-31 16:20:21 -06:00
Gregory Nutt
4212b9b385 Rename adc_devinit() to board_adc_setup(). Add support to the boardctl() interface so that it can call board_adc_setup() on behalf of an application. Change apps/examples/adc to that is now calls boardctl() instead of adc_devinit() in order to initalize the ADC device. 2015-03-31 15:00:23 -06:00
Gregory Nutt
cf95d1a995 rch_tcinitialize() and arch_tcunitinitialize() renamed to board_tsc_setup() and board_tsc_teardown(). These are not long called directly by applications but only indirectly throught the crappy boardctl() OS interface. 2015-03-31 13:21:25 -06:00
Gregory Nutt
b4b40d338a boardctl(): Add a new non-standard OS interface. This is similar to a driver IOCTL call. But this is an IOCTL call directly on the board logic. This function will eventually replace all of the ad hoc OS interfaces that are current used to perform application specific intialiation and application driver test confifuration. It essentially formalizes and institutionalizes these rogue interface in to at least a single crazy call. 2015-03-31 11:25:52 -06:00
Gregory Nutt
f932b26db1 Add umount2(). umount() is now a macro that just calls umount2() with flags = 0. 2015-03-14 16:48:45 -06:00
Gregory Nutt
bcae42b653 Costmetic updates comments and style; Add NFS dependency on IPv4 2015-02-26 06:04:23 -06:00
Gregory Nutt
5afa3ec59d Add BSD and SYSV types to sys/types to simplify porting. From Max Neklyudov 2015-02-25 14:01:14 -06:00
Gregory Nutt
10852dcc25 Extend the fd_set type definition so that it can handle more than 32 descriptors (if so configured). From Max Neklyudov 2015-02-25 08:05:42 -06:00
Gregory Nutt
19eea866e6 Standardize some header files 2015-02-16 14:29:43 -06:00
Gregory Nutt
d6704a1cd7 Suffer the consequences of moving struct timeval to its correct location 2015-02-15 15:18:35 -06:00
Gregory Nutt
fd8d374bfe Move struct timveval from include/time.h to include/sys/time.h where it belongs. 2015-02-15 13:00:44 -06:00
Gregory Nutt
147042218b gettimeofday() and settimeofday(): Move gittimeofdady() from sched/clock to libc/time. All remove gettimeofday() from NuttX system calls. It is only a wrapper around clock_settime() and does not need a trap. gettimeofday() is no longer tried as a core OS interface.
gettimeofday has been decremented in POSIX 2008.  settimeofday() was never part of POSIX, but I decided to add it to libc as well just for symmetry.
2015-02-12 11:10:46 -06:00
Gregory Nutt
d7189558a6 Add ioctls for Unix domain sockets 2015-01-24 11:57:06 -06:00
Gregory Nutt
bf61008448 Add sys/un.h header file 2015-01-24 11:44:06 -06:00
Gregory Nutt
1b5e296489 Add sys/custom_file.h. Used when CUSTOM_FILE_IO is define and avoids re-definition errors about the FILE define. From Thomas Gruber via the PX4 repository 2014-12-06 12:10:08 -06:00
Gregory Nutt
7ad7163bd3 Updated comments 2014-11-29 17:39:40 -06:00
Gregory Nutt
4657f5c870 Update some Documentation and comments associated with the last ioctl change 2014-11-29 13:25:29 -06:00
Gregory Nutt
e31d5125ae Add support for a variadic ioctl() function. The ioctl() interface is a non-standard, Unix interface. NuttX has always used the older, three-parameter version. Most contemporary systems now, however, use a variadic form of the ioctl() function. Added an option to insert a shim layer to adapt the three-parameter ioctl() to use the variadic interface form. Internally, the ioctl handling is the same three-parameter logic. The only real complexity to the shim is in how the system calls must be handled. 2014-11-29 10:53:22 -06:00
Gregory Nutt
d2c8e13ed5 Backing out some logic: Remove syslog functions from syscalls 2014-10-09 06:58:23 -06:00
Gregory Nutt
bbc658930a Passing va_list in syscall does not work. Temporarily moved syslog and lowsyslog into kernel code and access via a system call. Need to revisit. Will probably need to move all of syslog back from fs/syslog to libc/syslog 2014-10-08 20:12:52 -06:00
Gregory Nutt
323084f32f Add syslog system calls 2014-10-08 19:37:10 -06:00
Gregory Nutt
87eb1d47ed Fix some recently introduced typos, build problems, and warnings 2014-10-05 16:58:52 -06:00
Gregory Nutt
5201acb71c Add system calls for AIO kernel functions 2014-10-05 15:59:02 -06:00
Gregory Nutt
032fbb7ace Add pread(0 and pwrite() system calls 2014-10-04 07:31:45 -06:00
Gregory Nutt
1b2729e35e More testing, bugfixes and integration of VFS-based named semaphores 2014-09-28 17:30:42 -06:00
Gregory Nutt
242b34cf46 Create a build structure that will (eventually) support using the VFS to manage named semaphores 2014-09-28 12:19:01 -06:00
Gregory Nutt
5efd5738e9 Flesh out basic logic for shmget() 2014-09-23 10:42:18 -06:00
Gregory Nutt
a73a3ef99f Add shared memory initializatin logic 2014-09-23 08:46:31 -06:00
Gregory Nutt
29075cf666 Add system calls for shared memory interfaces 2014-09-22 15:24:09 -06:00
Gregory Nutt
18ce64d61e Add the build framework and skeleton files for the shared memory feature (no logic yet provided) 2014-09-22 14:53:56 -06:00
Gregory Nutt
b660a708d4 Add shared memory definitions, types, prototypes 2014-09-22 09:29:37 -06:00
Gregory Nutt
925fc9ad81 First round of changes to get the ELF configuration building again 2014-09-16 15:37:05 -06:00
Gregory Nutt
31824f5b53 execl() is not a system interface. It belongs in libc and should not have a system call associated with it. 2014-09-15 10:17:04 -06:00
Gregory Nutt
282fe4aa10 exevc, execvl, posix_spawn, and posix_spawnp were not properly integrated as system calls. 2014-09-12 12:47:20 -06:00
Gregory Nutt
8b082a167b Add SYSCALL support for pgalloc() 2014-09-02 08:29:44 -06:00
Gregory Nutt
e3ff0689bb Rename CONFIG_NUTTX_KERNEL to CONFIG_BUILD_PROTECTED; Partially integrate new CONFIG_BUILD_KERNEL 2014-08-29 14:47:22 -06:00
Gregory Nutt
beaa2e1c97 include/sys/syscall.h: System definitions should depend on CONFIG_LIB_SYSCALL not CONFIG_NUTTX_KERNEL 2014-08-28 17:03:54 -06:00
Gregory Nutt
a2463148fc Can't used task_create() if address environments enabled 2014-08-27 14:19:41 -06:00
Gregory Nutt
716aec39bf Cosmetic 2014-08-17 09:45:38 -06:00
Gregory Nutt
caba61999a Remove CONFIG_DISABLE_CLOCK 2014-08-07 12:35:24 -06:00
Gregory Nutt
2ef656c227 More removal of EXTERN on function prototypes 2014-07-24 15:04:50 -06:00
Gregory Nutt
fbc9f79fc0 sockio.h needs to include netinet/in.h for struct in_addr 2014-06-03 10:10:54 -06:00
Gregory Nutt
3a1324741a More trailing whilespace removal 2014-04-13 14:32:20 -06:00
Gregory Nutt
cbb5e4889b Add support for the SO_LINGER socket option. Based on logic from Jason Jiang. Utestested on initial commit 2014-01-13 11:58:45 -06:00
Gregory Nutt
752068073a Forgot to add stpcpy.c in last commit 2014-01-10 07:09:59 -06:00
Gregory Nutt
8e1b493786 Fix some of the SIZE_MAX definitions updated in a recent commit 2014-01-08 08:25:46 -06:00
Gregory Nutt
c5f9b8768e Add type rsize_t and function gets_s() 2014-01-07 16:27:45 -06:00
Gregory Nutt
5a8517b849 Add Z16F NSH configuration 2014-01-01 12:40:18 -06:00
Gregory Nutt
1da566f27b Make sure that the Z16F build still builds and runs 2014-01-01 10:29:44 -06:00
Gregory Nutt
715177d861 Add sem_timedwait to syscalls 2013-12-28 12:04:39 -06:00
Gregory Nutt
7aff059fd0 Move sleep() and usleep() from sched/ to libc/unistd/. These functions now are simple wrappers for nanosleep(). Remove sleep() and usleep() from system calls; add nanosleep() to system calls 2013-12-13 07:57:13 -06:00
Gregory Nutt
45a4eba015 SAMA5D3x-EK NAND: Integrate SAMA5 NAND support into SAMA5D3x-EK board support 2013-11-25 12:10:24 -06:00
Gregory Nutt
6e7c9b93c6 fs/procfs: Add a tiny, primitive procfs file system. Might get more interesting in the future 2013-11-13 15:59:14 -06:00
Gregory Nutt
926e91555d VS1053 worker thread stack size is now configurable; Worker thread is named via pthread_setname_np(). From Ken Pettit 2013-11-10 11:03:19 -06:00
Gregory Nutt
41f0c86cad Optimized sendfile() from Max Holtzberg 2013-09-28 14:47:49 -06:00
Gregory Nutt
72164a6f85 More references to SYS_oneixt vs SYS_on_exit noted by Ken Pettit 2013-05-17 14:45:21 -06:00
Gregory Nutt
bec2c3e162 Add system/flash_eraseall NSH command 2013-05-01 07:45:34 -06:00