]> git.dujemihanovic.xyz Git - u-boot.git/commitdiff
video/da8xx-fb: Cache-align memory allocations
authorNiko Mauno <niko.mauno@vaisala.com>
Fri, 27 Oct 2017 11:52:08 +0000 (14:52 +0300)
committerAnatolij Gustschin <agust@denx.de>
Sun, 29 Oct 2017 13:33:24 +0000 (14:33 +0100)
Resort to malloc_cache_aligned() rather than malloc() which also removes
'CACHE: Misaligned operation at range' warnings.

Signed-off-by: Niko Mauno <niko.mauno@vaisala.com>
drivers/video/da8xx-fb.c

index bbd384df5e64ff8b738d7787915ba628d9f0972a..6ec4f89e346d357892b31492e72645670a55004b 100644 (file)
@@ -14,7 +14,7 @@
  */
 
 #include <common.h>
-#include <malloc.h>
+#include <memalign.h>
 #include <video_fb.h>
 #include <linux/list.h>
 #include <linux/fb.h>
@@ -924,7 +924,7 @@ void *video_hw_init(void)
              da8xx_lcd_cfg->bpp);
 
        size = sizeof(struct fb_info) + sizeof(struct da8xx_fb_par);
-       da8xx_fb_info = malloc(size);
+       da8xx_fb_info = malloc_cache_aligned(size);
        debug("da8xx_fb_info at %x\n", (unsigned int)da8xx_fb_info);
 
        if (!da8xx_fb_info) {
@@ -949,7 +949,7 @@ void *video_hw_init(void)
                        da8xx_lcd_cfg->bpp;
        par->vram_size = par->vram_size * LCD_NUM_BUFFERS / 8;
 
-       par->vram_virt = malloc(par->vram_size);
+       par->vram_virt = malloc_cache_aligned(par->vram_size);
 
        par->vram_phys = (dma_addr_t) par->vram_virt;
        debug("Requesting 0x%x bytes for framebuffer at 0x%x\n",
@@ -972,7 +972,7 @@ void *video_hw_init(void)
                da8xx_fb_fix.line_length - 1;
 
        /* allocate palette buffer */
-       par->v_palette_base = malloc(PALETTE_SIZE);
+       par->v_palette_base = malloc_cache_aligned(PALETTE_SIZE);
        if (!par->v_palette_base) {
                printf("GLCD: malloc for palette buffer failed\n");
                goto err_release_fb_mem;