diff --git a/objects/button_power_obj.c b/objects/button_power_obj.c
index f0583dd..98916dc 100644
--- a/objects/button_power_obj.c
+++ b/objects/button_power_obj.c
@@ -1,6 +1,8 @@
 #include "interfaces/button.h"
 
 /* ---------------------------------------------------------------------------------------------------- */
+static const gchar* dbus_object_path = "/org/openbmc/buttons/ButtonPower";
+static const gchar* dbus_name        = "org.openbmc.buttons.ButtonPower";
 
 static GDBusObjectManagerServer *manager = NULL;
 static Button *button = NULL;
@@ -39,10 +41,10 @@
 
   g_print ("Acquired a message bus connection: %s\n",name);
 
-  manager = g_dbus_object_manager_server_new ("/org/openbmc/buttons/ButtonPower");
+  manager = g_dbus_object_manager_server_new (dbus_object_path);
 
   gchar *s;
-  s = g_strdup_printf ("/org/openbmc/buttons/ButtonPower/0");
+  s = g_strdup_printf ("%s/0",dbus_object_path);
   object = object_skeleton_new (s);
   g_free (s);
 
@@ -96,7 +98,7 @@
   loop = g_main_loop_new (NULL, FALSE);
 
   id = g_bus_own_name (G_BUS_TYPE_SESSION,
-                       "org.openbmc.buttons.ButtonPower",
+                       dbus_name,
                        G_BUS_NAME_OWNER_FLAGS_ALLOW_REPLACEMENT |
                        G_BUS_NAME_OWNER_FLAGS_REPLACE,
                        on_bus_acquired,
diff --git a/objects/chassis_identify_obj.c b/objects/chassis_identify_obj.c
index a4bc735..69ba7a7 100644
--- a/objects/chassis_identify_obj.c
+++ b/objects/chassis_identify_obj.c
@@ -1,6 +1,8 @@
 #include "interfaces/led.h"
 
 /* ---------------------------------------------------------------------------------------------------- */
+static const gchar* dbus_object_path = "/org/openbmc/control/ChassisControl";
+static const gchar* dbus_name        = "org.openbmc.control.ChassisControl";
 
 static GDBusObjectManagerServer *manager = NULL;
 //static Led *led = NULL;
@@ -40,10 +42,10 @@
 
   g_print ("Acquired a message bus connection: %s\n",name);
 
-  manager = g_dbus_object_manager_server_new ("/org/openbmc/ChassisIdentify");
+  manager = g_dbus_object_manager_server_new (dbus_object_path);
 
   gchar *s;
-  s = g_strdup_printf ("/org/openbmc/ChassisIdentify/0");
+  s = g_strdup_printf ("%s/0",dbus_object_path);
   object = object_skeleton_new (s);
   g_free (s);
 
@@ -99,7 +101,7 @@
   loop = g_main_loop_new (NULL, FALSE);
 
   id = g_bus_own_name (G_BUS_TYPE_SESSION,
-                       "org.openbmc.ChassisIdentify",
+                       dbus_name,
                        G_BUS_NAME_OWNER_FLAGS_ALLOW_REPLACEMENT |
                        G_BUS_NAME_OWNER_FLAGS_REPLACE,
                        on_bus_acquired,
diff --git a/objects/flash_bios_obj.c b/objects/flash_bios_obj.c
index 90c67c8..3a4ae1f 100644
--- a/objects/flash_bios_obj.c
+++ b/objects/flash_bios_obj.c
@@ -2,6 +2,8 @@
 #include "pflash/pflash.c"
 
 /* ---------------------------------------------------------------------------------------------------- */
+static const gchar* dbus_object_path = "/org/openbmc/flash/BIOS";
+static const gchar* dbus_name        = "org.openbmc.flash.BIOS";
 
 static GDBusObjectManagerServer *manager = NULL;
 static Flash *flash = NULL;
@@ -39,10 +41,10 @@
 
   g_print ("Acquired a message bus connection: %s\n",name);
 
-  manager = g_dbus_object_manager_server_new ("/org/openbmc/Flash/BIOS");
+  manager = g_dbus_object_manager_server_new (dbus_object_path);
 
   gchar *s;
-  s = g_strdup_printf ("/org/openbmc/Flash/BIOS/0");
+  s = g_strdup_printf ("%s/0",dbus_object_path);
   object = object_skeleton_new (s);
   g_free (s);
 
@@ -90,7 +92,7 @@
   loop = g_main_loop_new (NULL, FALSE);
 
   id = g_bus_own_name (G_BUS_TYPE_SESSION,
-                       "org.openbmc.Flash.BIOS",
+                       dbus_name,
                        G_BUS_NAME_OWNER_FLAGS_ALLOW_REPLACEMENT |
                        G_BUS_NAME_OWNER_FLAGS_REPLACE,
                        on_bus_acquired,
diff --git a/objects/host_control_obj.c b/objects/host_control_obj.c
index 1b52590..014fe92 100644
--- a/objects/host_control_obj.c
+++ b/objects/host_control_obj.c
@@ -1,6 +1,8 @@
 #include "interfaces/host_control.h"
 
 /* ---------------------------------------------------------------------------------------------------- */
+static const gchar* dbus_object_path = "/org/openbmc/control/Host";
+static const gchar* dbus_name        = "org.openbmc.control.Host";
 
 static GDBusObjectManagerServer *manager = NULL;
 static HostControl *host_control = NULL;
@@ -30,10 +32,10 @@
 
   g_print ("Acquired a message bus connection: %s\n",name);
 
-  manager = g_dbus_object_manager_server_new ("/org/openbmc/HostControl");
+  manager = g_dbus_object_manager_server_new (dbus_object_path);
 
   gchar *s;
-  s = g_strdup_printf ("/org/openbmc/HostControl/0");
+  s = g_strdup_printf ("%s/0",dbus_object_path);
   object = object_skeleton_new (s);
   g_free (s);
   host_control = host_control_skeleton_new ();
@@ -80,7 +82,7 @@
   loop = g_main_loop_new (NULL, FALSE);
 
   id = g_bus_own_name (G_BUS_TYPE_SESSION,
-                       "org.openbmc.HostControl",
+                       dbus_name,
                        G_BUS_NAME_OWNER_FLAGS_ALLOW_REPLACEMENT |
                        G_BUS_NAME_OWNER_FLAGS_REPLACE,
                        on_bus_acquired,
diff --git a/objects/power_control_obj.c b/objects/power_control_obj.c
index 03eab40..4dacbe9 100644
--- a/objects/power_control_obj.c
+++ b/objects/power_control_obj.c
@@ -1,6 +1,42 @@
+#include <stdint.h>
+#include <stdio.h>
+#include <stdlib.h>
+#include <string.h>
+#include <fcntl.h>
+#include <unistd.h>
+#include <sys/stat.h>
+#include <sys/mman.h>
 #include "interfaces/power_control.h"
 
 /* ---------------------------------------------------------------------------------------------------- */
+static const gchar* dbus_object_path = "/org/openbmc/control/Power";
+static const gchar* dbus_name        = "org.openbmc.control.Power";
+
+// Platform specific config
+
+#define FSI_CLK		4	//GPIOA4
+#define FSI_DAT		5	//GPIOA5
+#define CRONUS_SEL	6	//GPIOA6
+#define PCIE_RST_N	13	//GPIOB5
+#define PEX_PERST_N	14	//GPIOB6
+#define POWER		33    	//GPIOE1
+#define PGOOD		23    	//GPIOC7
+#define FSI_ENABLE      24      //GPIOD0
+
+/* Where to put the firmware image if booting from memory */
+#define MEM_IMG_BASE (0x54000000)
+
+/* Start of flash memory if booting from flash */
+#define FLASH_IMG_BASE (0x30000000)
+
+/* LPC registers */
+#define LPC_BASE		0x1e789000
+#define LPC_HICR6		0x80
+#define LPC_HICR7		0x88
+#define LPC_HICR8		0x8c
+
+
+
 
 static GDBusObjectManagerServer *manager = NULL;
 static PowerControl *power_control = NULL;
@@ -65,10 +101,10 @@
 
   g_print ("Acquired a message bus connection: %s\n",name);
 
-  manager = g_dbus_object_manager_server_new ("/org/openbmc/PowerControl");
+  manager = g_dbus_object_manager_server_new (dbus_object_path);
 
   gchar *s;
-  s = g_strdup_printf ("/org/openbmc/PowerControl/0");
+  s = g_strdup_printf ("%s/0",dbus_object_path);
   object = object_skeleton_new (s);
   g_free (s);
 
@@ -146,7 +182,7 @@
   loop = g_main_loop_new (NULL, FALSE);
 
   id = g_bus_own_name (G_BUS_TYPE_SESSION,
-                       "org.openbmc.PowerControl",
+                       dbus_name,
                        G_BUS_NAME_OWNER_FLAGS_ALLOW_REPLACEMENT |
                        G_BUS_NAME_OWNER_FLAGS_REPLACE,
                        on_bus_acquired,
diff --git a/objects/sensor_host_status_obj.c b/objects/sensor_host_status_obj.c
index fea3e5c..17085e4 100644
--- a/objects/sensor_host_status_obj.c
+++ b/objects/sensor_host_status_obj.c
@@ -1,6 +1,8 @@
 #include "interfaces/sensor.h"
 
 /* ---------------------------------------------------------------------------------------------------- */
+static const gchar* dbus_object_path = "/org/openbmc/sensors/HostStatus";
+static const gchar* dbus_name        = "org.openbmc.sensors.HostStatus";
 
 static GDBusObjectManagerServer *manager = NULL;
 static SensorIntegerSettable *sensor = NULL;
@@ -46,10 +48,10 @@
 
   g_print ("Acquired a message bus connection: %s\n",name);
 
-  manager = g_dbus_object_manager_server_new ("/org/openbmc/Sensors/HostStatus");
+  manager = g_dbus_object_manager_server_new (dbus_object_path);
 
   gchar *s;
-  s = g_strdup_printf ("/org/openbmc/Sensors/HostStatus/0");
+  s = g_strdup_printf ("%s/0",dbus_object_path);
   object = object_skeleton_new (s);
   g_free (s);
 
@@ -106,7 +108,7 @@
   loop = g_main_loop_new (NULL, FALSE);
 
   id = g_bus_own_name (G_BUS_TYPE_SESSION,
-                       "org.openbmc.Sensors.HostStatus",
+                       dbus_name,
                        G_BUS_NAME_OWNER_FLAGS_ALLOW_REPLACEMENT |
                        G_BUS_NAME_OWNER_FLAGS_REPLACE,
                        on_bus_acquired,
diff --git a/objects/sensor_temperature_ambient_obj.c b/objects/sensor_temperature_ambient_obj.c
index 661f0b3..1f2ed47 100644
--- a/objects/sensor_temperature_ambient_obj.c
+++ b/objects/sensor_temperature_ambient_obj.c
@@ -1,6 +1,8 @@
 #include "interfaces/sensor.h"
 
 /* ---------------------------------------------------------------------------------------------------- */
+static const gchar* dbus_object_path = "/org/openbmc/sensors/Temperature/Ambient";
+static const gchar* dbus_name        = "org.openbmc.sensors.Temperature.Ambient";
 
 static GDBusObjectManagerServer *manager = NULL;
 static SensorInteger *sensor = NULL;
@@ -53,10 +55,10 @@
 
   g_print ("Acquired a message bus connection: %s\n",name);
 
-  manager = g_dbus_object_manager_server_new ("/org/openbmc/Sensors/Temperature/Ambient");
+  manager = g_dbus_object_manager_server_new (dbus_object_path);
 
   gchar *s;
-  s = g_strdup_printf ("/org/openbmc/Sensors/Temperature/Ambient/0");
+  s = g_strdup_printf ("%s/0",dbus_object_path);
   object = object_skeleton_new (s);
   g_free (s);
 
@@ -137,7 +139,7 @@
   loop = g_main_loop_new (NULL, FALSE);
 
   id = g_bus_own_name (G_BUS_TYPE_SESSION,
-                       "org.openbmc.Sensors.Temperature.Ambient",
+                       dbus_name,
                        G_BUS_NAME_OWNER_FLAGS_ALLOW_REPLACEMENT |
                        G_BUS_NAME_OWNER_FLAGS_REPLACE,
                        on_bus_acquired,
