diff options
author | Aleksander Morgado <aleksander@aleksander.es> | 2021-09-10 11:38:52 +0200 |
---|---|---|
committer | Aleksander Morgado <aleksander@aleksander.es> | 2021-09-10 09:53:57 +0000 |
commit | a07a43366ab71da808f5f325c4e306b86da641b3 (patch) | |
tree | 06ecc4e674f94fdd79bab3427b0d814619ba5580 /introspection | |
parent | 80f274b37159777a462d7584fb4fc82876229ac2 (diff) |
Revert "api: remove Modem.Sar interface"
This reverts commit 686e37ff84daca6096fe18781ad9ba6f29cd4063.
Diffstat (limited to 'introspection')
-rw-r--r-- | introspection/Makefile.am | 1 | ||||
-rw-r--r-- | introspection/all.xml | 1 | ||||
-rw-r--r-- | introspection/org.freedesktop.ModemManager1.Modem.Sar.xml | 102 |
3 files changed, 104 insertions, 0 deletions
diff --git a/introspection/Makefile.am b/introspection/Makefile.am index fccf3b8f..c7515773 100644 --- a/introspection/Makefile.am +++ b/introspection/Makefile.am @@ -21,6 +21,7 @@ xml_DATA = \ org.freedesktop.ModemManager1.Modem.Time.xml \ org.freedesktop.ModemManager1.Modem.Voice.xml \ org.freedesktop.ModemManager1.Call.xml \ + org.freedesktop.ModemManager1.Modem.Sar.xml \ org.freedesktop.ModemManager1.Modem.Modem3gpp.ProfileManager.xml \ $(NULL) diff --git a/introspection/all.xml b/introspection/all.xml index fabf2dd9..dda64dd5 100644 --- a/introspection/all.xml +++ b/introspection/all.xml @@ -17,6 +17,7 @@ <xi:include href="org.freedesktop.ModemManager1.Modem.Location.xml"/> <xi:include href="org.freedesktop.ModemManager1.Modem.Time.xml"/> <xi:include href="org.freedesktop.ModemManager1.Modem.Firmware.xml"/> + <xi:include href="org.freedesktop.ModemManager1.Modem.Sar.xml"/> <xi:include href="org.freedesktop.ModemManager1.Modem.Signal.xml"/> <xi:include href="org.freedesktop.ModemManager1.Modem.Oma.xml"/> diff --git a/introspection/org.freedesktop.ModemManager1.Modem.Sar.xml b/introspection/org.freedesktop.ModemManager1.Modem.Sar.xml new file mode 100644 index 00000000..773cd571 --- /dev/null +++ b/introspection/org.freedesktop.ModemManager1.Modem.Sar.xml @@ -0,0 +1,102 @@ +<?xml version="1.0" encoding="UTF-8" ?> + +<!-- + ModemManager 1.0 Interface Specification + + Copyright (C) 2020 Google, Inc. +--> + +<node name="/" xmlns:doc="http://www.freedesktop.org/dbus/1.0/doc.dtd"> + + <!-- + org.freedesktop.ModemManager1.Modem.Sar: + @short_description: The ModemManager dynamic SAR interface. + + The SAR interface defines operations and properties for dynamic SAR, so + that user applications can control the output power level dynamically. + + Using the SAR interface is not trivial, and it requires prior knowledge of + the internal SAR mapping table configured in each device. + + The SAR mapping table is defined by the manufacturer of the device, and is + usually setup to match a specific hardware setup (e.g. a specific laptop or + hardware configuration). This table may provide different power levels for + different frequency bands and/or antennas. + + An example SAR mapping table, where all bands and antennas share the same + level, could look like this: + <table> + <tr><td>Power Level</td><td>LTE B3</td> <td>LTE B7</td> <td>LTE B20</td></tr> + <tr><td>0</td> <td>26.0 dBm</td> <td>26.5 dBm</td> <td>27.0 dBm</td></tr> + <tr><td>1</td> <td>26.5 dBm</td> <td>27.0 dBm</td> <td>27.5 dBm</td></tr> + <tr><td>2</td> <td>27.0 dBm</td> <td>27.5 dBm</td> <td>28.0 dBm</td></tr> + <tr><td>3</td> <td>27.5 dBm</td> <td>28.0 dBm</td> <td>28.5 dBm</td></tr> + <tr><td>4</td> <td>28.0 dBm</td> <td>28.5 dBm</td> <td>28.5 dBm</td></tr> + <tr><td>5</td> <td>28.5 dBm</td> <td>28.5 dBm</td> <td>28.5 dBm</td></tr> + </table> + + In this example, the SAR mapping table has 6 different levels (0 to 5), + and it's applied exclusively for LTE bands B3, B7 and B20 in all available + antennas. None of this information is exposed to the user in the SAR + interface, not even the amount of levels available. + --> + <interface name="org.freedesktop.ModemManager1.Modem.Sar"> + + <!-- + Enable: + @enable: %TRUE to enable dynamic SAR and %FALSE to disable it. + + Enable or disable dynamic SAR. + + When enabled, the modem's output power level can be dynamically updated + by the host. + + When disabled, the modem's output power level is dynamically updated + exclusively by the device. + + Since: 1.18 + --> + <method name="Enable"> + <arg name="enable" type="b" direction="in" /> + </method> + + <!-- + SetPowerLevel: + @level: Index of the SAR power level mapping table. + + Set current dynamic SAR power level for all antennas on the device. + + Please check with your modem vendor for detailed description on the + number of levels and corresponding power output for each level. + + The index set here will apply to all antennas on the system. + + Since: 1.18 + --> + <method name="SetPowerLevel"> + <arg name="level" type="u" direction="in" /> + </method> + + <!-- + State: + + Boolean indicating whether dynamic SAR is currently enabled. + + Since: 1.18 + --> + <property name="State" type="b" access="read" /> + + <!-- + PowerLevel: + + Current index of the SAR power level mapping table that is being used + for setting the output power of all antennas on the system. + + This value is only applicable when dynamic SAR is enabled. + + Since: 1.18 + --> + <property name="PowerLevel" type="u" access="read" /> + + </interface> +</node> |