From mboxrd@z Thu Jan 1 00:00:00 1970 Return-path: From: Robert Schwebel Date: Sun, 30 Oct 2011 23:00:34 +0100 Message-Id: <1320012059-24971-3-git-send-email-r.schwebel@pengutronix.de> In-Reply-To: <1320012059-24971-1-git-send-email-r.schwebel@pengutronix.de> References: <20111030220011.GK14918@pengutronix.de> <1320012059-24971-1-git-send-email-r.schwebel@pengutronix.de> Subject: [ptxdist] [PATCH 03/28] mplayer: clean up patches Reply-To: ptxdist@pengutronix.de List-Id: PTXdist Development Mailing List List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Sender: ptxdist-bounces@pengutronix.de Errors-To: ptxdist-bounces@pengutronix.de To: ptxdist@pengutronix.de Cc: Robert Schwebel Signed-off-by: Robert Schwebel --- ...ayer-Suport-RGB-frambuffers-in-vo_fbdev.c.patch | 98 ++++++++++++++++++++ patches/MPlayer-1.0rc4/series | 1 - .../MPlayer-1.0rc4/support_RGB_framebuffer.patch | 89 ------------------ 3 files changed, 98 insertions(+), 90 deletions(-) create mode 100644 patches/MPlayer-1.0rc4/0001-MPlayer-Suport-RGB-frambuffers-in-vo_fbdev.c.patch delete mode 100644 patches/MPlayer-1.0rc4/series delete mode 100644 patches/MPlayer-1.0rc4/support_RGB_framebuffer.patch diff --git a/patches/MPlayer-1.0rc4/0001-MPlayer-Suport-RGB-frambuffers-in-vo_fbdev.c.patch b/patches/MPlayer-1.0rc4/0001-MPlayer-Suport-RGB-frambuffers-in-vo_fbdev.c.patch new file mode 100644 index 0000000..c796e3d --- /dev/null +++ b/patches/MPlayer-1.0rc4/0001-MPlayer-Suport-RGB-frambuffers-in-vo_fbdev.c.patch @@ -0,0 +1,98 @@ +From d168b399924f2cf753536d64753290988354eba0 Mon Sep 17 00:00:00 2001 +From: unknown author +Date: Sat, 29 Oct 2011 18:44:33 +0200 +Subject: [PATCH] MPlayer: Suport RGB frambuffers in vo_fbdev.c + +Using this upstream patch (r33289) mplayer supports a RGB framebuffer. +Before only BGR framebuffers were supported. + +Signed-off-by: Alexander Stein +--- + libvo/vo_fbdev.c | 20 +++++++++++++------- + 1 files changed, 13 insertions(+), 7 deletions(-) + +diff --git a/libvo/vo_fbdev.c b/libvo/vo_fbdev.c +index 7ddf2ad..92bad49 100644 +--- a/libvo/vo_fbdev.c ++++ b/libvo/vo_fbdev.c +@@ -491,7 +491,7 @@ static fb_mode_t *find_best_mode(int xres, int yres, range_t *hfreq, + return best; + } + +-static void set_bpp(struct fb_var_screeninfo *p, int bpp) ++static void set_bpp(struct fb_var_screeninfo *p, int bpp, int rgb) + { + p->bits_per_pixel = FFALIGN(bpp, 2); + p->red.msb_right = p->green.msb_right = p->blue.msb_right = p->transp.msb_right = 0; +@@ -530,15 +530,19 @@ static void set_bpp(struct fb_var_screeninfo *p, int bpp) + p->blue.length = 4; + break; + } ++ if (rgb) { ++ p->blue.offset = p->red.offset; ++ p->red.offset = 0; ++ } + } + +-static void fb_mode2fb_vinfo(fb_mode_t *m, struct fb_var_screeninfo *v) ++static void fb_mode2fb_vinfo(fb_mode_t *m, struct fb_var_screeninfo *v, int rgb) + { + v->xres = m->xres; + v->yres = m->yres; + v->xres_virtual = m->vxres; + v->yres_virtual = m->vyres; +- set_bpp(v, m->depth); ++ set_bpp(v, m->depth, rgb); + v->pixclock = m->pixclock; + v->left_margin = m->left; + v->right_margin = m->right; +@@ -574,6 +578,7 @@ static struct fb_var_screeninfo fb_vinfo; + static unsigned short fb_ored[256], fb_ogreen[256], fb_oblue[256]; + static struct fb_cmap fb_oldcmap = { 0, 256, fb_ored, fb_ogreen, fb_oblue }; + static int fb_cmap_changed = 0; ++static int fb_rgb; + static int fb_pixel_size; // 32: 4 24: 3 16: 2 15: 2 + static int fb_bpp; // 32: 32 24: 24 16: 16 15: 15 + static int fb_bpp_we_want; // 32: 32 24: 24 16: 16 15: 15 +@@ -698,6 +703,7 @@ static int fb_preinit(int reset) + mp_msg(MSGT_VO, MSGL_ERR, "notice: Can't open /dev/tty: %s\n", strerror(errno)); + } + ++ fb_rgb = !fb_vinfo.red.offset; + fb_bpp = fb_vinfo.bits_per_pixel; + if (fb_bpp == 16) + fb_bpp = fb_vinfo.red.length + fb_vinfo.green.length + fb_vinfo.blue.length; +@@ -791,7 +797,7 @@ static int config(uint32_t width, uint32_t height, uint32_t d_width, + mp_msg(MSGT_VO, MSGL_ERR, "can't find requested video mode\n"); + return 1; + } +- fb_mode2fb_vinfo(fb_mode, &fb_vinfo); ++ fb_mode2fb_vinfo(fb_mode, &fb_vinfo, fb_rgb); + } else if (vm) { + monitor_hfreq = str2range(monitor_hfreq_str); + monitor_vfreq = str2range(monitor_vfreq_str); +@@ -808,10 +814,10 @@ static int config(uint32_t width, uint32_t height, uint32_t d_width, + } + mp_msg(MSGT_VO, MSGL_V, "using mode %dx%d @ %.1fHz\n", fb_mode->xres, + fb_mode->yres, vsf(fb_mode)); +- fb_mode2fb_vinfo(fb_mode, &fb_vinfo); ++ fb_mode2fb_vinfo(fb_mode, &fb_vinfo, fb_rgb); + } + fb_bpp_we_want = fb_bpp; +- set_bpp(&fb_vinfo, fb_bpp); ++ set_bpp(&fb_vinfo, fb_bpp, fb_rgb); + fb_vinfo.xres_virtual = fb_vinfo.xres; + fb_vinfo.yres_virtual = fb_vinfo.yres; + fb_page = 0; +@@ -1016,7 +1022,7 @@ static int query_format(uint32_t format) + if (vidix_name) + return vidix_query_fourcc(format); + #endif +- if ((format & IMGFMT_BGR_MASK) == IMGFMT_BGR) { ++ if ((format & IMGFMT_BGR_MASK) == (fb_rgb ? IMGFMT_RGB : IMGFMT_BGR)) { + int bpp = format & 0xff; + + if (bpp == fb_bpp) +-- +1.7.7 + diff --git a/patches/MPlayer-1.0rc4/series b/patches/MPlayer-1.0rc4/series deleted file mode 100644 index 9f5ef95..0000000 --- a/patches/MPlayer-1.0rc4/series +++ /dev/null @@ -1 +0,0 @@ -support_RGB_framebuffer.patch -p0 diff --git a/patches/MPlayer-1.0rc4/support_RGB_framebuffer.patch b/patches/MPlayer-1.0rc4/support_RGB_framebuffer.patch deleted file mode 100644 index 0e4b6e2..0000000 --- a/patches/MPlayer-1.0rc4/support_RGB_framebuffer.patch +++ /dev/null @@ -1,89 +0,0 @@ -Subject: MPlayer: Suport RGB frambuffers in vo_fbdev.c - -Using this upstream patch (r33289) mplayer supports a RGB framebuffer. -Before only BGR framebuffers were supported. - -Signed-off-by: Alexander Stein - -Index: libvo/vo_fbdev.c -=================================================================== ---- libvo/vo_fbdev.c (Revision 33288) -+++ libvo/vo_fbdev.c (Revision 33289) -@@ -487,7 +487,7 @@ - return best; - } - --static void set_bpp(struct fb_var_screeninfo *p, int bpp) -+static void set_bpp(struct fb_var_screeninfo *p, int bpp, int rgb) - { - p->bits_per_pixel = FFALIGN(bpp, 2); - p->red.msb_right = p->green.msb_right = p->blue.msb_right = p->transp.msb_right = 0; -@@ -526,15 +526,19 @@ - p->blue.length = 4; - break; - } -+ if (rgb) { -+ p->blue.offset = p->red.offset; -+ p->red.offset = 0; -+ } - } - --static void fb_mode2fb_vinfo(fb_mode_t *m, struct fb_var_screeninfo *v) -+static void fb_mode2fb_vinfo(fb_mode_t *m, struct fb_var_screeninfo *v, int rgb) - { - v->xres = m->xres; - v->yres = m->yres; - v->xres_virtual = m->vxres; - v->yres_virtual = m->vyres; -- set_bpp(v, m->depth); -+ set_bpp(v, m->depth, rgb); - v->pixclock = m->pixclock; - v->left_margin = m->left; - v->right_margin = m->right; -@@ -570,6 +574,7 @@ - static unsigned short fb_ored[256], fb_ogreen[256], fb_oblue[256]; - static struct fb_cmap fb_oldcmap = { 0, 256, fb_ored, fb_ogreen, fb_oblue }; - static int fb_cmap_changed = 0; -+static int fb_rgb; - static int fb_pixel_size; // 32: 4 24: 3 16: 2 15: 2 - static int fb_bpp; // 32: 32 24: 24 16: 16 15: 15 - static int fb_bpp_we_want; // 32: 32 24: 24 16: 16 15: 15 -@@ -694,6 +699,7 @@ - mp_msg(MSGT_VO, MSGL_ERR, "notice: Can't open /dev/tty: %s\n", strerror(errno)); - } - -+ fb_rgb = !fb_vinfo.red.offset; - fb_bpp = fb_vinfo.bits_per_pixel; - if (fb_bpp == 16) - fb_bpp = fb_vinfo.red.length + fb_vinfo.green.length + fb_vinfo.blue.length; -@@ -787,7 +793,7 @@ - mp_msg(MSGT_VO, MSGL_ERR, "can't find requested video mode\n"); - return 1; - } -- fb_mode2fb_vinfo(fb_mode, &fb_vinfo); -+ fb_mode2fb_vinfo(fb_mode, &fb_vinfo, fb_rgb); - } else if (vm) { - monitor_hfreq = str2range(monitor_hfreq_str); - monitor_vfreq = str2range(monitor_vfreq_str); -@@ -804,10 +810,10 @@ - } - mp_msg(MSGT_VO, MSGL_V, "using mode %dx%d @ %.1fHz\n", fb_mode->xres, - fb_mode->yres, vsf(fb_mode)); -- fb_mode2fb_vinfo(fb_mode, &fb_vinfo); -+ fb_mode2fb_vinfo(fb_mode, &fb_vinfo, fb_rgb); - } - fb_bpp_we_want = fb_bpp; -- set_bpp(&fb_vinfo, fb_bpp); -+ set_bpp(&fb_vinfo, fb_bpp, fb_rgb); - fb_vinfo.xres_virtual = fb_vinfo.xres; - fb_vinfo.yres_virtual = fb_vinfo.yres; - fb_page = 0; -@@ -1012,7 +1018,7 @@ - if (vidix_name) - return vidix_query_fourcc(format); - #endif -- if ((format & IMGFMT_BGR_MASK) == IMGFMT_BGR) { -+ if ((format & IMGFMT_BGR_MASK) == (fb_rgb ? IMGFMT_RGB : IMGFMT_BGR)) { - int bpp = format & 0xff; - - if (bpp == fb_bpp) -- 1.7.7 -- ptxdist mailing list ptxdist@pengutronix.de