lots of changes
diff --git a/bin/Barreleye.py b/bin/Barreleye.py
index e32f559..d7c596b 100644
--- a/bin/Barreleye.py
+++ b/bin/Barreleye.py
@@ -4,8 +4,8 @@
 import dbus
 import Openbmc
 
-HOME_PATH = '/media/sf_vbox/openbmc/'
-BIN_PATH = HOME_PATH+'bin/'
+HOME_PATH = './'
+BIN_PATH = HOME_PATH
 CACHE_PATH = HOME_PATH+'cache/'
 FRU_PATH = CACHE_PATH+'frus/'
 
@@ -70,7 +70,7 @@
 		'instances' : [	
 			{
 				'name' : 'Barreleye',
-				'user_label': 'Fru Manager',
+				'user_label': 'Ipmi Manager',
 			}
 		]
 	}
@@ -92,8 +92,8 @@
 	}
 
 SYSTEM_CONFIG['org.openbmc.loggers.EventLogger'] = {
-		'system_state' : 'STANDBY',
-		'start_process' : True,
+		'system_state' : 'INIT',
+		'start_process' : False,
 		'monitor_process' : True,
 		'process_name' : 'eventlogger.py',
 		'heartbeat' : 'no',
@@ -141,7 +141,7 @@
 						'poll_interval' : 3000
 					},
 					'org.openbmc.control.Power': {
-						'pgood_timeout' : 10000
+						'pgood_timeout' : 10
 					}
 				}
 			}
@@ -223,7 +223,7 @@
 	}
 SYSTEM_CONFIG['org.openbmc.flash.BIOS'] = {
 		'system_state' : 'STANDBY',
-		'start_process' : True,
+		'start_process' : False,
 		'monitor_process' : True,
 		'process_name' : 'flash_bios.exe',
 		'heartbeat' : 'no',
@@ -328,29 +328,77 @@
 	'cache'      : True
 }
 
-FRUS = {}
-
-## key is IPMI FRU ID
-
-FRUS[32] = {
-		'name' : 'CPU0',
-		'user_label' : "IBM POWER8 CPU",
-		'ftype' : Openbmc.FRU_TYPES['CPU'],
-		'location' : "P0",
-		'manufacturer' : "IBM",
-		'cache' : True,
-		'state' : Openbmc.FRU_STATES['NORMAL'],
-		'sensor_id' : 10,
-	}
-
-FRUS[21] = {
-		'name' : 'IO_PLANAR',
-		'user_label' : "BARRELEYE IO PLANAR",
-		'ftype' : Openbmc.FRU_TYPES['BACKPLANE'],	
-		'cache' : False,
-		'state' : Openbmc.FRU_STATES['NORMAL'],
-		'sensor_id' : 11,
-	}
+FRU_INSTANCES = {
+	'/system' :
+	{
+		'ftype'        : Openbmc.FRU_TYPES['SYSTEM'],
+		'fru'	       : True,
+	},
+	'/system/motherboard' :
+	{
+		'ftype'        : Openbmc.FRU_TYPES['MAIN_PLANAR'],
+		'manufacturer' : 'FOXCONN',
+		'fru'	       : True,
+		'fru_id'       : 31,
+		'location' : 'C0',
+	},
+	'/system/fan0' :
+	{
+		'ftype'        : Openbmc.FRU_TYPES['FAN'],
+		'manufacturer' : 'DELTA',
+		'fru'	       : True,
+		'location' : 'F0',
+		'sensor_link' : 'fans/Fan_0',
+	},
+	'/system/fan1' :
+	{
+		'ftype'        : Openbmc.FRU_TYPES['FAN'],
+		'manufacturer' : 'DELTA',
+		'fru'	       : True,
+		'location' : 'F1',
+		'sensor_link' : 'fans/Fan_1',
+	},
+	'/system/motherboard/bmc' :
+	{
+		'ftype'        : Openbmc.FRU_TYPES['BMC'],
+		'manufacturer' : 'ASPEED',
+		'fru'	       : True,
+	},
+	'/system/motherboard/cpu0' :
+	{
+		'ftype'        : Openbmc.FRU_TYPES['CPU'],
+		'manufacturer' : 'IBM',
+		'fru'	       : True,
+		'location' : 'P0',
+		'fru_id'   : 10,
+	},
+	'/system/motherboard/cpu0/core0' :
+	{
+		'ftype'        : Openbmc.FRU_TYPES['CORE'],
+		'fru'	       : False,
+		'sensor_link' : 1,	
+	},
+	'/system/motherboard/cpu0/core1' :
+	{
+		'ftype'        : Openbmc.FRU_TYPES['CORE'],
+		'fru'	       : False,
+		'sensor_link' : 2,	
+	},
+	'/system/motherboard/dimm0' :
+	{
+		'ftype'        : Openbmc.FRU_TYPES['DIMM'],
+		'fru'	       : True,
+		'fru_id'       : 12,
+		'sensor_link'  : 20,	
+	},
+	'/system/motherboard/dimm1' :
+	{
+		'ftype'        : Openbmc.FRU_TYPES['DIMM'],
+		'fru'	       : True,
+		'fru_id'       : 13,
+		'sensor_link'  : 21,	
+	},
+}
 
 
 GPIO_CONFIG = {}
diff --git a/bin/Openbmc.py b/bin/Openbmc.py
index 9cfeffb..a777ae8 100644
--- a/bin/Openbmc.py
+++ b/bin/Openbmc.py
@@ -7,11 +7,14 @@
 
 
 FRU_TYPES = {
+	'SYSTEM' : 0,
 	'CPU' : 1,
 	'DIMM' : 2,
-	'BACKPLANE' : 3,
+	'MAIN_PLANAR' : 3,
 	'RISER_CARD' : 4,
-	'FAN' : 5
+	'FAN' : 5,
+	'BMC' : 6,
+	'CORE' : 7,
 }
 FRU_STATES = {
 	'NORMAL'            : 0,
diff --git a/bin/eventlogger.py b/bin/eventlogger.py
index 131faec..e36f928 100644
--- a/bin/eventlogger.py
+++ b/bin/eventlogger.py
@@ -25,13 +25,14 @@
 					path_keyword='path')
 
 	## Signal handler
-	def event_log_signal_handler(self,priority,msg,path = None):
+	def event_log_signal_handler(self,priority,msg,rc,path = None):
 		message = {}
 		ts = time.time()
 
 		message['priority'] = priority
 		message['object_path'] = path
 		message['message'] = msg
+		message['rc'] = rc
 
 		json_dump = json.dumps(message)
 		print "EVENT_LOG: "+json_dump
diff --git a/bin/fru_manager.py b/bin/fru_manager.py
index 1150552..220b7d3 100644
--- a/bin/fru_manager.py
+++ b/bin/fru_manager.py
@@ -17,7 +17,7 @@
 
 DBUS_NAME = 'org.openbmc.managers.Frus'
 OBJ_NAME = '/org/openbmc/managers/Frus'
-FRU_PATH = System.FRU_PATH
+FRUS = System.FRU_INSTANCES
 
 class Fru:
 	def __init__(self,fru_id,data):
@@ -89,13 +89,13 @@
 					signal_name = 'UpdateFru')
 
 		self.fru_db = {}
-		for fid in System.FRUS.keys():
-			self.updateFru(fid,System.FRUS[fid])
+		self.fru_id_lookup = {}
+		for fru in FRUS.keys():
+			#self.updateFru(fid,System.FRUS[fid])
+			if (FRUS[fru].has_key('fru_id')):
+				print fru
+				print FRUS[fru]['fru_id']
 			
-			
-	#@dbus.service.signal(DBUS_NAME)
-	#def OpenBmcRunning(self):
-	#	pass
 	def UpdateFruHandler(self,fru_id,data):
 		self.updateFru(fru_id,data)		
 
diff --git a/bin/system_manager.py b/bin/system_manager.py
index 1a4fe99..015aa8d 100644
--- a/bin/system_manager.py
+++ b/bin/system_manager.py
@@ -9,7 +9,8 @@
 import dbus.mainloop.glib
 import os
 import PropertyManager
-
+import time
+import json
 import Openbmc
 
 if (len(sys.argv) < 2):
@@ -35,6 +36,12 @@
 					signal_name = "NameOwnerChanged")
 		bus.add_signal_receiver(self.HeartbeatHandler, signal_name = "Heartbeat")
 		bus.add_signal_receiver(self.SystemStateHandler,signal_name = "GotoSystemState")
+		bus.add_signal_receiver(self.event_log_signal_handler, 
+					dbus_interface = "org.openbmc.EventLog", 
+					signal_name = "EventLog",
+					path_keyword='path')
+
+
 
 		self.current_state = ""
 		self.system_states = {}
@@ -168,6 +175,22 @@
 
 		return [Openbmc.GPIO_DEV, gpio_num, System.GPIO_CONFIG[name]['direction']]
 
+	## Signal handler
+	def event_log_signal_handler(self,priority,msg,rc,path = None):
+		message = {}
+		ts = time.time()
+
+		message['priority'] = priority
+		message['object_path'] = path
+		message['message'] = msg
+		message['rc'] = rc
+
+		json_dump = json.dumps(message)
+		print "EVENT_LOG: "+json_dump
+		#syslog.openlog('OpenBmc',logoption=syslog.LOG_PID)
+		#syslog.syslog(priority,json_dump)
+		#syslog.closelog()
+		
 
 if __name__ == '__main__':
     dbus.mainloop.glib.DBusGMainLoop(set_as_default=True)