Commit Graph

584 Commits

Author SHA1 Message Date
Gregory Nutt
e3fe320e08 SMP: Add support for linking spinlocks into a special, non-cached memory region. 2016-11-26 08:47:03 -06:00
Gregory Nutt
6a875bcb61 Xtensa: Add EXPERIMENTAL hooks to support lazy co-processor state restore in the future. 2016-11-16 06:48:13 -06:00
Gregory Nutt
c84db68103 Xtensa ESP32: Fix some compilation errors that snuck with some of the last changes 2016-11-14 13:29:08 -06:00
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
b0dffdc2ca Fix a number of header files with mismatched 'extern C {' and '}' 2016-11-05 07:25:05 -06:00
Gregory Nutt
5cfb83ec81 ESP32: File repeated in Make.defs 2016-11-03 17:47:09 -06:00
Gregory Nutt
0a5b4f684a arch: Disable priority inheritance on all semaphores used for signaling in the rest of the MCU drivers 2016-11-03 17:38:26 -06:00
Gregory Nutt
54d7656f18 Update some comments 2016-11-03 07:04:03 -06:00
Gregory Nutt
cfcc7edded Xtensa/ESP32: Add window spill logic; Add C++ support to linker script 2016-10-31 17:51:48 -06:00
Gregory Nutt
4d0b0e44f1 Xtensa/ESP32: Add up_cpu_idlestack() and fix some compile issues. 2016-10-31 14:56:48 -06:00
Gregory Nutt
28d1478480 Xtensa/ESP32: Add CPU1 startup logic 2016-10-31 13:15:15 -06:00
Gregory Nutt
a8e3f79494 Xtensa/ESP32: Add User Exception handler 2016-10-31 12:04:52 -06:00
Gregory Nutt
a787a99071 ESP32: Add inter-cpu interrupts 2016-10-31 08:29:28 -06:00
Gregory Nutt
63d5ab5b67 Add logic to attach inter-CPU interrupts. Fix some compilation errors. 2016-10-30 16:15:04 -06:00
Gregory Nutt
6ff833e56e Forgot to add a file in the last commit 2016-10-30 15:40:42 -06:00
Gregory Nutt
85ed3dae9a Update some compilation issues 2016-10-30 15:38:51 -06:00
Gregory Nutt
a4c3fef0b7 Xtensa: Add more exception vectors. All just cause a PANIC now. 2016-10-30 12:20:11 -06:00
Gregory Nutt
fdede8099b Xtensa/ESP32: Add Level1 handler, panic handler, remove EXECHOOKS. 2016-10-30 10:57:57 -06:00
Gregory Nutt
eaa5968a22 Xtensa: Convert some CALL0 C calls to be compatible with Window ABI 2016-10-30 08:46:35 -06:00
Gregory Nutt
261e0edc61 Xtensa: Adapt co-processor state save/restore functions so that they are call-able from C with Windows ABI. 2016-10-30 08:35:09 -06:00
Gregory Nutt
c0da94fc3e Xtensa: Remove xtensa_macros.h; duplicates xtensa_abi.h 2016-10-30 07:45:28 -06:00
Gregory Nutt
8c96221093 Xtensa: Replace CONFIG_XTENSA_CALL0_ABI with compiler defined __XTENSA_CALL0_ABI__ 2016-10-30 07:37:51 -06:00
Gregory Nutt
dc82fa81b8 Xtensa: Remove XTENSA_EXTRA_SA_SIZE. It is not used. 2016-10-30 07:09:24 -06:00
Gregory Nutt
4997ec7a1e ESP32 Core V2: Add an SMP configuration to support development (not yet usable). 2016-10-29 14:56:07 -06:00
Gregory Nutt
c993a0267c Xtensa: Add Window vector 2016-10-29 12:30:24 -06:00
Gregory Nutt
804f9c5de7 Xtensa: Rename some files. 2016-10-29 11:24:02 -06:00
Gregory Nutt
d346f25aae Xtensa/ESP32: Fix some compile issues related to new co-processor logic 2016-10-29 10:27:46 -06:00
Gregory Nutt
4943b09ffa Xtensa: Remove co-processor ownership array. I think that this is not needed (but I might be wrong). 2016-10-29 09:50:51 -06:00
Gregory Nutt
ccf5b4e357 Xtensa: Cleanup of co-processor logic; remove some unnecessary things. 2016-10-29 09:36:33 -06:00
Gregory Nutt
2fa8b9ba34 Xtensa ESP32: Co-processor state is code complete but uncompiled and untested. 2016-10-28 13:03:25 -06:00
Gregory Nutt
9345c6f4db Xtensa: More co-processor save logic. Still not complete. 2016-10-28 11:56:35 -06:00
Gregory Nutt
a90d0bbf2e ESP32: A little more co-processor logic. Still not complete. 2016-10-28 11:19:23 -06:00
Gregory Nutt
b4b26285f1 ESP32: Add tie-asm.h 2016-10-28 10:53:14 -06:00
Gregory Nutt
be2a801e30 Xtensa: Add xtensa_coproc.h 2016-10-28 10:33:20 -06:00
Gregory Nutt
e93bcda8ae ESP32: Partial co-processor state save logic. Incomplete and will probably be redesigned. 2016-10-28 09:05:39 -06:00
Gregory Nutt
1e7f78e5c0 ESP32: Add implementation of up_putc 2016-10-27 18:27:19 -06:00
Gregory Nutt
4b16a64212 sched/Kconfig: Add ranges to START_YEAR, MONTH, and DATE 2016-10-27 18:13:31 -06:00
Gregory Nutt
e6377641a8 sched/Kconfig: Add ranges to START_YEAR, MONTH, and DAY 2016-10-27 18:04:14 -06:00
Gregory Nutt
afcda29646 ESP32: Fix some warnings 2016-10-27 16:46:34 -06:00
Gregory Nutt
6ed5d4b20c ESP32: Fix some compilation errors 2016-10-27 16:36:22 -06:00
Gregory Nutt
c52ee46f5f ESP32: More logic added to serial driver. 2016-10-27 16:02:04 -06:00
Paul A. Patience
912fe06a86 Add architecture-specific inttypes.h 2016-10-27 16:01:38 -04:00
Gregory Nutt
6f7c03bd71 ESP32: Add initial serial driver. Taken from SAMV7; not fully converted. Does not yet compile. 2016-10-27 13:55:58 -06:00
Gregory Nutt
bc51fdb96c ESP32: Add GPIO signal mapping file 2016-10-27 11:04:24 -06:00
Gregory Nutt
cf73c9e1d1 EPS32: Add GPIO ROM interface definitions 2016-10-27 10:43:58 -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
76788040d5 ESP32: Add esp32_config.h 2016-10-26 15:45:03 -06:00
Gregory Nutt
ca7ca0eb57 ESP32: More compilation issues 2016-10-26 12:59:31 -06:00
Gregory Nutt
0a96f3a8c8 ESP32: Fix some compilation issues 2016-10-26 12:50:10 -06:00
Gregory Nutt
650757bbf0 ESP32: Add GPIO support 2016-10-26 12:11:24 -06:00
Gregory Nutt
946045075e ESP32: Remove some long lines in header file 2016-10-26 08:23:09 -06:00
Gregory Nutt
2c09279343 ESP32: Add beginning of GPIO register definition file 2016-10-26 06:27:02 -06:00
Gregory Nutt
b8462d3e04 ESP32: Need to take priority into account when allocating CPU interrupts 2016-10-25 16:27:58 -06:00
Gregory Nutt
fef7b414c5 Add logic to attach peripheral interrupt sources to CPU interrupts 2016-10-25 15:19:29 -06:00
Gregory Nutt
6756b44dc3 ESP32: Add framework to assign a a peripheral to a CPU interrupt 2016-10-25 13:16:05 -06:00
Gregory Nutt
d5fceadacd Xtensa: Fix some compilation issues 2016-10-25 12:34:23 -06:00
Gregory Nutt
2a59205ffa ESP32: Add CPU interrupt managmement logic; improve level interrupt decoding. 2016-10-25 12:02:53 -06:00
Gregory Nutt
c457e26f2a ESP32: Add UART register definition file 2016-10-25 08:35:07 -06:00
Gregory Nutt
1dabbd8489 Costmetic changes 2016-10-24 16:18:30 -06:00
Gregory Nutt
3d4ce55ebd Oops.. a couple of hunks failed in the last patch. Hope I got them fixed correctly. 2016-10-24 15:25:40 -06:00
Gregory Nutt
7b7e352d6e ESP32: Add some peripheral configuration 2016-10-24 14:09:47 -06:00
Gregory Nutt
818b0171d7 ESP32: Clock configuration is not yet implemented. ESP32 will be running a XTAL frequency. 2016-10-24 07:30:11 -06:00
Gregory Nutt
4cf60022ca Xtensa: Correct some compile issues 2016-10-23 16:25:55 -06:00
Gregory Nutt
2514ddec8b Xtensa: Add NMI handler 2016-10-23 16:24:09 -06:00
Gregory Nutt
261eec110b Xtensa: Mismatched #endif 2016-10-23 14:19:08 -06:00
Gregory Nutt
9a9488ae92 ESP32: Fix heap initialization 2016-10-23 14:20:03 -06:00
Gregory Nutt
a41c98952c Xtensa: Fix some compilation issues 2016-10-23 13:33:48 -06:00
Gregory Nutt
1166d44441 Minor improvement to the up_irq_save() implementation 2016-10-23 13:37:40 -06:00
Gregory Nutt
6bbe55602c Xtensa: Add tie.h 2016-10-23 13:25:41 -06:00
Gregory Nutt
1fcced12eb Xtensa: Timer code now compiles okay 2016-10-23 11:31:48 -06:00
Gregory Nutt
2b33768d09 Xtensa: Revert back to some XCHAL naming 2016-10-23 10:39:51 -06:00
Gregory Nutt
bf363d103b Merge branch 'esp32' of bitbucket.org:nuttx/nuttx into esp32 2016-10-23 10:47:31 -06:00
Gregory Nutt
9f06b13ffb Xtensa: Add core.h header file 2016-10-23 10:43:16 -06:00
Gregory Nutt
9b5fedc81e Xtensa: Add implementation of system timer; Correct CFLAGS 2016-10-23 10:08:38 -06:00
Gregory Nutt
c3d76d56bc Xtensa: Fix some compilation issues 2016-10-23 10:06:30 -06:00
Gregory Nutt
09b462e419 Xtensa: Add region protected; Implement some missing signal handling logic. 2016-10-23 09:02:50 -06:00
Gregory Nutt
112b62a14e Xtensa: Correct variou compilation issues 2016-10-23 08:04:57 -06:00
Gregory Nutt
a9a4f6384d Xtensa: Add interrupt enable/disable controls. Add dummy timer and IRQ initialization. 2016-10-23 08:00:17 -06:00
Gregory Nutt
ea175cd98b Xtensa: Flesh out other interrupt handlers. Suppress nested interrupts, at least for now. 2016-10-23 07:08:19 -06:00
Gregory Nutt
75df09fd40 Remove support for software prioritization of interrupts 2016-10-23 06:37:28 -06:00
Gregory Nutt
2c83d79465 Xtensa: Remove 'virtual' interrupt support 2016-10-23 06:24:35 -06:00
Gregory Nutt
23b003c649 Xtensa: Some things in Kconfig are really core options, not user configurations. 2016-10-22 12:25:56 -06:00
Gregory Nutt
53de345f05 Xtensa: Add up_cpu_index() 2016-10-22 09:29:15 -06:00
Gregory Nutt
764ef72641 Xtensa: Restore XCHAL_ naming convenction 2016-10-22 09:03:43 -06:00
Gregory Nutt
1ea22b680d Xtensa: Add timer dispatch logic 2016-10-21 13:23:28 -06:00
Gregory Nutt
cf217c6e87 Xtensa: Fix a few more compilation issues 2016-10-21 11:24:23 -06:00
Gregory Nutt
c8fd15d315 Merge branch 'esp32' of bitbucket.org:nuttx/nuttx into esp32 2016-10-21 10:44:21 -06:00
Gregory Nutt
f07601a067 Xtensa: First cat at context switching functions 2016-10-21 10:43:59 -06:00
Gregory Nutt
7a007a1e8e ESP32: The ESP32 Core V2 board does not have any user controllable LEDs. 2016-10-21 07:35:56 -06:00
Gregory Nutt
363fe19ff6 Xtensa: Fix some compile issues 2016-10-20 16:42:37 -06:00
Gregory Nutt
7a89808deb ESP32: Add interrupt decode logic 2016-10-20 16:22:37 -06:00
Gregory Nutt
bd6633dd84 Xtensa: Add some data structures needed for SMP support. 2016-10-20 15:21:29 -06:00
Gregory Nutt
67c98baaea Xtensa: Add a missing include file 2016-10-20 14:28:13 -06:00
Gregory Nutt
520513f456 Xtensa: Add interrupt decode framework 2016-10-20 14:34:51 -06:00
Gregory Nutt
ed8377af72 Xtensa: More interrupt-related logic 2016-10-20 14:28:14 -06:00
Gregory Nutt
9e1600b7d3 Xtensa: Trivial interrupt-related changes 2016-10-20 12:56:35 -06:00
Gregory Nutt
30c4a41332 Fix a few compile-related issues 2016-10-20 11:33:53 -06:00
Gregory Nutt
5c3afd088e Xtensa: A little more interrupt handling logic 2016-10-20 11:44:14 -06:00
Gregory Nutt
d75fb34b62 Xtensa: Fix some xtensa_context.S assemble issues 2016-10-20 08:58:33 -06:00
Gregory Nutt
11af1fc24c Xtensa: Separate context save/restore from coprocessor functions. Making to changes to interrupt handling to support NuttX. 2016-10-20 08:51:15 -06:00
Gregory Nutt
d2d60a59bf ESP32: Refresh configuration; fix some compile issues 2016-10-19 13:58:50 -06:00
Gregory Nutt
dda7f4cd75 Trivial corrections to spacing 2016-10-19 14:01:51 -06:00
Gregory Nutt
d1562a18e6 Add vectors for interrupt levels 2-6 2016-10-19 13:58:51 -06:00
Gregory Nutt
291c49afc3 Xtensa/ESP32: Move some ESP32-specific macros from xtensa_macros.h to chip_macros.h 2016-10-19 11:28:42 -06:00
Gregory Nutt
31d5acc8a7 Forgot to add a file before the last commit 2016-10-19 10:06:07 -06:00
Gregory Nutt
29c3acdc4e Add xtensa_testset.c 2016-10-19 09:58:12 -06:00
Gregory Nutt
8c606c4878 ESP32: Add more missing infrastructure 2016-10-18 13:18:59 -06:00
Gregory Nutt
6357970c5f Xtensa: Fix some compilation issues 2016-10-18 12:38:57 -06:00
Gregory Nutt
503a2472e7 Xtensa: Add assertion logic 2016-10-18 12:42:57 -06:00
Gregory Nutt
054a1a8231 ESP32 Core: Refresh configuration 2016-10-18 09:41:16 -06:00
Gregory Nutt
ac97a81fb0 ESP32 core: Add linker script 2016-10-18 09:43:56 -06:00
Gregory Nutt
c5d14f9496 Xtensa: A few changes to get esp32_start.c to compile 2016-10-17 10:45:21 -06:00
Gregory Nutt
51fc3de40b Xtensa: Add CPU1 start logic 2016-10-17 09:13:12 -06:00
Gregory Nutt
c1334048c5 Xtensa: Add initial CPU0 start-up logic 2016-10-17 08:15:36 -06:00
Gregory Nutt
0591b67c15 Xtensa: A few fixes for clean compile 2016-10-16 10:27:52 -06:00
Gregory Nutt
e7d791dd95 XTensa: Add an initial implementation of up_initialstate. Need to think through co-processor support. 2016-10-16 10:36:03 -06:00
Gregory Nutt
8c3c78f24a Xtensa: Fix register usage in up_strackframe 2016-10-16 09:26:33 -06:00
Gregory Nutt
a8662c70db Xtensa: Keep task state in TCB (unless you want to redesign signal handling). Lots of cosmetic clean-up. 2016-10-16 07:57:16 -06:00
Gregory Nutt
275120a6d1 XTENSA: Add some context switching definitions (incomplete); ESP32: Add some dummy LED definitions 2016-10-15 14:57:06 -06:00
Gregory Nutt
eada2bf8d8 XTENSA: Add function prototypes 2016-10-15 12:23:36 -06:00
Gregory Nutt
8ffbf6d95e XTENSA: Hook xtensa_irq.S into build 2016-10-15 11:46:21 -06:00
Gregory Nutt
4621784617 Add xtensa.h (which is call up_internal.h in other architectures. 2016-10-15 11:45:15 -06:00
Gregory Nutt
0a0278a3ca XTENSA: Add and architecture Makefile. Initial verion is just the MIPS Makefile. 2016-10-15 11:36:48 -06:00
Gregory Nutt
43d08db1a0 XTENSA: Add some interrupt controls 2016-10-15 11:29:50 -06:00
Gregory Nutt
0be3d12ba0 ESP32: Add option for interrupt support 2016-10-15 10:11:35 -06:00
Gregory Nutt
6f35ced002 ESP32: Add peripheral interrupt IRQ numbers 2016-10-15 08:39:15 -06:00
Gregory Nutt
e3ead1db69 Xtensa: Add an initial guess at the form of struct xcpcontext 2016-10-14 13:17:48 -06:00
Gregory Nutt
c078573677 Add some .gitignore files 2016-10-13 16:29:50 -06:00
Gregory Nutt
04940840b6 ESP32 Core: Correct tool-related prefix and path 2016-10-13 14:48:29 -06:00
Gregory Nutt
43c46fd34c ESP32 Core: Add a dummy Toolchain.defs. Fix some cloning errors left in the NSH configuration. 2016-10-13 14:40:43 -06:00
Gregory Nutt
25331aeb63 ESP32 Core: Add an NSH configuration for build testing 2016-10-13 14:37:28 -06:00
Gregory Nutt
852330876b arch/xtensa: A little more ESP32 configuration logic 2016-10-12 14:50:28 -06:00
Gregory Nutt
55523f5771 arch/xtensa: Add a few basic XTENSA/LX6 files. Not yet enough to do anything with 2016-10-12 13:11:05 -06:00