Gregory Nutt
ac1bb127b6
Correct some C++ style comments.
2016-11-08 08:51:03 -06:00
Gregory Nutt
b6d6b774e9
Xtensa: In this model, co-processor state restore must enable co-processors in CPENABLE.
2016-11-08 08:23:52 -06:00
Gregory Nutt
6d2a10571f
Update README
2016-11-08 08:22:07 -06:00
Marc Rechté
58c2cd2843
drivers/ioexpander: Add some debug output.
2016-11-08 07:46:25 -06:00
Gregory Nutt
9045959aa6
Update TODO and README
2016-11-08 07:45:21 -06:00
Gregory Nutt
d675901913
ESP32: Update README.
2016-11-07 11:03:01 -06:00
Ramtin Amin
693f8d743d
LM32: Move interrupt definitions from common irq.h to lm32/irq.h. Remove unused misoc_uart.c and .h
2016-11-07 10:13:53 -06:00
Ramtin Amin
2964779985
configs/misoc: Add an NSH configuration
2016-11-07 10:10:44 -06:00
Gregory Nutt
3cb1e0e67f
STM32F7: Fix Make.defs. Would not work if only SDMMC2 were enabled.
2016-11-07 09:37:22 -06:00
Marc Rechté
eb9a8ed790
STM37xx PWM: Add PWM driver support for STMF37xx. The changes have been tested successfuly for TIM4 and TIM17 (different IPs).
2016-11-07 09:35:48 -06:00
Gregory Nutt
1344d8b466
STM32F746-WS: A few repairs to the nsh/defconfig for USB support.
2016-11-07 09:20:47 -06:00
Gregory Nutt
dd04d73afe
STM32F7 SD/MMC driver depends on CONFIG_SDIO_DMA which is only defined in stm32/Kconfig. Changed to CONFIG_STM32F7_SDMMC_DMA and defined in stm32f7/Kconfig.
2016-11-07 09:16:34 -06:00
Gregory Nutt
ac6581acec
Changes from review of last PR
2016-11-07 08:28:39 -06:00
Gregory Nutt
c0af101257
Remove Eclipse project garbage
2016-11-07 08:12:33 -06:00
Gregory Nutt
261aef1e0d
Merged in petekol/nuttxnsm (pull request #168 )
...
stm32f7 important usb fixes
2016-11-07 14:08:00 +00:00
Gregory Nutt
424ffc76dc
LM32: Add missing _exit() logic (untested)
2016-11-07 07:31:15 -06:00
Gregory Nutt
86ef659ee5
LM32: Fix a typo in my many patching; eliminate some warnings
2016-11-07 07:16:53 -06:00
Gregory Nutt
6e10fed8a3
Merge branch 'misoc'
2016-11-07 07:05:19 -06:00
Gregory Nutt
155f863ca1
Update README
2016-11-07 07:04:44 -06:00
Ramtin Amin
fe2b755791
LM32: Correct some assembly language interrupt handling issues. Now the basic port seems functional.
2016-11-07 06:54:57 -06:00
Lok Tep
d6315a3084
del stm32f74xx75xx_sdmmc.h
2016-11-07 13:12:52 +01:00
Gregory Nutt
89c3c20052
Merge remote-tracking branch 'origin/master' into misoc
2016-11-06 11:09:05 -06:00
Gregory Nutt
5ac9136b21
LM32: Implement some commented out logic in lm32_dumpstate
2016-11-06 10:46:11 -06:00
Gregory Nutt
860c0f5873
Update TODO list.
2016-11-06 10:15:01 -06:00
Gregory Nutt
120d29b480
Update some Kconfig comments
2016-11-06 09:06:37 -06:00
Gregory Nutt
1753949045
Update README
2016-11-06 08:55:15 -06:00
Gregory Nutt
c1a687a4e5
Trivial changes from review of last PR
2016-11-06 08:11:01 -06:00
Gregory Nutt
1fb2822b15
Merged in heesub/nuttx/fix-armv7r (pull request #167 )
...
Fix armv7r
2016-11-06 14:03:19 +00:00
Gregory Nutt
e74fa0d05b
Merge branch 'master' of bitbucket.org:nuttx/nuttx
2016-11-06 08:01:16 -06:00
Heesub Shin
8e94d8e7cc
Signal sent from work_signal() may interrupt the low priority worker thread that is already running. For example, the worker thread that is waiting for a semaphore could be woken up by the signal and break any synchronization assumption as a result. It also does not make any sense to send signal if it is already running and busy. This commit fixes it.
2016-11-06 08:00:12 -06:00
Heesub Shin
3c2a00bc4b
LP worker: When queuing new work, don't signal any threads if they are all busy
2016-11-06 07:56:38 -06:00
Heesub Shin
bda7d9ee4d
ARMv7-R: fix to restore the Thumb flag in CPSR
...
Thumb flag in CPSR is not restored back when the context switch occurs
while executing thumb instruction.
Reported-by: Eunbong Song <eunb.song@samsung.com>
Signed-off-by: Byoungtae Cho <bt.cho@samsung.com>
Signed-off-by: Heesub Shin <heesub.shin@samsung.com>
2016-11-06 21:48:02 +09:00
Heesub Shin
343243c7c0
ARMv7-R: fix CPSR corruption after exception handling
...
A sporadic hang with consequent crash is observed when booting:
arm_prefetchabort: Prefetch abort. PC: 04d34a00 IFAR: 04d34a00 IFSR: 00000008
up_assert: Assertion failed at file:armv7-r/arm_prefetchabort.c line: 87 task: init
up_dumpstate: Current sp: 004c3df0
up_dumpstate: Interrupt stack:
up_dumpstate: base: 004c05fc
up_dumpstate: size: 00000800
up_dumpstate: User stack:
up_dumpstate: base: 004c3f58
up_dumpstate: size: 00000fec
up_dumpstate: User Stack
up_stackdump: 004c3de0: 004a0d14 004c3df0 004c3f58 004a0d20 00000057 004c2c58 09000000 004a42a4
up_stackdump: 004c3e00: 00000003 004c3e10 004a0f1c 004bbcef 33c44b00 004a0f28 04d34a00 00000008
up_stackdump: 004c3e20: 00000008 004a01bc 004bfd38 00000001 00007fff 00000001 34134a00 d83e4c00
up_stackdump: 004c3e40: 09000000 00000000 33c44b00 d83e4c00 0c3f4c00 00000000 00000000 00000003
up_stackdump: 004c3e60: 004c3e70 004a1494 04d34a00 200b0253 004c3ed8 004a5298 004c3ed8 6d00006d
up_stackdump: 004c3e80: 0000006d 004bc3f4 00000009 004a4f64 00000009 b9e0784f 333f3ed0 69d4227d
up_stackdump: 004c3ea0: d81f09bd 0f867344 5a7e2c12 8acefd34 5d00dc1b 004bc432 004c3f08 004c0e08
up_stackdump: 004c3ec0: 00000000 00000000 00000000 00000000 00000000 004a4210 004a5258 004a5300
up_stackdump: 004c3ee0: 00000000 00000001 ffffffff 004c3f80 000002b0 004a4234 00000007 004c3f08
up_stackdump: 004c3f00: 004a58b4 004bc432 004bc3f4 004c3f80 000002b0 0000029c 00000000 0000029c
up_stackdump: 004c3f20: 00000000 004a5900 0000ff01 00000000 00000000 004a61f4 00000000 004a5fa4
up_stackdump: 004c3f40: 00000000 004a5f6c 00000000 004a2668 00000000 00000000 b7509f04 004c3f64
up_registerdump: R0: 00000001 00007fff 00000001 34134a00 d83e4c00 09000000 00000000 33c44b00
up_registerdump: R8: d83e4c00 0c3f4c00 00000000 00000000 00000003 004c3e70 004a1494 04d34a00
up_registerdump: CPSR: 200b0253
It seems to be caused by the corrupted or wrong CPSR restored on return
from exception. NuttX restores the context using code like this:
msr spsr, r1
GCC translates this to:
msr spsr_fc, r1
As a result, not all SPSR fields are updated on exception return. This
should be:
msr spsr_fsxc, r1
On some evaluation boards, spsr_svc may have totally invalid value at
power-on-reset. As it is not initialized at boot, the code above may
result in the corruption of cpsr and thus unexpected behavior.
Reported-by: Eunbong Song <eunb.song@samsung.com>
Signed-off-by: Heesub Shin <heesub.shin@samsung.com>
2016-11-06 20:48:09 +09:00
Heesub Shin
6bfc6b4d23
ARMv7-R: fix typo in mpu support
...
s/ARMV7M/ARMV7R/g
Reported-by: Eunbong Song <eunb.song@samsung.com>
Signed-off-by: Heesub Shin <heesub.shin@samsung.com>
2016-11-06 20:48:09 +09:00
Heesub Shin
003511d198
ARMv7-R: add cache handling functions
...
This commit adds functions for enabling and disabling d/i-caches which
were missing for ARMv7-R.
Signed-off-by: Heesub Shin <heesub.shin@samsung.com>
2016-11-06 20:48:01 +09:00
Heesub Shin
6a1a846011
ARMv7-R: add new Kconfig entries for d/i-cache
...
Unlike in ARMv7-A/M, Kconfig entries for data and instruction caches
are currently missing in ARMv7-R. This commit adds those missing Kconfig
entries. Actual implmenetation for those functions will be added in the
subsequent patches.
Signed-off-by: Heesub Shin <heesub.shin@samsung.com>
2016-11-06 16:07:46 +09:00
Heesub Shin
2b922fcdbd
ARMv7-R: remove the redundant update on SCTLR
...
mpu_control() is invoking cp15_wrsctlr() around SCTLR update
redundantly.
Signed-off-by: Heesub Shin <heesub.shin@samsung.com>
2016-11-06 16:07:45 +09:00
Heesub Shin
05d477661b
ARMv7-R: fix invalid drbar handling
...
In ARMv7-R, [31:5] bits of DRBAR is physical base address and other bits
are reserved and SBZ. Thus, there is no point in passing other than the
base address.
Signed-off-by: Heesub Shin <heesub.shin@samsung.com>
2016-11-06 16:07:41 +09:00
Heesub Shin
af6e4f59c6
ARMv7-R: fix compilation error
...
This commit fixes compilation errors on MPU support for ARMv7-R.
Signed-off-by: Heesub Shin <heesub.shin@samsung.com>
2016-11-06 16:07:38 +09:00
Heesub Shin
96a200a71c
ARMv7-R: fix typo
...
fix trivial typo: s/ARMv7-A/ARMv7-R/
Signed-off-by: Heesub Shin <heesub.shin@samsung.com>
2016-11-06 16:07:36 +09:00
Gregory Nutt
45f549d2b8
LM32: Back out part of last change
2016-11-05 17:39:06 -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
6f1c5e7b43
Add some comments.
2016-11-05 09:44:29 -06:00
Gregory Nutt
bb5cd37409
Merge branch 'misoc' of bitbucket.org:nuttx/nuttx into misoc
2016-11-05 08:50:16 -06:00
Gregory Nutt
5dc9d963f6
configs/misco: CONFIG_DEFAULT_SMALL should not be set either. It is really too late now, hoever, because all of the small defaults have already been set.
2016-11-05 08:49:50 -06:00
Gregory Nutt
479c9776a7
configs/misoc: Should not have CONFIG_MM_SMALL set in defconfig.
2016-11-05 08:42:33 -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
3f150daf96
LM32: Oops, missed one line of code in the manual application of a patch
2016-11-04 19:41:43 -06:00
Gregory Nutt
1c05eb651c
LM32: lm32_vectors.S needs to call lm32_doirq(), passing two parameters
2016-11-04 19:29:54 -06:00
Gregory Nutt
0b83e8afaa
LM32: Remove some extra spacing
2016-11-04 17:48:24 -06:00