Message ID | 792f5f410904131400v3199fa09w14c24f01f468d1c2@mail.gmail.com (mailing list archive) |
---|---|
State | Not Applicable, archived |
Delegated to: | Tomi Valkeinen |
Headers | show |
Hi Tomi, Can you please merge the YUV rotation patches with your latest? Thanks and Regards, Haardik > -----Original Message----- > From: plasmaroo@gmail.com [mailto:plasmaroo@gmail.com] On Behalf Of Tim Yamin > Sent: Tuesday, April 14, 2009 2:30 AM > To: Shah, Hardik > Cc: gregoire@gentil.com; tomi.valkeinen@nokia.com; linux-omap@vger.kernel.org; > beagleboard@googlegroups.com > Subject: Re: YUV rotation support for DSS2 - 2.6.29 [WAS Re: Hello Tomi > Valkeinen, I have some questions about dss2 driver.] > > Hi Hardik, > > Thanks for fixing up the patch. I can confirm that YUV rotation is > fine and patches are ready to be merged -- although the attached fix > is needed as well for the userspace layer to know the correct row > strides when writing YUV to the framebuffer. > > I'm still having VID1_FIFO_UNDERFLOW errors when I try to play rotated > video on plane 1 and plane 0 is rotated as well. Do you have any ideas > how to debug this further? > > Thanks, > > Tim > > > Hi Tomi, > > If YUV rotation with frame buffer passes can you please review the patch and > merge it to your latest. > > > > Regards, > > Hardik -- To unsubscribe from this list: send the line "unsubscribe linux-omap" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
> -----Original Message----- > From: plasmaroo@gmail.com [mailto:plasmaroo@gmail.com] On Behalf Of Tim Yamin > Sent: Tuesday, April 14, 2009 2:30 AM > To: Shah, Hardik > Cc: gregoire@gentil.com; tomi.valkeinen@nokia.com; linux-omap@vger.kernel.org; > beagleboard@googlegroups.com > Subject: Re: YUV rotation support for DSS2 - 2.6.29 [WAS Re: Hello Tomi > Valkeinen, I have some questions about dss2 driver.] > > Hi Hardik, > > Thanks for fixing up the patch. I can confirm that YUV rotation is > fine and patches are ready to be merged -- although the attached fix > is needed as well for the userspace layer to know the correct row > strides when writing YUV to the framebuffer. > > I'm still having VID1_FIFO_UNDERFLOW errors when I try to play rotated > video on plane 1 and plane 0 is rotated as well. Do you have any ideas > how to debug this further? [Shah, Hardik] Hi Tim, Try to increase the pixel clock to functional clock ratio to 6 or 8. This may help as you are getting under run errors. Thanks, Hardik > > Thanks, > > Tim > > > Hi Tomi, > > If YUV rotation with frame buffer passes can you please review the patch and > merge it to your latest. > > > > Regards, > > Hardik -- To unsubscribe from this list: send the line "unsubscribe linux-omap" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Hi Hardik, 2009/4/15 Shah, Hardik <hardik.shah@ti.com>: > [Shah, Hardik] Hi Tim, > Try to increase the pixel clock to functional clock ratio to 6 or 8. Â This may help as you are getting under run errors. Thanks for the help -- so it seems that it's a clock issue. At 800x600 rotation of both planes simultaneously by 90 degrees is working just fine. At 1024x768 it seems that it's not possible because of the clocking: the pixel clock is 56MHz so the maximum OMAP2_DSS_MIN_FCK_PER_PCK constant is 3, which does not seem to be sufficient. Cheers, Tim -- To unsubscribe from this list: send the line "unsubscribe linux-omap" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Hi Hardik and Tim, Thanks for the patches. They look fine to me, and are applied to my tree. Tomi On Wed, 2009-04-15 at 11:35 +0200, ext Shah, Hardik wrote: > Hi Tomi, > Can you please merge the YUV rotation patches with your latest? > > Thanks and Regards, > Haardik > > > -----Original Message----- > > From: plasmaroo@gmail.com [mailto:plasmaroo@gmail.com] On Behalf Of Tim Yamin > > Sent: Tuesday, April 14, 2009 2:30 AM > > To: Shah, Hardik > > Cc: gregoire@gentil.com; tomi.valkeinen@nokia.com; linux-omap@vger.kernel.org; > > beagleboard@googlegroups.com > > Subject: Re: YUV rotation support for DSS2 - 2.6.29 [WAS Re: Hello Tomi > > Valkeinen, I have some questions about dss2 driver.] > > > > Hi Hardik, > > > > Thanks for fixing up the patch. I can confirm that YUV rotation is > > fine and patches are ready to be merged -- although the attached fix > > is needed as well for the userspace layer to know the correct row > > strides when writing YUV to the framebuffer. > > > > I'm still having VID1_FIFO_UNDERFLOW errors when I try to play rotated > > video on plane 1 and plane 0 is rotated as well. Do you have any ideas > > how to debug this further? > > > > Thanks, > > > > Tim > > > > > Hi Tomi, > > > If YUV rotation with frame buffer passes can you please review the patch and > > merge it to your latest. > > > > > > Regards, > > > Hardik -- To unsubscribe from this list: send the line "unsubscribe linux-omap" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
From 4ba3f8b1d2feef00ac6c8de827262d255cebb185 Mon Sep 17 00:00:00 2001 From: Tim Yamin <plasm@roo.me.uk> Date: Mon, 13 Apr 2009 13:57:42 -0700 Subject: [PATCH] DSS2: OMAPFB: Set line_length correctly for YUV with VRFB. Signed-off-by: Tim Yamin <plasm@roo.me.uk> --- drivers/video/omap2/omapfb/omapfb-main.c | 30 +++++++++++++++++++++++++----- 1 files changed, 25 insertions(+), 5 deletions(-) diff --git a/drivers/video/omap2/omapfb/omapfb-main.c b/drivers/video/omap2/omapfb/omapfb-main.c index 9043265..675a7c9 100644 --- a/drivers/video/omap2/omapfb/omapfb-main.c +++ b/drivers/video/omap2/omapfb/omapfb-main.c @@ -377,10 +377,19 @@ void set_fb_fix(struct fb_info *fbi) fbi->screen_base = (char __iomem *)omapfb_get_region_vaddr(ofbi); /* used by mmap in fbmem.c */ - if (ofbi->rotation_type == OMAP_DSS_ROT_VRFB) - fix->line_length = - (OMAP_VRFB_LINE_LEN * var->bits_per_pixel) >> 3; - else + if (ofbi->rotation_type == OMAP_DSS_ROT_VRFB) { + switch (var->nonstd) { + case OMAPFB_COLOR_YUV422: + case OMAPFB_COLOR_YUY422: + fix->line_length = + (OMAP_VRFB_LINE_LEN * var->bits_per_pixel) >> 2; + break; + default: + fix->line_length = + (OMAP_VRFB_LINE_LEN * var->bits_per_pixel) >> 3; + break; + } + } else fix->line_length = (var->xres_virtual * var->bits_per_pixel) >> 3; fix->smem_start = omapfb_get_region_paddr(ofbi); @@ -689,7 +698,18 @@ static int omapfb_setup_overlay(struct fb_info *fbi, struct omap_overlay *ovl, goto err; } - screen_width = fix->line_length / (var->bits_per_pixel >> 3); + switch (var->nonstd) { + case OMAPFB_COLOR_YUV422: + case OMAPFB_COLOR_YUY422: + if (ofbi->rotation_type == OMAP_DSS_ROT_VRFB) { + screen_width = fix->line_length + / (var->bits_per_pixel >> 2); + break; + } + default: + screen_width = fix->line_length / (var->bits_per_pixel >> 3); + break; + } ovl->get_overlay_info(ovl, &info); -- 1.5.6.3