Browse Source

staging: sm750fb: change definition of PANEL_VERTICAL_TOTAL fields

Use stratight-forward definition of PANEL_VERTICAL_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>
Mike Rapoport 9 years ago
parent
commit
6014a31dd6
2 changed files with 8 additions and 4 deletions
  1. 5 2
      drivers/staging/sm750fb/ddk750_mode.c
  2. 3 2
      drivers/staging/sm750fb/ddk750_reg.h

+ 5 - 2
drivers/staging/sm750fb/ddk750_mode.c

@@ -148,8 +148,11 @@ static int programModeRegisters(mode_parameter_t *pModeParam, pll_value_t *pll)
 				PANEL_HORIZONTAL_SYNC_START_MASK));
 				PANEL_HORIZONTAL_SYNC_START_MASK));
 
 
 		POKE32(PANEL_VERTICAL_TOTAL,
 		POKE32(PANEL_VERTICAL_TOTAL,
-		FIELD_VALUE(0, PANEL_VERTICAL_TOTAL, TOTAL, pModeParam->vertical_total - 1)
-			| FIELD_VALUE(0, PANEL_VERTICAL_TOTAL, DISPLAY_END, pModeParam->vertical_display_end - 1));
+			(((pModeParam->vertical_total - 1) <<
+				PANEL_VERTICAL_TOTAL_TOTAL_SHIFT) &
+				PANEL_VERTICAL_TOTAL_TOTAL_MASK) |
+			((pModeParam->vertical_display_end - 1) &
+				PANEL_VERTICAL_TOTAL_DISPLAY_END_MASK));
 
 
 		POKE32(PANEL_VERTICAL_SYNC,
 		POKE32(PANEL_VERTICAL_SYNC,
 		FIELD_VALUE(0, PANEL_VERTICAL_SYNC, HEIGHT, pModeParam->vertical_sync_height)
 		FIELD_VALUE(0, PANEL_VERTICAL_SYNC, HEIGHT, pModeParam->vertical_sync_height)

+ 3 - 2
drivers/staging/sm750fb/ddk750_reg.h

@@ -868,8 +868,9 @@
 #define PANEL_HORIZONTAL_SYNC_START_MASK              0xfff
 #define PANEL_HORIZONTAL_SYNC_START_MASK              0xfff
 
 
 #define PANEL_VERTICAL_TOTAL                          0x08002C
 #define PANEL_VERTICAL_TOTAL                          0x08002C
-#define PANEL_VERTICAL_TOTAL_TOTAL                    26:16
-#define PANEL_VERTICAL_TOTAL_DISPLAY_END              10:0
+#define PANEL_VERTICAL_TOTAL_TOTAL_SHIFT              16
+#define PANEL_VERTICAL_TOTAL_TOTAL_MASK               (0x7ff << 16)
+#define PANEL_VERTICAL_TOTAL_DISPLAY_END_MASK         0x7ff
 
 
 #define PANEL_VERTICAL_SYNC                           0x080030
 #define PANEL_VERTICAL_SYNC                           0x080030
 #define PANEL_VERTICAL_SYNC_HEIGHT                    21:16
 #define PANEL_VERTICAL_SYNC_HEIGHT                    21:16