Explorar el Código

staging: sm750fb: change definition of CRT_VERTICAL_SYNC fields

Use stratight-forward definition of CRT_VERTICAL_SYNC 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 hace 9 años
padre
commit
620c391258
Se han modificado 2 ficheros con 8 adiciones y 4 borrados
  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

@@ -104,8 +104,11 @@ static int programModeRegisters(mode_parameter_t *pModeParam, pll_value_t *pll)
 				CRT_VERTICAL_TOTAL_DISPLAY_END_MASK));
 
 		POKE32(CRT_VERTICAL_SYNC,
-		FIELD_VALUE(0, CRT_VERTICAL_SYNC, HEIGHT, pModeParam->vertical_sync_height)
-		| FIELD_VALUE(0, CRT_VERTICAL_SYNC, START, pModeParam->vertical_sync_start - 1));
+			((pModeParam->vertical_sync_height <<
+				CRT_VERTICAL_SYNC_HEIGHT_SHIFT) &
+				CRT_VERTICAL_SYNC_HEIGHT_MASK) |
+			((pModeParam->vertical_sync_start - 1) &
+				CRT_VERTICAL_SYNC_START_MASK));
 
 
 		tmp = DISPLAY_CTRL_TIMING | DISPLAY_CTRL_PLANE;

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

@@ -1392,8 +1392,9 @@
 #define CRT_VERTICAL_TOTAL_DISPLAY_END_MASK           (0x7ff)
 
 #define CRT_VERTICAL_SYNC                             0x080218
-#define CRT_VERTICAL_SYNC_HEIGHT                      21:16
-#define CRT_VERTICAL_SYNC_START                       10:0
+#define CRT_VERTICAL_SYNC_HEIGHT_SHIFT                16
+#define CRT_VERTICAL_SYNC_HEIGHT_MASK                 (0x3f << 16)
+#define CRT_VERTICAL_SYNC_START_MASK                  0x7ff
 
 #define CRT_SIGNATURE_ANALYZER                        0x08021C
 #define CRT_SIGNATURE_ANALYZER_STATUS                 31:16