geodevga: Add functions to work with fp register

The Flat Panel Display Controller belongs to the Video
Processor unit but its register are starting at offset
0x400. Provide functions to work with fp register.

Signed-off-by: Christian Gmeiner <christian.gmeiner@gmail.com>
diff --git a/vgasrc/geodevga.c b/vgasrc/geodevga.c
index 7d780c2..263ef68 100644
--- a/vgasrc/geodevga.c
+++ b/vgasrc/geodevga.c
@@ -86,6 +86,8 @@
     );
 }
 
+#define VP_FP_START     0x400
+
 static u32 GeodeFB VAR16;
 static u32 GeodeDC VAR16;
 static u32 GeodeVP VAR16;
@@ -134,6 +136,21 @@
     geode_mem_mask(GET_GLOBAL(GeodeVP) + reg, off, on);
 }
 
+static u32 geode_fp_read(int reg)
+{
+    u32 val = geode_mem_read(GET_GLOBAL(GeodeVP) + VP_FP_START + reg);
+    dprintf(4, "%s(0x%08x) = 0x%08x\n"
+            , __func__, GET_GLOBAL(GeodeVP) + reg, val);
+    return val;
+}
+
+static void geode_fp_write(int reg, u32 val)
+{
+    dprintf(4, "%s(0x%08x, 0x%08x)\n"
+            , __func__, GET_GLOBAL(GeodeVP) + VP_FP_START + reg, val);
+    geode_mem_mask(GET_GLOBAL(GeodeVP) + reg, ~0, val);
+}
+
 /****************************************************************
  * Helper functions
  ****************************************************************/