summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLinux Build Service Account <lnxbuild@localhost>2019-11-16 01:48:29 -0800
committerLinux Build Service Account <lnxbuild@localhost>2019-11-16 01:48:29 -0800
commitd24f6fc18b08a912b7f949c3f297138bda397a31 (patch)
tree17210b9897def54ed1058bb10a143354f03fc1fc
parentc5b746b0ddcaf07819529a40e8389b6bca18e78c (diff)
parent86e7115149163e2369d94bd95be16bf8f7a76e2c (diff)
downloadandroid_vendor_qcom_opensource_interfaces-d24f6fc18b08a912b7f949c3f297138bda397a31.tar.gz
android_vendor_qcom_opensource_interfaces-d24f6fc18b08a912b7f949c3f297138bda397a31.tar.bz2
android_vendor_qcom_opensource_interfaces-d24f6fc18b08a912b7f949c3f297138bda397a31.zip
Merge 86e7115149163e2369d94bd95be16bf8f7a76e2c on remote branch
Change-Id: Ib1e0afea5951cd5f75fb32fc7249ece159096465
-rw-r--r--Android.bp5
-rw-r--r--camera/current.txt33
-rw-r--r--display/composer/2.0/IQtiComposerClient.hal21
-rw-r--r--display/current.txt2
-rw-r--r--fstman/1.0/IFstGroup.hal213
-rw-r--r--fstman/1.0/IFstGroupCallback.hal42
-rw-r--r--fstman/1.0/IFstManager.hal118
-rw-r--r--fstman/1.0/types.hal61
-rw-r--r--fstman/current.txt36
9 files changed, 530 insertions, 1 deletions
diff --git a/Android.bp b/Android.bp
index 3769b92..5e90856 100644
--- a/Android.bp
+++ b/Android.bp
@@ -39,3 +39,8 @@ hidl_package_root {
name: "vendor.qti.hardware.bluetooth_dun",
path: "vendor/qcom/opensource/interfaces/bluetooth_dun",
}
+
+hidl_package_root {
+ name: "vendor.qti.hardware.fstman",
+ path: "vendor/qcom/opensource/interfaces/fstman",
+}
diff --git a/camera/current.txt b/camera/current.txt
new file mode 100644
index 0000000..235cde6
--- /dev/null
+++ b/camera/current.txt
@@ -0,0 +1,33 @@
+#Copyright (c) 2019, The Linux Foundation. All rights reserved.
+
+#Redistribution and use in source and binary forms, with or without
+#modification, are permitted provided that the following conditions are
+#met:
+# * Redistributions of source code must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+# * Redistributions in binary form must reproduce the above
+# copyright notice, this list of conditions and the following
+# disclaimer in the documentation and/or other materials provided
+# with the distribution.
+# * Neither the name of The Linux Foundation nor the names of its
+# contributors may be used to endorse or promote products derived
+# from this software without specific prior written permission.
+
+#THIS SOFTWARE IS PROVIDED "AS IS" AND ANY EXPRESS OR IMPLIED
+#WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+#MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT
+#ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS
+#BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+#CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
+#SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR
+#BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+#WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
+#OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN
+#IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+# Postproc HIDL interface
+8e82153c316275c570e7e803be447308745dfd84a8ef19c26e4f66e38612b27b vendor.qti.hardware.camera.postproc@1.0::types
+1f128a60e07e9750d93ba106e74cd2ab38268994ca8c53816659ae2abce31176 vendor.qti.hardware.camera.postproc@1.0::IPostProcService
+129c97e20ef36e8ac4ec9b2b8a2083849bc5932a62e434af2eb977f1ab8594db vendor.qti.hardware.camera.postproc@1.0::IPostProcServiceCallBacks
+df8ddeff86819bb9775c2d1ee4c6d3adb55f1c9c9964d730f99d37136b0a2f5d vendor.qti.hardware.camera.postproc@1.0::IPostProcSession
+
diff --git a/display/composer/2.0/IQtiComposerClient.hal b/display/composer/2.0/IQtiComposerClient.hal
index 48eadaa..b856041 100644
--- a/display/composer/2.0/IQtiComposerClient.hal
+++ b/display/composer/2.0/IQtiComposerClient.hal
@@ -33,5 +33,26 @@ import android.hardware.graphics.composer@2.3::IComposerClient;
interface IQtiComposerClient extends IComposerClient {
+ enum LayerType : uint32_t {
+ UNKNOWN = 0,
+ APP = 1,
+ GAME = 2,
+ BROWSER = 3,
+ };
+
+ /**
+ * SET_LAYER_TYPE has this pseudo prototype
+ * setLayerType(uint32_t type);
+ *
+ * param type is the layer type.
+ * 0 - Unknown
+ * 1 - APP
+ * 2 - Game
+ * 3 - Browser
+ */
+ enum Command : @2.3::IComposerClient.Command {
+ SET_LAYER_TYPE = 0x800 << @2.3::IComposerClient.Command:OPCODE_SHIFT,
+ };
+
};
diff --git a/display/current.txt b/display/current.txt
index b7107bc..6edf071 100644
--- a/display/current.txt
+++ b/display/current.txt
@@ -35,7 +35,7 @@ fcc31b8e0d422752cf4f4c69618488ea9cd5a4e0f21404adca087dc4ef23d6df vendor.display.
44a03774c9931f3779affaa88bb0217a3666420c38ca0c98170a7cf40a581419 vendor.qti.hardware.display.allocator@1.0::IQtiAllocator
db19f93c419a59c901c1530a9241480b047a0f026b2eef7fe0c55cf3874c56c0 vendor.qti.hardware.display.mapper@1.0::IQtiMapper
60c78b8bb8728d6826d8a57dd5d8112120541c2be130d7d7cd62345c3e9eaf1a vendor.qti.hardware.display.composer@2.0::IQtiComposer
-e08721820de9c6c2af347aea0ba6e3d27f1d1b4a38ffa9b69b58e94fbbca1804 vendor.qti.hardware.display.composer@2.0::IQtiComposerClient
+c22f5d631432b98b5f40a845a0797b5ed0fe42e9facb517fc8a98811835fb4a2 vendor.qti.hardware.display.composer@2.0::IQtiComposerClient
f955d3cd7704809f64a6e1f5b1e6cf92b3765386af5e7e485ec4563c975467ba vendor.qti.hardware.display.mapper@1.1::IQtiMapper
503415d1b4d8aefe231fd751cc36e374e91d561f3d3dd3459f31f3a67aa6dfe5 vendor.display.config@1.2::IDisplayConfig
e89567ed6383dc0e5fd168babaf046352962b571f47fba26804c2c7690256b1f vendor.display.config@1.3::IDisplayConfig
diff --git a/fstman/1.0/IFstGroup.hal b/fstman/1.0/IFstGroup.hal
new file mode 100644
index 0000000..9fd10c8
--- /dev/null
+++ b/fstman/1.0/IFstGroup.hal
@@ -0,0 +1,213 @@
+/* Copyright (c) 2019, The Linux Foundation. All rights reserved.
+*
+* Redistribution and use in source and binary forms, with or without
+* modification, are permitted provided that the following conditions are
+* met:
+* * Redistributions of source code must retain the above copyright
+* notice, this list of conditions and the following disclaimer.
+* * Redistributions in binary form must reproduce the above
+* copyright notice, this list of conditions and the following
+* disclaimer in the documentation and/or other materials provided
+* with the distribution.
+* * Neither the name of The Linux Foundation nor the names of its
+* contributors may be used to endorse or promote products derived
+* from this software without specific prior written permission.
+*
+* THIS SOFTWARE IS PROVIDED "AS IS" AND ANY EXPRESS OR IMPLIED
+* WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT
+* ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS
+* BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
+* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR
+* BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+* WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
+* OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN
+* IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+*
+*/
+
+
+package vendor.qti.hardware.fstman@1.0;
+
+import IFstGroupCallback;
+
+/**
+ * Interface exposed by the supplicant for each FST group (e.g bond0)
+ * it controls.
+ */
+interface IFstGroup {
+
+ /**
+ * Retrieves the name of the FST group.
+ *
+ * @return status Status of the operation.
+ * Possible status codes:
+ * |FstManagerStatusCode.SUCCESS|,
+ * |FstManagerStatusCode.FAILURE_UNKNOWN|
+ * @return name Name of the FST group, e.g., bond0
+ */
+ getName() generates (FstManagerStatus status, string name);
+
+ /**
+ * Register for callbacks from this group.
+ *
+ * These callbacks are invoked for events that are specific to this group.
+ * Registration of multiple callback objects is supported. These objects must
+ * be automatically deleted when the corresponding client process is dead or
+ * if this group is removed.
+ *
+ * @param callback An instance of the |IFstGroupCallback| HIDL
+ * interface object.
+ * @return status Status of the operation.
+ * Possible status codes:
+ * |FstManagerStatusCode.SUCCESS|,
+ * |FstManagerStatusCode.FAILURE_UNKNOWN|,
+ */
+ registerCallback(IFstGroupCallback callback)
+ generates (FstManagerStatus status);
+
+ /**
+ * Retrieve a list of all interfaces belonging to this group.
+ *
+ * @return status Status of the operation.
+ * Possible status codes:
+ * |FstManagerStatusCode.SUCCESS|,
+ * |FstManagerStatusCode.FAILURE_UNKNOWN|
+ * @return ifaceNames List of names for interfaces belonging to this group.
+ */
+ listInterfaces() generates (FstManagerStatus status, vec<string> ifaceNames);
+
+ /**
+ * check if FST mode is supported for this group.
+ * When FST mode is supported, framework should detect FST-capable AP by
+ * checking for presence of MB IE in probe response.
+ *
+ * @return status Status of the operation.
+ * Possible status codes:
+ * |FstManagerStatusCode.SUCCESS|,
+ * |FstManagerStatusCode.FAILURE_UNKNOWN|,
+ * @return supported true if FST mode is supported, false if not.
+ */
+ isFstModeSupported() generates (FstManagerStatus status, bool supported);
+
+ /**
+ * check if WIFI SON mode is supported for this group.
+ * When SON mode is supported, framework should detect SON-capable AP by
+ * checking for presence of SON IE in probe response.
+ *
+ * @return status Status of the operation.
+ * Possible status codes:
+ * |FstManagerStatusCode.SUCCESS|,
+ * |FstManagerStatusCode.FAILURE_UNKNOWN|,
+ * @return supported true if WIFI SON mode supported, false if not.
+ */
+ isWifiSonModeSupported() generates (FstManagerStatus status, bool supported);
+
+ /**
+ * get the name of the MUX interface used by this group.
+ *
+ * @return status Status of the operation.
+ * Possible status codes:
+ * |FstManagerStatusCode.SUCCESS|,
+ * |FstManagerStatusCode.FAILURE_UNKNOWN|,
+ * @return name name of the MUX interface (such as bond0)
+ */
+ getMuxInterfaceName() generates (FstManagerStatus status, string name);
+
+ /**
+ * set the name of the MUX interface used by this group.
+ * The group must not have any enslaved interfaces or active connection.
+ *
+ * @param name new name for the MUX interface.
+ * @return status Status of the operation.
+ * Possible status codes:
+ * |FstManagerStatusCode.SUCCESS|,
+ * |FstManagerStatusCode.FAILURE_UNKNOWN|,
+ */
+ setMuxInterfaceName(string name) generates (FstManagerStatus status);
+
+ /**
+ * Enslave or release a group interface.
+ * When enslaving, interface will be added to master
+ * interface as a slave.
+ * When releasing, interface will be detached from
+ * master interface and no longer be a slave.
+ * When releasing, fst-manager will also disconnect
+ * any active connection on the interface (via supplicant)
+ *
+ * @param ifname interface name, must be one of the group interfaces.
+ * @param enslave true to enslave, false to release
+ *
+ * @return status Status of the operation.
+ * Possible status codes:
+ * |FstManagerStatusCode.SUCCESS|,
+ * |FstManagerStatusCode.FAILURE_ARGS_INVALID|,
+ * |FstManagerStatusCode.FAILURE_UNKNOWN|,
+ */
+ enslave(string ifname, bool enslave)
+ generates (FstManagerStatus status);
+
+ /**
+ * check if the interface is currently enslaved under the
+ * MUX interface.
+ *
+ * @param ifname interface name, must be one of the group interfaces.
+ *
+ * @return status Status of the operation.
+ * Possible status codes:
+ * |FstManagerStatusCode.SUCCESS|,
+ * |FstManagerStatusCode.FAILURE_ARGS_INVALID|,
+ * |FstManagerStatusCode.FAILURE_UNKNOWN|,
+ * @return enslaved true if interface is enslaved, false if not.
+ */
+ isEnslaved(string ifname)
+ generates (FstManagerStatus status, bool enslaved);
+
+ /**
+ * Changes the MAC address of the group master interface
+ * and its underlying interfaces.
+ *
+ * @param mac MAC address to change into.
+ * @return status WifiStatus of the operation.
+ * Possible status codes:
+ * |FstManagerStatusCode.SUCCESS|,
+ * |FstManagerStatusCode.FAILURE_UNKNOWN|,
+ */
+ setMacAddress(MacAddress mac) generates (FstManagerStatus status);
+
+ /**
+ * check if the specified interface is the rate upgrade master for
+ * this group. The rate upgrade master is typically the "always on"
+ * connection which is used as a fallback when the faster (but less
+ * reliable) interface is not available.
+ *
+ * @param ifname interface name, must be one of the group interfaces.
+ *
+ * @return status Status of the operation.
+ * Possible status codes:
+ * |FstManagerStatusCode.SUCCESS|,
+ * |FstManagerStatusCode.FAILURE_ARGS_INVALID|,
+ * |FstManagerStatusCode.FAILURE_UNKNOWN|,
+ * @return isMaster true if interface is rate upgrade master, false if not.
+ */
+ isRateUpgradeMaster(string ifname)
+ generates (FstManagerStatus status, bool isMaster);
+
+ /**
+ * rename one of the group interfaces.
+ * The interface must not be enslaved, and the group must
+ * not have an active connection.
+ *
+ * @param ifname interface name, must be one of the group interfaces.
+ * @param newifname new interface name for this interface.
+ *
+ * @return status Status of the operation.
+ * Possible status codes:
+ * |FstManagerStatusCode.SUCCESS|,
+ * |FstManagerStatusCode.FAILURE_ARGS_INVALID|,
+ * |FstManagerStatusCode.FAILURE_UNKNOWN|,
+ */
+ renameInterface(string ifname, string newifname)
+ generates (FstManagerStatus status);
+};
diff --git a/fstman/1.0/IFstGroupCallback.hal b/fstman/1.0/IFstGroupCallback.hal
new file mode 100644
index 0000000..ae6de9b
--- /dev/null
+++ b/fstman/1.0/IFstGroupCallback.hal
@@ -0,0 +1,42 @@
+/* Copyright (c) 2019, The Linux Foundation. All rights reserved.
+*
+* Redistribution and use in source and binary forms, with or without
+* modification, are permitted provided that the following conditions are
+* met:
+* * Redistributions of source code must retain the above copyright
+* notice, this list of conditions and the following disclaimer.
+* * Redistributions in binary form must reproduce the above
+* copyright notice, this list of conditions and the following
+* disclaimer in the documentation and/or other materials provided
+* with the distribution.
+* * Neither the name of The Linux Foundation nor the names of its
+* contributors may be used to endorse or promote products derived
+* from this software without specific prior written permission.
+*
+* THIS SOFTWARE IS PROVIDED "AS IS" AND ANY EXPRESS OR IMPLIED
+* WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT
+* ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS
+* BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
+* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR
+* BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+* WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
+* OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN
+* IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+*
+*/
+
+package vendor.qti.hardware.fstman@1.0;
+
+/**
+ * Callback Interface exposed by the fst-manager service
+ * for each FST group (IFstGroup).
+ *
+ * Clients need to host an instance of this HIDL interface object and
+ * pass a reference of the object to the supplicant via the
+ * corresponding |IFstGroup.registerCallback| method.
+ */
+interface IFstGroupCallback {
+
+};
diff --git a/fstman/1.0/IFstManager.hal b/fstman/1.0/IFstManager.hal
new file mode 100644
index 0000000..3909703
--- /dev/null
+++ b/fstman/1.0/IFstManager.hal
@@ -0,0 +1,118 @@
+/* Copyright (c) 2019, The Linux Foundation. All rights reserved.
+*
+* Redistribution and use in source and binary forms, with or without
+* modification, are permitted provided that the following conditions are
+* met:
+* * Redistributions of source code must retain the above copyright
+* notice, this list of conditions and the following disclaimer.
+* * Redistributions in binary form must reproduce the above
+* copyright notice, this list of conditions and the following
+* disclaimer in the documentation and/or other materials provided
+* with the distribution.
+* * Neither the name of The Linux Foundation nor the names of its
+* contributors may be used to endorse or promote products derived
+* from this software without specific prior written permission.
+*
+* THIS SOFTWARE IS PROVIDED "AS IS" AND ANY EXPRESS OR IMPLIED
+* WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT
+* ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS
+* BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
+* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR
+* BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+* WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
+* OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN
+* IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+*
+*/
+package vendor.qti.hardware.fstman@1.0;
+
+import IFstGroup;
+
+/**
+ * interface for communicating with fst-manager
+ */
+interface IFstManager {
+
+ /**
+ * Debug levels for the fst-manager.
+ * Only log messages with a level greater than the set level
+ * (via |setDebugParams|) will be logged.
+ */
+ enum DebugLevel : uint32_t {
+ EXCESSIVE = 0,
+ MSGDUMP = 1,
+ DEBUG = 2,
+ INFO = 3,
+ WARNING = 4,
+ ERROR = 5
+ };
+
+ /**
+ * Gets a HIDL interface object for the group corresponding to group
+ * name which the fst-manager already controls.
+ *
+ * @param groupName The group name.
+ * @return status Status of the operation.
+ * Possible status codes:
+ * |FstManagerStatusCode.SUCCESS|,
+ * |FstManagerStatusCode.FAILURE_UNKNOWN|,
+ * |FstManagerStatusCode.FAILURE_GROUP_UNKOWN|
+ * @return group HIDL interface object representing the group if
+ * successful, null otherwise.
+ */
+ getGroup(string groupName)
+ generates (FstManagerStatus status, IFstGroup group);
+
+ /**
+ * Retrieve a list of all the groups controlled by the fst-manager.
+ *
+ * The corresponding |IFstGroup| object for any group can be
+ * retrieved using |getGroup| method.
+ *
+ * @return status Status of the operation.
+ * Possible status codes:
+ * |FstManagerStatusCode.SUCCESS|,
+ * |FstManagerStatusCode.FAILURE_UNKNOWN|
+ * @return groupNames List of all group names controlled by the fst-manager.
+ */
+ listGroups() generates (FstManagerStatus status, vec<string> groupNames);
+
+ /**
+ * Set debug parameters for the fst-manager.
+ *
+ * @param level Debug logging level for the fst-manager.
+ * (one of |DebugLevel| values).
+ * @param timestamp Determines whether to show timestamps in logs or
+ * not.
+ * @return status Status of the operation.
+ * Possible status codes:
+ * |FstManagerStatusCode.SUCCESS|,
+ * |FstManagerStatusCode.FAILURE_UNKNOWN|
+ */
+ setDebugParams(DebugLevel level, bool showTimestamp)
+ generates (FstManagerStatus status);
+
+ /**
+ * Get the debug level set.
+ *
+ * @return level one of |DebugLevel| values.
+ */
+ getDebugLevel() generates (DebugLevel level);
+
+ /**
+ * Get whether the timestamps are shown in the debug logs or not.
+ *
+ * @return enabled true if set, false otherwise.
+ */
+ isDebugShowTimestampEnabled() generates (bool enabled);
+
+ /**
+ * Terminate the service.
+ * This must de-register the service and clear all state. If this HAL
+ * supports the lazy HAL protocol, then this may trigger daemon to exit and
+ * wait to be restarted.
+ */
+ oneway terminate();
+};
diff --git a/fstman/1.0/types.hal b/fstman/1.0/types.hal
new file mode 100644
index 0000000..824a4cd
--- /dev/null
+++ b/fstman/1.0/types.hal
@@ -0,0 +1,61 @@
+/* Copyright (c) 2019, The Linux Foundation. All rights reserved.
+*
+* Redistribution and use in source and binary forms, with or without
+* modification, are permitted provided that the following conditions are
+* met:
+* * Redistributions of source code must retain the above copyright
+* notice, this list of conditions and the following disclaimer.
+* * Redistributions in binary form must reproduce the above
+* copyright notice, this list of conditions and the following
+* disclaimer in the documentation and/or other materials provided
+* with the distribution.
+* * Neither the name of The Linux Foundation nor the names of its
+* contributors may be used to endorse or promote products derived
+* from this software without specific prior written permission.
+*
+* THIS SOFTWARE IS PROVIDED "AS IS" AND ANY EXPRESS OR IMPLIED
+* WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT
+* ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS
+* BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
+* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR
+* BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+* WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
+* OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN
+* IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+*
+*/
+
+package vendor.qti.hardware.fstman@1.0;
+/**
+ * Enum values indicating the status of any FST manager operation.
+ */
+enum FstManagerStatusCode : uint32_t {
+ /** No errors. */
+ SUCCESS,
+ /** Unknown failure occured. */
+ FAILURE_UNKNOWN,
+ /** One of the incoming args is invalid. */
+ FAILURE_ARGS_INVALID,
+ /** Unknown FST group */
+ FAILURE_GROUP_UNKNOWN,
+};
+
+/**
+ * Generic structure to return the status of any FST manager operation.
+ */
+struct FstManagerStatus {
+ FstManagerStatusCode code;
+ /**
+ * A vendor specific error message to provide more information beyond the
+ * status code.
+ * This will be used for debbuging purposes only.
+ */
+ string debugMessage;
+};
+
+/**
+ * Mac Address type. 6 octets representing physical address of a device.
+ */
+typedef uint8_t[6] MacAddress;
diff --git a/fstman/current.txt b/fstman/current.txt
new file mode 100644
index 0000000..dd02587
--- /dev/null
+++ b/fstman/current.txt
@@ -0,0 +1,36 @@
+# Copyright (c) 2019, The Linux Foundation. All rights reserved.
+#
+# Redistribution and use in source and binary forms, with or without
+# modification, are permitted provided that the following conditions are
+# met:
+# * Redistributions of source code must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+# * Redistributions in binary form must reproduce the above
+# copyright notice, this list of conditions and the following
+# disclaimer in the documentation and/or other materials provided
+# with the distribution.
+# * Neither the name of The Linux Foundation nor the names of its
+# contributors may be used to endorse or promote products derived
+# from this software without specific prior written permission.
+#
+# THIS SOFTWARE IS PROVIDED "AS IS" AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT
+# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS
+# BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
+# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR
+# BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
+# OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN
+# IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+#
+#
+
+
+######HAL released in Android Q######
+a916925177373b896bf211eb00faaeae7063ef40351286a64f4bec8e0079e6db vendor.qti.hardware.fstman@1.0::types
+951b29cb64137afe92a225d85af245d96c89405dae56c6af5339f13f4c4e2904 vendor.qti.hardware.fstman@1.0::IFstGroup
+24bd58f69a5d3be9294f9a671b81da1f36120ff17954d0ec94fbbff14f968a62 vendor.qti.hardware.fstman@1.0::IFstGroupCallback
+d9f95a2ba931ce60b39b564d52ae4644e875b10e7ec27ce42da83a95dcff4e81 vendor.qti.hardware.fstman@1.0::IFstManager
+