This allows in particular in multi-touch panels to keep track of individual
fingers.
Also this improves the performance of reading the touch events on the FT*
drivers, by using batch reading of the touch registers.
Finally this commit also fixes the ft6x06 driver implemented on the F469 and
F769 disco boards.
This commit provides the following fixes:
* pure LTDC mode: fix the 'copy_back' function when swapping the double
buffered layers.
* fix the 'swapped' mode, when buffer's internal representation has swapped
x/y values.
This commit enhances the efficiency of the graphical primitives, by
* better organizing the potentially hardware-optimized primitives
* constantly redirecting the other ones to those hardware-optimized when
appropriate
* optimize the software-rendered copy_rect
* use direct fields access for values that are used very often (width, height,
color_mode)
* provide a mean to easily know if a bitmap is a memory buffer or a device
* adds finer control over the potentially DMA-accelerated Fill_Rect primitive.
* add direct access to DMA2D buffers, to prevent too much dispatching
In order to copy big chunks of data from buffer to buffer, it is usually
desirable to use DMA and thus we need to ensure that the memory and the cache
are coherent before transfering the data.
This is however a costly operation, that in controlled circumstances is not
needed.
Hence the addition of the Clean_Cache parameter to the Copy_Rect* subprograms.
This also adds a missing variant for Set_Pixel_Blend with color as native
representation, and improves the implementation of
Soft_Drawing_Bitmap.Copy_Rect to ease the implementation of
hardware-accelerated drawing primitives. STM32.DMA2D_Bitmap is simplified
accordingly.
This merges the various sdcard handling enhancements into a single commit,
the two branches master and sdcard having diverged too much to perform
a simple git merge.