Commit graph

53121 commits

Author SHA1 Message Date
Gregory Nutt
4c74c83c97 Update ChangeLog 2015-04-16 09:14:11 -06:00
Gregory Nutt
77393de102 Add support for the new DMA2D features to the STM32F429i-Disco LTDC configuration. From Marco Krahl. 2015-04-16 09:11:53 -06:00
Gregory Nutt
5d221fa356 Add support for the new DMA2D features to the STM32F429i-Disco LTDC configuration. From Marco Krahl. 2015-04-16 09:11:53 -06:00
Gregory Nutt
eb28a666b4 Add support for the new DMA2D features to the STM32F429i-Disco LTDC configuration. From Marco Krahl. 2015-04-16 09:11:53 -06:00
Gregory Nutt
7a6a5b7bd0 Defines a second interface for the dma2d controller. Controlling both LTDC and DMA2D was unpractical from the programmers view because both controllers are to different. LTDC only controls the display visibility but the DMA2D controller changes the content of the frame buffer (buffer of the layer).
The main features are:

1. DMA2D interface
   Supports the nuttx pixel formats:
   - FB_FMT_RGB8
   - FB_FMT_RGB24
   - FB_FMT_RGB16_565
   Dynamic layer allocation during runtime for the supported formats
   - The number of allocatable layer can be configured.
   Supported dma2d operation:
   - blit (Copy content from source to destination layer) also works with
     selectable area.
   - blend (Blend two layer and copy the result to a destination layer wich can
     be a third layer or one of the source layer) also works with selectable
     area.
   - fillarea (Fill a defined area of the whole layer with a specific color)

As a result of that the dma2d controller can't transfer data from the core coupled memory, CCM is disabled but usable by the ccm allocator. Currently the ccm allocator is used for allocating the layer structurei only. For the dma memory (layers frame buffer) memory is allocated from heap 2 and 3.

2. LTDC interface

   I have changed the api for the currently non implemented operations:
   - blit (Copy content from a dma2d layer to an ltdc layer) also works with
     selectable area.
   - blend (Blend two dma2d layer and copy the result to a destination ltdc
     layer) also  works with selectable area.

     Note! ltdc layer is a layer referenced by the ltdc interface. dma2d layer
     is a layer referenced by the dma2d interface.

     One of the most important questions for me was, How can i flexible use an
     ltdc layer with the dma2d interface, e.g. as source layer for dma2d
     operations?
     Get the layer id of the related dma2d layer by a special flag when using
     getlid() function of the ltdc interface and use the layer id to reference
     the specific dma2d layer by the dma2d interface.

     The ltdc coupled dma2d layers are predefined and can't be dynamically
     allocated of freed. They use the same frame buffer memory and the same
     color lookup table.

   Changes:
   - layer internal format of the clut table
   - interrupt handling for register reload (vertical vblank) instead using
     waiting loop
   - small fixes and refactoring

From Marco Krahl.
2015-04-16 09:11:52 -06:00
Gregory Nutt
8ed4b1acfa Defines a second interface for the dma2d controller. Controlling both LTDC and DMA2D was unpractical from the programmers view because both controllers are to different. LTDC only controls the display visibility but the DMA2D controller changes the content of the frame buffer (buffer of the layer).
The main features are:

1. DMA2D interface
   Supports the nuttx pixel formats:
   - FB_FMT_RGB8
   - FB_FMT_RGB24
   - FB_FMT_RGB16_565
   Dynamic layer allocation during runtime for the supported formats
   - The number of allocatable layer can be configured.
   Supported dma2d operation:
   - blit (Copy content from source to destination layer) also works with
     selectable area.
   - blend (Blend two layer and copy the result to a destination layer wich can
     be a third layer or one of the source layer) also works with selectable
     area.
   - fillarea (Fill a defined area of the whole layer with a specific color)

As a result of that the dma2d controller can't transfer data from the core coupled memory, CCM is disabled but usable by the ccm allocator. Currently the ccm allocator is used for allocating the layer structurei only. For the dma memory (layers frame buffer) memory is allocated from heap 2 and 3.

2. LTDC interface

   I have changed the api for the currently non implemented operations:
   - blit (Copy content from a dma2d layer to an ltdc layer) also works with
     selectable area.
   - blend (Blend two dma2d layer and copy the result to a destination ltdc
     layer) also  works with selectable area.

     Note! ltdc layer is a layer referenced by the ltdc interface. dma2d layer
     is a layer referenced by the dma2d interface.

     One of the most important questions for me was, How can i flexible use an
     ltdc layer with the dma2d interface, e.g. as source layer for dma2d
     operations?
     Get the layer id of the related dma2d layer by a special flag when using
     getlid() function of the ltdc interface and use the layer id to reference
     the specific dma2d layer by the dma2d interface.

     The ltdc coupled dma2d layers are predefined and can't be dynamically
     allocated of freed. They use the same frame buffer memory and the same
     color lookup table.

   Changes:
   - layer internal format of the clut table
   - interrupt handling for register reload (vertical vblank) instead using
     waiting loop
   - small fixes and refactoring

From Marco Krahl.
2015-04-16 09:11:52 -06:00
Gregory Nutt
7bf9be7c33 Add hooks to CDC/ACM driver to support RX flow control 2015-04-16 09:11:51 -06:00
Gregory Nutt
98b5851f15 Calypso/Compal_e86 update from Craig Comstock 2015-04-16 09:11:47 -06:00
Gregory Nutt
c62fe184bf Calypso/Compal_e86 update from Craig Comstock 2015-04-16 09:11:47 -06:00
Gregory Nutt
1f193dd515 Calypso/Compal_e86 update from Craig Comstock 2015-04-16 09:11:47 -06:00
Gregory Nutt
6c17a4978d Update ChangeLog 2015-04-15 21:40:18 -06:00
Gregory Nutt
4b5e1389b1 Missing PWM boardctl logic breaks PWM test. 2015-04-15 21:37:41 -06:00
Gregory Nutt
213987ea20 Missing PWM boardctl logic breaks PWM test. 2015-04-15 21:37:41 -06:00
Gregory Nutt
8172e4cec1 More places where watchodg mispelled 2015-04-15 21:36:30 -06:00
Gregory Nutt
69b7d3abd3 More places where watchodg mispelled 2015-04-15 21:36:30 -06:00
Gregory Nutt
cbcfb44942 STM32 IWDG typo fix. from chenming582892 2015-04-15 20:13:56 -06:00
Gregory Nutt
e6c302bdba STM32 IWDG typo fix. from chenming582892 2015-04-15 20:13:56 -06:00
Gregory Nutt
96aa06bad9 Spellcheck README file 2015-04-15 18:11:03 -06:00
Gregory Nutt
a28354c6a2 Spellcheck README file 2015-04-15 18:11:03 -06:00
Gregory Nutt
2f1bc0be1e Update comments 2015-04-15 16:38:08 -06:00
Gregory Nutt
811dc14c33 Update comments 2015-04-15 16:38:08 -06:00
Gregory Nutt
823889b214 Update comments and README 2015-04-15 16:25:38 -06:00
Gregory Nutt
0893a37b2b Update ChangeLogs 2015-04-15 11:05:05 -06:00
Gregory Nutt
0940d0ebfa configs/sim/src: Add logic to test localtime and TZ database. See apps/system/README.txt for info 2015-04-15 11:00:40 -06:00
Gregory Nutt
13bd65fe82 configs/sim/src: Add logic to test localtime and TZ database. See apps/system/README.txt for info 2015-04-15 11:00:40 -06:00
Gregory Nutt
0de88a3b9d Update README files 2015-04-15 09:31:44 -06:00
Gregory Nutt
b6b64cfc03 Update README files 2015-04-15 09:31:44 -06:00
Gregory Nutt
dc87eae8aa Fix typos in ReleaseNotes 2015-04-14 15:37:33 -06:00
Gregory Nutt
0cbe77cfca Prep for 7.9 release 2015-04-14 14:17:55 -06:00
Gregory Nutt
6b283c303c Prep for 7.9 release 2015-04-14 14:17:55 -06:00
Gregory Nutt
f087e35676 A little localtime clean-up 2015-04-14 10:46:05 -06:00
Gregory Nutt
c23610994c libc/time/lib_localtime.c: Move tzset(); it belongs in the Public Functions grouping 2015-04-14 08:12:45 -06:00
Gregory Nutt
660fe03ce7 Update ChangeLog 2015-04-14 07:33:52 -06:00
Gregory Nutt
f161a1d0f7 atexit: Fix reference to undefined variable in certain configurations. From Juha Niskanen 2015-04-14 07:31:35 -06:00
Gregory Nutt
a0866c0753 drivers/input/max11802.c: Fix possible unmatched IRQ restore. Noted by Juha Niskanen 2015-04-14 07:22:02 -06:00
Gregory Nutt
577f1ae5fc Remove all traces of the Galileo board. That port is not going to happen -- I dont' even have the Galileo board anymore. 2015-04-13 15:36:50 -06:00
Gregory Nutt
1b1568a149 Remove all traces of the Galileo board. That port is not going to happen -- I dont' even have the Galileo board anymore. 2015-04-13 15:36:50 -06:00
Gregory Nutt
490a2a5ebd Remove all traces of the Galileo board. That port is not going to happen -- I dont' even have the Galileo board anymore. 2015-04-13 15:36:50 -06:00
Gregory Nutt
4fc5bcef27 Update ChangeLog 2015-04-13 14:03:52 -06:00
Gregory Nutt
7a745c3fa4 Use common macro(s) for calculating link layer header length. From Brennan Ashton. 2015-04-13 13:53:13 -06:00
Gregory Nutt
3d6161a7aa Update some comments 2015-04-13 07:39:56 -06:00
Gregory Nutt
bf59ead547 Update ChangeLog 2015-04-12 14:25:15 -06:00
Gregory Nutt
1a3c6f7ec9 FAT: Fix misthink when CONFIG_ENDIAN_BIG=y. From Lwazi Dube 2015-04-12 14:24:05 -06:00
Gregory Nutt
7dba70685a Refresh configurations 2015-04-12 09:34:32 -06:00
Gregory Nutt
dc63b9dfc7 Refresh configurations 2015-04-12 09:34:32 -06:00
Gregory Nutt
814aa94b0d Update comments in a Kconfig file 2015-04-12 09:21:31 -06:00
Gregory Nutt
68bd885112 Update ChangeLog 2015-04-12 09:03:55 -06:00
Gregory Nutt
228b0e1d55 ix an error in time initialization when there is not RTC and the time is initialized from a fixed configured value. The call to clock_calendar2utc() was returning the time in units of seconds. The initialization logic, however, was expecting to get time in units of days. 2015-04-12 09:01:35 -06:00
Gregory Nutt
237e1ed407 Local time support is now EXPERIMENTAL 2015-04-12 07:57:16 -06:00
Gregory Nutt
9b7c128758 Add option to enable stackcheck per architecture 2015-04-12 06:30:24 -06:00