cleaned up object names
diff --git a/objects/control_bmc_barreleye.c b/objects/control_bmc_barreleye.c
index 0e6c5cb..399ab26 100644
--- a/objects/control_bmc_barreleye.c
+++ b/objects/control_bmc_barreleye.c
@@ -12,6 +12,7 @@
 

 /* ---------------------------------------------------------------------------------------------------- */

 static const gchar* dbus_object_path = "/org/openbmc/control";

+static const gchar* instance_name = "bmc0";

 static const gchar* dbus_name        = "org.openbmc.control.Bmc";

 

 //this probably should come from some global SOC config

@@ -23,7 +24,6 @@
 #define SPI_BASE		(off_t)0x1e630000

 #define SCU_BASE                (off_t)0x1e780000

 #define UART_BASE               (off_t)0x1e783000

-#define UART_BASE2              (off_t)0x1e785000

 #define COM_BASE                (off_t)0x1e789000

 #define COM_BASE2               (off_t)0x1e789100

 #define GPIO_BASE		(off_t)0x1e6e2000

@@ -72,11 +72,6 @@
 	devmem(bmcreg+0x00,0x00000000);  //Set Baud rate divisor -> 13 (Baud 115200)

 	devmem(bmcreg+0x04,0x00000000);  //Set Baud rate divisor -> 13 (Baud 115200)

 	devmem(bmcreg+0x08,0x000000c1);  //Disable Parity, 1 stop bit, 8 bits

-

-	bmcreg = memmap(mem_fd,UART_BASE2);

-	devmem(bmcreg+0x0c,0x00000000);

-	devmem(bmcreg+0x2c,0x00000000);

-

 	bmcreg = memmap(mem_fd,COM_BASE);

 	devmem(bmcreg+0x9C,0x08060000);  //Set UART routing

 

@@ -103,7 +98,6 @@
 	devmem(bmcreg+0x170,0x00000042);

 	devmem(bmcreg+0x174,0x00004000);

 

-

 	close(mem_fd);

 }

 

@@ -112,13 +106,25 @@
          GDBusMethodInvocation  *invocation,

          gpointer                user_data)

 {

+	//#ifdef __arm__

+	//reg_init();

+	//#endif

+	control_complete_init(control,invocation);

+	//control_emit_goto_system_state(control,"BMC_STARTING");

+	

+	return TRUE;

+}

+gboolean go(gpointer user_data)

+{

+ 	cmdline *cmd = user_data;

+	Control* control = object_get_control((Object*)cmd->user_data);

 	#ifdef __arm__

 	reg_init();

 	#endif

-	control_complete_init(control,invocation);

 	control_emit_goto_system_state(control,"BMC_STARTING");

 	

-	return TRUE;

+	g_main_loop_quit(cmd->loop);

+	return FALSE;

 }

 

 static void 

@@ -128,47 +134,48 @@
 {

 	ObjectSkeleton *object;

  	cmdline *cmd = user_data;

-	if (cmd->argc < 2)

-	{

-		g_print("No objects created.  Put object name(s) on command line\n");

-		return;

-	}	

   	manager = g_dbus_object_manager_server_new (dbus_object_path);

-  	int i=0;

-  	for (i=1;i<cmd->argc;i++)

-  	{

-		gchar *s;

-  		s = g_strdup_printf ("%s/%s",dbus_object_path,cmd->argv[i]);

-  		object = object_skeleton_new (s);

-  		g_free (s);

 

-		ControlBmc* control_bmc = control_bmc_skeleton_new ();

-		object_skeleton_set_control_bmc (object, control_bmc);

-		g_object_unref (control_bmc);

+	gchar *s;

+	s = g_strdup_printf ("%s/%s",dbus_object_path,instance_name);

+	object = object_skeleton_new (s);

+	g_free (s);

 

-		Control* control = control_skeleton_new ();

-		object_skeleton_set_control (object, control);

-		g_object_unref (control);

+	ControlBmc* control_bmc = control_bmc_skeleton_new ();

+	object_skeleton_set_control_bmc (object, control_bmc);

+	g_object_unref (control_bmc);

 

-		//define method callbacks here

-		g_signal_connect (control,

-        	            "handle-init",

-                	    G_CALLBACK (on_init),

-                	    NULL); /* user_data */

+	Control* control = control_skeleton_new ();

+	object_skeleton_set_control (object, control);

+	g_object_unref (control);

 

-		/* Export the object (@manager takes its own reference to @object) */

-		g_dbus_object_manager_server_export (manager, G_DBUS_OBJECT_SKELETON (object));

-		g_object_unref (object);

-	}

+	//define method callbacks here

+	g_signal_connect (control,

+       	            "handle-init",

+               	    G_CALLBACK (on_init),

+               	    NULL); /* user_data */

+

+	/* Export the object (@manager takes its own reference to @object) */

+	g_dbus_object_manager_server_export (manager, G_DBUS_OBJECT_SKELETON (object));

+	g_object_unref (object);

+

 	/* Export all objects */

 	g_dbus_object_manager_server_set_connection (manager, connection);

+

+	//TODO:  This is a bad hack to wait for object to be on bus

+	//sleep(1);

+	cmd->user_data = object;

+	g_idle_add(go,cmd);

 }

 

+

 static void

 on_name_acquired (GDBusConnection *connection,

                   const gchar     *name,

                   gpointer         user_data)

 {

+

+

 }

 

 static void

@@ -179,8 +186,6 @@
 }

 

 

-

-

 /*----------------------------------------------------------------*/

 /* Main Event Loop                                                */

 

@@ -194,6 +199,7 @@
 

   guint id;

   loop = g_main_loop_new (NULL, FALSE);

+  cmd.loop = loop;

 

   id = g_bus_own_name (DBUS_TYPE,

                        dbus_name,

diff --git a/objects/control_bmc_obj.c b/objects/control_bmc_obj.c
index 2aedd04..e1e1a8a 100644
--- a/objects/control_bmc_obj.c
+++ b/objects/control_bmc_obj.c
@@ -12,6 +12,7 @@
 

 /* ---------------------------------------------------------------------------------------------------- */

 static const gchar* dbus_object_path = "/org/openbmc/control";

+static const gchar* instance_name = "bmc0";

 static const gchar* dbus_name        = "org.openbmc.control.Bmc";

 

 //this probably should come from some global SOC config

@@ -103,13 +104,25 @@
          GDBusMethodInvocation  *invocation,

          gpointer                user_data)

 {

+	//#ifdef __arm__

+	//reg_init();

+	//#endif

+	control_complete_init(control,invocation);

+	//control_emit_goto_system_state(control,"BMC_STARTING");

+	

+	return TRUE;

+}

+gboolean go(gpointer user_data)

+{

+ 	cmdline *cmd = user_data;

+	Control* control = object_get_control((Object*)cmd->user_data);

 	#ifdef __arm__

 	reg_init();

 	#endif

-	control_complete_init(control,invocation);

 	control_emit_goto_system_state(control,"BMC_STARTING");

 	

-	return TRUE;

+	g_main_loop_quit(cmd->loop);

+	return FALSE;

 }

 

 static void 

@@ -119,47 +132,48 @@
 {

 	ObjectSkeleton *object;

  	cmdline *cmd = user_data;

-	if (cmd->argc < 2)

-	{

-		g_print("No objects created.  Put object name(s) on command line\n");

-		return;

-	}	

   	manager = g_dbus_object_manager_server_new (dbus_object_path);

-  	int i=0;

-  	for (i=1;i<cmd->argc;i++)

-  	{

-		gchar *s;

-  		s = g_strdup_printf ("%s/%s",dbus_object_path,cmd->argv[i]);

-  		object = object_skeleton_new (s);

-  		g_free (s);

 

-		ControlBmc* control_bmc = control_bmc_skeleton_new ();

-		object_skeleton_set_control_bmc (object, control_bmc);

-		g_object_unref (control_bmc);

+	gchar *s;

+	s = g_strdup_printf ("%s/%s",dbus_object_path,instance_name);

+	object = object_skeleton_new (s);

+	g_free (s);

 

-		Control* control = control_skeleton_new ();

-		object_skeleton_set_control (object, control);

-		g_object_unref (control);

+	ControlBmc* control_bmc = control_bmc_skeleton_new ();

+	object_skeleton_set_control_bmc (object, control_bmc);

+	g_object_unref (control_bmc);

 

-		//define method callbacks here

-		g_signal_connect (control,

-        	            "handle-init",

-                	    G_CALLBACK (on_init),

-                	    NULL); /* user_data */

+	Control* control = control_skeleton_new ();

+	object_skeleton_set_control (object, control);

+	g_object_unref (control);

 

-		/* Export the object (@manager takes its own reference to @object) */

-		g_dbus_object_manager_server_export (manager, G_DBUS_OBJECT_SKELETON (object));

-		g_object_unref (object);

-	}

+	//define method callbacks here

+	g_signal_connect (control,

+       	            "handle-init",

+               	    G_CALLBACK (on_init),

+               	    NULL); /* user_data */

+

+	/* Export the object (@manager takes its own reference to @object) */

+	g_dbus_object_manager_server_export (manager, G_DBUS_OBJECT_SKELETON (object));

+	g_object_unref (object);

+

 	/* Export all objects */

 	g_dbus_object_manager_server_set_connection (manager, connection);

+

+	//TODO:  This is a bad hack to wait for object to be on bus

+	//sleep(1);

+	cmd->user_data = object;

+	g_idle_add(go,cmd);

 }

 

+

 static void

 on_name_acquired (GDBusConnection *connection,

                   const gchar     *name,

                   gpointer         user_data)

 {

+

+

 }

 

 static void

@@ -170,8 +184,6 @@
 }

 

 

-

-

 /*----------------------------------------------------------------*/

 /* Main Event Loop                                                */

 

@@ -185,6 +197,7 @@
 

   guint id;

   loop = g_main_loop_new (NULL, FALSE);

+  cmd.loop = loop;

 

   id = g_bus_own_name (DBUS_TYPE,

                        dbus_name,