summaryrefslogtreecommitdiffstats
path: root/pysystemmgr
diff options
context:
space:
mode:
authorXo Wang <xow@google.com>2016-09-22 11:17:01 -0700
committerPatrick Williams <patrick@stwcx.xyz>2016-10-04 03:01:53 +0000
commit3f87de8bb45887f223a7539afb8249fdb22837fd (patch)
tree4e35b39684579b6e6fd890d1f25b9ede9e1290ae /pysystemmgr
parenteb27fa9fc540405991c2f1dee2a0eac1c8ebdd0d (diff)
downloadtalos-skeleton-3f87de8bb45887f223a7539afb8249fdb22837fd.tar.gz
talos-skeleton-3f87de8bb45887f223a7539afb8249fdb22837fd.zip
system_manager, libobmc-intf: Add power GPIO configuration interface
This adds a dbus call (in org.openbmc.managers.System) and C binding (in libopenbmc-intf) to read a POWER_CONFIG from the Python system configuration that abstracts GPIO functionality (power good, reset, etc) from their net names in GPIO_CONFIG. This should eventually replace machine-specific patches to op-pwrctl that define their own power and reset lines. Change-Id: I56eaaf60ef852b68124e4a765942243ad17d06ac Signed-off-by: Xo Wang <xow@google.com>
Diffstat (limited to 'pysystemmgr')
-rw-r--r--pysystemmgr/system_manager.py10
1 files changed, 10 insertions, 0 deletions
diff --git a/pysystemmgr/system_manager.py b/pysystemmgr/system_manager.py
index a26c325..5ecc14f 100644
--- a/pysystemmgr/system_manager.py
+++ b/pysystemmgr/system_manager.py
@@ -179,6 +179,16 @@ class SystemManager(DbusProperties, DbusObjectManager):
r = [obmc.enums.GPIO_DEV, gpio_num, gpio['direction']]
return r
+ @dbus.service.method(DBUS_NAME, in_signature='',
+ out_signature='sa(sb)a(sb)')
+ def getPowerConfiguration(self):
+ power_good_in = System.POWER_CONFIG.get('power_good_in', '')
+ power_up_outs = System.POWER_CONFIG.get('power_up_outs', [])
+ reset_outs = System.POWER_CONFIG.get('reset_outs', [])
+ r = [power_good_in, power_up_outs, reset_outs]
+ print "Power GPIO config: " + str(r)
+ return r
+
if __name__ == '__main__':
dbus.mainloop.glib.DBusGMainLoop(set_as_default=True)
OpenPOWER on IntegriCloud