diff options
| author | Linus Torvalds <torvalds@g5.osdl.org> | 2005-07-23 19:59:55 -0400 |
|---|---|---|
| committer | Linus Torvalds <torvalds@g5.osdl.org> | 2005-07-23 19:59:55 -0400 |
| commit | c94c0d201f1c1a62184f4f220c1615347aafbee7 (patch) | |
| tree | ac2fe13e5686091ab9c3789cb40d50371ca270ef /drivers | |
| parent | 8ed693d29b25bbd88471ec043cc01581419d0481 (diff) | |
| parent | 53776eb4acdd3ec576d75b61b656ef8d51e430ea (diff) | |
Merge master.kernel.org:/home/rmk/linux-2.6-arm
Diffstat (limited to 'drivers')
| -rw-r--r-- | drivers/video/imxfb.c | 14 | ||||
| -rw-r--r-- | drivers/video/imxfb.h | 1 |
2 files changed, 8 insertions, 7 deletions
diff --git a/drivers/video/imxfb.c b/drivers/video/imxfb.c index 8fe1c12a17bd..cabd53cec991 100644 --- a/drivers/video/imxfb.c +++ b/drivers/video/imxfb.c | |||
| @@ -249,9 +249,6 @@ static void imxfb_enable_controller(struct imxfb_info *fbi) | |||
| 249 | /* disable hardware cursor */ | 249 | /* disable hardware cursor */ |
| 250 | LCDC_CPOS &= ~(CPOS_CC0 | CPOS_CC1); | 250 | LCDC_CPOS &= ~(CPOS_CC0 | CPOS_CC1); |
| 251 | 251 | ||
| 252 | /* fixed burst length (see erratum 11) */ | ||
| 253 | LCDC_DMACR = DMACR_BURST | DMACR_HM(8) | DMACR_TM(2); | ||
| 254 | |||
| 255 | LCDC_RMCR = RMCR_LCDC_EN; | 252 | LCDC_RMCR = RMCR_LCDC_EN; |
| 256 | 253 | ||
| 257 | if(fbi->backlight_power) | 254 | if(fbi->backlight_power) |
| @@ -359,6 +356,7 @@ static int imxfb_activate_var(struct fb_var_screeninfo *var, struct fb_info *inf | |||
| 359 | LCDC_PCR = fbi->pcr; | 356 | LCDC_PCR = fbi->pcr; |
| 360 | LCDC_PWMR = fbi->pwmr; | 357 | LCDC_PWMR = fbi->pwmr; |
| 361 | LCDC_LSCR1 = fbi->lscr1; | 358 | LCDC_LSCR1 = fbi->lscr1; |
| 359 | LCDC_DMACR = fbi->dmacr; | ||
| 362 | 360 | ||
| 363 | return 0; | 361 | return 0; |
| 364 | } | 362 | } |
| @@ -509,6 +507,7 @@ static int __init imxfb_init_fbinfo(struct device *dev) | |||
| 509 | fbi->cmap_inverse = inf->cmap_inverse; | 507 | fbi->cmap_inverse = inf->cmap_inverse; |
| 510 | fbi->pcr = inf->pcr; | 508 | fbi->pcr = inf->pcr; |
| 511 | fbi->lscr1 = inf->lscr1; | 509 | fbi->lscr1 = inf->lscr1; |
| 510 | fbi->dmacr = inf->dmacr; | ||
| 512 | fbi->pwmr = inf->pwmr; | 511 | fbi->pwmr = inf->pwmr; |
| 513 | fbi->lcd_power = inf->lcd_power; | 512 | fbi->lcd_power = inf->lcd_power; |
| 514 | fbi->backlight_power = inf->backlight_power; | 513 | fbi->backlight_power = inf->backlight_power; |
| @@ -642,12 +641,12 @@ static int imxfb_remove(struct device *dev) | |||
| 642 | { | 641 | { |
| 643 | struct platform_device *pdev = to_platform_device(dev); | 642 | struct platform_device *pdev = to_platform_device(dev); |
| 644 | struct fb_info *info = dev_get_drvdata(dev); | 643 | struct fb_info *info = dev_get_drvdata(dev); |
| 644 | struct imxfb_info *fbi = info->par; | ||
| 645 | struct resource *res; | 645 | struct resource *res; |
| 646 | 646 | ||
| 647 | res = platform_get_resource(pdev, IORESOURCE_MEM, 0); | 647 | res = platform_get_resource(pdev, IORESOURCE_MEM, 0); |
| 648 | 648 | ||
| 649 | /* disable LCD controller */ | 649 | imxfb_disable_controller(fbi); |
| 650 | LCDC_RMCR &= ~RMCR_LCDC_EN; | ||
| 651 | 650 | ||
| 652 | unregister_framebuffer(info); | 651 | unregister_framebuffer(info); |
| 653 | 652 | ||
| @@ -663,8 +662,9 @@ static int imxfb_remove(struct device *dev) | |||
| 663 | 662 | ||
| 664 | void imxfb_shutdown(struct device * dev) | 663 | void imxfb_shutdown(struct device * dev) |
| 665 | { | 664 | { |
| 666 | /* disable LCD Controller */ | 665 | struct fb_info *info = dev_get_drvdata(dev); |
| 667 | LCDC_RMCR &= ~RMCR_LCDC_EN; | 666 | struct imxfb_info *fbi = info->par; |
| 667 | imxfb_disable_controller(fbi); | ||
| 668 | } | 668 | } |
| 669 | 669 | ||
| 670 | static struct device_driver imxfb_driver = { | 670 | static struct device_driver imxfb_driver = { |
diff --git a/drivers/video/imxfb.h b/drivers/video/imxfb.h index 128c3ee515c7..e837a8b48eb8 100644 --- a/drivers/video/imxfb.h +++ b/drivers/video/imxfb.h | |||
| @@ -54,6 +54,7 @@ struct imxfb_info { | |||
| 54 | u_int pcr; | 54 | u_int pcr; |
| 55 | u_int pwmr; | 55 | u_int pwmr; |
| 56 | u_int lscr1; | 56 | u_int lscr1; |
| 57 | u_int dmacr; | ||
| 57 | u_int cmap_inverse:1, | 58 | u_int cmap_inverse:1, |
| 58 | cmap_static:1, | 59 | cmap_static:1, |
| 59 | unused:30; | 60 | unused:30; |
