Commit 4c221d82 authored by Mike Rapoport's avatar Mike Rapoport Committed by Greg Kroah-Hartman

staging: sm750fb: change definition of PANEL_WINDOW_WIDTH fields

Use stratight-forward defintion of PANEL_WINDOW_WIDTH register fields and
use open-coded implementation for register manipulations
Signed-off-by: default avatarMike Rapoport <mike.rapoport@gmail.com>
Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
parent 26a3cc90
...@@ -838,8 +838,9 @@ ...@@ -838,8 +838,9 @@
#define PANEL_FB_WIDTH_OFFSET_MASK 0x3fff #define PANEL_FB_WIDTH_OFFSET_MASK 0x3fff
#define PANEL_WINDOW_WIDTH 0x080014 #define PANEL_WINDOW_WIDTH 0x080014
#define PANEL_WINDOW_WIDTH_WIDTH 27:16 #define PANEL_WINDOW_WIDTH_WIDTH_SHIFT 16
#define PANEL_WINDOW_WIDTH_X 11:0 #define PANEL_WINDOW_WIDTH_WIDTH_MASK (0xfff << 16)
#define PANEL_WINDOW_WIDTH_X_MASK 0xfff
#define PANEL_WINDOW_HEIGHT 0x080018 #define PANEL_WINDOW_HEIGHT 0x080018
#define PANEL_WINDOW_HEIGHT_HEIGHT 27:16 #define PANEL_WINDOW_HEIGHT_HEIGHT 27:16
......
...@@ -318,9 +318,10 @@ int hw_sm750_crtc_setMode(struct lynxfb_crtc *crtc, ...@@ -318,9 +318,10 @@ int hw_sm750_crtc_setMode(struct lynxfb_crtc *crtc,
reg |= (fix->line_length & PANEL_FB_WIDTH_OFFSET_MASK); reg |= (fix->line_length & PANEL_FB_WIDTH_OFFSET_MASK);
POKE32(PANEL_FB_WIDTH, reg); POKE32(PANEL_FB_WIDTH, reg);
POKE32(PANEL_WINDOW_WIDTH, reg = ((var->xres - 1) << PANEL_WINDOW_WIDTH_WIDTH_SHIFT) &
FIELD_VALUE(0, PANEL_WINDOW_WIDTH, WIDTH, var->xres - 1)| PANEL_WINDOW_WIDTH_WIDTH_MASK;
FIELD_VALUE(0, PANEL_WINDOW_WIDTH, X, var->xoffset)); reg |= (var->xoffset & PANEL_WINDOW_WIDTH_X_MASK);
POKE32(PANEL_WINDOW_WIDTH, reg);
POKE32(PANEL_WINDOW_HEIGHT, POKE32(PANEL_WINDOW_HEIGHT,
FIELD_VALUE(0, PANEL_WINDOW_HEIGHT, HEIGHT, var->yres_virtual - 1)| FIELD_VALUE(0, PANEL_WINDOW_HEIGHT, HEIGHT, var->yres_virtual - 1)|
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment