Gregory Nutt
|
fe48417a96
|
Comsetic updates to comments, debug output
|
2014-09-12 10:31:58 -06:00 |
|
Gregory Nutt
|
fba35f0c41
|
ARMv7-A: Modify up_fullcontextrestore() for CONFIG_BUILD_KERNEL. It changed CPSR while in kernel. That will crash is the new CPSR is user mode while executing in kernel space. Fixed by adding a SYS_context_restore system call. There is an alternative, simpler modification to up_fullcontextrestore() that could have been done: It might have been possible to use the SPSR instead of the CPRSR and then do an exception return from up_fullcontextrestore(). That would be more efficient, but I never tried it.
|
2014-09-12 08:04:27 -06:00 |
|
Gregory Nutt
|
6084fad7e0
|
Fix logic for returning from exceptions to user-mode contexts
|
2014-09-11 18:43:30 -06:00 |
|
Gregory Nutt
|
62e608be8c
|
All tasks, even user mode tasks, must start in supervisor mode until they get past the start-up trampoline
|
2014-09-11 18:42:52 -06:00 |
|
Gregory Nutt
|
4821587509
|
Update some comments/function headers
|
2014-09-11 17:15:26 -06:00 |
|
Gregory Nutt
|
401b8543cd
|
Tighten up some ARM assembly language. You can always do better
|
2014-09-11 15:12:08 -06:00 |
|
Gregory Nutt
|
bd7f16d16a
|
ARMv7-A: Exception register save/restore needs to work a little differently if we support user mode processes
|
2014-09-11 14:34:10 -06:00 |
|
Gregory Nutt
|
998c5ee0a9
|
Trivial kernel build related fixes for consistency
|
2014-09-11 12:35:23 -06:00 |
|
Gregory Nutt
|
1f23ad9bad
|
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
|
442d2adb7a
|
Fix for UART7 and UART8 on STM32 clock enable from Aton
|
2014-09-11 10:27:40 -06:00 |
|
Gregory Nutt
|
006cf7d745
|
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
|
2da0392ae2
|
SAMA5D4-EK: These configurations now use the fixed DRAM mapping for manipulating the page memory pool.
|
2014-09-10 08:44:09 -06:00 |
|
Gregory Nutt
|
6238e87aaa
|
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
|
8a99c421ff
|
pcDuino: Several fixes so that it still builds after other Cortex-A changes.
|
2014-09-10 06:24:39 -06:00 |
|
Gregory Nutt
|
aaf190dcf6
|
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
|
068115e7d6
|
SAM3X/Arduino Due: Fix typo in sam3x_periphclks.h; add SCLK definitions to board.h header file. From Fabien Comte
|
2014-09-08 06:14:59 -06:00 |
|
Gregory Nutt
|
8b64dc003e
|
SAMA5D4-EK: In kernel build with address environment, need logic to map user virtual addresses to physical addresses, and vice versa
|
2014-09-07 19:25:30 -06:00 |
|
Gregory Nutt
|
53bd807186
|
Fix loop counter... was overrunning a table on larger ELF files
|
2014-09-07 14:42:04 -06:00 |
|
Gregory Nutt
|
dcc711f3f2
|
Correct size comparison (pages vs. sections)
|
2014-09-07 13:47:01 -06:00 |
|
Gregory Nutt
|
3dd3b1f5e2
|
The 'make export' target needs to bundle up the user C startup file (crt0), not the kernel head object
|
2014-09-04 13:31:34 -06:00 |
|
Gregory Nutt
|
70e5350942
|
Mostly cosmetic changes
|
2014-09-04 10:28:38 -06:00 |
|
Gregory Nutt
|
15e439d6de
|
I love/hate conditional compilation
|
2014-09-03 11:43:23 -06:00 |
|
Gregory Nutt
|
12775801c9
|
Add support for delivery of use-mode signals in the kernel build.
|
2014-09-02 15:58:14 -06:00 |
|
Gregory Nutt
|
aa7efbb52e
|
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
|
8557f1a1bb
|
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
|
4d8367a009
|
sbrk() need to initialized the memory manager on the first call
|
2014-09-02 08:05:11 -06:00 |
|
Gregory Nutt
|
02c3d38ed0
|
Add misc/Obsoleted/ChangeLog and misc/Obsoleted/Patches/Remove-8051-2014-9-1.patch
|
2014-09-01 16:21:29 -06:00 |
|
Gregory Nutt
|
31b8137956
|
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
|
5ee6da79cb
|
Remove final traces of the 8015 from the NuttX source tree
|
2014-09-01 13:21:15 -06:00 |
|
Gregory Nutt
|
91c8bc4f93
|
Obsolete support for the 8051 family. Trying to maintain compatibility with this family is too much effort and there has never really been a successful NuttX impplementation on these parts
|
2014-09-01 12:27:17 -06:00 |
|
Gregory Nutt
|
587520a7d2
|
Completes the implementation of sbrk() (untested)
|
2014-09-01 10:46:51 -06:00 |
|
Gregory Nutt
|
4537a905f6
|
ARMv7 address environment: Static functions not marked static
|
2014-09-01 08:49:08 -06:00 |
|
Gregory Nutt
|
2fd3413d35
|
Fix common heap allocation logic, taking into account the kernel build requirements
|
2014-09-01 07:57:54 -06:00 |
|
Gregory Nutt
|
ec086adfae
|
Reanem kzalloc to kmm_zalloc for consistency
|
2014-08-31 17:34:44 -06:00 |
|
Gregory Nutt
|
10ca085b09
|
Rename kmalloc to kmm_malloc for consistency
|
2014-08-31 17:26:36 -06:00 |
|
Gregory Nutt
|
fcd7b9336e
|
Rename kfree to kmm_free for consistency with other naming conventions
|
2014-08-31 17:04:02 -06:00 |
|
Gregory Nutt
|
bcb5a5316e
|
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
|
1643c35609
|
Rename kufree to kumm_free for consistency with other naming
|
2014-08-31 16:15:11 -06:00 |
|
Gregory Nutt
|
e6698045c1
|
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
|
31608cd434
|
Rename kmemalign to kmm_memalign for consitency with other naming
|
2014-08-31 14:57:31 -06:00 |
|
Gregory Nutt
|
4c01f5c1b7
|
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
|
10aa9ad087
|
Remove CONFIG_MM_MULTIHEAP. Non-multiheap operation is no longer supported
|
2014-08-31 10:54:55 -06:00 |
|
Gregory Nutt
|
05b6217876
|
ARMv7-A: A little more logic and a few more fixes for Cortex-A kernel build
|
2014-08-31 07:15:46 -06:00 |
|
Gregory Nutt
|
729bc9f9a7
|
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
|
5fb235c615
|
Some initial clean-up in verifying the CONFIG_BUILD_PROTECTED configuration change
|
2014-08-29 15:07:35 -06:00 |
|
Gregory Nutt
|
e11679acf8
|
Rename CONFIG_NUTTX_KERNEL to CONFIG_BUILD_PROTECTED; Partially integrate new CONFIG_BUILD_KERNEL
|
2014-08-29 14:47:22 -06:00 |
|
Gregory Nutt
|
67721c50f1
|
Fix hard coded values in dispatch_sysall inline assembly. Back out/corect part of last change; that was going the wrong direction.
|
2014-08-29 10:10:47 -06:00 |
|
Gregory Nutt
|
48c2c9ed08
|
Fix a cloned typo
|
2014-08-29 10:09:07 -06:00 |
|
Gregory Nutt
|
db69d94935
|
Fix ARM7/9 and Cortex-A SYSCALLs: For threads in SVC mode, the SVC instructions clobbers R14. This must be taken account in the inline assembly
|
2014-08-29 10:07:11 -06:00 |
|
Gregory Nutt
|
27e463dfaa
|
Various fixes to the ARMv7-A system call logic
|
2014-08-29 08:24:00 -06:00 |
|
Gregory Nutt
|
8196b629a4
|
Rename arch/arm/src/armv7-a/syscall.h to svcall.h to work around some include path name collisions; fix some compilation errors in SYSCALL logic when debug is enabled
|
2014-08-29 07:48:16 -06:00 |
|
Gregory Nutt
|
8dd679e875
|
ARMv7-A: Add SYSCALL handling logic
|
2014-08-28 14:52:14 -06:00 |
|
Gregory Nutt
|
cbf0141d6c
|
Add an ARMv7-A system call definition header file
|
2014-08-28 13:21:36 -06:00 |
|
Gregory Nutt
|
3561aac62a
|
The system call library can now be built with CONFIG_NUTTX_KERNEL. New select: CONFIG_LIB_SYSCALL
|
2014-08-28 12:09:49 -06:00 |
|
Gregory Nutt
|
4fa5b52e43
|
Cortex-A address environments: Fix issue with page privileges
|
2014-08-28 11:00:41 -06:00 |
|
Gregory Nutt
|
26f6d90fa9
|
Remove a warning
|
2014-08-28 10:04:41 -06:00 |
|
Gregory Nutt
|
9be4972862
|
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
|
35b11a7533
|
Fix an error introduced into ALL implmentations of interrupt dispatch logic
|
2014-08-28 08:41:57 -06:00 |
|
Gregory Nutt
|
8bdde7b2d1
|
Add address environment support to ALL implementatins of up_release_pending()
|
2014-08-28 08:10:19 -06:00 |
|
Gregory Nutt
|
1b24afe6fc
|
Add address environment support to ALL implementatins of up_reprioritize_rtr()
|
2014-08-28 07:54:07 -06:00 |
|
Gregory Nutt
|
c61a64e44e
|
Z80: Move address environment switch from the task switchers to the interrupt handler. That may save doing the action multiple times per interrupt
|
2014-08-28 07:38:05 -06:00 |
|
Gregory Nutt
|
07d98438be
|
x86: Move address environment switch from the task switchers to the interrupt handler. That may save doing the action multiple times per interrupt
|
2014-08-28 07:30:34 -06:00 |
|
Gregory Nutt
|
3a2f3e2753
|
SH: Move address environment switch from the task switchers to the interrupt handler. That may save doing the action multiple times per interrupt
|
2014-08-28 07:23:39 -06:00 |
|
Gregory Nutt
|
9c6fea03d0
|
MIPS: Move address environment switch from the task switchers to the interrupt handler. That may save doing the action multiple times per interrupt
|
2014-08-28 07:16:14 -06:00 |
|
Gregory Nutt
|
0fa16abd49
|
AVR32: Move address environment switch from the task switchers to the interrupt handler. That may save doing the action multiple times per interrupt
|
2014-08-28 07:06:19 -06:00 |
|
Gregory Nutt
|
13565c8e4c
|
AVR32: Move address environment switch from the task switchers to the interrupt handler. That may save doing the actin multiple times per interrupt
|
2014-08-28 07:00:37 -06:00 |
|
Gregory Nutt
|
0e9a0150ba
|
ARM: Move address environment switch from the task switchers to the interrupt handler. That may save doing the actin multiple times per interrupt
|
2014-08-28 06:49:05 -06:00 |
|
Gregory Nutt
|
540a7e4a35
|
ARM: Move address environment switch from the task switchers to the interrupt handler. That may save doing the actin multiple times per interrupt
|
2014-08-28 06:34:09 -06:00 |
|
Gregory Nutt
|
756054d745
|
Add ADDRENV support to ALL implmentations of _exit()
|
2014-08-27 16:31:02 -06:00 |
|
Gregory Nutt
|
7055bce8b4
|
Add ADDRENV support to ALL implementations of up_unblock_task()
|
2014-08-27 16:15:46 -06:00 |
|
Gregory Nutt
|
5bf114e604
|
Add ADDRENV support to all implementations of up_block_task()
|
2014-08-27 15:36:52 -06:00 |
|
Gregory Nutt
|
8ec74b1a9e
|
Minor address environment clean-up. Cannot generate debug contexts in certain contexts
|
2014-08-27 14:22:00 -06:00 |
|
Gregory Nutt
|
dd80c63af6
|
CC3200 Launchpad updates
|
2014-08-26 16:31:47 -06:00 |
|
Gregory Nutt
|
e3258a3b1f
|
Support the the TC3200 from Jim Ewing
|
2014-08-26 15:13:57 -06:00 |
|
Gregory Nutt
|
032ff50313
|
Add up_addrenv_coherent which will be called before address environment switches
|
2014-08-26 14:53:19 -06:00 |
|
Gregory Nutt
|
d6a4eb6266
|
up_coherent_dcache should do nothing the the length is zero
|
2014-08-26 14:51:53 -06:00 |
|
Gregory Nutt
|
e8094292e3
|
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
|
cb8e081dba
|
Mostly cosmetic use of uintptr_t to hold addresses instead of uint32_t
|
2014-08-26 10:44:10 -06:00 |
|
Gregory Nutt
|
b1066775a2
|
Fix confusion about what is a page of data and what is a page of L2 page table; restructure functions to reduce duplicated logic
|
2014-08-26 10:41:43 -06:00 |
|
Gregory Nutt
|
45d0b2c5fb
|
Add lots of debug output
|
2014-08-26 07:54:43 -06:00 |
|
Gregory Nutt
|
b3473bfa26
|
Cortex-A address environment: Fix some section mapping and address increments
|
2014-08-26 06:33:26 -06:00 |
|
Gregory Nutt
|
a593729cb2
|
ARMv7-A: Use of write back might be unpredictable
|
2014-08-25 16:34:22 -06:00 |
|
Gregory Nutt
|
cfa8174fe4
|
Bugfixes.. still integrating SAMA5 ELF with address environment
|
2014-08-25 15:27:58 -06:00 |
|
Gregory Nutt
|
9857f09baf
|
SAMA5 ELF configuration with address environments finally builds without errors
|
2014-08-25 13:59:02 -06:00 |
|
Gregory Nutt
|
699a54a022
|
Misc changed to get the SAMA5 ELF configuration with address environments working
|
2014-08-25 13:28:13 -06:00 |
|
Gregory Nutt
|
8907616478
|
Cortex-A/SAMA5 address environment support is code complete (untested)
|
2014-08-25 11:18:32 -06:00 |
|
Gregory Nutt
|
2566ba7b1d
|
Change naming of ELF interfaces from arch_ to up_ for consistency
|
2014-08-25 06:47:14 -06:00 |
|
Gregory Nutt
|
1f5813a763
|
After cached related fix, the ELF example is now functional
|
2014-08-24 14:12:45 -06:00 |
|
Gregory Nutt
|
839e206a4a
|
Modify ADDRENV Kconfigs. Z180 does not need all of the virtual address settings that the ARM does
|
2014-08-24 12:54:37 -06:00 |
|
Gregory Nutt
|
dde84a0a20
|
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
|
95c79c675c
|
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
|
66abb71c57
|
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
|
41196945d6
|
ARMv7-A: Add skeleton environment and build support for process address environments
|
2014-08-23 18:59:24 -06:00 |
|
Gregory Nutt
|
29406c0d20
|
Add option to select 64-bit build platform
|
2014-08-22 18:21:32 -06:00 |
|
Gregory Nutt
|
01566dd322
|
STM32 serial: MAke uart_devs[] const. From Freddie Chopin
|
2014-08-22 16:20:52 -06:00 |
|
Gregory Nutt
|
52b3735310
|
Recent STM32 UART change: Wasn't that logic backward? Shouldn't that have been disable the USART if (1) we don't have than many USARTs OR (2) we don't have that particular USART -- not AND.
|
2014-08-22 16:16:23 -06:00 |
|
Gregory Nutt
|
f58ba70547
|
A few fixes for compilation errors due to recent address environment fixes
|
2014-08-22 15:55:00 -06:00 |
|
Gregory Nutt
|
d989807e76
|
uintptr_t should be 64-bits under Cygwin64
|
2014-08-22 15:18:55 -06:00 |
|
Gregory Nutt
|
d40553b538
|
An address environment is the property of a task group, not of a thread
|
2014-08-22 12:32:34 -06:00 |
|
Gregory Nutt
|
b01d3e396e
|
STM32 F401: Only 3 USARTS, but need to set STM32_NUSARTS to six because they are not numbered sequentially
|
2014-08-22 09:02:58 -06:00 |
|