modem: add firmware interface
This commit is contained in:
@@ -0,0 +1,114 @@
|
||||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
|
||||
<node name="/" xmlns:tp="http://telepathy.freedesktop.org/wiki/DbusSpec#extensions-v0">
|
||||
<interface name="org.freedesktop.ModemManager.Modem.Firmware">
|
||||
<tp:docstring>
|
||||
This interface allows clients to select or install firmware images on
|
||||
modems.
|
||||
|
||||
Firmware slots and firmware images are identified by arbitrary opaque
|
||||
strings.
|
||||
|
||||
Firmware images are represented as dictionaries of properties.
|
||||
Certain properties are pre-defined, and some are required:
|
||||
|
||||
Name (string, required): A user-readable name for the firmware image.
|
||||
Version (string, optional): The version of the firmware. The format is
|
||||
unspecified; tools attempting to upgrade firmware automatically must
|
||||
understand the versioning scheme used by the modem driver they are
|
||||
interacting with. May be displayed to the user.
|
||||
</tp:docstring>
|
||||
|
||||
<method name="List">
|
||||
<tp:docstring>
|
||||
List installed and available firmware images.
|
||||
|
||||
Depending on the type of modem, installed images may be stored on the
|
||||
host or the modem. The distinction between "installed" and
|
||||
"available" is not one of where the firmware is stored, but that
|
||||
installed images can be selected non-destructively, while available
|
||||
images must be installed into a slot, possibly overwriting another
|
||||
installed image.
|
||||
</tp:docstring>
|
||||
<annotation name="org.freedesktop.DBus.GLib.CSymbol"
|
||||
value="impl_modem_firmware_list" />
|
||||
<arg name="selected" type="s" direction="out">
|
||||
<tp:docstring>
|
||||
The identifier of the selected firmware slot, or the empty string if
|
||||
no slot is selected (such as if all slots are empty, or no slots
|
||||
exist).
|
||||
</tp:docstring>
|
||||
</arg>
|
||||
<arg name="installed" type="a{sa{sv}}" direction="out">
|
||||
<tp:docstring>
|
||||
A dictionary of slots into which firmware is and/or can be
|
||||
installed. The key of each entry is the identifier of the slot,
|
||||
and the value is either an empty dictionary if the slot is empty,
|
||||
or a dictionary of properties of the firmware image installed in
|
||||
that slot.
|
||||
|
||||
The slot identifiers and the mapping between slots and firmware
|
||||
images are guaranteed to remain stable only as long as the modem
|
||||
remains present.
|
||||
</tp:docstring>
|
||||
</arg>
|
||||
<arg name="available" type="a{sa{sv}}" direction="out">
|
||||
<tp:docstring>
|
||||
A dictionary of available firmware images. The key of each entry is
|
||||
the identifier of the image, and the value is a dictionary of
|
||||
properties of the image.
|
||||
|
||||
The image identifiers are guaranteed to remain stable only as long
|
||||
as the modem remains present.
|
||||
</tp:docstring>
|
||||
</arg>
|
||||
</method>
|
||||
|
||||
<method name="Select">
|
||||
<tp:docstring>
|
||||
Selects a different firmware image to use, and immediately resets the
|
||||
modem so that it begins using the new firmware image.
|
||||
|
||||
Select will fail if the identifier does not match any of the slot
|
||||
identifiers returned by List, or if the slot could not be selected
|
||||
for some reason.
|
||||
</tp:docstring>
|
||||
<annotation name="org.freedesktop.DBus.GLib.Async" value="" />
|
||||
<annotation name="org.freedesktop.DBus.GLib.CSymbol"
|
||||
value="impl_modem_firmware_select" />
|
||||
<arg name="slot" type="s" direction="in">
|
||||
<tp:docstring>
|
||||
The identifier of the firmware slot to select.
|
||||
</tp:docstring>
|
||||
</arg>
|
||||
</method>
|
||||
|
||||
<method name="Install">
|
||||
<tp:docstring>
|
||||
Install an available firmware image into a slot.
|
||||
|
||||
Install does not guarantee that the image will be installed into the
|
||||
specified slot, but does guarantee that, if the slot is empty, no
|
||||
image will be overwritten, and if the slot is not empty, no image
|
||||
other than the one in that slot will be overwritten.
|
||||
|
||||
Install will fail if either of the identifiers is invalid, or if the
|
||||
image could not be installed into the slot for some reason.
|
||||
</tp:docstring>
|
||||
<annotation name="org.freedesktop.DBus.GLib.Async" value="" />
|
||||
<annotation name="org.freedesktop.DBus.GLib.CSymbol"
|
||||
value="impl_modem_firmware_install" />
|
||||
<arg name="image" type="s" direction="in">
|
||||
<tp:docstring>
|
||||
The identifier of the firmware image to install.
|
||||
</tp:docstring>
|
||||
</arg>
|
||||
<arg name="slot" type="s" direction="in">
|
||||
<tp:docstring>
|
||||
The identifier of the slot into which the firmware should be
|
||||
installed.
|
||||
</tp:docstring>
|
||||
</arg>
|
||||
</method>
|
||||
</interface>
|
||||
</node>
|
||||
Reference in New Issue
Block a user