mirror of
https://github.com/torvalds/linux.git
synced 2026-06-09 23:23:53 +02:00
lcdc rk3188: fix panic temporarily
This commit is contained in:
parent
763b9c240c
commit
cdfa5a1fdc
|
|
@ -1467,6 +1467,8 @@ int rk3188_lcdc_poll_vblank(struct rk_lcdc_driver *dev_drv)
|
|||
|
||||
return ret;
|
||||
}
|
||||
|
||||
|
||||
static int rk3188_lcdc_get_dsp_addr(struct rk_lcdc_driver *dev_drv,unsigned int *dsp_addr)
|
||||
{
|
||||
struct lcdc_device *lcdc_dev =
|
||||
|
|
@ -1479,6 +1481,14 @@ static int rk3188_lcdc_get_dsp_addr(struct rk_lcdc_driver *dev_drv,unsigned int
|
|||
return 0;
|
||||
}
|
||||
|
||||
static int rk3188_lcdc_cfg_done(struct rk_lcdc_driver *dev_drv)
|
||||
{
|
||||
struct lcdc_device *lcdc_dev = container_of(dev_drv,
|
||||
struct lcdc_device, driver);
|
||||
lcdc_cfg_done(lcdc_dev);
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
||||
static struct rk_lcdc_win lcdc_win[] = {
|
||||
[0] = {
|
||||
|
|
@ -1515,6 +1525,7 @@ static struct rk_lcdc_drv_ops lcdc_drv_ops = {
|
|||
.dpi_win_sel = rk3188_lcdc_dpi_win_sel,
|
||||
.dpi_status = rk3188_lcdc_dpi_status,
|
||||
.get_dsp_addr = rk3188_lcdc_get_dsp_addr,
|
||||
.cfg_done = rk3188_lcdc_cfg_done,
|
||||
};
|
||||
|
||||
static irqreturn_t rk3188_lcdc_isr(int irq, void *dev_id)
|
||||
|
|
|
|||
|
|
@ -2964,7 +2964,7 @@ static struct rk_lcdc_drv_ops lcdc_drv_ops = {
|
|||
.set_dsp_bcsh_bcs = rk3288_lcdc_set_bcsh_bcs,
|
||||
.dump_reg = rk3288_lcdc_reg_dump,
|
||||
.mmu_en = rk3288_lcdc_mmu_en,
|
||||
.config_done = rk3288_lcdc_config_done,
|
||||
.cfg_done = rk3288_lcdc_config_done,
|
||||
};
|
||||
static int rk3288_lcdc_parse_irq(struct lcdc_device *lcdc_dev,unsigned int reg_val)
|
||||
{
|
||||
|
|
|
|||
|
|
@ -773,7 +773,7 @@ static int rk_fb_rotate(struct fb_info *dst_info,
|
|||
#endif
|
||||
return 0;
|
||||
}
|
||||
static int rk_pan_display(struct fb_var_screeninfo *var, struct fb_info *info)
|
||||
static int rk_fb_pan_display(struct fb_var_screeninfo *var, struct fb_info *info)
|
||||
{
|
||||
struct rk_fb *rk_fb = dev_get_drvdata(info->device);
|
||||
struct rk_lcdc_driver *dev_drv = (struct rk_lcdc_driver *)info->par;
|
||||
|
|
@ -920,7 +920,7 @@ static int rk_pan_display(struct fb_var_screeninfo *var, struct fb_info *info)
|
|||
if (video_data_to_mirroring)
|
||||
video_data_to_mirroring(info, NULL);
|
||||
#endif
|
||||
dev_drv->ops->config_done(dev_drv);
|
||||
dev_drv->ops->cfg_done(dev_drv);
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
|
@ -1129,7 +1129,7 @@ static void rk_fb_update_reg(struct rk_lcdc_driver * dev_drv,struct rk_fb_reg_da
|
|||
dev_drv->ops->pan_display(dev_drv,i);
|
||||
}
|
||||
dev_drv->ops->ovl_mgr(dev_drv, 0, 1);
|
||||
dev_drv->ops->config_done(dev_drv);
|
||||
dev_drv->ops->cfg_done(dev_drv);
|
||||
|
||||
#if 0
|
||||
for(i=0;i<2;i++){
|
||||
|
|
@ -1727,7 +1727,6 @@ static ssize_t rk_fb_read(struct fb_info *info, char __user *buf,
|
|||
struct rk_lcdc_driver *dev_drv = (struct rk_lcdc_driver *)info->par;
|
||||
struct rk_lcdc_win *win = NULL;
|
||||
int win_id = 0;
|
||||
int list_empty=0;
|
||||
|
||||
win_id = dev_drv->ops->fb_get_win_id(dev_drv, info->fix.id);
|
||||
if (win_id < 0)
|
||||
|
|
@ -2093,7 +2092,7 @@ static struct fb_ops fb_ops = {
|
|||
.fb_set_par = rk_fb_set_par,
|
||||
.fb_blank = rk_fb_blank,
|
||||
.fb_ioctl = rk_fb_ioctl,
|
||||
.fb_pan_display = rk_pan_display,
|
||||
.fb_pan_display = rk_fb_pan_display,
|
||||
.fb_read = rk_fb_read,
|
||||
.fb_write = rk_fb_write,
|
||||
.fb_setcolreg = fb_setcolreg,
|
||||
|
|
@ -2183,7 +2182,7 @@ EXPORT_SYMBOL(rk_get_fb);
|
|||
void rk_direct_fb_show(struct fb_info *fbi)
|
||||
{
|
||||
rk_fb_set_par(fbi);
|
||||
rk_pan_display(&fbi->var, fbi);
|
||||
rk_fb_pan_display(&fbi->var, fbi);
|
||||
}
|
||||
EXPORT_SYMBOL(rk_direct_fb_show);
|
||||
|
||||
|
|
|
|||
|
|
@ -374,7 +374,7 @@ struct rk_lcdc_drv_ops {
|
|||
int (*set_dsp_bcsh_bcs)(struct rk_lcdc_driver *dev_drv,int bri,int con,int sat);
|
||||
int (*dump_reg) (struct rk_lcdc_driver * dev_drv);
|
||||
int (*mmu_en) (struct rk_lcdc_driver * dev_drv,bool en);
|
||||
int (*config_done) (struct rk_lcdc_driver * dev_drv);
|
||||
int (*cfg_done) (struct rk_lcdc_driver * dev_drv);
|
||||
};
|
||||
|
||||
struct rk_fb_area_par {
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user