Commit Graph

2063 Commits

Author SHA1 Message Date
Gregory Nutt
ca7486d7f3 Add link MTU size to network device structure. 2014-11-16 08:49:14 -06:00
Gregory Nutt
51adb90e9a Network: Update SLIP configuration; Fix compile issues when building SLIP only 2014-11-15 14:36:49 -06:00
Gregory Nutt
2e55db369d Network: All logic will now handle varialbe length link layer protocol headers within incoming packets. This permits use of multiple network interfaces with differing data links. For example, ETHERNET + SLIP 2014-11-15 13:13:23 -06:00
Gregory Nutt
a831ab21bc Merge remote-tracking branch 'origin/master' into llhdrlen 2014-11-15 10:04:49 -06:00
Gregory Nutt
ebb6fd1e9c Resove merge conflicts 2014-11-15 10:04:33 -06:00
Gregory Nutt
25a9005ce7 Remove use of NET_LL_HDRLEN from Ethernet drivers. Use ETH_HDRLEN instead 2014-11-15 09:05:34 -06:00
Gregory Nutt
2b758537ea Network: Misc fixes for clean complete with both Ethernet and SLIP enabled 2014-11-15 08:55:50 -06:00
Gregory Nutt
388ef8db1a Netwoek: Ada a parameter to netdev_register() to indicate the link protocol supported by the driver. Use this value to replace some logic commited yesterday 2014-11-15 08:22:51 -06:00
Gregory Nutt
64d18bfe12 NET: Fix some some more ARP/Ethernet releated configuration 2014-11-14 21:22:45 -06:00
Gregory Nutt
3576e249b5 Add driver for ST7565 that works with NHD‐C12864KGZ display. From Pierre-noel Bouteville. 2014-11-13 16:03:52 -06:00
Gregory Nutt
bb65701ccd Oops.. part of the last change will still in the editor 2014-11-12 18:33:07 -06:00
Gregory Nutt
a61802640f Defines inline functions as not instrumented - this is relevant for anyone using instrumentation. From Lorenz Meier. 2014-11-12 07:32:36 -06:00
Gregory Nutt
c23b7ec93d From Lorenz Meier: The implementation of access() as vararg macro has the issue that any function call with the same name (even in a C++ class) will match with it and result in a compile error. I have replaced it with a small function, and tried to have decent documentation as well. This resolves the compile issue, and shouldn’t have negative side effects for users of the function. 2014-11-11 11:52:24 -06:00
Gregory Nutt
6e387ee135 Add ANSI/VT100 color codes 2014-11-10 15:10:57 -06:00
Gregory Nutt
fecad1027c Update csdtio too 2014-11-06 07:11:23 -06:00
Gregory Nutt
ee22104762 Can't use formal parameter name 'template' in stdlib.h. Causes C++ compilation errors. Noted by Lorenz Meier 2014-11-06 07:00:23 -06:00
Gregory Nutt
787cd466d2 Add tmpnam() and tempnam() 2014-11-05 10:43:17 -06:00
Gregory Nutt
d13731711f Add mktemp() and mkstemp() 2014-11-05 09:39:18 -06:00
Gregory Nutt
ef82c280fd MM: Minimum memory allocation must to up to 32 if sizeof pointer is 8-bytes 2014-11-02 12:11:20 -06:00
Gregory Nutt
6bbfb2b7ca Add isatty() function. From Alan Carvalho de Assis 2014-10-27 12:29:15 -06:00
Gregory Nutt
04471aa5cb Add include/wchar.h 2014-10-27 08:28:38 -06:00
Gregory Nutt
03663a7ac4 Cosmetic changes 2014-10-27 07:57:12 -06:00
Gregory Nutt
a7a5c8cff3 Fixes to tickless operation code. From Brandon Warhurst 2014-10-23 06:41:31 -06:00
Gregory Nutt
bfc12bf3a7 ARMv7: Add support to use ITM for SYSLOG debug output 2014-10-22 09:03:00 -06:00
Gregory Nutt
f8c4c75c17 include: adds interface description for ili9341
This adds the description of the generic interface to communicate with
the ili9341 lcd single chip driver used by any displays.

The interface have to be implemented by the platform specific subdriver.
The following functions must be exported:

-select
 Select the spi device before starting an operations.

-deselect
 Deselect the spi device after operations finished and if the device was
 selected before.

-sendcmd
 Send any command to the ili9341 display driver.

-sendparam
 Send any parameter corresponding to the ili9341 display driver.

-recvparam
 Receive any parameter from the ili9341 display driver. This is only possible
 for the read commands supported by the ili9341.

-sendgram
 Send pixel data to the gram of the display. This i similar to the function
 sendparam, but pixel data operations needs another handling of how to send the
 data to the display.

-recvgram
 Receive pixel data to the gram of the display. This i similar to the function
 recvparam, but pixel data operations needs another handling of how to receive
 the data from the display.

-backlight
 Change the backlight level of the display.

Signed-off-by: Marco Krahl <ocram.lhark@gmail.com>
2014-10-20 15:15:22 -06:00
Gregory Nutt
179fabb019 Add description of work queues to the porting guide. Update comments 2014-10-14 10:21:18 -06:00
Gregory Nutt
f6d11bc2fd Back out an incorrect change 2014-10-12 11:01:57 -06:00
Gregory Nutt
872e9fce26 Cosmetic update to comments 2014-10-12 10:53:29 -06:00
Gregory Nutt
c9d7472d68 Change naming of HP work queue configuration varaibles to be symmetric with LP work queue naming 2014-10-11 17:03:44 -06:00
Gregory Nutt
b78fe7c270 Rename CONFIG_SCHED_USRWORK to CONFIG_LIB_USRWORK 2014-10-11 15:59:40 -06:00
Gregory Nutt
9292e3d9de Decouple the user-space work queue from the kernel space work queues 2014-10-11 15:50:22 -06:00
Gregory Nutt
bb1d91bd83 Make building of low-priority work queue independent of also building the high-priority work queue 2014-10-11 14:43:24 -06:00
Gregory Nutt
0566eb45f7 Fix a couple of C++ related problems in include/cxx 2014-10-11 08:40:19 -06:00
Gregory Nutt
ae3cc327c7 AIO now also supports socket transfers 2014-10-11 08:15:23 -06:00
Gregory Nutt
4a4b3ac537 Add support for multiple low-priority worker threads 2014-10-10 16:24:50 -06:00
Gregory Nutt
cf59a195ba User-mode work queue logic should not disable interrupts 2014-10-10 14:52:04 -06:00
Gregory Nutt
16a3e83258 Add support for delays of different durations in work queue processing 2014-10-10 13:21:37 -06:00
Gregory Nutt
b2cebaa9d4 Modularize starting of worker threads to better isolate individual initialization characteristics 2014-10-10 09:38:28 -06:00
Gregory Nutt
1afc9773ac Decoupling work queue data structures. This is part of the preparation to support multiple low-priority worker threads 2014-10-10 08:35:58 -06:00
Gregory Nutt
6220256a09 Repartition work queue code. Move kernel-specific parts from libc/wqueue to sched/wqueue 2014-10-10 06:22:51 -06:00
Gregory Nutt
a4d157bb2d Trivial AIO-related changes 2014-10-09 08:34:49 -06:00
Gregory Nutt
02444cfb2c Update comments and function headers 2014-10-09 07:38:38 -06:00
Gregory Nutt
d2c8e13ed5 Backing out some logic: Remove syslog functions from syscalls 2014-10-09 06:58:23 -06:00
Gregory Nutt
4efb064169 Remove non-standard, conditional syslog_enable(), instead only the required, standard setlogmask() 2014-10-09 06:09:03 -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
ec57ab6391 Implement setlogmask(); move some syslog logic from libc/syslog to fs/syslog 2014-10-08 19:08:26 -06:00
Gregory Nutt
a8399d5c6b Move syslog logic from libc/misc and libc/stdio to libc/syslog 2014-10-08 17:16:41 -06:00
Gregory Nutt
f40857c04f All NSH-related files under nuttx/configs changed to use the corrected syslog interfaces 2014-10-08 14:28:55 -06:00
Gregory Nutt
7b310711a1 Update everything under nuttx/arch to use the corrected syslog interfaces 2014-10-08 12:48:47 -06:00
Gregory Nutt
0cd7683711 Update everything under apps/ to use the corrected syslog interfaces 2014-10-08 11:34:22 -06:00
Gregory Nutt
8db42f5b54 Update ChangeLog 2014-10-08 10:48:47 -06:00
Gregory Nutt
f8ed7323c0 make standard syslog and vsyslog POSIX compliant (also modify non-standard syslog functions for compatibility). This will break a lot of things until ALL usage of syslog is updated to use the modified interfaces 2014-10-08 09:44:15 -06:00
Gregory Nutt
047deada84 Remove non-portable references to syslog from apps/examples 2014-10-08 08:33:00 -06:00
Gregory Nutt
7f36c4e97b Update some Kconfig comments; Add a upper limit on the lower priority worker thread for priority inheritance 2014-10-07 17:11:26 -06:00
Gregory Nutt
f956bd9915 Chane a type from int to int16_t for a little better packing in a structure 2014-10-07 08:36:53 -06:00
Gregory Nutt
4c7b988525 Update some comments 2014-10-07 08:34:10 -06:00
Gregory Nutt
d7843c8e24 Add support for priority inheritance on the low priority worker queue 2014-10-07 07:41:52 -06:00
Gregory Nutt
002e686991 Add ECANCELED 2014-10-06 15:05:35 -06:00
Gregory Nutt
1273be4cfc Fix a place in the memory manager where it explicitly assumes that the size of a point is 4 bytes. That is OK if the actually size is smaller but makes the heap unstable when used withthe x86_64 host simulation 2014-10-06 12:49:35 -06:00
Gregory Nutt
37cf4135c4 fs_initialize() is no longer weak 2014-10-06 11:45:35 -06:00
Gregory Nutt
d914f3ceec Major structure of file system functions to better support asynchronous I/O. Respository should not be trusted until I have a chance to verify everything 2014-10-06 10:53:25 -06:00
Gregory Nutt
52ce95b8b8 Add a AIO control container to increase the payload with OS internal stuff. 2014-10-06 08:10:02 -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
652d3ed29d Rename CONFIG_LIBC_AIO to CONFIG_FS_AIO since it is now an OS property 2014-10-05 15:44:43 -06:00
Gregory Nutt
f73a18ae39 Move all file operations from libc/aio to fs/aio. These will need to be kernel routines in order to handler issues with using file descriptors on worker thread 2014-10-05 15:33:31 -06:00
Gregory Nutt
9a1b011178 Initiail implementation of lio_listio() and rethinking of signal logic 2014-10-05 11:43:42 -06:00
Gregory Nutt
eeaae40d0c Initial implementation of aio_fsync() 2014-10-05 08:53:13 -06:00
Gregory Nutt
a4861c7cb7 Iniial implementatin of aio_cancel() 2014-10-05 08:22:39 -06:00
Gregory Nutt
c274acc48f Move AIO signal logic to a common location in aio_signal.c. Also fix several typos 2014-10-05 06:53:56 -06:00
Gregory Nutt
31cdcde73a Add definitions for SIGPOLL 2014-10-05 06:02:37 -06:00
Gregory Nutt
e8cef249cc Initial implementation of aio_write() 2014-10-04 17:30:24 -06:00
Gregory Nutt
fa28c51c75 Fleshes out aio_read implementation 2014-10-04 14:44:57 -06:00
Gregory Nutt
9e8a4dd229 Add skeleton file for eventual implementation of aio_read() 2014-10-04 14:22:00 -06:00
Gregory Nutt
920680041a Add aio.h header file 2014-10-04 09:59:44 -06:00
Gregory Nutt
032fbb7ace Add pread(0 and pwrite() system calls 2014-10-04 07:31:45 -06:00
Gregory Nutt
948be542a1 Add pread() and pwrite() 2014-10-04 07:31:13 -06:00
Gregory Nutt
4764c95670 Implement creat() as a macro 2014-10-04 06:44:57 -06:00
Gregory Nutt
73afa66228 Cosmetic update to comments/README 2014-10-01 15:02:49 -06:00
Gregory Nutt
71b574f26c Repartition some message queue logic: sched/mqueue should have all mqueue knowledge; fs/mqueue should deal only with inodes 2014-09-30 08:03:39 -06:00
Gregory Nutt
1f2cc9f4fe Complete re-implementation of mq_close 2014-09-29 15:33:34 -06:00
Gregory Nutt
584d0fe4ad Complete re-implementation of mq_open() 2014-09-29 14:59:31 -06:00
Gregory Nutt
9e975a217d Separate mqueue allocation logic from mq_open() and put it in sched/mqueue/mq_msgqalloc.c 2014-09-29 14:09:31 -06:00
Gregory Nutt
e3fa34681b Convert mqueue structure for use in VFS as inode data; rename mqueue_inode_s; remove links, reference counts and name from mqueue structure. These will be replaced by VFS data. Remove g_msgqueues and mq_findnamed.c; these will be replace with VFS logic 2014-09-29 13:19:11 -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
650a0d0615 Completes VFS-based named semaphore implemetation. Still a little buggy 2014-09-28 15:58:56 -06:00
Gregory Nutt
30694f064c Add VFS-based sem_open() implementation 2014-09-28 14:35:17 -06:00
Gregory Nutt
aed3fe045e Add a simple named semaphore test to the OS test 2014-09-28 13:02:36 -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
39ff9d626e Move inode and VFS utils from fs/. to fs/inode/. 2014-09-28 10:53:40 -06:00
Gregory Nutt
c0b12cd42d Add basic data structures that will allow us to move named semaphore support out of the OS and into the VFS (not complete). 2014-09-28 10:15:49 -06:00
Gregory Nutt
a41c1de32c Add basic data structures that will allow us to move named semaphore support out of the OS and into the VFS (not complete). 2014-09-28 10:15:33 -06:00
Gregory Nutt
7c6ba7bb77 Add prototype for MTD R/W buffering support 2014-09-25 09:31:03 -06:00
Gregory Nutt
b33c2d9cef Move include/nuttx/mm.h to include/nuttx/mm/mm.h 2014-09-24 07:29:09 -06:00
Gregory Nutt
1863370672 Move include/nuttx/shm.h to include/nuttx/mm/shm.h 2014-09-24 07:05:02 -06:00
Gregory Nutt
2fa7431ee7 Move include/nuttx/gran.h to include/nuttx/mm/gran.h 2014-09-24 06:55:26 -06:00
Gregory Nutt
835c91b03a Add support for a per-process virtual page allocator. This is a new member of the task_group_s structure. The allocaor must be initialized when a new user process is started and uninitialize when the process group is finally destroyed. It is used by shmat() and shmdt() to pick the virtual address onto which to map the shared physical memory. 2014-09-23 16:04:39 -06:00
Gregory Nutt
566dc8dd38 Add interfaces to support un-initializing a granule allocator. 2014-09-23 15:50:45 -06:00
Gregory Nutt
edbaed19f9 Add logic necessary to handler remapping of shared memory on contex switches 2014-09-23 13:19:30 -06:00
Gregory Nutt
bf1e6224d5 Add platform-specific interfaces needed to support the shared memory feature 2014-09-23 12:16:44 -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
242d5f2068 Add README files and configuration support for the shared memory logic 2014-09-23 07:11:47 -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
34a057334c Update SMART FS procfs support. From Ken Pettit 2014-09-22 11:19:49 -06:00
Gregory Nutt
b660a708d4 Add shared memory definitions, types, prototypes 2014-09-22 09:29:37 -06:00
Gregory Nutt
ffb60d064b More naming changes to get the stm3240g-eval/nxterm configuration building again 2014-09-20 15:53:28 -06:00
Gregory Nutt
fefc4f624b Change all occurrences of NxConsole to NxTerm 2014-09-20 15:01:50 -06:00
Gregory Nutt
0b67b111ae Rename CONFIG_NXCONSOLE* to CONFIG_NXTERM* 2014-09-20 14:18:08 -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
da7a440b35 execv() is a basic system interface. It should not be in libc/ but rather in sched/task. Its symboltable helper logic also belongs in the kernel but belings in binfmt/ with the other symbol table logic 2014-09-15 10:15:19 -06:00
Gregory Nutt
62880f60c4 In kernel mode, we have to duplicate the callers argv[] buffer when exec'ing new tasks. When the argv[] buffer is needed, the caller's address environment will not longer be in place 2014-09-14 14:10:23 -06:00
Gregory Nutt
3649dab9bd Initial integration of kernel stack (does not work) 2014-09-14 11:19:34 -06:00
Gregory Nutt
de4956a2cd Add the initial implementation of the process kernel stack logic. Not yet integrated into the main OS logic nor tested. 2014-09-14 09:53:54 -06:00
Gregory Nutt
b255883b0a Rename everything associated with the dynamic process stack to ustack to make room in the name space for a kstack 2014-09-14 09:10:09 -06:00
Gregory Nutt
e12213592b Don't build task_create() or task_spawn() interfaces if there is an addres environment 2014-09-14 08:22:21 -06:00
Gregory Nutt
6e48516a31 Add logic need to manage a virtualized stack. Not yet incorporated into base OS logic. 2014-09-13 13:45:35 -06:00
Gregory Nutt
f965ca1fed Move static helper routines from arm_addrenv.c and may them global so that they can be shared both forthcoming stack address environment logic. 2014-09-13 13:17:44 -06:00
Gregory Nutt
ed9fced470 Add a configuration option for dynamic stack management 2014-09-13 12:25:32 -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
17e798993d Trivial kernel build related fixes for consistency 2014-09-11 12:35:23 -06:00
Gregory Nutt
0fc55d042f Misc fixes to repair some of the breakage to the SAMA5D4-EK elf configuration caused by changes for the knsh configuration 2014-09-11 10:31:12 -06:00
Gregory Nutt
fc35e35165 When a privileged thread exits, we have to use the kernel alloctor to free memory; when an unprivileged thread exits, we don't have to do anything... heap memory will be cleaned up when the address environment is torn down 2014-09-11 09:00:10 -06:00
Gregory Nutt
44499ed46c Rename some functions and reshuffling some paramters 2014-09-11 08:37:06 -06:00
Gregory Nutt
205c23b9d6 Add logic to initialize the per-process user heap when each user process is started 2014-09-10 15:55:36 -06:00
Gregory Nutt
df4682fd1f Add configuration to use the fixed DRAM mapping for the page pool (if available) instead of remapping dynamically to access L2 page tables and page data. Also, add logic in address environment creation to initialize the shared data at the beginning of the .bss/.data process memory region. 2014-09-10 08:41:01 -06:00
Gregory Nutt
c458e72b70 ELF relocations. Some relocation types do not have a named symbol associated with them. The design did not account for that case 2014-09-09 16:52:51 -06:00
Gregory Nutt
e953fb11cd A const storage class to to phthread parameters. From Freddie Chopin 2014-09-08 06:21:48 -06:00
Gregory Nutt
1822b86373 Fix some conditional compilation in kernel build mode. And, while we are touching this logic, make g_default_pthread_attr const. 2014-09-07 10:46:58 -06:00
Gregory Nutt
166d46a819 Fix error in new macro definition that causes compile problem when not using a kernel-mode build 2014-09-04 07:01:22 -06:00
Gregory Nutt
b2a94b6f2b Fix more places where the user-mode allocator is used to allocate kernel thread resources -- before the user-mode allocator even exists 2014-09-03 14:58:24 -06:00
Gregory Nutt
764e1235da Add a flag to group structure: If the group is created by a kernel thread, then all resources in the group must be priviliged 2014-09-03 13:48:38 -06:00
Gregory Nutt
b05f29dbfe I love/hate conditional compilation 2014-09-03 11:43:23 -06:00
Gregory Nutt
0c8cc8c691 Fix a typo in conditional compilation 2014-09-03 10:59:22 -06:00
Gregory Nutt
67d516d9d1 Fix several compile errors for logic added for CONFIG_BUILD_KERNEL, but which cause problems for other configurations 2014-09-03 09:21:59 -06:00
Gregory Nutt
1a4f8914c5 Add support for delivery of use-mode signals in the kernel build. 2014-09-02 15:58:14 -06:00
Gregory Nutt
b4438e44c5 Restructuring of build to allow use of use-space allocators by kernel logic in the kernel build. 2014-09-02 11:22:09 -06:00
Gregory Nutt
b085e084f4 Space at the beginning of the process data space is now reserved for user heap management structures. In the kernel build mode, these heap structures are shared between the kernel and use code in order to allocate user-specific data. 2014-09-02 11:21:23 -06:00
Gregory Nutt
8b082a167b Add SYSCALL support for pgalloc() 2014-09-02 08:29:44 -06:00
Gregory Nutt
a5af2568eb sbrk() need to initialized the memory manager on the first call 2014-09-02 08:05:11 -06:00
Gregory Nutt
64ab35b399 There used to be two ways to pass parameters to new tasks, depending upon the configuration: Either (1) argv[] as created as an array with each string strdup'ed. Or (1) argv[] array and strings were created on the stack before the new task was started. Now, there is only one way, way (1). Way (2) might be slightly more compact, but this is not worth carry the complexity of two different ways of doing the same thing. 2014-09-01 15:39:34 -06:00
Gregory Nutt
23147c40a5 Remove final traces of the 8015 from the NuttX source tree 2014-09-01 13:21:15 -06:00
Gregory Nutt
45c31d633c Completes the implementation of sbrk() (untested) 2014-09-01 10:46:51 -06:00
Gregory Nutt
a33c0533f4 ARMv7 address environment: Static functions not marked static 2014-09-01 08:49:08 -06:00
Gregory Nutt
f8a8ce4b18 Initial implementatino of sbrk() 2014-09-01 07:37:54 -06:00
Gregory Nutt
205260d5e2 Reanem kzalloc to kmm_zalloc for consistency 2014-08-31 17:34:44 -06:00
Gregory Nutt
1780810d3d Rename kmalloc to kmm_malloc for consistency 2014-08-31 17:26:36 -06:00
Gregory Nutt
54fa3b0b59 Rename kfree to kmm_free for consistency with other naming conventions 2014-08-31 17:04:02 -06:00
Gregory Nutt
9aca0c1c84 Rename kumalloc to kumm_malloc and kuzalloc to kumm_zalloc for consistency with other naming 2014-08-31 16:24:24 -06:00
Gregory Nutt
9ad7dae4c1 Rename kufree to kumm_free for consistency with other naming 2014-08-31 16:15:11 -06:00
Gregory Nutt
9cd1ddada4 Rename kmemalign to kmm_memalign and krealloc to kmm_realooc for consistency with other naming 2014-08-31 15:27:37 -06:00
Gregory Nutt
5a488475a8 Rename kmemalign to kmm_memalign for consitency with other naming 2014-08-31 14:57:31 -06:00
Gregory Nutt
ecdb5120dd Add low-level memory management hooks that will be needed to support brk() and sbrk() 2014-08-31 14:42:45 -06:00
Gregory Nutt
2904fb0420 Clean up some kernel build heap allocation issues. The Cortex-A kernel build now compiles without errors (but cannot link until brk() and sbrk() are implemented). 2014-08-31 12:50:05 -06:00
Gregory Nutt
b0246d0b7d mm: Break up mm_user.c and mm_kernel.c into separate files for better symmetry 2014-08-31 11:46:47 -06:00
Gregory Nutt
3c1a70c9dc Remove CONFIG_MM_MULTIHEAP. Non-multiheap operation is no longer supported 2014-08-31 10:54:55 -06:00
Gregory Nutt
0571a59e12 Need to condition out standard allocators in kernel build. More to be done 2014-08-31 08:10:15 -06:00
Gregory Nutt
fc7bd31e07 last change alters semantics of __HAVE_KERNEL_GLOBALS 2014-08-30 14:44:48 -06:00
Gregory Nutt
2029236ed0 Back out and replace recent kludges for errno and clock_systimer. There is a cleaner way 2014-08-30 14:26:56 -06:00
Gregory Nutt
4864b4c8c1 Upate ChangeLog 2014-08-30 13:29:25 -06:00
Gregory Nutt
a5cfd5deba clock_systimer needs the same fix as fore get/set_errno when used with system calls 2014-08-30 13:26:45 -06:00
Gregory Nutt
2906ff6a4a Cosmetic: Fix all comments, defaults, etc. that references the defunct name user_start 2014-08-30 11:14:51 -06:00
Gregory Nutt
0c7e97658e Yet more issues with errno access via syscalls fixed 2014-08-30 08:43:10 -06:00
Gregory Nutt
0f5dc2fc65 Various changes/fixes to get configs/stm32f4discovery/kostest working after the big configuration renaming (and after a long period of bit rot) 2014-08-29 16:23:46 -06:00
Gregory Nutt
faf16f229c Some initial clean-up in verifying the CONFIG_BUILD_PROTECTED configuration change 2014-08-29 15:07:35 -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
fe35751ec2 g_system_timer must be handler in a special way if there are external modules 2014-08-28 17:02:53 -06:00
Gregory Nutt
42e0c5329d errno must be handled in a special way if there are external modules 2014-08-28 17:01:57 -06:00
Gregory Nutt
7ba9ddee7f STM32 FLASH fixes: use size_t instead of uint16_t, make interface more generic. From Freddie Chopin 2014-08-28 09:11:20 -06:00
Gregory Nutt
a2463148fc Can't used task_create() if address environments enabled 2014-08-27 14:19:41 -06:00
Gregory Nutt
ad53cabf34 ADDRENV: Use a group flag to determine if there is an address environment (instead of the thread type) 2014-08-27 09:37:28 -06:00
Gregory Nutt
af22f273d3 Add group_addrenv() which will be called during context switches in order to change address environments. Not yet hooked in 2014-08-26 14:54:39 -06:00
Gregory Nutt
0db7da1858 Add up_addrenv_coherent which will be called before address environment switches 2014-08-26 14:53:19 -06:00
Gregory Nutt
b13d9b4161 Rename up_addrenv_assign() to up_addrenv_clone() and generalize its arguments so that can be used for other purposes 2014-08-26 12:16:05 -06:00
Gregory Nutt
1725946447 Misc changed to get the SAMA5 ELF configuration with address environments working 2014-08-25 13:28:13 -06:00
Gregory Nutt
e1799b0423 Cortex-A/SAMA5 address environment support is code complete (untested) 2014-08-25 11:18:32 -06:00
Gregory Nutt
e0a48b60b6 Change naming of ELF interfaces from arch_ to up_ for consistency 2014-08-25 06:47:14 -06:00
Gregory Nutt
7aea220ebf After cached related fix, the ELF example is now functional 2014-08-24 14:12:45 -06:00
Gregory Nutt
241a7e17bd addrenv interface changes: up_addrenv_create() may need to create .text and .bss/.data separately because of differing access privileges (read/execute vs read/write). And, as a consequence, up_addrenv_vaddr() needs to be split into up_addrenv_vtext(0 and up_addrenv_vdata(). 2014-08-24 11:54:14 -06:00
Gregory Nutt
2cb9d5c7b0 Add addrenv.h; First cut at Cortex-A address environment structures; Add configuration options to setup address enviornment 2014-08-24 09:57:53 -06:00
Gregory Nutt
1624e2fbcf Change CONFIG_ADDRENV to CONFIG_ARCH_ADDRENV; change how it is selected -- the architecure must first declare support 2014-08-24 06:42:11 -06:00
Gregory Nutt
b028fb31e9 include/nuttx/pgalloc.h and mm/mm_pgalloc.c: Add a simple page allocator based on the existing NuttX granule allocator. I am not certain if the granule allocator is sufficiently deterministic for long range use, but it gets get a page allocator in place for testing very quickly. 2014-08-23 16:37:16 -06:00
Gregory Nutt
7cd8db9425 gran_reserve(): Add a new function to reserve unallocatable regions in the granule heap 2014-08-23 12:43:21 -06:00
Gregory Nutt
e79d6e3c8b A few fixes for compilation errors due to recent address environment fixes 2014-08-22 15:55:00 -06:00
Gregory Nutt
1d586e6136 An address environment is the property of a task group, not of a thread 2014-08-22 12:32:34 -06:00
Gregory Nutt
fd484c4de9 Add support for statically allocated watchdog timer structures 2014-08-22 08:46:34 -06:00
Gregory Nutt
ad9b3f8ab8 wdog.h does not contain any application interface, only internal OS interface. Further, it is non-standard. Move wdog.h from include/ to include/nuttx. For the same reason, move the description of the watchdog timer interfaces from the Users Guide to the Porting Guide. 2014-08-21 11:16:55 -06:00
Gregory Nutt
cf242fbeb4 SAM4E-EK: Add ILI9341-based LCD driver 2014-08-20 11:45:01 -06:00
Gregory Nutt
9f5299522f Add missing include file. From Kosma 2014-08-20 06:34:34 -06:00
Gregory Nutt
703d4bca7b Add a register definition header file for the ILI9341 LCD 2014-08-19 17:31:10 -06:00
Gregory Nutt
4bba611dc6 Move some internal networking function protoypes out of the public include/nuttx/net/arp.h into to the private net/arp/arp.h 2014-08-18 16:35:20 -06:00
Gregory Nutt
004788d7c0 Change the way PHY interrupts work: disable automatically. Then we have to re-subscribe each time after the interrupt fires 2014-08-17 16:51:56 -06:00
Gregory Nutt
e04ab2bcfc In order to get PHY interrupts, they must be enabled at the PHY (still don't get PHY interrupts) 2014-08-17 13:03:18 -06:00
Gregory Nutt
dcfc76336a Add some helper macros to make the code a little more compac 2014-08-17 09:46:03 -06:00
Gregory Nutt
716aec39bf Cosmetic 2014-08-17 09:45:38 -06:00
Gregory Nutt
057af36c1d More of the PHY event notification logic change: Fix some compile errors when full feature is enabled; Add some missing ioctol logic 2014-08-16 15:04:09 -06:00
Gregory Nutt
eb5e2e4b20 Finishes the ioctl definition to subscribe to PHY events. Revamp network ioctl signature to support arguments other than struct mii_ioctl_data. 2014-08-16 14:08:04 -06:00
Gregory Nutt
8428a58bdc Add support for an ioctl that can be used to notify an application when there is a change in the network status signalled by a PHY interrupt 2014-08-16 12:56:02 -06:00
Gregory Nutt
cde108efc6 Move SLIP prototypes from net.h to new slip.h 2014-08-16 10:28:45 -06:00
Gregory Nutt
79e098b20e Clean missing function headers 2014-08-16 10:24:06 -06:00
Gregory Nutt
4beb3c0ad7 Move SLIP prototypes from net.h to new slip.h 2014-08-16 10:23:17 -06:00
Gregory Nutt
c52f634b79 Standardize a PHY interrupt attachment interface 2014-08-16 08:34:36 -06:00
Gregory Nutt
eed1d6c619 When reading the system timer, don't read a struct timespec, convert it to a fake tick count, then back to a timespec. Remove CLOCK_ACTIVETIME.. it is non-standard, unused, and gets in the way of changes like this 2014-08-15 03:55:41 -06:00
Gregory Nutt
686e5d7e3d Tickless: If using an ALARM, then really should report time of expiration 2014-08-12 10:00:32 -06:00
Gregory Nutt
66803d0db6 Define interfaces to use an alarm instead of an interval timer with the tickless option 2014-08-12 07:28:41 -06:00
Gregory Nutt
7025465109 Adds support for localtime. From Max Neklyudov 2014-08-12 06:18:22 -06:00
Gregory Nutt
219c1a68d3 Update comments 2014-08-10 11:38:08 -06:00
Gregory Nutt
320707fdfa SAMA5: Fix bugs in timer/counter interrupts and one-shot timer 2014-08-10 10:47:38 -06:00
Gregory Nutt
5803fb78b8 SAMA5 T/C: Can now handle non-constant BOARD_MCK_FREQUENCY. Also now supports methods to attach user interrupt handlers 2014-08-09 10:30:45 -06:00
Gregory Nutt
da0de3284e Fix errors in documentation and comments related to the Tickless OS. From Vijay Kumar 2014-08-09 06:41:38 -06:00
Gregory Nutt
cb79407ced Move all pthread files from sched/ to sched/pthread 2014-08-08 12:55:02 -06:00
Gregory Nutt
6e0acd7cd4 WM8904: Don't use MSEC2TICK in timeout calculation 2014-08-08 11:02:45 -06:00
Gregory Nutt
5ee57bda59 Some final tickless OS bugfixes. No longer EXPERIMENTAL. Update some comments 2014-08-07 19:11:22 -06:00
Gregory Nutt
c9661ad5a7 Change all time conversions. Yech. New timer units in microseconds breaks all existing logic that used milliseconds in the conversions. Something likely got broken doing this, probably because I confused a MSEC2TICK conversion with a TICK2MSEC conversion. Also, the tickless OS no appears fully functional and passes the OS test on the simulator with no errors 2014-08-07 18:00:38 -06:00
Gregory Nutt
0aa7209765 Change CONFIG_MSEC_PER_TICK to CONFIG_USEC_PER_TICK. This gives more options for system timers in general, but more importantly, let's us realize higher resolution for the case of CONFIG_SCHED_TICKLESS=y -- of course, at the risk of some new interger overvflow problems 2014-08-07 13:42:47 -06:00
Gregory Nutt
caba61999a Remove CONFIG_DISABLE_CLOCK 2014-08-07 12:35:24 -06:00
Gregory Nutt
520a51a3e1 Implements the tickless OS 2014-08-07 11:39:16 -06:00
Gregory Nutt
c8a60b2916 Added another tickless OS interface to get the timer remaining on the interval timer. 2014-08-06 18:28:33 -06:00
Gregory Nutt
0452b1555b if CONFIG_SCHED_TICKLESS is defined, then the global variable g_system_timer does not exist 2014-08-06 18:26:16 -06:00
Gregory Nutt
736d3c169a Rename up_timerinit() to up_timer_initailize(); Add prototypes for candidate interfaces for the tickless OS; Don't build existing timer initialization logic if CONFIG_SCHED_TICKLESS is defined. 2014-08-06 16:26:01 -06:00
Gregory Nutt
b305f9186a WM8904 interface enable method now returns the previous interrupt state 2014-08-04 14:52:59 -06:00
Gregory Nutt
72b739fbcb WM8904: Add logic to analyze BCLK setup 2014-08-03 17:11:38 -06:00
Gregory Nutt
36f8e23c12 WM8904 driver: Fix wm8904_dump_registers macro: Wrong number of parameters. 2014-08-02 14:28:30 -06:00
Gregory Nutt
a2d6c0c2b4 WM8904: Add logic to program the FLL to achieve the bitrate 2014-08-02 12:40:57 -06:00
Gregory Nutt
f4bc0ad99a WM8904: Add an option to control WM8904 register dumping 2014-08-02 06:52:42 -06:00
Gregory Nutt
1f2428c087 WM8904: Ad the MCLK frequency to the interface definition. The WM8904 driver needs to know this frequency in order to configure the FLL to generate the correct bitrate 2014-08-01 18:37:56 -06:00
Gregory Nutt
e59bb45b33 Add debug logic to dump WM8904 registers 2014-08-01 18:07:20 -06:00
Gregory Nutt
e214382264 Audio: Change how the end of the audio stream is detected by the leaf audio component. This used by be done by looking for the first partial buffer. That does not work with the in-place sub-sampling performed by the PCM decoder: That always reduces the size of the buffer so that all buffers only partially filled by the time they get to the leaf. Now, a flag is set in the audio buffer flags set to indicate the final buffer in the stream. 2014-07-31 16:36:09 -06:00
Gregory Nutt
376a7bcc12 Costmetic: Update TODO list, README files, refreshed configuration, updated comments 2014-07-30 14:26:50 -06:00
Gregory Nutt
a826adb679 The SAMA5D4-EK NSH and NxWM configurations now have the auto-mounter configured to automatically mount the FAT file system on HSMCI0 at /mnt/sdcard 2014-07-29 16:36:15 -06:00
Gregory Nutt
7b1b915226 SAMA5D4: Add auto-mounter support for HSMCI0 2014-07-29 15:34:31 -06:00
Gregory Nutt
31d21640af Update the automounter so that it will handle the initial insertion state 2014-07-29 13:00:35 -06:00
Gregory Nutt
8e506be4dd Add support for an automounter that will automatically mount and unmount a file system a media is inserted and removed 2014-07-29 12:50:08 -06:00
Gregory Nutt
b7227f0088 Cosmetic changes, mostly to comments 2014-07-29 12:49:40 -06:00
Gregory Nutt
f235f95e52 Misc bugfixes while integrating fast forward by sub-sampling 2014-07-27 19:32:07 -06:00
Gregory Nutt
0cc9b06eca Add definitions to support fast forward and rewind configuration 2014-07-27 12:25:40 -06:00
Gregory Nutt
123efe6e23 Move subsampling rate definitions from nxplayer.h to audio.h 2014-07-27 11:05:25 -06:00
Gregory Nutt
2ef656c227 More removal of EXTERN on function prototypes 2014-07-24 15:04:50 -06:00
Gregory Nutt
22f8503d0a Convert ac_format and ac_controls to unions to make access a little cleaner 2014-07-24 10:21:04 -06:00
Gregory Nutt
dba43a9c75 Audio: Get rid of the decoder->driver IOCTLs that I added a couple of commits back; Use existing configure method 2014-07-24 09:56:39 -06:00
Gregory Nutt
ca779ece55 Audio: Add hooks for fast-forward and rewind needed by CMediaPlayer; add hooks for equalizer settings needed by the WM8904 2014-07-24 08:28:10 -06:00
Gregory Nutt
68109b32db Ongoing campaign to remove EXTERN storage class on function prototypes 2014-07-23 14:49:16 -06:00
Gregory Nutt
72133f5d95 Add ioctls so that PCM decoder can configure the driver bitrate, num channels, and sample width 2014-07-23 12:21:04 -06:00
Gregory Nutt
ca7d7c34ce Audio: Add a NULL audio device that can be used to simply unit-level testing of audio decoders 2014-07-23 10:12:32 -06:00
Gregory Nutt
cfa76b5278 Flesh out a few more PCM methods, still incomplete. Re-vision PCM structure definition 2014-07-22 19:23:05 -06:00
Gregory Nutt
d7a9633dcd Rename pcm_decode.h to pcm.h since it will hold more than just decoding definitions. Fix some porting errors like idbg should auddbg, etc. Add wav file header and a few low-level wav utilities. 2014-07-22 15:54:56 -06:00
Gregory Nutt
a4dcd690bb Add new framework for the PCM decoder. It is now a 'front end' for lower-level drivers like the WM8904 that performs the PCM decoding from end 2014-07-22 11:54:13 -06:00
Gregory Nutt
8548c64915 Remove WM8904 driver unused paramters, clean-up comments, remove some kruft in capability reporting 2014-07-22 11:47:27 -06:00
Gregory Nutt
4f6625380b The WM8904 audio driver is mostly code complete and ready to begin initial testing 2014-07-19 18:52:58 -06:00
Gregory Nutt
6d9f9e37bf SAMA5D4-EK: Add WM8904 initialization logic 2014-07-19 11:58:53 -06:00
Gregory Nutt
89ed7ab558 WM8904: Add initialization logic 2014-07-19 10:20:19 -06:00
Gregory Nutt
3b8c4a399d Framework for a WM8904 audio driver. The initial driver check-in is simply Ken Pettit's VS1053 driver forced to compile with only WM8904 definitions 2014-07-18 15:35:12 -06:00
Gregory Nutt
1ff0536c7f WM8904: Add header file support for this forcoming driver 2014-07-18 13:28:51 -06:00
Gregory Nutt
8182037783 Rename CONFIG_NX_MOUSE to CONFIG_NX_INPUT, then add CONFIG_NX_XYINPUT_MOUSE and CONFIG_XYINPUT_TOUCHSCREEN 2014-07-16 16:31:31 -06:00
Gregory Nutt
44e6516213 maXTouch: Add thresholding so that MOVE reports are not generated unless there is a significant change in the reported position 2014-07-12 14:00:33 -06:00
Gregory Nutt
58ab6ec03f NX graphics library: Macroize some color operators that become trivial when there is only one color plane 2014-07-12 07:44:56 -06:00
Gregory Nutt
ba22619749 NX: Don't change the background if the color has not really changed 2014-07-11 20:47:12 -06:00
Gregory Nutt
ab1ab379dd Addition rwbuffer interfaces should not be enabled unless they are needed; if rwbuffer support is enabled, it should not be unconditionally enabled in SMART and FTL 2014-07-11 16:19:17 -06:00
Gregory Nutt
2dd9ce50c8 Clean-up up some warning 2014-07-11 11:58:46 -06:00
Gregory Nutt
8516551e54 Add an MTD layer that will add read-ahead or write buffering to any MTD driver (incomplete) 2014-07-11 11:20:11 -06:00
Gregory Nutt
befcb1c961 Fix some cloned errors in SAM GPIO interrupt setup 2014-07-07 15:54:37 -06:00
Gregory Nutt
5bbc0a0dd9 maXTouch: Check for successful memory allocation was backward 2014-07-07 09:55:39 -06:00
Gregory Nutt
dc7bcb0c1d BCH: Add configurable AES encryption support to block-to-character (BCH) driver. This allows any block device to be accessed as an encrypted character device. From Max Nekludov 2014-07-07 08:00:00 -06:00
Gregory Nutt
178b2b0cbe NET: Important fix to the read-ahead buffer queue managment: Consumed bytes were being trimmed from the head of the queue, but the queue head itself was not being updated. From Rony XLN 2014-07-07 07:28:17 -06:00
Gregory Nutt
e89eac6365 NET: Fix a few problems after big merge of network reorganization 2014-07-06 17:58:36 -06:00
Gregory Nutt
a251259f90 NET: Rename some non-configurable constants UIP_ to IP_ or TCP_ 2014-07-06 16:19:26 -06:00
Gregory Nutt
b77fda2c95 NET: Rename TCP state values: UIP_ -> TCP_ 2014-07-06 16:10:26 -06:00
Gregory Nutt
1f11a452dd NET: Add a few missing configuration options to the Kconfig files 2014-07-06 13:04:27 -06:00
Gregory Nutt
2d52d70d4c NET: Move private definitions from include/nuttx/net/tcp to net/tcp/tcp.h 2014-07-06 12:34:27 -06:00
Gregory Nutt
ed56af079a Updated comments 2014-07-06 11:14:24 -06:00
Gregory Nutt
9e87ab90b8 NET: Move private definitions from include/nuttx/net/arp.h to net/arp/arp.h 2014-07-06 11:05:28 -06:00
Gregory Nutt
b4d3cebc2f maXTouch: Fix I2C address, errors when debug enable, reorganize some data 2014-07-06 08:03:34 -06:00
Gregory Nutt
560409c912 MXT interface does not need an IRQ number; SAMA5D4-EK setup omitted I2C frequency 2014-07-05 17:47:17 -06:00
Gregory Nutt
811668cf15 NET: Move most of the contents of include/nuttx/net/igmp.h moved to net/igmp/igmp.h 2014-07-05 15:15:40 -06:00
Gregory Nutt
47a502a5e2 NET: Most of the contents of include/nuttx/net/udp.h moved to net/pkt/udp.h 2014-07-05 14:40:29 -06:00
Gregory Nutt
dc8cba763d NET: Most of the contents of include/nuttx/net/pkt.h moved to net/pkt/pkt.h 2014-07-05 13:59:22 -06:00
Gregory Nutt
609197fd28 NET: Fix another header file inclusion problem. Plus renaming of an unused macro 2014-07-05 13:22:32 -06:00
Gregory Nutt
c5fc24e110 NET: Standardize naming of all protocal header lengths 2014-07-05 13:04:48 -06:00
Gregory Nutt
3e9f29ba07 Add very basic support for the Atmel maXTouch touchscreen controller 2014-07-05 11:47:54 -06:00
Gregory Nutt
60246e613b NET: emoved all includes of uip.h; added includes of ip.h wherever needed. Tried to fix problems of the now missing sneak inclusions because uip.h was removed. There are probably a few of these that were missed. 2014-07-04 19:13:08 -06:00
Gregory Nutt
0bb153b8cb Remove all inclusion of uip.h 2014-07-04 16:58:22 -06:00
Gregory Nutt
631e78221d NET: Rename include/nuttx/net/uip.h to ip.h 2014-07-04 16:47:54 -06:00
Gregory Nutt
8615dd0aeb NET: rename include/net/ip.h to ipopt.h 2014-07-04 16:44:53 -06:00
Gregory Nutt
a6b39d1879 NET: in-progress change... don't use 2014-07-04 16:38:51 -06:00
Gregory Nutt
cce35ce975 NET: More renaming 2014-07-04 15:40:49 -06:00
Gregory Nutt
1657e6296b Move crypto header files from include/crypto to include/nuttx/crypto 2014-07-03 18:35:08 -06:00
Gregory Nutt
71f6838129 Correct authorship on a few files 2014-07-03 18:28:26 -06:00
Gregory Nutt
edb5f312ca Move cypto debug definitions to debug.h with other susbsystem-level debug 2014-07-03 07:58:43 -06:00
Gregory Nutt
bb3dcccd98 Beginning of a crypto/ subsystem from Max Neklyudov 2014-07-03 07:42:44 -06:00
Gregory Nutt
8e9df8ade0 NET: Misc naming clean-up 2014-07-02 17:23:25 -06:00
Gregory Nutt
3e0bd1f1b0 NET: Rename some address comparison macros 2014-07-01 18:11:05 -06:00
Gregory Nutt
3ee5b9209b Rename CONFIG_RAMLOG_CONSOLE_BUFSIZE to just CONFIG_RAMLOG_BUFSIZE 2014-07-01 12:00:40 -06:00
Gregory Nutt
b54d366efd NET: Remove uip_restart() 2014-06-30 19:14:01 -06:00
Gregory Nutt
77330679d4 NET: Rename uip_mss to tcp_mss 2014-06-30 19:09:23 -06:00
Gregory Nutt
5d7915e5ef NET: Remove uip_stopped and uip_stop 2014-06-30 19:03:01 -06:00
Gregory Nutt
b0c1b7ef47 Rename uip_poll->devif_poll and uip_timer->devif_timer 2014-06-30 18:40:41 -06:00