Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 373965
b: refs/heads/master
c: c8b5cfc
h: refs/heads/master
i:
  373963: f549ec2
v: v3
  • Loading branch information
Shawn Guo committed Apr 4, 2013
1 parent b1e79aa commit 61c990e
Show file tree
Hide file tree
Showing 3 changed files with 18 additions and 67 deletions.
2 changes: 1 addition & 1 deletion [refs]
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
---
refs/heads/master: 0d9f8217db159cdef7d90f89c9b101550d0fe3aa
refs/heads/master: c8b5cfc8797203d5e952592be00a5acacf5cef6a
41 changes: 17 additions & 24 deletions trunk/drivers/video/mxsfb.c
Original file line number Diff line number Diff line change
Expand Up @@ -49,7 +49,7 @@
#include <linux/dma-mapping.h>
#include <linux/io.h>
#include <linux/pinctrl/consumer.h>
#include <linux/mxsfb.h>
#include <linux/fb.h>
#include <video/videomode.h>

#define REG_SET 4
Expand Down Expand Up @@ -109,7 +109,7 @@
#define VDCTRL0_ENABLE_PRESENT (1 << 28)
#define VDCTRL0_VSYNC_ACT_HIGH (1 << 27)
#define VDCTRL0_HSYNC_ACT_HIGH (1 << 26)
#define VDCTRL0_DOTCLK_ACT_FAILING (1 << 25)
#define VDCTRL0_DOTCLK_ACT_FALLING (1 << 25)
#define VDCTRL0_ENABLE_ACT_HIGH (1 << 24)
#define VDCTRL0_VSYNC_PERIOD_UNIT (1 << 21)
#define VDCTRL0_VSYNC_PULSE_WIDTH_UNIT (1 << 20)
Expand Down Expand Up @@ -144,6 +144,14 @@
#define BLUE 2
#define TRANSP 3

#define STMLCDIF_8BIT 1 /** pixel data bus to the display is of 8 bit width */
#define STMLCDIF_16BIT 0 /** pixel data bus to the display is of 16 bit width */
#define STMLCDIF_18BIT 2 /** pixel data bus to the display is of 18 bit width */
#define STMLCDIF_24BIT 3 /** pixel data bus to the display is of 24 bit width */

#define MXSFB_SYNC_DATA_ENABLE_HIGH_ACT (1 << 6)
#define MXSFB_SYNC_DOTCLK_FALLING_ACT (1 << 7) /* negtive edge sampling */

enum mxsfb_devtype {
MXSFB_V3,
MXSFB_V4,
Expand Down Expand Up @@ -460,8 +468,8 @@ static int mxsfb_set_par(struct fb_info *fb_info)
vdctrl0 |= VDCTRL0_VSYNC_ACT_HIGH;
if (host->sync & MXSFB_SYNC_DATA_ENABLE_HIGH_ACT)
vdctrl0 |= VDCTRL0_ENABLE_ACT_HIGH;
if (host->sync & MXSFB_SYNC_DOTCLK_FAILING_ACT)
vdctrl0 |= VDCTRL0_DOTCLK_ACT_FAILING;
if (host->sync & MXSFB_SYNC_DOTCLK_FALLING_ACT)
vdctrl0 |= VDCTRL0_DOTCLK_ACT_FALLING;

writel(vdctrl0, host->base + LCDC_VDCTRL0);

Expand Down Expand Up @@ -760,7 +768,7 @@ static int mxsfb_init_fbinfo_dt(struct mxsfb_info *host)
if (vm.data_flags & DISPLAY_FLAGS_DE_HIGH)
host->sync |= MXSFB_SYNC_DATA_ENABLE_HIGH_ACT;
if (vm.data_flags & DISPLAY_FLAGS_PIXDATA_NEGEDGE)
host->sync |= MXSFB_SYNC_DOTCLK_FAILING_ACT;
host->sync |= MXSFB_SYNC_DOTCLK_FALLING_ACT;
fb_add_videomode(&fb_vm, &fb_info->modelist);
}

Expand All @@ -775,7 +783,6 @@ static int mxsfb_init_fbinfo(struct mxsfb_info *host)
{
struct fb_info *fb_info = &host->fb_info;
struct fb_var_screeninfo *var = &fb_info->var;
struct mxsfb_platform_data *pdata = host->pdev->dev.platform_data;
dma_addr_t fb_phys;
void *fb_virt;
unsigned fb_size;
Expand All @@ -789,15 +796,9 @@ static int mxsfb_init_fbinfo(struct mxsfb_info *host)
fb_info->fix.visual = FB_VISUAL_TRUECOLOR,
fb_info->fix.accel = FB_ACCEL_NONE;

if (pdata) {
host->ld_intf_width = pdata->ld_intf_width;
var->bits_per_pixel =
pdata->default_bpp ? pdata->default_bpp : 16;
} else {
ret = mxsfb_init_fbinfo_dt(host);
if (ret)
return ret;
}
ret = mxsfb_init_fbinfo_dt(host);
if (ret)
return ret;

var->nonstd = 0;
var->activate = FB_ACTIVATE_NOW;
Expand Down Expand Up @@ -853,15 +854,14 @@ static int mxsfb_probe(struct platform_device *pdev)
{
const struct of_device_id *of_id =
of_match_device(mxsfb_dt_ids, &pdev->dev);
struct mxsfb_platform_data *pdata = pdev->dev.platform_data;
struct resource *res;
struct mxsfb_info *host;
struct fb_info *fb_info;
struct fb_modelist *modelist;
struct pinctrl *pinctrl;
int panel_enable;
enum of_gpio_flags flags;
int i, ret;
int ret;

if (of_id)
pdev->id_entry = of_id->data;
Expand Down Expand Up @@ -933,13 +933,6 @@ static int mxsfb_probe(struct platform_device *pdev)
if (ret != 0)
goto fb_release;

if (pdata) {
host->sync = pdata->sync;
for (i = 0; i < pdata->mode_count; i++)
fb_add_videomode(&pdata->mode_list[i],
&fb_info->modelist);
}

modelist = list_first_entry(&fb_info->modelist,
struct fb_modelist, list);
fb_videomode_to_var(&fb_info->var, &modelist->mode);
Expand Down
42 changes: 0 additions & 42 deletions trunk/include/linux/mxsfb.h

This file was deleted.

0 comments on commit 61c990e

Please sign in to comment.