summaryrefslogtreecommitdiffstats
path: root/drivers/staging/sm750fb
diff options
context:
space:
mode:
authorMike Rapoport2016-02-15 18:53:47 +0100
committerGreg Kroah-Hartman2016-02-16 03:26:17 +0100
commit32849f85e6b86a8d08b58c635757aa4dd0e0b887 (patch)
tree4359702ccd51e5fcdd30980dbe2d1762d52115a4 /drivers/staging/sm750fb
parentstaging: sm750fb: change definition of CRT_AUTO_CENTERING_BR fields (diff)
downloadkernel-qcow2-linux-32849f85e6b86a8d08b58c635757aa4dd0e0b887.tar.gz
kernel-qcow2-linux-32849f85e6b86a8d08b58c635757aa4dd0e0b887.tar.xz
kernel-qcow2-linux-32849f85e6b86a8d08b58c635757aa4dd0e0b887.zip
staging: sm750fb: change definition of CRT_HORIZONTAL_TOTAL fields
Use stratight-forward definition of CRT_HORIZONTAL_TOTAL register fields and use open-coded implementation for register manipulation Signed-off-by: Mike Rapoport <mike.rapoport@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'drivers/staging/sm750fb')
-rw-r--r--drivers/staging/sm750fb/ddk750_mode.c7
-rw-r--r--drivers/staging/sm750fb/ddk750_reg.h5
2 files changed, 8 insertions, 4 deletions
diff --git a/drivers/staging/sm750fb/ddk750_mode.c b/drivers/staging/sm750fb/ddk750_mode.c
index 6c6a5c9cc50c..2b2f1c17989f 100644
--- a/drivers/staging/sm750fb/ddk750_mode.c
+++ b/drivers/staging/sm750fb/ddk750_mode.c
@@ -83,8 +83,11 @@ static int programModeRegisters(mode_parameter_t *pModeParam, pll_value_t *pll)
/* programe secondary pixel clock */
POKE32(CRT_PLL_CTRL, formatPllReg(pll));
POKE32(CRT_HORIZONTAL_TOTAL,
- FIELD_VALUE(0, CRT_HORIZONTAL_TOTAL, TOTAL, pModeParam->horizontal_total - 1)
- | FIELD_VALUE(0, CRT_HORIZONTAL_TOTAL, DISPLAY_END, pModeParam->horizontal_display_end - 1));
+ (((pModeParam->horizontal_total - 1) <<
+ CRT_HORIZONTAL_TOTAL_TOTAL_SHIFT) &
+ CRT_HORIZONTAL_TOTAL_TOTAL_MASK) |
+ ((pModeParam->horizontal_display_end - 1) &
+ CRT_HORIZONTAL_TOTAL_DISPLAY_END_MASK));
POKE32(CRT_HORIZONTAL_SYNC,
FIELD_VALUE(0, CRT_HORIZONTAL_SYNC, WIDTH, pModeParam->horizontal_sync_width)
diff --git a/drivers/staging/sm750fb/ddk750_reg.h b/drivers/staging/sm750fb/ddk750_reg.h
index 990d4e301b88..1b55a7f3677e 100644
--- a/drivers/staging/sm750fb/ddk750_reg.h
+++ b/drivers/staging/sm750fb/ddk750_reg.h
@@ -1377,8 +1377,9 @@
#define CRT_FB_WIDTH_OFFSET 13:0
#define CRT_HORIZONTAL_TOTAL 0x08020C
-#define CRT_HORIZONTAL_TOTAL_TOTAL 27:16
-#define CRT_HORIZONTAL_TOTAL_DISPLAY_END 11:0
+#define CRT_HORIZONTAL_TOTAL_TOTAL_SHIFT 16
+#define CRT_HORIZONTAL_TOTAL_TOTAL_MASK (0xfff << 16)
+#define CRT_HORIZONTAL_TOTAL_DISPLAY_END_MASK 0xfff
#define CRT_HORIZONTAL_SYNC 0x080210
#define CRT_HORIZONTAL_SYNC_WIDTH 23:16