[U-Boot] [PATCH] video: mxc_ipuv3: fix memory alignment of framebuffer

The frame-buffer on i.MX boards needs to be aligned for DMA.
Signed-off-by: Eric Nelson eric.nelson@boundarydevices.com --- drivers/video/mxc_ipuv3_fb.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/drivers/video/mxc_ipuv3_fb.c b/drivers/video/mxc_ipuv3_fb.c index ace226c..ad95831 100644 --- a/drivers/video/mxc_ipuv3_fb.c +++ b/drivers/video/mxc_ipuv3_fb.c @@ -416,7 +416,8 @@ static int mxcfb_map_video_memory(struct fb_info *fbi) fbi->fix.line_length; }
- fbi->screen_base = (char *)malloc(fbi->fix.smem_len); + fbi->screen_base = (char *)memalign(ARCH_DMA_MINALIGN, + fbi->fix.smem_len); fbi->fix.smem_start = (unsigned long)fbi->screen_base; if (fbi->screen_base == 0) { puts("Unable to allocate framebuffer memory\n");

Dear Eric Nelson,
The frame-buffer on i.MX boards needs to be aligned for DMA.
Signed-off-by: Eric Nelson eric.nelson@boundarydevices.com
drivers/video/mxc_ipuv3_fb.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/drivers/video/mxc_ipuv3_fb.c b/drivers/video/mxc_ipuv3_fb.c index ace226c..ad95831 100644 --- a/drivers/video/mxc_ipuv3_fb.c +++ b/drivers/video/mxc_ipuv3_fb.c @@ -416,7 +416,8 @@ static int mxcfb_map_video_memory(struct fb_info *fbi) fbi->fix.line_length; }
- fbi->screen_base = (char *)malloc(fbi->fix.smem_len);
- fbi->screen_base = (char *)memalign(ARCH_DMA_MINALIGN,
fbi->fix.smem_len);
You might want to round-up the length too, like I did in the MXS driver.
fbi->fix.smem_start = (unsigned long)fbi->screen_base; if (fbi->screen_base == 0) { puts("Unable to allocate framebuffer memory\n");
Best regards, Marek Vasut

Hi Marek,
On 07/25/2013 09:27 PM, Marek Vasut wrote:
Dear Eric Nelson,
The frame-buffer on i.MX boards needs to be aligned for DMA.
Signed-off-by: Eric Nelson eric.nelson@boundarydevices.com
drivers/video/mxc_ipuv3_fb.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/drivers/video/mxc_ipuv3_fb.c b/drivers/video/mxc_ipuv3_fb.c index ace226c..ad95831 100644 --- a/drivers/video/mxc_ipuv3_fb.c +++ b/drivers/video/mxc_ipuv3_fb.c @@ -416,7 +416,8 @@ static int mxcfb_map_video_memory(struct fb_info *fbi) fbi->fix.line_length; }
- fbi->screen_base = (char *)malloc(fbi->fix.smem_len);
- fbi->screen_base = (char *)memalign(ARCH_DMA_MINALIGN,
fbi->fix.smem_len);
You might want to round-up the length too, like I did in the MXS driver.
Did you really run across a display whose size wasn't a multiple of 32, or is this rounding just in muscle-memory for you?
Regards,
Eric

Dear Eric Nelson,
Hi Marek,
On 07/25/2013 09:27 PM, Marek Vasut wrote:
Dear Eric Nelson,
The frame-buffer on i.MX boards needs to be aligned for DMA.
Signed-off-by: Eric Nelson eric.nelson@boundarydevices.com
drivers/video/mxc_ipuv3_fb.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/drivers/video/mxc_ipuv3_fb.c b/drivers/video/mxc_ipuv3_fb.c index ace226c..ad95831 100644 --- a/drivers/video/mxc_ipuv3_fb.c +++ b/drivers/video/mxc_ipuv3_fb.c @@ -416,7 +416,8 @@ static int mxcfb_map_video_memory(struct fb_info *fbi)
fbi->fix.line_length;
}
- fbi->screen_base = (char *)malloc(fbi->fix.smem_len);
- fbi->screen_base = (char *)memalign(ARCH_DMA_MINALIGN,
fbi->fix.smem_len);
You might want to round-up the length too, like I did in the MXS driver.
Did you really run across a display whose size wasn't a multiple of 32, or is this rounding just in muscle-memory for you?
Palm devices with PXA27x (PalmT5, PalmLD, PalmTX) had 484x324 LCDs ;-)
Best regards, Marek Vasut

On 07/26/2013 12:38 PM, Marek Vasut wrote:
Dear Eric Nelson,
- fbi->screen_base = (char *)malloc(fbi->fix.smem_len);
- fbi->screen_base = (char *)memalign(ARCH_DMA_MINALIGN,
fbi->fix.smem_len);
You might want to round-up the length too, like I did in the MXS driver.
Did you really run across a display whose size wasn't a multiple of 32, or is this rounding just in muscle-memory for you?
Palm devices with PXA27x (PalmT5, PalmLD, PalmTX) had 484x324 LCDs ;-)
With as much cache-enablement as you've done lately, I have a feeling you round up at the grocery store or pub ;)
participants (2)
-
Eric Nelson
-
Marek Vasut