aboutsummaryrefslogtreecommitdiff
path: root/introspection/org.freedesktop.ModemManager.Modem.Firmware.xml
diff options
context:
space:
mode:
Diffstat (limited to 'introspection/org.freedesktop.ModemManager.Modem.Firmware.xml')
-rw-r--r--introspection/org.freedesktop.ModemManager.Modem.Firmware.xml114
1 files changed, 114 insertions, 0 deletions
diff --git a/introspection/org.freedesktop.ModemManager.Modem.Firmware.xml b/introspection/org.freedesktop.ModemManager.Modem.Firmware.xml
new file mode 100644
index 00000000..42bcae12
--- /dev/null
+++ b/introspection/org.freedesktop.ModemManager.Modem.Firmware.xml
@@ -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>