Skip to content

Commit

Permalink
s3c-fb: add default window feature.
Browse files Browse the repository at this point in the history
s5pv210 has five window layers (window0 ~ 4), among them, window0 ~ 2
could be used for local path with fimc(capture device) and fimd writeback
feature so this patch makes default window layer for UI to be set at
machine code.

Signed-off-by: InKi Dae <inki.dae@samsung.com>
Reviewed-by: KyungMin Park <kyungmin.park.samsung.com>
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
Signed-off-by: Pawel Osciak <p.osciak@samsung.com>
Cc: Marek Szyprowski <m.szyprowski@samsung.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
  • Loading branch information
InKi Dae authored and Linus Torvalds committed Aug 11, 2010
1 parent 45649fd commit ad04490
Show file tree
Hide file tree
Showing 2 changed files with 6 additions and 3 deletions.
3 changes: 3 additions & 0 deletions arch/arm/plat-samsung/include/plat/fb.h
Original file line number Diff line number Diff line change
Expand Up @@ -42,6 +42,7 @@ struct s3c_fb_pd_win {
* @setup_gpio: Setup the external GPIO pins to the right state to transfer
* the data from the display system to the connected display
* device.
* @default_win: default window layer number to be used for UI layer.
* @vidcon0: The base vidcon0 values to control the panel data format.
* @vidcon1: The base vidcon1 values to control the panel data output.
* @win: The setup data for each hardware window, or NULL for unused.
Expand All @@ -58,6 +59,8 @@ struct s3c_fb_platdata {

struct s3c_fb_pd_win *win[S3C_FB_MAX_WIN];

u32 default_win;

u32 vidcon0;
u32 vidcon1;
};
Expand Down
6 changes: 3 additions & 3 deletions drivers/video/s3c-fb.c
Original file line number Diff line number Diff line change
Expand Up @@ -300,9 +300,9 @@ static int s3c_fb_set_par(struct fb_info *info)
/* disable the window whilst we update it */
writel(0, regs + WINCON(win_no));

/* use window 0 as the basis for the lcd output timings */
/* use platform specified window as the basis for the lcd timings */

if (win_no == 0) {
if (win_no == sfb->pdata->default_win) {
clkdiv = s3c_fb_calc_pixclk(sfb, var->pixclock);

data = sfb->pdata->vidcon0;
Expand Down Expand Up @@ -636,7 +636,7 @@ static int s3c_fb_blank(int blank_mode, struct fb_info *info)
/* we're stuck with this until we can do something about overriding
* the power control using the blanking event for a single fb.
*/
if (index == 0)
if (index == sfb->pdata->default_win)
s3c_fb_enable(sfb, blank_mode != FB_BLANK_POWERDOWN ? 1 : 0);

return 0;
Expand Down

0 comments on commit ad04490

Please sign in to comment.