Gregory Nutt
b49f8b3baf
Tiva: Add a configuration setting to better distinguish TM4C123 and 129 families. Reanem tm4c_syscontrol.h to tm4c123_syscontrol.h; rename tm4c129x_syscontrol.h to tm4c129_syscontrol.h
2014-12-20 08:38:11 -06:00
Gregory Nutt
ffae2cb3d7
Tiva: Updates to system control regiser definitions
2014-12-20 08:22:17 -06:00
Gregory Nutt
16a302e732
STM32 LTDC: Move ltdc.h from include/nuttx/video to arch/arm/include/stm32; Trivial updates after general review
2014-12-19 14:52:17 -06:00
Gregory Nutt
44d72c6545
stm32: Add configuration option for ltdc
...
This adds the following ltdc configuration options:
- dither support
- cmap support, is this the right place for CONFIG_FB_CMAP?
- support for extended ltdc interface
Signed-off-by: Marco Krahl <ocram.lhark@gmail.com>
2014-12-19 13:58:39 -06:00
Gregory Nutt
193edfb7be
stm32: implements ltdc frambuffer and support for ltdc layer operation
...
This implements the framebuffer support for the generic nuttx framebuffer
interface, (see nuttx/video/fb.h)
This also implements the interface to perform hardware accelerated layer
operation by the ltdc controller and dma2d controller later (see
nuttx/video/ltdc.h).
The following methods are supported by the ltdc interface:
- getvideoinfo
Get video information of the layer
- getplaneinfo
Get plane information of the layer
- getlid
Handle specific layer identifier. This allows to detect to current layer
state (e.g. important for layer flipping)
- setclut
Set the layer color lookup table. Up to 256 color entries supported.
- getclut
Get the layer color lookup table
- setcolor
Set the default layer color. In the context of the ltdc layer this means set
the default color outside the active area or if the layer is disabled.
- getcolor
Get the default layer color
- setcolorkey
Set the layer colorkey (chromakey). Colorkey is enabled by blendmode
LTDC_BLEND_COLORKEY
- getcolorkey
Get the layer colorkey
- setalpha
Set the constant alpha value. If blend mode LTDC_BLEND_SRCPIXELALPHA or
LTDC_BLEND_DESTPIXELALPHA is defined than the blended color is calculated
by the formel:
Cdest = Pixelalpha * Constalpha * Csrc.
Otherwise:
Cest = Constalpha * Csrc
- getalpha
get the alpha value
- setblendmode
Set the layer blendmode.
Supported blendmodes:
non blendmode (do not perform blend operation independent on the layers
alpha and colorkey)
alpha alpha blending (transparency)
destpixelalpha use pixel alpha value for the top layer (Layer2)
srcpixelalpha use pixel alpha value for the subjacent layer (Layer1)
colorkey enable colorkey
- getblendmode
Get the layer blendmode
- setarea
Set the active layer area, the visible rectangle inside the whole layer.
This also allows to change the position of the whole layer which is visible in
the selected area independent on the area position.
- getarea
Get the active layer area
- update
Reload the layer shadow register and make changes visible. Also supports
layer flipping.
Note! Dithering and background color are static parameter and can only changed
at build time.
Implementation details:
The implementation of ltdc interface was inspired by SDL and DirectFB.
All layer settings are shadowed before they become active (except setclut).
They are still inactive until the layer is updated. This is done by the update
method. Should clut only active after an update or not? Clut is used for drawing
while the other settings usually used for blend or blit operations. So i think
this should be the right way.
The implementation of ltdc interface was inspired by SDL and DirectFB.
All layer settings shadowed before they become active (except clut).
They are still inactive until the layer is updated. This is done by the update
call. Should clut only activated after an update or not? Clut is used for draw
operation while the other settings usually used for blend or blit operations.
So i think this should be the right way.
Deviations from the ltdc hardware implementation:
- Shadow register update of both layer (Layer1 or Layer2) is independent as long
LTDC_UPDATE_SIM is not set. This flag allows to update both layer simultaneous.
Otherwise only the desired layer is updated.
Layer operation:
Keep in mind, both layer are allways active (of course if both enabled by the
configuration). First the Layer 1 is blended with the background color and the
result is blended with the Layer2. To avoid blend effects, set the Layer2 in non
blend mode. This is equal to blend with alpha = 255. Enable blending of Layer2
with the background color by enable blending of Layer1 and disable the opacity
by setting the alpha value to 0.
Layer flip:
A layer flip usual mean swapping two framebuffer. So the current inactive buffer
can refreshed with data while the active framebuffer is visible. A flip
operation changes the inactive layer to the active one and vice versa.
The ltdc implementation supports layer flip. This can be done by the update call
and the flag LTDC_UPDATE_FLIP. In this case ltdc makes the inactive layer
invisible. In detail, the inactive layer is disabled and the blendmode reset.
Detection of the current layer state (e.g. active or inactive) is supported
by the getlid method combined with one of the LTDC_LAYER_* flags.
Maybe an additional method "flip" for flip operation should be added to the ltdc
interface? But this make no sence from my view if the layer is a non LTDC layer,
e.g. playing with dma2d only.
Supported and tested nuttx pixel formats:
Single Layer without LTDC interface support:
- FB_FMT_RGB8 (cmap support required)
- FB_FMT_RGB16_565
- FB_FMT_RGB24
Single Layer with LTDC interface support:
- FB_FMT_RGB8 (cmap support required)
- FB_FMT_RGB16_565
- FB_FMT_RGB24
Dual Layer with LTDC interface support:
- FB_FMT_RGB8 (cmap support required)
- FB_FMT_RGB16_565
- FB_FMT_RGB24
Why is FB_FMT_ARGB8888 missing?
Changes:
- Remove unused register debug method.
Todo:
- Add support for backlight, currently not neccessary
Did i forgot something? Take a look in the ltdc example or the interface
description (see nuttx/include/video/ltdc.h).
Thanks to Ken for the base layout. ;)
Signed-off-by: Marco Krahl <ocram.lhark@gmail.com>
2014-12-19 13:48:53 -06:00
Gregory Nutt
83d87e5ef7
stm32: Add infrastructure for dma2d support
...
Signed-off-by: Marco Krahl <ocram.lhark@gmail.com>
2014-12-19 13:41:08 -06:00
Gregory Nutt
060a61dfac
stm32: Add common stm32 layer description. This defines a common layer description for the ltdc and dma2d controller.
...
Signed-off-by: Marco Krahl <ocram.lhark@gmail.com>
2014-12-19 13:37:08 -06:00
Gregory Nutt
df31cf1db8
stm32: configure PLLSAI clock to enable ltdc register access
...
Signed-off-by: Marco Krahl <ocram.lhark@gmail.com>
2014-12-19 13:30:58 -06:00
Gregory Nutt
3385fe60cf
stm32: Add missing clut register definition
...
Signed-off-by: Marco Krahl <ocram.lhark@gmail.com>
2014-12-19 13:28:42 -06:00
Gregory Nutt
e9074c8a44
stm32: rename CFBLR register name to the name used in the reference manual
...
Signed-off-by: Marco Krahl <ocram.lhark@gmail.com>
2014-12-19 13:26:04 -06:00
Gregory Nutt
f181dcef29
stm32: rename PLLSAI register name to this one in the reference manual
...
Signed-off-by: Marco Krahl <ocram.lhark@gmail.com>
2014-12-19 13:21:39 -06:00
Gregory Nutt
58e4e69656
TM4C129X: Add custom system control header file (incomplete)
2014-12-19 12:12:52 -06:00
Gregory Nutt
da700ddc06
Tiva: Fix configuration logic for IRQ interrupts. The various parts support varying numbers of GPIO blocks and with varying capabilities to support interrupts on the pins of different GPIO blocks
2014-12-18 15:33:52 -06:00
Gregory Nutt
aabd4c59a3
Tiva: Change negative logic CONFIG_TIVA_DISABLE_GPIOx_IRQS to positive logic CONFIG_TIVA_GPIOx_IRQS
2014-12-18 15:19:16 -06:00
Gregory Nutt
83c56151ab
Tiva: Add GPIO interrupt support for the TMS4C129X
2014-12-18 11:52:06 -06:00
Gregory Nutt
a719e75851
DK-TM4C129X: Fixes to get clean build. Logic is still not complete, however
2014-12-18 08:24:24 -06:00
Gregory Nutt
05d7520461
TM4C129X: Add pin multiplexing
2014-12-17 11:55:45 -06:00
Gregory Nutt
327a554d0b
Tiva TM4C129X: Fix some errors in memory map
2014-12-17 09:42:37 -06:00
Gregory Nutt
14b987dbfa
Add memory map for the TM4C129X
2014-12-17 09:40:56 -06:00
Gregory Nutt
aa724ea75b
Add interrupt definitions for the TM4C129X
2014-12-17 08:19:23 -06:00
Gregory Nutt
1410a650e0
Tiva: Better distinguish features of the TM4C1294xx and the TM4C129Xxx
2014-12-16 18:02:59 -06:00
Gregory Nutt
29d23ae626
Remove packaging indications for TM4C129 configuration variables
2014-12-16 16:22:52 -06:00
Gregory Nutt
188e092398
Add TM4C129XNCZAD and TM4C1294NCPDT to the Tiva configuration system
2014-12-16 16:02:21 -06:00
Gregory Nutt
f284c5cab2
Unify sensor debug. ADX driver was using input debug; LM75 and QENCODE that their own custom debug. Now all use CONFIG_DEBUG_SENSOR, sndbg()
2014-12-16 09:54:32 -06:00
Gregory Nutt
2b65239466
Various fixes to traveler joystick input logic and to simulated joystick device
2014-12-14 12:23:19 -06:00
Gregory Nutt
f16d78b52c
Mouse simulatin should receive mouse positional input even if no button is pressed
2014-12-14 11:14:13 -06:00
Gregory Nutt
82f9391763
SIM: Several fixes to the simulated joystick driver. Still buggy
2014-12-14 11:11:04 -06:00
Gregory Nutt
ca3977e91e
SIM: Add an X11 mouse-based simulation of an analog joystick device
2014-12-14 10:19:07 -06:00
Gregory Nutt
9268fcc8ba
Include sched.h to avoid warning
2014-12-14 07:46:46 -06:00
Gregory Nutt
da8b040984
More changes associated with GPIO interrupt for the KL architecture from Alan Carvalho de Assis
2014-12-13 17:30:25 -06:00
Gregory Nutt
810fcd297e
Add GPIO interrupt capability for the KL architecture. The patch is almost the same as kinetis_pinirq.c, just minor modifications and rename kl_pinirq to kl_gpioirq to make it more generic to developers. From Alan Carvalho de Assis
2014-12-13 17:27:06 -06:00
Gregory Nutt
cf1caa48ce
SIM: Fix simulated console... it needs to return immediately when even one byte is read
2014-12-13 13:04:02 -06:00
Gregory Nutt
a574a3cc8a
STM32 LTDC: Fix a typo in conditional compilation
2014-12-13 07:45:42 -06:00
Gregory Nutt
f8592281a7
STM32 OTG HS DEV (in FS mode): Disable ULPI clock enable in RCC AHB1 Register. If Both ULPI and the FS clock enable bits are set in FS mode, then the ARM never awakens froom WFI due to a chip issue. From Ken Pettit
2014-12-13 07:44:13 -06:00
Gregory Nutt
c653ff5ce4
Tiva I2C: Don't try to ACK and STOP on the same byte. Improve logic that suppresses STOP on a repeated start
2014-12-12 12:13:31 -06:00
Gregory Nutt
54c8d5c6e4
Tiva I2C: Legacy mode reset logic ommitted in last commit
2014-12-12 09:31:17 -06:00
Gregory Nutt
19ef820925
Tiva I2C: Add logic to reset I2C when busy hangs with busy
2014-12-12 09:26:10 -06:00
Gregory Nutt
dd3d417aed
STM32 OTGHS Device: Fix for OTGHS core working in FS mode. From Ken Pettit
2014-12-12 07:43:32 -06:00
Gregory Nutt
310983bee6
Cosmetic change to force compliance with coding standard
2014-12-12 07:14:16 -06:00
Gregory Nutt
1311e76adc
Tiva I2C: Fix how I2C transactions are started and some I2C error reporting
2014-12-11 12:31:42 -06:00
Gregory Nutt
04d8169f0f
Tiva I2C: All SDA pins should be open drain, but all SCL pins should be digital output
2014-12-11 12:30:48 -06:00
Gregory Nutt
218967b80e
Tiva I2C: Add register-level debug capability
2014-12-11 09:34:03 -06:00
Gregory Nutt
6a98255aa0
Tiva I2C: Minor clean-up to I2C tracing
2014-12-11 08:11:32 -06:00
Gregory Nutt
2e8ad53ed4
Tiva I2C: Fix error in assertion logic
2014-12-11 07:02:14 -06:00
Gregory Nutt
af31b219a3
Tiva I2C: Add I2C options to Kconfig
2014-12-10 13:56:00 -06:00
Gregory Nutt
37eb362b08
Tiva I2C: Add workaround for errata; clean up some error handling
2014-12-10 13:01:47 -06:00
Gregory Nutt
38bd919930
Tiva I2C: Driver is code complete but untested
2014-12-10 12:43:46 -06:00
Gregory Nutt
bdd5289100
Tiva i2C: Lots of compilation fixes
2014-12-10 08:47:34 -06:00
Gregory Nutt
0951d80d45
Simplify I2C master/slave addresing to simplify driver development
2014-12-10 08:47:07 -06:00
Gregory Nutt
3313cee55c
Tiva I2C: Finishes initialization logic
2014-12-10 07:31:44 -06:00
Gregory Nutt
7373e66213
Tiva: Do I2C clock initialization without using legacy registers. Necessary for I2C3-5
2014-12-09 15:28:10 -06:00
Gregory Nutt
90c98f8526
Add a little bit more Tiva I2C initialization logic
2014-12-09 14:48:24 -06:00
Gregory Nutt
f851a1328e
Fix typo in Tiva UART regiser address definition. SourceForge Ticket #37
2014-12-09 12:18:41 -06:00
Gregory Nutt
286a142a08
Tiva: Add build framework and skeleton files for Tiva I2C driver. Initial commit is just the STM32 I2C driver with name changes and STM32-specific logic removed
2014-12-09 12:18:40 -06:00
Gregory Nutt
1d43784c48
Update the Tiva I2C register definitions for the TM4C123 and TM4C129
2014-12-09 08:42:12 -06:00
Gregory Nutt
cb9e3c2bb9
Set the GPIO_SPEED_50MHz on all F2 and F4 SPI pin configurations. This is based on an F411 SPI1 errata but the fixed is generalized to all SPI and all F2 and F4 (let me know if this introduces any other issues). Discovered and fixed by Sebastien Lorquet after much consternation.
2014-12-08 09:51:52 -06:00
Gregory Nutt
639400e599
Allow building simulated framebuffer dirver is NX is not enabled
2014-12-08 08:29:48 -06:00
Gregory Nutt
e333132280
SAMA5D3 Xplained: Add support for the Itead Joystick shield
2014-12-03 12:24:23 -06:00
Gregory Nutt
6d7106424e
STM32: Add MCO configuration for the STM32L1xx. From Jussi Kivilinna
2014-12-02 10:19:37 -06:00
Gregory Nutt
13de352dcd
STM32L15: Fix typo in MCO pin definition. From Jussi Kivilinna
2014-12-02 10:18:02 -06:00
Gregory Nutt
f94052de26
Update comments
2014-11-29 15:28:28 -06:00
Gregory Nutt
eace825e3b
STM32 F4 I2C: Port Tridge's I2C noise resiliance logic from the PX4 repository.
2014-11-29 13:37:45 -06:00
Gregory Nutt
0d50608eae
Fix one warning. There are a couple of others that look like real problems
2014-11-28 11:49:24 -06:00
Gregory Nutt
70f778c02b
EFM32 Serial: Add support for termios TCGET and TCSET. For the moment, only set/get speed is implemetned. From Pierre-noel Bouteville
2014-11-27 19:14:10 -06:00
Gregory Nutt
3d55cd82ee
Forgot too add file before last commit
2014-11-27 06:14:09 -06:00
Gregory Nutt
0ad88d9664
Enable support for STM32F102. https://github.com/PX4/NuttX/pull/28.diff
2014-11-27 06:12:35 -06:00
Gregory Nutt
4f22093bfa
Initial support for the LPC4357-EVB provided by Toby Duckworth
2014-11-26 15:18:24 -06:00
Gregory Nutt
2c1f018e85
More fixes to problems noted by cppcheck. Some are kind of risky; some are real bugs.
2014-11-25 13:15:09 -06:00
Gregory Nutt
727a7c9e40
Fixes for more issues found by cppcheck
2014-11-24 17:00:26 -06:00
Gregory Nutt
697b0f8f19
More bugs/warnings found by cppcheck
2014-11-24 13:24:51 -06:00
Gregory Nutt
8becf3c18c
Various issues/bugs detected by cppcheck
2014-11-24 12:59:52 -06:00
Gregory Nutt
7dfb945979
I2C header file for the Freescale KL family. From Alan Carvalho de Assis.
2014-11-23 16:49:00 -06:00
Gregory Nutt
f548a10c6b
SAMA5D3 Xplained: Add an apps/examples/bridge configuration
2014-11-20 16:24:30 -06:00
Gregory Nutt
184ebdf191
STM32 F4 OTGHS device controller driver from Brennan Ashton
2014-11-20 07:19:04 -06:00
Gregory Nutt
7ab214d811
SAM EMAC: Fix typo in the check for successfull allocation of a timer
2014-11-18 14:20:31 -06:00
Gregory Nutt
7dd183fa50
SAMA5D4-EK EMAC1: Correct name of EMAC1 configuration variable
2014-11-18 11:02:22 -06:00
Gregory Nutt
62e94bc883
Cosmetic fixes to comments
2014-11-18 07:19:10 -06:00
Gregory Nutt
f4736a2042
Update ChangeLog
2014-11-17 12:48:01 -06:00
Gregory Nutt
2330c9c842
Rename CONFIG_NET_BUFSIZE to CONFIG_NET_ETH_MTU is all MCU Ethernet drivers
2014-11-16 08:10:06 -06:00
Gregory Nutt
da160bfee9
EFM32 USART setup: Computation of BAUD includes shift; Eliminate additional shift. From Pierre-noel Bouteville
2014-11-16 07:57:57 -06:00
Gregory Nutt
83e5ee1c04
SAM3/4: Add missing SPI0 clock configuartion macro for the SAM4S
2014-11-16 06:43:08 -06:00
Gregory Nutt
f4e947ee80
Remove use of NET_LL_HDRLEN from Ethernet drivers. Use ETH_HDRLEN instead
2014-11-15 09:05:34 -06:00
Gregory Nutt
bf984b2b3a
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
025e36ba8c
Cosmetic updates; updates to README
2014-11-14 09:54:00 -06:00
Gregory Nutt
a451f3b99e
EFM32: Finishes USB naming fixup. Still some missing initialization logic
2014-11-14 08:36:18 -06:00
Gregory Nutt
3a4e126f2d
EFM32: More USB naming updates. Still not finished
2014-11-14 07:20:13 -06:00
Gregory Nutt
d667b9072a
EFM32: More USB register name corrections. Still incomplete
2014-11-13 12:25:42 -06:00
Gregory Nutt
299b4db5de
EFM32: Finishes USB naming changes for device
2014-11-13 10:45:47 -06:00
Gregory Nutt
e69e2767ad
Correct a typo in the STM32 OTGFS register bit definitions
2014-11-13 10:43:54 -06:00
Gregory Nutt
312cb6ffa0
EFM32: Tweaks to get EFM32GG-STK3700 running NSH over LEUART0
2014-11-12 12:50:09 -06:00
Gregory Nutt
e424ddbabd
EFM32: More USB register name corrections. Still incomplete
2014-11-12 10:43:29 -06:00
Gregory Nutt
365afd95a6
EFM32: More USB register name corrections. Still incomplete
2014-11-12 09:46:58 -06:00
Gregory Nutt
f4be851b0e
Remove the definition of INT_FAST32_MIN which is already defined in stdint.h (the correct location). From Lorenz Meier.
2014-11-12 07:47:37 -06:00
Gregory Nutt
123baad163
Add protection from C++ name mangling in the ARM up_internal.h. From Lorenz Meier.
2014-11-12 07:27:28 -06:00
Gregory Nutt
dc16ffe11a
Fix a typo in an I2C header file. From Jahu Niskanen
2014-11-11 07:12:16 -06:00
Gregory Nutt
c65372b80c
Support for the STM32F103RG. From Murilo Ponte
2014-11-10 07:48:46 -06:00
Gregory Nutt
089124ef8a
EFM32: Reduce writes to the CTRL register
2014-11-09 09:43:43 -06:00
Gregory Nutt
6ea107784d
EFM32: Fix issues associated with SPI bi order. From Pierre
2014-11-09 08:21:38 -06:00
Gregory Nutt
b96654347b
EFM32: Fix typo in connecting ODD GPIO interrupt. Noted by Pierre
2014-11-08 06:18:21 -06:00
Gregory Nutt
070694a71f
Merge remote-tracking branch 'origin/master' into bas24
2014-11-06 14:17:19 -06:00
Gregory Nutt
ceffd2f121
EFM32 USB: More naming fixes... still does not compile
2014-11-05 14:22:12 -06:00
Gregory Nutt
19195ca710
Merge remote-tracking branch 'origin/master' into bas24
2014-11-04 11:57:16 -06:00
Gregory Nutt
a2a2af526f
EFM32 USB: A few more naming conversions... still a long way to go
2014-11-04 11:48:41 -06:00
Gregory Nutt
d8bfd5a4d2
EFM32: Port USB device and host drivers from STM32. Still does not compile
2014-11-04 10:14:04 -06:00
Gregory Nutt
88dc7b3b3c
EFM32: Add USB build support
2014-11-04 06:47:14 -06:00
Gregory Nutt
57f7c93bad
Merge remote-tracking branch 'origin/master' into bas24
2014-11-03 17:22:38 -06:00
Gregory Nutt
9051ffd638
STM32GG Starter Kit: Add basic NSH configuration
2014-11-03 16:58:22 -06:00
Gregory Nutt
3af43e6c4d
Merge remote-tracking branch 'origin/master' into bas24
2014-11-03 12:00:35 -06:00
Gregory Nutt
493ba46ec6
Fix typo is SAM4E pinmap file
2014-11-03 11:59:53 -06:00
Gregory Nutt
ee020e8b06
Merge remote-tracking branch 'origin/master' into bas24
2014-11-02 12:11:45 -06:00
Gregory Nutt
28a74ac02f
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
f988838d40
SIM: Add more symbols to /arch/sim/src/nuttx-names.dat
2014-11-02 11:44:09 -06:00
Gregory Nutt
84d555c1be
Oops... accidentally checked in a debug-only change with the last commit
2014-11-02 08:03:34 -06:00
Gregory Nutt
ed2519dce3
Can't use isatty, tcsetattr, or tcgettr is CONFIG_SERIAL_CONSOLE is not defined
2014-11-02 07:59:56 -06:00
Gregory Nutt
811d557053
EFM32 ROM table header files
2014-11-01 13:27:36 -06:00
Gregory Nutt
3189a1acc7
EFM32: Add LESENSE header file
2014-11-01 12:56:55 -06:00
Gregory Nutt
458992ca5b
EFM32: Add USB header file
2014-11-01 11:57:11 -06:00
Gregory Nutt
0f754bd6d7
Add optional timestamp to syslog output. From pn_bouteville@yahoo.fr
2014-11-01 09:17:34 -06:00
Gregory Nutt
3d2a34045b
Remove carriage returns
2014-11-01 08:06:50 -06:00
Gregory Nutt
918a74805c
ARMv7-M: ETM header file
2014-11-01 08:06:06 -06:00
Gregory Nutt
442c646955
EFTM32 ITM: Add missing ~ in bit clear operation. From pn_bouteville@yahoo.fr
2014-11-01 06:51:14 -06:00
Gregory Nutt
0f59ab369a
EFM32: Add LCD header file
2014-10-31 20:25:37 -06:00
Gregory Nutt
a36bb77e05
EFM32: Add DAC header file
2014-10-31 20:05:47 -06:00
Gregory Nutt
7f3bd970d7
EFM32: Add BURTC header file
2014-10-31 13:05:00 -06:00
Gregory Nutt
61300aa12e
EFM32: Add PRS signals
2014-10-31 12:30:01 -06:00
Gregory Nutt
a9fb2f78b5
EFM32: Add ADC heder file
2014-10-31 12:22:45 -06:00
Gregory Nutt
54af514ef6
EFM32: Add I2C header file
2014-10-31 12:07:57 -06:00
Gregory Nutt
ecd84c7844
EFM32: Add PRS header file
2014-10-31 11:47:40 -06:00
Gregory Nutt
4660eb6e1f
EFM32: Add PCNT header file
2014-10-31 11:34:00 -06:00
Gregory Nutt
acf5cbb3dc
EFM32: Add RMU header file
2014-10-31 11:17:12 -06:00
Gregory Nutt
afdf44e3c6
EFM32: Add EMU header file
2014-10-31 10:56:15 -06:00
Gregory Nutt
16c1eb924a
EFM32: Add VCMP header file
2014-10-31 10:41:28 -06:00
Gregory Nutt
f4fd24acb7
EFM32: Add RTC header file
2014-10-31 10:27:52 -06:00
Gregory Nutt
b984a7c9c0
EFM32: Add AES header file
2014-10-31 10:17:48 -06:00
Gregory Nutt
f081a9ccf5
EFM32: Add watchdog header file
2014-10-31 10:02:37 -06:00
Gregory Nutt
7e661442ed
EFM32: Add LETIMER header file
2014-10-31 09:54:26 -06:00
Gregory Nutt
c25f0062ce
EFM32: Add ACMP header file
2014-10-31 09:38:21 -06:00
Gregory Nutt
16c9292c3e
EFM32: Add timer header file
2014-10-31 09:27:15 -06:00
Gregory Nutt
6313e5dcb3
EFM32: Changes picked up from Pierre's repository
2014-10-30 18:01:46 -06:00
Gregory Nutt
0eaa74962c
Costmetic changes -- spacing, comments.
2014-10-30 16:33:40 -06:00
Gregory Nutt
05c1d9707d
SAM3/4: Fix error serial TERMIOS ioctl handling
2014-10-30 12:23:15 -06:00
Gregory Nutt
11ab9c908e
Add support for SAM3/4 basic TERMIOS and flow control. There are issues with IFLOW control: PDC or DMAC support is required
2014-10-29 15:47:15 -06:00
Gregory Nutt
692f63e3ee
EFM32: In order to use LEUART, LE clocking must be enabled
2014-10-29 11:20:54 -06:00
Gregory Nutt
4ec43d1002
EFM32: Various fixes for LEUART build
2014-10-29 09:37:39 -06:00
Gregory Nutt
2ea73f760c
EFM32: Minor serial interrupt mask change; Add LEUART0 board support
2014-10-29 08:04:29 -06:00
Gregory Nutt
7e697f2369
EFM32: Implement HFPERCLK logic
2014-10-28 19:46:45 -06:00
Gregory Nutt
b13b80e35f
Fix a few more EFM32 integration bugs
2014-10-28 19:02:21 -06:00
Gregory Nutt
4098d8c4a2
SAM4: Fix a usbnsh build problem that has crept into all serial drivers
2014-10-28 15:44:47 -06:00
Gregory Nutt
7edef0f970
EFM32: Need to configure UART GPIOs as outputs
2014-10-28 14:50:15 -06:00
Gregory Nutt
28ac9e5841
Oops... fix an error in an assertion of last commit
2014-10-28 12:42:19 -06:00
Gregory Nutt
77a622da0b
EFM32: Add missing shift of register value
2014-10-28 12:36:47 -06:00
Gregory Nutt
5ab16ee550
EFM32: Fix GPIO configuration logic; Add missing board initializatin logic; Fix LED naming
2014-10-28 10:39:57 -06:00
Gregory Nutt
1e6524cac8
EFM32G: Fix typo in memory map header file
2014-10-28 09:26:06 -06:00
Gregory Nutt
103e5dc791
SAM4E: Fix error TC header file
2014-10-28 09:22:37 -06:00
Gregory Nutt
3805a31473
EFM32: Correct a typo in LFXO bit in clock configuration
2014-10-28 08:59:27 -06:00
Gregory Nutt
027b7c5983
EFM32: Update a configuration; Compile fix for when DEBUG is enabled
2014-10-28 07:24:04 -06:00
Gregory Nutt
5ebc472f43
STM32 Serial: Don't compile up_earlyserialinit() if USE_EARLYSERIALINIT is not define. Otherwise, a macro definition clobbers the function definition
2014-10-28 06:58:37 -06:00
Gregory Nutt
60d2547cd7
Move selection for CONFIG_SERIAL_TERMIOS out of MCU Kconfigs to common drivers/serial/Kconfig. Add CONFIG_ARCH_HAVE_SERIAL_TERMIOS to indicate if an MCU supports TERMIOS
2014-10-27 11:31:16 -06:00
Gregory Nutt
1252286845
Cosmetic... removed checks for non-existent configuration setting
2014-10-27 09:05:52 -06:00
Gregory Nutt
fe6f857f13
Cosmetic changes
2014-10-27 07:57:12 -06:00
Gregory Nutt
818f4c8675
EFM32 SPI: setfrequency() needs to return actual frequency; simplify nbits usages by removing conditional logic
2014-10-27 07:07:30 -06:00
Gregory Nutt
a6f70a00a9
EFM32 SPI: Add check to make sure that the SPI RX buffer is empty before starting a transfer
2014-10-26 13:13:53 -06:00
Gregory Nutt
82bf0558e1
EFM32 SPI: Change some logic that I fear could cause RX data overrun
2014-10-26 12:53:26 -06:00
Gregory Nutt
0100d0f6c0
EFM32: Cosmetic changes to comments and format
2014-10-26 12:48:47 -06:00
Gregory Nutt
5c03174fe4
Cosmetic update to spacing and comments
2014-10-26 11:25:47 -06:00
Gregory Nutt
30946beaf0
EFM32: Integrate SPI DMA capability
2014-10-26 11:22:16 -06:00
Gregory Nutt
cd004832d1
EFM32: Integrate Pierre's SPI driver
2014-10-26 09:27:55 -06:00
Gregory Nutt
2c85b0e85f
Remove unnecessary header file inclusion
2014-10-26 06:09:20 -06:00
Gregory Nutt
0f9139f2e9
EFM32: dma_config_t needs to be only 16-bits for now
2014-10-25 17:53:29 -06:00
Gregory Nutt
8dbef3ea4c
EFM32 DMA: Cosmetic changes to debug instrumentatin and comments
2014-10-25 17:43:56 -06:00
Gregory Nutt
4b4fc79257
EFM32: Fix misconception in DMA control descriptor alignment
2014-10-25 17:21:58 -06:00
Gregory Nutt
556751bb7a
EFM32: More fixes to DMA descriptor table logic
2014-10-25 17:15:16 -06:00
Gregory Nutt
042963cb54
Add debug assertion
2014-10-25 15:29:23 -06:00
Gregory Nutt
04d732dbab
EFM32: Correct handling of DMA descriptors; Add initialization of DMA CTRLBASE
2014-10-25 14:55:02 -06:00
Gregory Nutt
ca202adadb
EFM32: Completes very basic DMA support. Needs review. Untested
2014-10-25 11:31:13 -06:00
Gregory Nutt
8c875f992f
Dangle whitespace removal
2014-10-25 10:35:29 -06:00
Gregory Nutt
2bc74db84b
EFM32: A little more DMA logic. Still incomplete
2014-10-25 10:34:07 -06:00
Gregory Nutt
7a845e82de
Add some logic to EFM32 DMA module. Still incomplete
2014-10-25 08:09:19 -06:00
Gregory Nutt
800826ac64
Add framework for EFM32 DMA support -- no logic in place yet
2014-10-24 17:59:13 -06:00
Gregory Nutt
002fa55c04
Fix some typos that I just introduced... Sometimes I can't do anything right
2014-10-24 17:58:33 -06:00
Gregory Nutt
4d393f3801
Update EFM32 DMA header file for Gecko support
2014-10-24 16:58:38 -06:00
Gregory Nutt
1a532c1744
SAM4E-EK: Add support for PHY insterrupt
2014-10-24 12:28:57 -06:00
Gregory Nutt
2e829a5ff8
Another fix to SAM3/4 GPIO IRQ issue
2014-10-24 10:55:52 -06:00
Gregory Nutt
96405b1913
SAM3/4: Fix conditional compilation in GPIO IRQ logic
2014-10-24 10:44:43 -06:00
Gregory Nutt
8dfb3a1dd0
SAM4E: Fix options to select GPIO interrupts in Kconfig
2014-10-24 09:29:01 -06:00
Gregory Nutt
d87cc50b31
Add EFM32 DMA header file
2014-10-24 07:57:16 -06:00
Gregory Nutt
e242f945ba
Another typo in EMF32 GPIO logic
2014-10-23 19:19:58 -06:00
Gregory Nutt
687a28cc09
Fix compiler errors in up_itm_syslog.c. From Pierre-Noel Bouteville
2014-10-23 18:30:32 -06:00
Gregory Nutt
d342fbfb0c
Fix file naming: arm_item_syslog.c changed to up_itm_syslog.c. From Pierre-Noel Bouteville
2014-10-23 18:25:05 -06:00
Gregory Nutt
afeb7a46e2
EFM32 port and pin decoding backward in every case. From Pierre-Noel Bouteville
2014-10-23 18:16:57 -06:00
Gregory Nutt
cfd344c1a6
Oops last changes still in editor
2014-10-23 10:13:32 -06:00
Gregory Nutt
eaa0b18c18
EFM32: Add configuration option to use USARTs as SPI
2014-10-23 08:54:26 -06:00
Gregory Nutt
113483a177
EFM32: Add configuration option to use USARTs as SPI
2014-10-23 08:25:37 -06:00
Gregory Nutt
cc0a5d6004
Update to the LPC43xx RIT/Tickless code. From Brandon Warhurst
2014-10-23 07:14:37 -06:00
Gregory Nutt
c10f826ae3
Add support for tickless operation using the NXP LPC43xx
2014-10-23 06:54:24 -06:00
Gregory Nutt
df2abd3efc
EFM32: Add logic to initialize and use ITM system
2014-10-22 09:05:22 -06:00
Gregory Nutt
9878205b1c
Remove whitespace and and carriage returns
2014-10-22 09:04:40 -06:00
Gregory Nutt
d36bb47210
ARMv7: Add support to use ITM for SYSLOG debug output
2014-10-22 09:03:00 -06:00
Gregory Nutt
98c904d694
Eliminate a warning
2014-10-22 07:56:48 -06:00
Gregory Nutt
2763da5ddd
EFM32: Add IDLE power management hooks. Nothing implemented; just define the hooks
2014-10-22 07:26:31 -06:00
Gregory Nutt
f06890c931
Add ARMv7-M DWT and TPI register definitions
2014-10-21 16:46:26 -06:00
Gregory Nutt
c447bb7537
Add CMSIS ITM header file and library
2014-10-21 16:16:00 -06:00
Gregory Nutt
3591729d17
EFM32: Add buton interrupt handling for the Olimex board
2014-10-21 13:51:30 -06:00
Gregory Nutt
b965c7e8f4
The olimex-efm32g880f128-stk now defaults to use LEUART1 as the serial console. Also fixes lots of compile bugs from the original LEUART checkin
2014-10-21 11:38:51 -06:00
Gregory Nutt
e7fe3882a6
EFM32: Add LFA and LFB clock support
2014-10-21 10:45:33 -06:00
Gregory Nutt
6cf07c2a0e
EFM32: Add configuration support for LEUARTs
2014-10-21 09:37:02 -06:00
Gregory Nutt
1640ee9108
EFM32: Add a LEUART-based serial driver (untestee)
2014-10-21 09:21:03 -06:00
Gregory Nutt
58f6b696f6
EFM32: Add basic, low-level support for the low energy UARTs
2014-10-21 08:48:38 -06:00
Gregory Nutt
994dbda075
EFM32: Addred LEUART register definition header file
2014-10-21 08:11:03 -06:00
Gregory Nutt
94270a0229
Add ADC pinmap definitions for the STM32 F103R from Lederhilger Martin
2014-10-21 06:48:16 -06:00
Gregory Nutt
23db8a44c3
Fixe to allow compile of lpc43_gpioint.c. It likely doesn't work. From Brandon warhurst_002
2014-10-21 06:36:27 -06:00
Gregory Nutt
d2cf8395f9
stm32: rename spi frame format definition
...
This renames the stm32 spi frame format definition to the short description
name as well as the other cr2 register flags.
Note! STM32_SPI3_FRF was never used by nuttx somewhere
Signed-off-by: Marco Krahl <ocram.lhark@gmail.com>
2014-10-20 15:12:59 -06:00
Gregory Nutt
ebf9bce9d8
EFM32: Another update to USART oversampling calculation. Clip to positive; update comments
2014-10-20 13:54:43 -06:00
Gregory Nutt
1a77fbcaca
Fix some naming
2014-10-20 12:29:28 -06:00
Gregory Nutt
260238aa8a
EFM32 USART: Fix oversampling selection; Should be biased toward higher oversampling rates
2014-10-20 10:54:13 -06:00
Gregory Nutt
75b728498a
Finsh USART configuration logic
2014-10-20 08:12:08 -06:00
Gregory Nutt
956fc38fca
Add GPIO interrupt logic
2014-10-20 08:12:08 -06:00
Gregory Nutt
33a12dfb84
Trivial, cosmetic typos in comments
2014-10-20 08:12:07 -06:00
Gregory Nutt
1524c67a17
Add EFM32 serial driver
2014-10-19 18:55:44 -06:00
Gregory Nutt
74db6df61f
Add some UART configuration logic (still incomplete)
2014-10-19 16:42:15 -06:00
Gregory Nutt
df85772cea
Fleshes out GPIO configuration logic
2014-10-19 13:47:52 -06:00
Gregory Nutt
2a7edd7e1c
Add GPIO header file + a little bit of GPIO configuration logig
2014-10-19 13:07:52 -06:00
Gregory Nutt
3896f187a6
Basic clock configuration logic
2014-10-19 11:08:56 -06:00
Gregory Nutt
06ac7e3a6f
Add MSC header file
2014-10-19 09:59:40 -06:00
Gregory Nutt
f0b13590ac
Fix conditional logic in CMU header file
2014-10-19 06:46:35 -06:00
Gregory Nutt
8155730f28
Add frame for EFM32 GPIO logic (empty functions)
2014-10-18 18:40:08 -06:00
Gregory Nutt
ebc8333a0b
Fix some incorrect conditional logic
2014-10-18 16:16:57 -06:00
Gregory Nutt
a011c250da
Add skeleton lowputc() file for EFM32
2014-10-18 16:16:48 -06:00
Gregory Nutt
4f0b8da33c
Add skeleton lowputc() file for EFM32
2014-10-18 16:16:22 -06:00
Gregory Nutt
6b1e87a848
Add EFM32 configuration header file
2014-10-18 16:15:53 -06:00
Gregory Nutt
ae3e75a5aa
efm32_vectors.S is not really a HEAD object
2014-10-18 15:32:56 -06:00
Gregory Nutt
9069fc797a
Add EFM32 SysTick timer support
2014-10-18 15:27:36 -06:00
Gregory Nutt
de5c451a30
Add empty file for event EFM32 clock configuration logic
2014-10-18 15:22:11 -06:00
Gregory Nutt
1bfec65ac5
More framework for GPIO interrupt support
2014-10-18 14:05:07 -06:00
Gregory Nutt
8d73e56145
Use UART0 for the serial console
2014-10-18 12:47:45 -06:00
Gregory Nutt
21d906db0b
Add EFM32 UART/USART header file
2014-10-18 11:13:03 -06:00
Gregory Nutt
c071687ae5
Oops committed the wrong version
2014-10-18 09:46:35 -06:00
Gregory Nutt
6d5c75c2ff
Add EFM32 CMU header file
2014-10-18 09:26:56 -06:00
Gregory Nutt
686a29624c
Add EFM32 Memory Maps
2014-10-17 16:43:52 -06:00
Gregory Nutt
17399091ed
Add GPIO header file and EFM32 Gecko Starter Kit LED support
2014-10-17 14:17:44 -06:00
Gregory Nutt
8eb85ce1f8
More EFM32 files
2014-10-17 12:31:44 -06:00
Gregory Nutt
a45de60aca
More EFM32 files and logic
2014-10-17 12:02:32 -06:00
Gregory Nutt
2bafdf3d59
Add EFM32 interrupt vector defintions
2014-10-17 10:34:39 -06:00
Gregory Nutt
895cfe0e7c
Add configuration support for the EFM32 Gecko Starter Kit
2014-10-17 09:25:52 -06:00
Gregory Nutt
0aea891272
Enable selection of SPI2 for STM32L15XX in Kconfig. From Jussi Kivilinna
2014-10-16 07:03:23 -06:00
Gregory Nutt
26b42e3f57
Minor update to last Kconfig change
2014-10-15 12:33:37 -06:00
Gregory Nutt
e73b64f5ea
Add Kconfig selections for STM32-F4x1RE SPI peripheral
2014-10-15 12:22:04 -06:00
Gregory Nutt
a835387529
Fix file mode on modified files
2014-10-14 15:45:56 -06:00
Gregory Nutt
56841b9e20
Support for the STM32 F411RE from Serg Podtynnyi
2014-10-14 15:42:28 -06:00
Gregory Nutt
7012d13e95
Cosmetic changes to comments
2014-10-10 16:54:47 -06:00
Gregory Nutt
85c75a39b0
Fix a few typos
2014-10-10 11:41:40 -06:00
Gregory Nutt
abc90f0e50
Fix watchdog stop bit usage. From Lazlo
2014-10-10 11:36:50 -06:00
Gregory Nutt
385ac926b6
Fix a typo in the lpc43 makefile, lpc43_usb0dev not lpc31_usb0dev
2014-10-09 17:59:42 -06:00
Gregory Nutt
4b4f3212f3
For PIC32MX7, DEVCFG0 bit 2 must be set
2014-10-09 14:03:54 -06:00
Gregory Nutt
1b1daeb7ef
Correct STM32 RTC EXTI bit definition. From Lazlo
2014-10-09 06:25:07 -06:00
Gregory Nutt
f6004ff6eb
Misc changes to get a clean build after all of the syslog changes. There are probably other things still broken
2014-10-08 16:23:48 -06:00
Gregory Nutt
db9901e2f9
Update everything under nuttx/arch to use the corrected syslog interfaces
2014-10-08 12:48:47 -06:00
Gregory Nutt
076a9ffadd
Simplification of conditional compilation suggested by pn_bouteville
2014-10-07 15:44:54 -06:00
Gregory Nutt
6ab29cbef9
Remove non-functional vestiges of OTGHS in FS mode (including OTGFS2); try to convert the stm32f429i-disco configuration to use OTGHS instead of OTFHS in FS mode (OTGFS2). But I don't have the boards and can't test
2014-10-07 15:25:31 -06:00
Gregory Nutt
6023219078
Integrates OTGHS support into the STM32; Eliminates the older OTGHS in FS mode logic. From Brennan Ashton
2014-10-07 15:05:30 -06:00
Gregory Nutt
362736b377
Add files that implement true high speed support for the STM32 OTGHS peripheral. From Brennan Ashton
2014-10-07 15:01:42 -06:00
Gregory Nutt
3bb8926f00
Fix some recently introduced typos, build problems, and warnings
2014-10-05 16:58:52 -06:00
Gregory Nutt
48c76840a9
configs/sim/nsh/defconfig -- refresh, enable wall-time, dow builds natively in 64-bit mode
2014-10-03 08:44:42 -06:00
Gregory Nutt
31049a203c
Add support for 64-bit lonjmp/setjmp in simulator platform
2014-10-03 08:23:57 -06:00
Gregory Nutt
6e86d87ba5
Simulation: Change how simulated UART data availability is signaled. The last change is not safe (but I don't like this workaround either -- maybe something better will come to me).
2014-10-01 14:59:51 -06:00
Gregory Nutt
e1aa0b039f
Mostly cosmetic changes to simulator
2014-10-01 08:40:52 -06:00
Gregory Nutt
4e303a5c4a
Update some comments
2014-09-30 17:45:42 -06:00
Gregory Nutt
16712b09fe
Fix a cornercase problem in in the UART simulation
2014-09-30 15:49:30 -06:00
Gregory Nutt
56574a03da
Restore up_internal.h. Changes its name was a bad idea... at least for now
2014-09-30 14:41:58 -06:00
Gregory Nutt
24c5eb8f95
Simulated UART seems functional
2014-09-30 14:41:58 -06:00
Gregory Nutt
38a548faab
Forgot to add a file
2014-09-30 14:41:57 -06:00
Gregory Nutt
f7e857b42b
Completes simulated uart implementation... does not work
2014-09-30 14:41:57 -06:00
Gregory Nutt
18ed0123a6
simulation: Add a simulatied UART input device. Also lots of misc clean-up for stylistic compatibility with other architectures
2014-09-30 14:41:57 -06:00
Gregory Nutt
48f29ce348
More vfork(): If we get to vfork() via system call, then we need to clone some system call information so that the return form the cloned system call works correctly
2014-09-29 10:59:15 -06:00
Gregory Nutt
2b0c657b1f
Fix vfork(). Now that arguments are kept on the stack, the way that arguments are passed from parent to child in vfork() must change. This bug has always been present, but was not visible with the old strdup() way of passing arguments
2014-09-29 10:45:44 -06:00
Gregory Nutt
d0b0e089a7
Move fs/fs.h to fs/inode/inode.h and some to fs/driver/driver.h
2014-09-29 07:14:38 -06:00
Gregory Nutt
ee7e958b79
Rename fs/fs_internal.h to fs/fs.h
2014-09-28 09:13:56 -06:00
Gregory Nutt
ba3ecd67ac
A little more clean-up of poll() error handling
2014-09-26 08:25:00 -06:00
Gregory Nutt
083e808ad8
This completes the implementation of shared memory support
2014-09-24 09:27:17 -06:00
Gregory Nutt
7e9c8b5926
STM32 CAN correction suggested by Max Holtzberg
2014-09-24 08:23:05 -06:00
Gregory Nutt
327628ca19
Build support for platform-specific shared memory logic. Not logic yet in place
2014-09-24 07:39:06 -06:00
Gregory Nutt
74bb07eeb4
Build support for platform-specific shared memory logic. Not logic yet in place
2014-09-24 07:38:11 -06:00
Gregory Nutt
238e18cc0a
Move include/nuttx/mm.h to include/nuttx/mm/mm.h
2014-09-24 07:29:09 -06:00
Gregory Nutt
eb5e1616f4
Move include/nuttx/gran.h to include/nuttx/mm/gran.h
2014-09-24 06:55:26 -06:00
Gregory Nutt
25b52a111e
Cosmetic
2014-09-23 16:03:52 -06:00
Gregory Nutt
a9864bc100
Extend virtual/physical address conversions to include addresses in shared memory.
2014-09-23 16:03:08 -06:00
Gregory Nutt
cce614c67e
Fix some inconsistent field name in struct task_group_s: addrenv should be tg_addrenv.
2014-09-23 16:01:44 -06:00
Gregory Nutt
df26163f1f
Add logic necessary to handler remapping of shared memory on contex switches
2014-09-23 13:19:30 -06:00
Gregory Nutt
42f0eb7d34
Add shared memory initializatin logic
2014-09-23 08:46:31 -06:00
Gregory Nutt
1c0433bdf4
Add README files and configuration support for the shared memory logic
2014-09-23 07:11:47 -06:00
Gregory Nutt
bc01f422df
More NxWM build fixes
2014-09-20 16:47:00 -06:00
Gregory Nutt
1ca6adadfa
More naming changes to get the stm3240g-eval/nxterm configuration building again
2014-09-20 15:53:28 -06:00
Gregory Nutt
371347b144
Fix missing closing quotation mark
2014-09-19 13:00:42 -06:00
Gregory Nutt
4d73a908e5
Some compiler errors that I added to Ken's code. From Ken Pettit
2014-09-19 10:58:32 -06:00
Gregory Nutt
400d469956
Emulated SPI FLASH driver for the sim target from Ken Pettit
2014-09-19 10:27:18 -06:00
Gregory Nutt
2eef637ca2
SAMA5D4-EK/nsh: WM8904 support enabled; README updated
2014-09-18 14:29:20 -06:00
Gregory Nutt
e94adf8ff4
Ooops... a file that I forgot to add yesterday
2014-09-17 09:52:07 -06:00
Gregory Nutt
52a1f19023
Fixes to avoid some hang conditions using STM32 CAN
2014-09-17 08:35:03 -06:00
Gregory Nutt
e409b64bdc
Only SAM4 family has RTTDIS bit in the MR register. SourceForge bug #33 from Fabien Comte
2014-09-17 07:42:12 -06:00
Gregory Nutt
04f75c42cc
Add a sharable version of arm_virtpgaddr()
2014-09-16 16:49:44 -06:00
Gregory Nutt
d936f1a918
First round of changes to get the ELF configuration building again
2014-09-16 15:37:05 -06:00
Gregory Nutt
c20907b86c
These files were deleted and moved to a different location (see previos commit)
2014-09-16 13:36:51 -06:00
Gregory Nutt
8058de7874
remove tailing blank line
2014-09-16 13:36:14 -06:00
Gregory Nutt
bd6f7c50e8
Move common/up_signal_dispatch.c to armv6-m, armv7-m, and armv7-a. The armv7-a version needs to be different to handle the case where we are dispatch kernel mode signals when running under a user mode group
2014-09-16 13:35:29 -06:00
Gregory Nutt
8c3fd5a162
Correct stack handling is signal deliver to user processes
2014-09-16 13:33:13 -06:00
Gregory Nutt
ebc10e0237
Move some share-able logic from sama5/sam_pgalloc.c to armv7-a/arm_physpgaddr.c
2014-09-16 13:31:48 -06:00
Gregory Nutt
4a04ea48e4
Move some share-able logic from sama5/sam_pgalloc.c to armv7-a/arm_physpgaddr.c
2014-09-16 13:31:24 -06:00
Gregory Nutt
9879f47bbb
Move some share-able logic from sama5/sam_pgalloc.c to armv7-a/arm_physpgaddr.c
2014-09-16 13:29:43 -06:00
Gregory Nutt
4f1ca4cbb7
Partial fix to an cache cleaning problem
2014-09-15 16:04:42 -06:00
Gregory Nutt
35a282bc30
Fix an error in a debug statement
2014-09-15 15:15:57 -06:00
Gregory Nutt
e2952e4088
Eliminate a bug introduced in last checking
2014-09-15 15:10:50 -06:00
Gregory Nutt
d14d3b29bb
ARMv7-A: Improvements to assertion output for kernel mode
2014-09-15 15:03:55 -06:00
Gregory Nutt
9aae0adffa
If we are configured to use a kernel stack while in SYSCALL handling, then we need to switch back to the user stack to deliver a signal
2014-09-15 11:38:48 -06:00
Gregory Nutt
949cc1b20c
Fix a typo in system call when fetching parameter from the stack: regs[REG_PC]+4 is the address, not regs[REG_PC+4]
2014-09-15 10:55:10 -06:00
Gregory Nutt
946b916f69
Initial integration of kernel stack (does not work)
2014-09-14 11:19:34 -06:00
Gregory Nutt
16ddffc941
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
ffff51c1b1
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
9dbf99f38b
Update README, TODO, and make some unfinished configuration options dependent on EXPERIMENTAL
2014-09-13 15:45:26 -06:00
Gregory Nutt
d956936535
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
5d4f336b1f
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
f4bcb27962
Add a configuration option for dynamic stack management
2014-09-13 12:25:32 -06:00
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