diff options
author | Jingoo Han <jg1.han@samsung.com> | 2011-06-09 00:26:45 -0400 |
---|---|---|
committer | Paul Mundt <lethal@linux-sh.org> | 2011-06-09 01:59:56 -0400 |
commit | fab7c5b778b1e0ee89e75679b2d6a1405318bb11 (patch) | |
tree | 4157b658ddca44ad21c46c07aee17a4fccd8d3ba /drivers | |
parent | 13e6af8886f3225fb9141dc3b6915d84bd4ad4de (diff) |
video: s3c-fb: move enabling channel for window
This patch moves enabling channel for window, because there should
be enabling channel before enabling window. If the sequence is
reversed, it makes the problem in displaying images to lcd panel.
Signed-off-by: Jingoo Han <jg1.han@samsung.com>
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
Diffstat (limited to 'drivers')
-rw-r--r-- | drivers/video/s3c-fb.c | 14 |
1 files changed, 7 insertions, 7 deletions
diff --git a/drivers/video/s3c-fb.c b/drivers/video/s3c-fb.c index dfc2b64dde25..4aecf213c9be 100644 --- a/drivers/video/s3c-fb.c +++ b/drivers/video/s3c-fb.c | |||
@@ -557,6 +557,13 @@ static int s3c_fb_set_par(struct fb_info *info) | |||
557 | vidosd_set_alpha(win, alpha); | 557 | vidosd_set_alpha(win, alpha); |
558 | vidosd_set_size(win, data); | 558 | vidosd_set_size(win, data); |
559 | 559 | ||
560 | /* Enable DMA channel for this window */ | ||
561 | if (sfb->variant.has_shadowcon) { | ||
562 | data = readl(sfb->regs + SHADOWCON); | ||
563 | data |= SHADOWCON_CHx_ENABLE(win_no); | ||
564 | writel(data, sfb->regs + SHADOWCON); | ||
565 | } | ||
566 | |||
560 | data = WINCONx_ENWIN; | 567 | data = WINCONx_ENWIN; |
561 | 568 | ||
562 | /* note, since we have to round up the bits-per-pixel, we end up | 569 | /* note, since we have to round up the bits-per-pixel, we end up |
@@ -636,13 +643,6 @@ static int s3c_fb_set_par(struct fb_info *info) | |||
636 | writel(data, regs + sfb->variant.wincon + (win_no * 4)); | 643 | writel(data, regs + sfb->variant.wincon + (win_no * 4)); |
637 | writel(0x0, regs + sfb->variant.winmap + (win_no * 4)); | 644 | writel(0x0, regs + sfb->variant.winmap + (win_no * 4)); |
638 | 645 | ||
639 | /* Enable DMA channel for this window */ | ||
640 | if (sfb->variant.has_shadowcon) { | ||
641 | data = readl(sfb->regs + SHADOWCON); | ||
642 | data |= SHADOWCON_CHx_ENABLE(win_no); | ||
643 | writel(data, sfb->regs + SHADOWCON); | ||
644 | } | ||
645 | |||
646 | shadow_protect_win(win, 0); | 646 | shadow_protect_win(win, 0); |
647 | 647 | ||
648 | return 0; | 648 | return 0; |