Commit 78ebf0e3 authored by Linus Torvalds's avatar Linus Torvalds

Merge tag 'fbdev-fixes-3.11-rc5' of git://git.kernel.org/pub/scm/linux/kernel/git/tomba/linux

Pull fbdev fixes from Tomi Valkeinen:
 - omapdss: compilation fix and DVI fix for PandaBoard
 - mxsfb: fix colors when using 18bit LCD bus

* tag 'fbdev-fixes-3.11-rc5' of git://git.kernel.org/pub/scm/linux/kernel/git/tomba/linux:
  ARM: OMAP: dss-common: fix Panda's DVI DDC channel
  video: mxsfb: fix color settings for 18bit data bus and 32bpp
  OMAPDSS: analog-tv-connector: compile fix
parents 6a933166 70a0f603
...@@ -42,7 +42,7 @@ ...@@ -42,7 +42,7 @@
/* Using generic display panel */ /* Using generic display panel */
static struct tfp410_platform_data omap4_dvi_panel = { static struct tfp410_platform_data omap4_dvi_panel = {
.i2c_bus_num = 3, .i2c_bus_num = 2,
.power_down_gpio = PANDA_DVI_TFP410_POWER_DOWN_GPIO, .power_down_gpio = PANDA_DVI_TFP410_POWER_DOWN_GPIO,
}; };
......
...@@ -239,24 +239,6 @@ static const struct fb_bitfield def_rgb565[] = { ...@@ -239,24 +239,6 @@ static const struct fb_bitfield def_rgb565[] = {
} }
}; };
static const struct fb_bitfield def_rgb666[] = {
[RED] = {
.offset = 16,
.length = 6,
},
[GREEN] = {
.offset = 8,
.length = 6,
},
[BLUE] = {
.offset = 0,
.length = 6,
},
[TRANSP] = { /* no support for transparency */
.length = 0,
}
};
static const struct fb_bitfield def_rgb888[] = { static const struct fb_bitfield def_rgb888[] = {
[RED] = { [RED] = {
.offset = 16, .offset = 16,
...@@ -309,9 +291,6 @@ static int mxsfb_check_var(struct fb_var_screeninfo *var, ...@@ -309,9 +291,6 @@ static int mxsfb_check_var(struct fb_var_screeninfo *var,
break; break;
case STMLCDIF_16BIT: case STMLCDIF_16BIT:
case STMLCDIF_18BIT: case STMLCDIF_18BIT:
/* 24 bit to 18 bit mapping */
rgb = def_rgb666;
break;
case STMLCDIF_24BIT: case STMLCDIF_24BIT:
/* real 24 bit */ /* real 24 bit */
rgb = def_rgb888; rgb = def_rgb888;
...@@ -453,11 +432,6 @@ static int mxsfb_set_par(struct fb_info *fb_info) ...@@ -453,11 +432,6 @@ static int mxsfb_set_par(struct fb_info *fb_info)
return -EINVAL; return -EINVAL;
case STMLCDIF_16BIT: case STMLCDIF_16BIT:
case STMLCDIF_18BIT: case STMLCDIF_18BIT:
/* 24 bit to 18 bit mapping */
ctrl |= CTRL_DF24; /* ignore the upper 2 bits in
* each colour component
*/
break;
case STMLCDIF_24BIT: case STMLCDIF_24BIT:
/* real 24 bit */ /* real 24 bit */
break; break;
......
...@@ -28,6 +28,20 @@ struct panel_drv_data { ...@@ -28,6 +28,20 @@ struct panel_drv_data {
bool invert_polarity; bool invert_polarity;
}; };
static const struct omap_video_timings tvc_pal_timings = {
.x_res = 720,
.y_res = 574,
.pixel_clock = 13500,
.hsw = 64,
.hfp = 12,
.hbp = 68,
.vsw = 5,
.vfp = 5,
.vbp = 41,
.interlace = true,
};
#define to_panel_data(x) container_of(x, struct panel_drv_data, dssdev) #define to_panel_data(x) container_of(x, struct panel_drv_data, dssdev)
static int tvc_connect(struct omap_dss_device *dssdev) static int tvc_connect(struct omap_dss_device *dssdev)
...@@ -212,14 +226,14 @@ static int tvc_probe(struct platform_device *pdev) ...@@ -212,14 +226,14 @@ static int tvc_probe(struct platform_device *pdev)
return -ENODEV; return -ENODEV;
} }
ddata->timings = omap_dss_pal_timings; ddata->timings = tvc_pal_timings;
dssdev = &ddata->dssdev; dssdev = &ddata->dssdev;
dssdev->driver = &tvc_driver; dssdev->driver = &tvc_driver;
dssdev->dev = &pdev->dev; dssdev->dev = &pdev->dev;
dssdev->type = OMAP_DISPLAY_TYPE_VENC; dssdev->type = OMAP_DISPLAY_TYPE_VENC;
dssdev->owner = THIS_MODULE; dssdev->owner = THIS_MODULE;
dssdev->panel.timings = omap_dss_pal_timings; dssdev->panel.timings = tvc_pal_timings;
r = omapdss_register_display(dssdev); r = omapdss_register_display(dssdev);
if (r) { if (r) {
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment