Commit Graph

738 Commits

Author SHA1 Message Date
Gregory Nutt
e568253eb3 Update README, some comments, and fix some spacing. 2017-01-07 10:36:18 -06:00
Pierre-noel Bouteville
562fa6b400 Add debug assertion in libdtoa to catch attempts to use floating point output formats from within an interrupt handler. That will cause assertions or crashes downstream because __dtoa will attempt to allocate memory. 2017-01-06 15:45:03 -06:00
Gregory Nutt
0b52e6f571 Font cache: Replace fixed-size array with variable size link list. 2017-01-06 09:07:25 -06:00
Gregory Nutt
8ce1fdaab0 Add an attribution to the scanset addition to sscanf() 2016-12-17 16:18:04 -06:00
Author: Aleksandr Vyhovanec
7be1b86a81 Add scansets to the scanf function. Enabled CONFIG_LIBC_SCANSET option. 2016-12-17 14:39:19 -06:00
Gregory Nutt
c83da3c48f Remove minnsh configurations and support logic: up_getc() and lowinstream.
This was an interesting exercise to see just how small you could get NuttX, but otherwise it was not useful:  (1) the NSH code violated the OS interface layer by callup up_getc and up_putc directly, and (2) while waiting for character input, NSH would call up_getc() which would hog all of the CPU.  NOt a reasonably solution other than as a proof of concept.
2016-12-13 18:01:23 -06:00
Gregory Nutt
5d99a37ab7 Update user manual 2016-12-11 13:40:26 -06:00
Gregory Nutt
d648f9c8b4 Add task_testcancel() 2016-12-10 16:34:14 -06:00
Gregory Nutt
50a25c3fde Forget to add files before last commits 2016-12-10 16:12:35 -06:00
Gregory Nutt
f132960789 Add task_setcanceltype() 2016-12-10 16:06:14 -06:00
Gregory Nutt
4c68c93f47 Forgot to add some files in the last commit. 2016-12-10 07:41:56 -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
7fce8022c6 Finishes all cancellation point logic 2016-12-09 16:50:34 -06:00
Gregory Nutt
16be9b332e More cancellation points 2016-12-09 15:17:58 -06:00
Gregory Nutt
7c4e3e21b8 Allow option to enable IP address conversions even when the IP address family is not supported. 2016-12-04 09:06:08 -06:00
Eunbong Song
4545af3249 sleep() was returning remaining nanoseconds (kind of), instead the remaining seconds. 2016-11-15 06:47:59 -06:00
Juha Niskanen
b7ed12ebd3 Patch brings strtol() and related functions more conformant with POSIX. Corner cases like strtol(-2147483648, NULL, 10) now pass clang -fsanitize=integer without warnings. 2016-11-10 06:18:42 -06:00
Gregory Nutt
796969f6b6 Update TODO. Provide do-nothing stubs for mutex attribute interfaces if features not enabled. pthread_cond includes a signaling semaphore and should call sem_setprotocol. 2016-11-05 11:06:52 -06:00
Gregory Nutt
b0dffdc2ca Fix a number of header files with mismatched 'extern C {' and '}' 2016-11-05 07:25:05 -06:00
Gregory Nutt
73fc186beb sem_setprotocol: Handle a case of missing proxy for sem_setprotocol. Reorder so that (1) this error is avoided, and (2) >No proxy is needed if priority inheritance is not enabled. 2016-11-03 18:51:38 -06:00
Gregory Nutt
4c8ec0d2ca include/nuttx/semaphore.h: Fix broken macros 2016-11-03 12:49:44 -06:00
Gregory Nutt
d5b4d848d3 Move protoypes for the non-standard include/semaphore.h file to the non-standard include/nuttx/semaphore.h with the other non-standard semaphore interfaces. 2016-11-02 14:43:03 -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
14e06a3ce3 libc/pthread: Rename long files so that they are more readable 2016-11-02 07:37:56 -06:00
Gregory Nutt
123c520db4 Correct time initialization for the case where time is initialized from settings in the .config file. The correct range for month (tm_mon) internally is 0-11, not 1-12 as it is in the .config file. 2016-10-27 08:36:24 -06:00
Gregory Nutt
0967864c92 Correct clock initialization. The correct range for the month is 0-11 but is entered as 1-12 in the .config file 2016-10-27 08:32:23 -06:00
Gregory Nutt
57ad019fba Revert "Correct a problem in clock_gettime(CLOCK_REALTIME, &time); which is ahead by 1 month of the specified CONFIG_START_MONTH"
I don't believe this change is correct in general.  Nomralling clock_isleapyear() is called with tm_mon which is in the range of 0-11.  That change would be bad for that range.  It would make sense for a range of 1-12, but that is not how tm_mon is defined.

This reverts commit 1796a25e53.
2016-10-27 08:20:16 -06:00
Marc Rechté
1796a25e53 Correct a problem in clock_gettime(CLOCK_REALTIME, &time); which is ahead by 1 month of the specified CONFIG_START_MONTH 2016-10-27 07:10:36 -06:00
Gregory Nutt
177239feae sscanf: Use strtof() instead of strtod() if a short floating point value was requested. The should help performance with MCUs with 32-bit FPU support 2016-10-22 13:42:43 -06:00
Gregory Nutt
d08596a653 libc/stdlib: Fix a few minor coding style issues 2016-10-22 13:27:56 -06:00
Gregory Nutt
41137b82fa Add strtold() 2016-10-22 13:02:55 -06:00
Gregory Nutt
9438c42fff strtof: Also make sure that all integer values use in expressions are cast to float 2016-10-20 13:06:55 -06:00
Gregory Nutt
e30a47ba46 libc: Make sure that all constant floating point values have F suffix in strtof() 2016-10-20 13:03:15 -06:00
Gregory Nutt
2b22666554 Forgot to add a file before the last commit 2016-10-20 12:57:27 -06:00
Gregory Nutt
30ab01b1d8 strtof: Add strtof() as simply a compy of strtod with types and limits changed 2016-10-20 12:07:12 -06:00
Gregory Nutt
97b3240737 Minor changes from review of last PR 2016-10-19 11:50:19 -06:00
Gregory Nutt
8039173c9e Merged in david_s5/nuttx/upstream_local_fix_to_greg (pull request #153)
DO NOT MERGE Until Alan Verifies this -
2016-10-19 17:44:52 +00:00
David Sidrane
b1ed7910f0 Allows c++ code to compile with or without CONFIG_LIBC_LOCALE
and will generate a link error if CONFIG_LIBC_LOCALE is not defined
and setlocale is referneced. With CONFIG_LIBC_LOCALE defined
setlocale will act as if MB string is not supported and return
"C" for POSIX. C and ""
2016-10-19 06:49:19 -10:00
Gregory Nutt
54fd0f0a04 Fix a few more compile issues with the new wide character support 2016-10-19 08:18:46 -06:00
Alan Carvalho de Assis
b852bb3403 Add iswctype, towlower, towupper and wcsftime functions 2016-10-19 07:49:33 -06:00
Gregory Nutt
890a9eb45d Fix a few wide character build issues 2016-10-18 19:11:09 -06:00
Alan Carvalho de Assis
dfdde741e3 C library: Add wctype.h; Move lib_wctype.c to libc/wctype 2016-10-18 18:24:58 -06:00
Alan Carvalho de Assis
4d39b513b5 Add functions wcrtomb, wcslcpy, wcsxfrm, wctob, wctomb, wctype, localeconv, strcoll, strxfrm 2016-10-18 18:15:54 -06:00
Alan Carvalho de Assis
402b876869 Include wchar.h to lib_libvsprintf.c to fix compilation error 2016-10-18 13:32:03 -06:00
Alan Carvalho de Assis
f01c5b79fc C library: Add functions btowc, mbrtowc, mbtowc, wcscmp, wcscoll, wmemmove 2016-10-18 08:05:28 -06:00
Gregory Nutt
0249f3271e C library: Add setlocale to libc.csv 2016-10-17 17:15:19 -06:00
Alan Carvalho de Assis
5354bc1dc7 Add wcslen, wmemchr, wmemcmp, wmemcpy and wmemset to NuttX 2016-10-17 16:02:08 -06:00
Gregory Nutt
84049a19ba C library: Add a dummy setlocale() function to avoid drawing the function from newlib 2016-10-17 09:45:12 -06:00
David Sidrane
7ee82c0168 Fixes sscan %sn where strlen(data) < n 2016-10-15 06:31:35 -10:00
Sebastien Lorquet
aed8a602b8 stdio: Add support for remove() 2016-08-25 08:40:34 -06:00
Gregory Nutt
6a58f046e6 CONFIG_LIBC_DIFFTIME is no longer used, but was still in Kconfig file. Noted by Sebastien Lorquet 2016-08-25 08:09:23 -06:00
Sebastien Lorquet
51596dc457 Updata difftime. Add a version of difftime for the case where the platform does not support type double 2016-08-25 08:00:50 -06:00
Sebastien Lorquet
a626ba5b70 libc/time: This commit adds the difftime() function. Since the function returns a double, I have isolated it in a CONFIG_LIBC_DIFFTIME option (It also depends on the toolchain-dependent CONFIG_HAVE_DOUBLE so is not available on tiny platforms). 2016-08-24 15:43:57 -06:00
Gregory Nutt
67851849da Upate ChangeLog 2016-08-22 10:31:52 -06:00
Gregory Nutt
60b70f7dbb Make xorshift128 re-entrant so that we do do have to suffer the overhad of serialization controls. 2016-08-21 07:47:53 -06:00
Gregory Nutt
757023a909 XorShift128: Add some protection to handle the case where this logic could be called from the interrupt level. 2016-08-20 17:27:41 -06:00
Gregory Nutt
6f833be9d5 Separate XorShift128 PRNG from /dev/urandom and make it generally available. 2016-08-20 11:36:02 -06:00
Gregory Nutt
6e5010e0d0 floor(), floorf(), and floorl(): Fix logic error. Was not correctly handling negative integral value. 2016-08-11 18:21:29 -06:00
Gregory Nutt
155055d564 strtod(): Was not returning endptr on error conditions. 2016-08-11 18:20:25 -06:00
Gregory Nutt
0e35bad987 Update some comments 2016-08-11 10:12:04 -06:00
Gregory Nutt
986c568d34 Correct file header comments 2016-08-07 10:04:02 -06:00
Gregory Nutt
4daa553328 lib_asinl.c edited online with Bitbucket. Add missing # on endif. Noted by David Alessio. 2016-07-31 16:47:25 +00:00
David S. Alessio
c145159c6b This commit fixes the following libc/math issues:
1) asin[f l]() use Newton’s method to converge on a solution. But Newton’s method converges very slowly (> 500,000 iterations) for values of x close to 1.0; and, in the case of asinl(), sometimes fails to converge (loops forever). The attached patch uses an trig identity for values of x > sqrt(2). The resultant functions converge in no more than 5 iterations, 6 for asinl().

2) The NuttX erf[f l]() functions are based on Chebyshev fitting to a good guess. The problem there’s a bug in the implementation that causes the functions to blow up with x near -3.0. This patch fixes that problem. It should be noted that this method returns the error function erf(x) with fractional error less than 1.2E-07 and that’s fine for the float version erff(), but the same method is used for double and long double version which will yield only slightly better precision. This patch doesn't address the issue of lower precision for erf() and erfl().

3) a faster version of copysignf() for floats is included.
2016-07-30 15:43:56 -06:00
Gregory Nutt
d36d9d61be Trivial spacing change 2016-07-28 09:34:56 -06:00
Gregory Nutt
2b3bc90ba5 Correct a comment 2016-07-27 09:09:40 -06:00
Pierre-noel Bouteville
d4f3954b35 lib_dumpbuffer: Now prints a large on-stack buffer first to avoid problems when the syslog output is prefixed with time. 2016-07-27 08:40:46 -06:00
Gregory Nutt
fd42f898f6 libc: Add mkfifo() and pipe() to libc CSV file 2016-07-22 11:02:51 -06:00
Gregory Nutt
7370d3171a Move include/nuttx/lib.h to include/nuttx/lib/lib.h 2016-07-21 14:05:44 -06:00
Gregory Nutt
779d3f98ed Move include/nuttx/math32.h to include/nuttx/lib/math32.h 2016-07-21 14:00:15 -06:00
Gregory Nutt
23a876ab9c Move include/nuttx/math.h to include/nuttx/lib/math.h 2016-07-21 13:58:09 -06:00
Gregory Nutt
72a45c82b7 Move include/nuttx/regex.h to include/nuttx/lib/regex.h 2016-07-21 13:42:18 -06:00
Gregory Nutt
ee9c66186c ramdisk.h moved from include/fs/nuttx/ to include/nuttx/drivers. 2016-07-20 14:02:18 -06:00
Gregory Nutt
4b4dbc79a2 Move driver related prototypes out of include/nuttx/fs/fs.h and into new include/drivers/drivers.h 2016-07-20 13:15:37 -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
5a35abb488 Improve some comments 2016-07-17 08:31:02 -06:00
Gregory Nutt
07e20479ad /dev/random: Add configuration option to use the congruential PRNG. 2016-07-17 07:56:25 -06:00
Gregory Nutt
ffd3a31649 Rename lib_rand.c to lib_srand.c 2016-07-17 07:11:09 -06:00
Gregory Nutt
95555a0199 PTY: Add ioctls to support locking and unlocking of the slave. LIBC: Add implementation of unlockpt() 2016-07-15 09:39:33 -06:00
Gregory Nutt
6139860c0b PTY: Added PTY IOCTL command definitions. Add support for TIOCGPTN. LIB: Implement ptsname() and ptsname_r() 2016-07-15 08:33:47 -06:00
David Alessio
912ad2d345 Fix bug in logf() algorithm that caused erroneous INFINITY results. 2016-07-14 20:15:37 -06:00
Gregory Nutt
96edfdb4c7 libm: Fix/improve range checks in lib_expi() and lib_expif(). 2016-07-12 09:59:10 -06:00
Gregory Nutt
3bc504b685 Per comment from David Alession: M_E128 will never be used since it is greater than FLT_MAX. 2016-07-12 09:59:08 -06:00
Gregory Nutt
dfe8596e53 Cosmetic 2016-07-11 14:15:34 -06:00
Gregory Nutt
f9d4b50207 If there are no streams, let printf() fall back to use syslog() for output. 2016-07-11 13:52:21 -06:00
Gregory Nutt
29eae10232 lib_expi/f(): Exponental table should be 'const'. Dimension was wrong for float version. 2016-07-11 13:53:31 -06:00
Gregory Nutt
6a081e118d Add guess at missing lib_libexpif.c file 2016-07-11 13:43:43 -06:00
David Alessio
261358f1f5 This change should significantly improve the performance of single precision floating point math library functions. The vast majority of changes have to do with preventing the compiler from needlessly promoting floats to doubles, performing the calculation with doubles, only to demote the result to float. These changes only affect the math lib functions that return float. 2016-07-11 07:02:50 -06:00
Gregory Nutt
830af912a1 Add sig_raise() 2016-07-04 09:32:36 -06:00
Gregory Nutt
bde90de12f Fix libc/zoneinfo build 2016-06-30 16:20:43 -06:00
Gregory Nutt
aa96a1d2ec Move the TZ/Olson zoneinfo data set from apps/system/zoneinfo to libc/zoneinfo 2016-06-30 15:40:37 -06:00
Gregory Nutt
67ea112767 Update ChangeLog 2016-06-27 13:08:40 -06:00
Gregory Nutt
2a19e16eb0 libc/hex2bin: Move the portable library portion of apps/system/hex2bin to nuttx/libc/hex2bin where it can be shared with the OS internals. 2016-06-27 11:22:38 -06:00
Gregory Nutt
7f16548f57 Replaces last three commits. Does the same thing, but does it in a way that does not change the usage model. 2016-06-21 05:26:08 -06:00
Gregory Nutt
b82743612f Even the 'unconditional' _alert() macro should be disabled if all debug features are disabled. 2016-06-20 22:38:54 -06:00
Gregory Nutt
505ca542e8 Remove some last traces of lowvsyslog that were missed; Add a SYSLOG emergency channel for handling assertion output more cleanly 2016-06-20 16:11:50 -06:00
Gregory Nutt
2a751068e6 Without lowsyslog() *llerr() is not useful. Eliminate and replace with *err(). 2016-06-20 12:44:38 -06:00
Gregory Nutt
43eb04bb8f Without lowsyslog() *llinfo() is not useful. Eliminate and replace with *info(). 2016-06-20 11:59:15 -06:00
Gregory Nutt
d40a473f72 Without lowsyslog() *llwarn() is not useful. Eliminate and replace with *warn(). 2016-06-20 09:37:08 -06:00
Gregory Nutt
2b445ddccc Remove lowsyslog(). The new syslog() includes all of the functionality of lowsyslog(). No longer any need for two interfaces. 2016-06-20 08:57:08 -06:00
Gregory Nutt
fa365e85f5 Update some cmoments 2016-06-20 06:11:22 -06:00
Gregory Nutt
7dd66a4620 Need to pass va_list as a reference to vsyslog. This is because va_list is a structure in some compilers and passing of structures in the NuttX sycalls does not work. 2016-06-19 14:50:00 -06:00
Gregory Nutt
5b2aa7bf99 Remove all traces of CONFIG_SYSLOG 2016-06-19 13:59:43 -06:00
Gregory Nutt
9434d3e945 There is now one-and-only-one copy of syslog_putc. It is in the SYSLOG channel logic and can redirect syslog output as needed. All former syslog_putc versions were renamed and the corresponding SYSLOG device initializaiton now calls syslog_channel() 2016-06-19 13:03:20 -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
d3b8c03a8a Fix a few missed changes from *dbg() to *err() and *vdbg() to *info() 2016-06-17 06:00:45 -06:00
Gregory Nutt
28192d3c60 Re-order some conditional compilation; up_interrupt_context() is not generally available to applications. 2016-06-16 20:10:19 -06:00
Gregory Nutt
ea8241027e syslog() will now automatically redirect output to lowsyslog() if called from an interrupt handler 2016-06-16 19:57:06 -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
24c51ec1ff Centralize definitions associated with CONFIG_DEBUG_LCD 2016-06-15 11:40:33 -06:00
Gregory Nutt
a98bc05f65 New debug macro: alert(). This is high priority, unconditional output and is used to simplify and stanardize crash error reporting. 2016-06-14 09:07:53 -06:00
Gregory Nutt
90e60513b1 New strtoul[l] functions need to include errno.h 2016-06-13 08:49:46 -06:00
Gregory Nutt
56c5da3030 Cosmetic change from review of PR53 2016-06-13 08:21:06 -06:00
Sebastien Lorquet
15c92867de Fixes for strtoul/strtoull. Fixes Issue #1 2016-06-13 15:29:05 +02:00
Gregory Nutt
5073bf1de6 Update some comments 2016-06-13 07:02:45 -06:00
Gregory Nutt
4f97f15b5e graphics/, libc/: Change some err() ERRORS to warn() WARNINGS or info() 2016-06-12 11:11:57 -06:00
Gregory Nutt
b1eb4fdd8e Rethink some recent warning removal logic 2016-06-12 07:17:04 -06:00
Gregory Nutt
cffef35644 Eliminate some warnings introduced with DEBUG changes 2016-06-11 18:09:39 -06:00
Gregory Nutt
a1469a3e95 Add CONFIG_DEBUG_ERROR. Change names of *dbg() * *err() 2016-06-11 15:50:49 -06:00
Gregory Nutt
e99301d7c2 Rename *lldbg to *llerr 2016-06-11 14:55:27 -06:00
Gregory Nutt
86b79b33cf Reserver the name 'err' for other purposes 2016-06-11 14:40:07 -06:00
Gregory Nutt
1cdc746726 Rename CONFIG_DEBUG to CONFIG_DEBUG_FEATURES 2016-06-11 14:14:08 -06:00
Gregory Nutt
a3bb764305 Add support for a warn() marco that will be between dbg() and info() in priority 2016-06-11 12:38:37 -06:00
Gregory Nutt
fc3540cffe Replace all occurrences of vdbg with vinfo 2016-06-11 11:59:51 -06:00
Gregory Nutt
3a74a438d9 Rename CONFIG_DEBUG_VERBOSE to CONFIG_DEBUG_INFO 2016-06-11 11:50:18 -06:00
Paul A. Patience
5cfffbfa62 crc64: fix error 2016-06-10 12:30:45 -04:00
Paul A. Patience
9587c551ad libc/misc: add crc64 2016-06-10 11:03:50 -04:00
Paul A. Patience
fdbbe8dc9a crc16: fix error 2016-06-10 09:13:43 -04:00
Gregory Nutt
4f81a60ef6 Add a NAN test on 'x' in asin function of lib_asin.c. Suggested by Pierre-noel Bouteville. 2016-05-31 06:31:04 -06:00
Gregory Nutt
5ef3e3e215 Replace confusing references to uIP with just 'the network' 2016-05-30 11:52:07 -06:00
Paul A. Patience
f8f7b7582c Silence some warnings 2016-05-26 14:06:13 -04:00
Gregory Nutt
ca04284750 Remove comment blocks for empty file sections 2016-05-18 13:00:36 -06:00
Gregory Nutt
4e71c4c9ef Correct some typos in comments 2016-05-18 12:49:07 -06:00
Gregory Nutt
b9c2b92b10 Add utilities to count the number of nodes in a queue 2016-04-23 13:25:46 -06:00
Alan Carvalho de Assis
7f5339ee5a drivers/sensors/h1750fvi.c: Add a character driver for Rohm Ambient Light Sensor BH1750FVI. 2016-04-15 08:16:16 -06:00
Gregory Nutt
9008308b64 Remove some block comments before empty code sections 2016-04-11 18:16:04 -06:00
Gregory Nutt
2e49111a17 Fix an error in a DEBUG assertion 2016-04-11 09:07:23 -06:00
Gregory Nutt
6653c5cbf3 Signals: Correct implementation of sigset(). It is not just signal() with a different name; it has some additional signal mask handling functionality 2016-04-11 09:04:54 -06:00
Gregory Nutt
28a4ca6713 libc/signal and include/signal.h: Rename sigset() to signal(). sigset() is the System V function; signal() is the obsoleted POSIX name. These seem to be equivalent. Neither are relevant in modern POSIX programming but the name signal() probably has better credentials. sigset() is now relegated to a #define in signal.h that makes it equivalent to signal(). 2016-04-10 14:35:45 -06:00
Kha Vo
bb09dc30a4 sigset: Fix an IAR compilation problem 2016-04-03 13:58:49 -06:00
Kha Vo
51facd904d bsearch: Fix an IAR compilation problem 2016-04-03 13:56:59 -06:00
Gregory Nutt
53a721cdd7 Fix a cloned error in both sq_cat() and dq_cat() 2016-03-23 14:48:50 -06:00
Gregory Nutt
4a962a36dd Add library functions to concatenate and move lists. Add scheduler function to merge prioritized function to merge prioritized lists (not yet used). 2016-03-23 08:00:58 -06:00
Gregory Nutt
24468128de TLS: Simplify 2016-03-11 07:17:32 -06:00
Gregory Nutt
6af9b23df5 libc/netdb: Fix some compile issues when IPv6 is enabled 2016-02-25 13:59:42 -06:00
Gregory Nutt
0fb035f76b Standardize some naming in code section comments 2016-02-21 18:09:04 -06:00
Gregory Nutt
143d287f11 Fix some missing header file inclusions and a misplaced semi-colon from recent commits 2016-02-21 11:27:55 -06:00
Gregory Nutt
f3356fee5b SMP: Add macros to CPU set manipulation to sched.h 2016-02-20 18:45:07 -06:00
Gregory Nutt
883a1adfe2 Implement sched_setaffinity() and sched_getaffinity() 2016-02-19 19:18:54 -06:00
Gregory Nutt
28d138c584 Add files that I forgot to add in the last commit 2016-02-19 17:58:47 -06:00
Gregory Nutt
a633353ec3 Add a CPU affinity set to the TCB if SMP is enable and use this CPU set as a mask for determining which CPUs the thread may run on. Add an affinity field to the attrributes to permit controlling which CPUs a pthread may run on. Implements pthread_att_setaffinity_np() and pthread_attr_getaffinity_np(). 2016-02-19 17:33:35 -06:00
Gregory Nutt
384e51cb05 Add some additional schedule instrumentation 2016-02-16 15:21:45 -06:00
Gregory Nutt
046e39e2c6 nuttx/mm and libc: Replace irqsave() with enter_critical_section(); replace irqrestore() with leave_critical_section() 2016-02-14 08:57:01 -06:00
Gregory Nutt
68ee9bcaed Refresh modules + plus minor clean-up from previous commits 2016-02-08 15:13:14 -06:00
Gregory Nutt
8a9fa634bf syslog: If syslog timestamping is enabled, don't try to get the time if the timer hardware has not yet been initialized. 2016-02-05 08:36:43 -06:00
Gregory Nutt
eac271413f Add more 32-bit math operations; Update ChangeLog 2016-01-25 11:19:25 -06:00
Gregory Nutt
047ed9e543 Add some utilities to support 64-bit math operations on platforms that do not support long long types. Not yet used anywhere 2016-01-25 09:56:00 -06:00
=?UTF-8?B?6ZmI5p6X6aOe?=
0e3cd129ae Fix some issues with strcasecmp() conditional compilation and with memccpy() return value 2016-01-24 12:54:32 -06:00
=?UTF-8?Q?Manuel_St=c3=bchn?=
2bacc40350 Fix mismatched prototype error in work_queue() 2016-01-24 12:48:24 -06:00
Gregory Nutt
9ece46e917 Costmetic update 2016-01-23 11:18:39 -06:00
Gregory Nutt
f348e68069 Update to use 64-bit timer when available 2016-01-21 11:54:26 -06:00
Gregory Nutt
a60a822ef2 Separate TEA encryption and decryption to separate files 2016-01-19 16:46:25 -06:00
Gregory Nutt
f849116a0b Add implementatino of Tiny Encryption Algorithm 2016-01-19 16:37:45 -06:00
Gregory Nutt
2a5c7e9a92 resolv.conf: Add support for OpenBSD style resolv.conf syntax where a non-standard DNS server port can be specified using a backet syntax. 2016-01-14 17:55:53 -06:00
Gregory Nutt
300d34f029 netdb: resolv.conf logic is functional 2016-01-14 15:12:42 -06:00
Gregory Nutt
1a8531c951 netdb: Extend dns_query so that it can handle multiple nameserver addresses 2016-01-14 14:18:19 -06:00
Gregory Nutt
9097425203 netdb: Separate lib_dnsclient.c into lib_dnsbind.c and lib_dnsquery.c 2016-01-14 10:30:47 -06:00
Gregory Nutt
62f04d98c1 netdb: Move DNS initialization and cache logic to separate files 2016-01-14 10:17:15 -06:00
Gregory Nutt
0889963b50 resolv.conf: Fix some basic compilation issues. Logic still not complete. 2016-01-14 08:32:20 -06:00
Gregory Nutt
a7acb45ca6 Add logic misssing from dns_add_server 2016-01-13 16:29:50 -06:00
Gregory Nutt
b112d8fddc DNS: A little more resolv.conf logic. Still not complete. 2016-01-13 16:02:23 -06:00
Gregory Nutt
8e9f884eb7 Step 1 in /etc/resolv.conf support 2016-01-13 15:06:44 -06:00
Gregory Nutt
1608b7c33f Some networking logic was used helpers from apps/netutils. Not good. Quick fix is to duplicate logic 2016-01-09 15:56:08 -06:00
Dimitry Kloper
06d83c6261 Introduce support for Atmel toolchain in-flash strings
Atmel toolchain AVR compiler provides a transparent in-flash object support using __flash and __memx symbols. The former indicates to compiler that this is a flash-based object.  The later used with pointer indicates that the referenced object may reside either in flash or in RAM. The compiler automatically makes 32-bit pointer with flag indicating whether referenced object is in flash or RAM and generates code to access either in run-time. Thus, any function that accepts __memx object can transparently work with RAM and flash objects.

For platforms with a Harvard architecture and a very small RAM like AVR this allows to move all constant strings used in trace messages to flash in the instruction address space, releasing resources for other things.

This change introduces IOBJ and IPTR type qualifiers.  The 'I' indicates that the object may like in instruction space on a Harvard architecture machine.

For platforms that do not have __flash and __memx or similar symbols IOBJ and IPTR are empty, making the types equivalent to, for example, 'const char' and 'const char*'.  For Atmel compiler these will become 'const __flash char' and 'const __memx char*'.  All printf() functions and syslog() functions are changed so that the qualifier is used with the format parameter.

From: Dimitry Kloper <dikloper@cisco.com>
2016-01-05 10:29:29 -06:00
Chris Croswhite
b73a7515b6 Small compilation issue when selecting localtime, this patch adds the correct ifdef. 2015-12-30 19:12:42 -06:00
Gregory Nutt
c1fff4706c signals: Adds a very limited, minimal implementation for SIGEV_THREAD 2015-12-30 15:01:14 -06:00
Gregory Nutt
9835eeb181 signals: Basic framework to support SIGEV_THREAD 2015-12-30 13:20:31 -06:00
Gregory Nutt
b682190f52 Rename all head files in main NuttX repository with names like *internal.h, removing the internal 2015-12-29 17:31:17 -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
e5f27f5865 Fix some conditional compilation. CONFIG_LIBC_LOCALTIME should be checked in most of the same places wehre CONFIG_TIME_EXTENDED is checked 2015-11-25 12:51:45 -06:00
Gregory Nutt
064ef4f1fb At day-of-week support to strftime() 2015-11-25 11:51:46 -06:00
Gregory Nutt
006528b144 Add support for freopen() 2015-11-22 08:39:17 -06:00
Paul A. Patience
bfc95c641f stdlib: Fix forgotten FARs 2015-11-18 14:22:43 -05:00
Gregory Nutt
e9bd8bceb4 nuttx/libc: Fix some spacing and alignment issues 2015-10-12 07:45:02 -06:00
Gregory Nutt
bb05de4b6e Remove TABs 2015-10-04 16:01:21 -06:00
Gregory Nutt
af086c40ff Remove dangling whitespace 2015-10-04 15:28:54 -06:00
Gregory Nutt
0b12dbf95d Fix some spacing problems 2015-10-04 15:04:00 -06:00
Gregory Nutt
16b32bbadd Standardize the width of all comment boxes in C files 2015-10-03 07:25:53 -06:00
Gregory Nutt
5b51a9fcdd Standardize the width of all comment boxes in C files 2015-10-02 17:43:18 -06:00
Gregory Nutt
cb9e27c3b0 Standardize naming used for public data and function groupings 2015-10-02 16:30:35 -06:00
Gregory Nutt
38e6142ae8 Make coding style more conformant, take description from OpenGroup.org, rename formal parameters to match names used on OpenGroup.org 2015-10-02 12:58:40 -06:00
Gregory Nutt
2ba224eca2 Add support for bsearch() in C library 2015-10-02 12:33:58 -06:00
Gregory Nutt
a813baef0a User workqueue, cosmetic changes 2015-09-30 14:03:55 -06:00
Gregory Nutt
4cd57e1e4e Work queues: Logic that sets the queued indication and the logic that does the actual queuing must be atomic 2015-09-30 11:04:29 -06:00
Stefan Kolb
983128e16a sscanf: Formats a, A, e, E, g, and G should be treated the same as f and F 2015-09-17 07:41:33 -06:00
Paul A. Patience
9f108b7b63 Fix issues detected by clang 2015-09-10 20:59:43 -04:00
Gregory Nutt
d0e4df9931 Update ChangeLog 2015-09-10 07:24:58 -06:00
Gregory Nutt
5058ed3ef4 Only build shutdown if CONFIG_NET=y. The warning is pretty annoying 2015-09-09 12:14:04 -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