This document aims to specify the dbus interfaces exported by OpenBMC objects.
/org/openbmc/HostIpmi
signals:
ReceivedMessage(seq : byte, netfn : byte, lun : byte, cmd : byte, data: array[byte])
methods:
sendMessage(seq : byte, netfn : byte, lun : byte, cmd : byte, cc : byte, data : array[byte])
setAttention()
/org/openbmc/control/chassis0
signals:
methods:
(state : int) = getPowerState()
powerOff()
powerOn()
softPowerOff()
reboot()
softReboot()
setIdentify()
clearIdentify()
setPowerPolicy(policy : int)
setDebugMode()
properties:
reboot
/org/openbmc/sensors/<type>/<name hierarchy>
signals:
Warning(value : variant)
Critical(value : variant)
methods:
(value : variant) = getValue()
setValue(value : variant)
resetThresholdState()
properties:
error
units
value
critical_upper
critical_lower
warning_upper
warning_lower
threshold_state
worst_threshold_state
/org/openbmc/sensors/host/PowerCap
This object is used to set Host PowerCap. In turn a OCC "Set User PowerCap" command is sent to OCC.
/org/openbmc/sensors/host/OccStatus
This object can set OCC state to either: "Enabled" or "Disabled".
/org/openbmc/inventory/<item hierarchy>
signals:
methods:
setPresent(present : string)
setFault(fault : string)
update(dict ( key : string, data : variant ) )
properties:
fault
fru_type
is_fru
present1
version
/org/openbmc/buttons/<button_name>
signals:
Pressed
PressedLong
Released
methods:
simPress
/org/openbmc/control/leds/<led_name>
methods:
setOn()
setOff()
setBlinkSlow()
setBlinkFast()
properties:
color
state
/org/openbmc/records/events
methods:
Clear()
/org/openbmc/records/events/<logid>
methods:
delete()
properties:
message
association
reported_by
severity
debug_data
time
OpenBMC uses associations to extend the DBUS API without impacting existing objects and interfaces.
org.openbmc.Associations
A object wishing to create an association implements this interface.
methods:
properties:
associations signature=a(sss):
An array of forward, reverse, endpoint tuples where:For example, given an object: /org/openbmc/events/1
that implements org.openbmc.Associations
and sets the associations
property to:
associations: [
["events", "frus", "/org/openbmc/piece_of_hardware"],
["events", "times", "/org/openbmc/timestamps/1"]
]
would result in the following associations:
It is up to the specific OpenBMC implementation to decide, what, if anything to do with these. For example, the Phosphor mapper application looks for objects that implement this interface and creates objects in its /org/openbmc DBUS namespace.
org.openbmc.Association
OpenBMC implementations use this interface to insert associations into the DBUS namespace.
methods:
properties:
endpoints signature=as:
An array of association endpoints.For example, given:
/org/openbmc/events/1/frus:
endpoints: [
["/org/openbmc/hardware/cpu0"],
["/org/openbmc/hardware/cpu1"],
]
Denotes the following: