mirror of
https://github.com/lvgl/lvgl.git
synced 2025-01-21 06:53:01 +08:00
1508320aa8
* PXP: Added basic PXP acceleration PXP accelerated features: - fill (+ opacity) - BLIT (+ opacity) - recoloring (+ opacity) - color keying (+ opacity) Recoloring + color keying simultaneously not supported. Signed-off-by: Jozef Bastek <jozef.bastek@nxp.com> * PXP: Added abstraction for interrupt handling Previous imlpementation used IRQ polling on PXP, which doesn't allow real CPU offload. Therefore added set of callbacks for interrupt handling that should be implemented by user, with possible RTOS integration. Default/example implementation of callbacks for bare metal and FreeRTOS provided (lv_gpu_nxp_pxp_osa.c), enabled by LV_USE_GPU_NXP_PXP_DEFAULT_OSA switch, accesible via pxp_default_cfg structure. Signed-off-by: Jozef Bastek <jozef.bastek@nxp.com> * PXP: Optimized cache flushing Previous implementation flushed areas of (LCD width * object height) size. Cache flush is expensive operation and flushing line by line, smallest possible area, boost performance by shortening time spent on cache flushes. Signed-off-by: Jozef Bastek <jozef.bastek@nxp.com> * PXP: Added documentation for NXP PXP accelerator Signed-off-by: Jozef Bastek <jozef.bastek@nxp.com> * PXP: added missing extern c in header files Signed-off-by: Jozef Bastek <jozef.bastek@nxp.com> * PXP: Fixed ifdefs - Removed LV_USE_GPU, fixed internal config LV_USE_GPU is not intended as a global GPU enable switch. It's used only for gpu_blend_cb and gpu_fill_cb callbacks, which are obsolete. This patch removes LV_USE_GPU dependency for PXP code, so it's enabled only with LV_USE_GPU_NXP_PXP symbol. Added missing symbols to internal conf, so automatic testd can pass build step. Signed-off-by: Jozef Bastek <jozef.bastek@nxp.com> * PXP: Default OSA changed to PXP auto-initialization Auto init feature added so if user run FreeRTOS or bare-metal, no PXP Init code is required. Renamed symbol to be more clear. Signed-off-by: Jozef Bastek <jozef.bastek@nxp.com> * PXP: Documentation moved to docs repo Signed-off-by: Jozef Bastek <jozef.bastek@nxp.com> * PXP: Fixed alpha configuration - Coverity issue: AS blend config used uninitialized structure. No impact on functionality, as blend module is not used (porter-duff blends in this case) - Alpha config fixed - swapped alpha values produced different result from SW render Signed-off-by: Jozef Bastek <jozef.bastek@nxp.com>