first commit
diff --git a/bin/rest_server.py b/bin/rest_server.py
deleted file mode 100644
index 5a36e9e..0000000
--- a/bin/rest_server.py
+++ /dev/null
@@ -1,123 +0,0 @@
-#!/usr/bin/env python 
-
-from BaseHTTPServer import BaseHTTPRequestHandler
-import urlparse
-import dbus
-import json
-import re
-import xml.etree.ElementTree as ET
-
-def parseIntrospection(obj,interface,method=None):
-	introspect_iface = dbus.Interface(obj,"org.freedesktop.DBus.Introspectable")
-	tree = ET.ElementTree(ET.fromstring(introspect_iface.Introspect()))
-	root = tree.getroot()
-	r = []
-	for intf in root.iter('interface'):
-		if (intf.attrib['name'] == interface):
-			for methd in intf.iter('method'):
-				if (method == None):
-					r.append(methd.attrib['name'])
-				elif (method == methd.attrib['name']):
-					for arg in methd.iter('arg'):
-						a = [arg.attrib['name'],arg.attrib['type'],arg.attrib['direction']]
-						r.append(a)
-	return r
-
-def getArgFromSignature(args,signature):
-	if (signature == 'i'):
-		return int(args[0])
-	elif (signature == 's'):
-		return args[0];
-
-	raise Exception("Inavlid signature: "+signature)	
-		
-
-class GetHandler(BaseHTTPRequestHandler):
-	def do_GET(self):
-		url_data = urlparse.urlparse(self.path)
-		parms = urlparse.parse_qs(url_data.query)
-		self.objmap = {
-			'chassis' : ['org.openbmc.ChassisControl','/org/openbmc/ChassisControl','org.openbmc.ChassisControl'],
-			'flash' : ['org.openbmc.Flash.BIOS','/org/openbmc/Flash/BIOS/0','org.openbmc.Flash'],
-			'power' : ['org.openbmc.PowerControl','/org/openbmc/PowerControl/0','org.openbmc.PowerControl']
-		}
-		self.sensors = {
-			'/org/openbmc/Sensors/HostStatus/0' : ['org.openbmc.Sensors.HostStatus','org.openbmc.SensorIntegerSettable',0,""], 
-			'/org/openbmc/Sensors/Temperature/Ambient/0': ['org.openbmc.Sensors.Temperature.Ambient','org.openbmc.SensorInteger',0,""]
-		}
-
-
-		parts = url_data.path.split('/');
-		item = parts[1]
-		
-		method = ''
-		if (len(parts) > 2):
-			method = parts[2]
-
-		code = 403
-		payload = {'status': 'error'}
-		bus = dbus.SessionBus()
-
-		if (item == 'sensors'):
-			try:
-				for s in self.sensors.keys():
-					obj = bus.get_object(self.sensors[s][0],s)
-					iface = dbus.Interface(obj,self.sensors[s][1])
-					self.sensors[s][2] = iface.getValue()
-					self.sensors[s][3] = iface.getUnits()
-				
-				payload['status'] = 'ok'	
-				payload['sensors'] = self.sensors
-				code = 200
-			except dbus.exceptions.DBusException as e:
-				payload['error-message'] = e.get_dbus_name()
-
-		elif (self.objmap.has_key(item)):
-			bus_name = self.objmap[item][0]
-			obj_name = self.objmap[item][1] 
-			interface = self.objmap[item][2]
-			try:
-				obj = bus.get_object(bus_name,obj_name)
-					
-				if (method == ''):
-					payload['available-methods'] = parseIntrospection(obj,interface)
-				else:
-					args = parseIntrospection(obj,interface,method)
-					arg_array = []
-					signature_in = ''
-					signature_out = ''
-					for a in args:
-						if (a[2] == 'in'):
-							if (parms.has_key(a[0]) == False):
-								raise Exception("Method '"+method+"' requires argument '"+a[0]+"'")
-							arg_array.append(getArgFromSignature(parms[a[0]],a[1]))
-							signature_in = signature_in + a[1]
-						else:
-							signature_out = a[1]
-
-					rtn = bus.call_blocking(bus_name,obj_name,interface,method,signature_in,arg_array)
-
-				code = 200
-				payload['status'] = 'ok'
-
-			except dbus.exceptions.DBusException as e:
-				payload['error-message'] = str(e)
-			except Exception as ex:
-				payload['error-message'] = str(ex)
-				
-		else:
-			payload['status'] = 'ok'
-			payload['available-commands'] = self.objmap.keys()
-				
-		self.send_response(code)
-		self.send_header('Content-Type', 'application/json')
-		self.end_headers()
-		self.wfile.write(json.dumps(payload))
-		return
-
-if __name__ == '__main__':
-	from BaseHTTPServer import HTTPServer
-	server = HTTPServer(('', 3000), GetHandler)
-	print 'Starting server, use <Ctrl-C> to stop'
-	server.serve_forever()
-
diff --git a/objects/power_control_obj.c b/objects/power_control_obj.c
index e2560c4..03eab40 100644
--- a/objects/power_control_obj.c
+++ b/objects/power_control_obj.c
@@ -5,11 +5,6 @@
 static GDBusObjectManagerServer *manager = NULL;

 static PowerControl *power_control = NULL;

 

-static guint gpio_power = 26;

-static guint gpio_fsiclk = 27;

-static guint gpio_fsidat = 28;

-static guint gpio_pgood = 21;

-

 static guint tmp_pgood = 0;

 

 static gboolean

diff --git a/xml/fan.xml b/xml/fan.xml
index f4aeeb2..17ac117 100644
--- a/xml/fan.xml
+++ b/xml/fan.xml
@@ -16,6 +16,8 @@
 		<method name="setPwmConfig">

 			<arg name="pwm_num" type="i" direction="in"/>

 		</method>

+		<property name="speed" type="i" access="read"/>

+		<property name="cooling_zone" type="i" access="read"/>

 		<signal name="SpeedChanged">

 			<arg name="speed" type="i"/>

 		</signal>

diff --git a/xml/fru.xml b/xml/fru.xml
index 17b59a1..13f34f2 100644
--- a/xml/fru.xml
+++ b/xml/fru.xml
@@ -13,7 +13,16 @@
 		<method name="addEventLog">

 			<arg name="entry" type="s" direction="in"/>

 		</method>

-		<signal name="Changed"/>

+		<method name="getType">

+			<arg name="type" type="s" direction="out"/>

+		</method>

+		<method name="getLocation">

+			<arg name="location" type="s" direction="out"/>

+		</method>

+		<signal name="StateChanged"/>

+		<signal name="UnrecoverableError"/>

+		<signal name="RecoverableError"/>

+		

 	</interface>

 </node>

 

diff --git a/xml/host_control.xml b/xml/host_control.xml
index 30fa990..d9d5b23 100644
--- a/xml/host_control.xml
+++ b/xml/host_control.xml
@@ -2,6 +2,7 @@
 	<interface name="org.openbmc.HostControl">

 		<method name="boot"/>

 		<method name="shutdown"/>

-		<signal name="booted"/>

+		<method name="reboot"/>

+		<signal name="Booted"/>

 	</interface>	

 </node>

diff --git a/xml/power_control.xml b/xml/power_control.xml
index 480d83b..a382f11 100644
--- a/xml/power_control.xml
+++ b/xml/power_control.xml
@@ -1,18 +1,14 @@
 <node>

 	<interface name="org.openbmc.PowerControl">

 		<method name="setPowerState">

-			<arg name="trans_id" type="i" direction="in"/>

 			<arg name="state" type="i" direction="in"/>

 		</method>

 		<method name="getPowerState">

-			<arg name="trans_id" type="i" direction="in"/>

 			<arg name="state" type="i" direction="out"/>

 		</method>

 		<signal name="PowerGood">

-			<arg name="trans_id" type="i"/>

 		</signal>

 		<signal name="PowerLost"/>

-			<arg name="trans_id" type="i"/>

 		</signal>

 		<property name="pgood" type="i" access="read"/>

 		<property name="state" type="i" access="read"/>

diff --git a/xml/sensor.xml b/xml/sensor.xml
index 38ea7cc..c4b8c00 100644
--- a/xml/sensor.xml
+++ b/xml/sensor.xml
@@ -1,4 +1,5 @@
 <node>

+	<!--  Can I do have interfaces as children of other interfaces? -->

 	<interface name="org.openbmc.SensorInteger">

 		<method name="getValue">

 			<arg name="value" type="i" direction="out"/>

diff --git a/xml/tmp b/xml/tmp
deleted file mode 100644
index e69de29..0000000
--- a/xml/tmp
+++ /dev/null