replace common qcom sources with samsung ones
This commit is contained in:
15
qcom/opensource/interfaces/debugutils/1.0/Android.bp
Normal file
15
qcom/opensource/interfaces/debugutils/1.0/Android.bp
Normal file
@@ -0,0 +1,15 @@
|
||||
// This file is autogenerated by hidl-gen -Landroidbp.
|
||||
|
||||
hidl_interface {
|
||||
name: "vendor.qti.hardware.debugutils@1.0",
|
||||
root: "vendor.qti.hardware.debugutils",
|
||||
system_ext_specific: true,
|
||||
srcs: [
|
||||
"types.hal",
|
||||
"IDebugUtils.hal",
|
||||
],
|
||||
interfaces: [
|
||||
"android.hidl.base@1.0",
|
||||
],
|
||||
gen_java: true,
|
||||
}
|
140
qcom/opensource/interfaces/debugutils/1.0/IDebugUtils.hal
Normal file
140
qcom/opensource/interfaces/debugutils/1.0/IDebugUtils.hal
Normal file
@@ -0,0 +1,140 @@
|
||||
/*
|
||||
* Copyright (c) 2020 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.debugutils@1.0;
|
||||
|
||||
interface IDebugUtils {
|
||||
/**
|
||||
* set breakpoint in a process hosted by @param pid
|
||||
*/
|
||||
setBreakPoint(uint64_t pid, bool isProcess, string debugTag) generates (Status status);
|
||||
|
||||
/**
|
||||
* set watchpoint in a thread hosted by @param pid on address stored in @param add
|
||||
*/
|
||||
setWatchPoint(uint64_t pid, uint64_t add, string debugTag) generates (Status status);
|
||||
|
||||
/**
|
||||
* Read binder debugfs and move it to another place
|
||||
*/
|
||||
collectFullBinderDebugInfo(bool isBlocking, string debugTag) generates (Status status);
|
||||
|
||||
/**
|
||||
* Read binder_debugfs specific to a process hosted with @param pid
|
||||
*/
|
||||
collectBinderDebugInfoByPid(uint64_t pid, bool isBlocking, string debugTag) generates (Status status);
|
||||
|
||||
/**
|
||||
* Read binder_debugfs specific to a process hosted with @param ProcessName
|
||||
*/
|
||||
collectBinderDebugInfoByProcessname(string processName, bool isBlocking,string debugTag) generates (Status status);
|
||||
|
||||
/**
|
||||
* Collect logcat buffer speicified by @param bufferName for duration specified by @param duration
|
||||
*/
|
||||
collectUserspaceLogs(string logCmd, string debugTag,uint64_t duration) generates (Status status);
|
||||
|
||||
/**
|
||||
* collect stacktrace of a process specified by @param ProcessName
|
||||
*/
|
||||
collectStackTraceByProcessName(string processName, bool isJava, bool isBlocking, string debugTag) generates (Status status);
|
||||
|
||||
/**
|
||||
* collect stacktrace of a process specified by @param pid
|
||||
*/
|
||||
collectStackTraceByPid(uint64_t pid, bool isJava, bool isBlocking, string debugTag) generates (Status status);
|
||||
|
||||
/**
|
||||
* start Perfetto tracing
|
||||
*/
|
||||
startPerfettoTracing(uint64_t duration, string debugTag) generates (Status status);
|
||||
|
||||
/**
|
||||
* stop Perfetto tracing
|
||||
*/
|
||||
stopPerfettoTracing(string debugTag) generates (Status status);
|
||||
|
||||
/**
|
||||
* start SimplePerf tracing hosted by @param pid
|
||||
*/
|
||||
startSimplePerfTracing(uint64_t pid, uint64_t duration, string debugTag) generates (Status status);
|
||||
|
||||
/**
|
||||
* stop SimplePerf tracing for process
|
||||
*/
|
||||
stopSimplePerfTracing(string debugTag) generates (Status status);
|
||||
|
||||
/**
|
||||
* execute am command specified by @param Command
|
||||
*/
|
||||
executeDumpsysCommands(string command, bool isBlocking, string debugTag) generates (Status status);
|
||||
|
||||
/**
|
||||
* Collect the stack trace of processes which in IPC with process
|
||||
* hosted by @param pid
|
||||
*/
|
||||
collectDependentProcessStackTrace(uint64_t pid, bool isBlocking, string debugTag) generates (Status status);
|
||||
|
||||
/**
|
||||
* crash the device to collect the ramdump
|
||||
*/
|
||||
collectRamdump(string debugTag) generates (Status status);
|
||||
|
||||
/**
|
||||
* collect memory specific info
|
||||
*/
|
||||
collectMemoryInfo(bool isBlocking, string debugTag) generates (Status status);
|
||||
|
||||
/**
|
||||
* collect CPU specific info
|
||||
*/
|
||||
collectCPUInfo(bool isBlocking, string debugTag) generates (Status status);
|
||||
|
||||
/**
|
||||
*collect process specific Memory info
|
||||
*/
|
||||
collectProcessMemoryInfo(bool isBlocking, uint64_t pid, string debugTag) generates (Status status);
|
||||
|
||||
/**
|
||||
*collect process specific CPU info
|
||||
*/
|
||||
collectProcessCPUInfo(bool isBlocking, uint64_t pid, string debugTag) generates (Status status);
|
||||
|
||||
/**
|
||||
*collect periodic ANR traces
|
||||
*/
|
||||
collectPeriodicTraces(uint64_t pid ,uint64_t duration, string debugTag) generates (Status status);
|
||||
|
||||
/**
|
||||
*collect hprof
|
||||
*/
|
||||
collectHprof(bool isBlocking, uint64_t pid, string debugTag) generates (Status status);
|
||||
|
||||
};
|
||||
|
40
qcom/opensource/interfaces/debugutils/1.0/types.hal
Normal file
40
qcom/opensource/interfaces/debugutils/1.0/types.hal
Normal file
@@ -0,0 +1,40 @@
|
||||
/*
|
||||
* Copyright (c) 2020 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.debugutils@1.0;
|
||||
|
||||
/**
|
||||
*Enum Values indicating the result of operation
|
||||
*/
|
||||
enum Status : int32_t {
|
||||
/** No errors. */
|
||||
SUCCESS,
|
||||
FAILURE
|
||||
};
|
||||
|
25
qcom/opensource/interfaces/debugutils/aidl/Android.bp
Normal file
25
qcom/opensource/interfaces/debugutils/aidl/Android.bp
Normal file
@@ -0,0 +1,25 @@
|
||||
aidl_interface {
|
||||
name: "vendor.qti.hardware.debugutils_aidl",
|
||||
vendor_available: true,
|
||||
srcs: ["vendor/qti/hardware/debugutils/*.aidl"],
|
||||
stability: "vintf",
|
||||
backend: {
|
||||
cpp: {
|
||||
enabled: false,
|
||||
},
|
||||
java: {
|
||||
sdk_version: "module_current",
|
||||
},
|
||||
ndk: {
|
||||
enabled: true,
|
||||
},
|
||||
},
|
||||
versions_with_info: [
|
||||
{
|
||||
version: "1",
|
||||
imports: [],
|
||||
},
|
||||
],
|
||||
frozen: true,
|
||||
|
||||
}
|
@@ -0,0 +1 @@
|
||||
5b3c569e783d4550ccbfb7e5b4c279c949f36903
|
@@ -0,0 +1,47 @@
|
||||
/*
|
||||
*Copyright (c) 2023 Qualcomm Innovation Center, Inc. All rights reserved.
|
||||
*SPDX-License-Identifier: BSD-3-Clause-Clear
|
||||
*/
|
||||
///////////////////////////////////////////////////////////////////////////////
|
||||
// THIS FILE IS IMMUTABLE. DO NOT EDIT IN ANY CASE. //
|
||||
///////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
// This file is a snapshot of an AIDL file. Do not edit it manually. There are
|
||||
// two cases:
|
||||
// 1). this is a frozen version file - do not edit this in any case.
|
||||
// 2). this is a 'current' file. If you make a backwards compatible change to
|
||||
// the interface (from the latest frozen version), the build system will
|
||||
// prompt you to update this file with `m <name>-update-api`.
|
||||
//
|
||||
// You must not make a backward incompatible change to any AIDL file built
|
||||
// with the aidl_interface module type with versions property set. The module
|
||||
// type is used to build AIDL files in a way that they can be used across
|
||||
// independently updatable components of the system. If a device is shipped
|
||||
// with such a backward incompatible change, it has a high risk of breaking
|
||||
// later when a module using the interface is updated, e.g., Mainline modules.
|
||||
|
||||
package vendor.qti.hardware.debugutils;
|
||||
@VintfStability
|
||||
interface IDebugUtils {
|
||||
void collectBinderDebugInfoByPid(in long pid, in boolean isBlocking, in String debugTag);
|
||||
void collectBinderDebugInfoByProcessname(in String processName, in boolean isBlocking, in String debugTag);
|
||||
void collectCPUInfo(in boolean isBlocking, in String debugTag);
|
||||
void collectDependentProcessStackTrace(in long pid, in boolean isBlocking, in String debugTag);
|
||||
void collectFullBinderDebugInfo(in boolean isBlocking, in String debugTag);
|
||||
void collectHprof(in boolean isBlocking, in long pid, in String debugTag);
|
||||
void collectMemoryInfo(in boolean isBlocking, in String debugTag);
|
||||
void collectPeriodicTraces(in long pid, in long duration, in String debugTag);
|
||||
void collectProcessCPUInfo(in boolean isBlocking, in long pid, in String debugTag);
|
||||
void collectProcessMemoryInfo(in boolean isBlocking, in long pid, in String debugTag);
|
||||
void collectRamdump(in String debugTag);
|
||||
void collectStackTraceByPid(in long pid, in boolean isJava, in boolean isBlocking, in String debugTag);
|
||||
void collectStackTraceByProcessName(in String processName, in boolean isJava, in boolean isBlocking, in String debugTag);
|
||||
void collectUserspaceLogs(in String logCmd, in String debugTag, in long duration);
|
||||
void executeDumpsysCommands(in String command, in boolean isBlocking, in String debugTag);
|
||||
void setBreakPoint(in long pid, in boolean isProcess, in String debugTag);
|
||||
void setWatchPoint(in long pid, in long add, in String debugTag);
|
||||
void startPerfettoTracing(in long duration, in String debugTag);
|
||||
void startSimplePerfTracing(in long pid, in long duration, in String debugTag);
|
||||
void stopPerfettoTracing(in String debugTag);
|
||||
void stopSimplePerfTracing(in String debugTag);
|
||||
}
|
@@ -0,0 +1,47 @@
|
||||
/*
|
||||
*Copyright (c) 2023 Qualcomm Innovation Center, Inc. All rights reserved.
|
||||
*SPDX-License-Identifier: BSD-3-Clause-Clear
|
||||
*/
|
||||
///////////////////////////////////////////////////////////////////////////////
|
||||
// THIS FILE IS IMMUTABLE. DO NOT EDIT IN ANY CASE. //
|
||||
///////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
// This file is a snapshot of an AIDL file. Do not edit it manually. There are
|
||||
// two cases:
|
||||
// 1). this is a frozen version file - do not edit this in any case.
|
||||
// 2). this is a 'current' file. If you make a backwards compatible change to
|
||||
// the interface (from the latest frozen version), the build system will
|
||||
// prompt you to update this file with `m <name>-update-api`.
|
||||
//
|
||||
// You must not make a backward incompatible change to any AIDL file built
|
||||
// with the aidl_interface module type with versions property set. The module
|
||||
// type is used to build AIDL files in a way that they can be used across
|
||||
// independently updatable components of the system. If a device is shipped
|
||||
// with such a backward incompatible change, it has a high risk of breaking
|
||||
// later when a module using the interface is updated, e.g., Mainline modules.
|
||||
|
||||
package vendor.qti.hardware.debugutils;
|
||||
@VintfStability
|
||||
interface IDebugUtils {
|
||||
void collectBinderDebugInfoByPid(in long pid, in boolean isBlocking, in String debugTag);
|
||||
void collectBinderDebugInfoByProcessname(in String processName, in boolean isBlocking, in String debugTag);
|
||||
void collectCPUInfo(in boolean isBlocking, in String debugTag);
|
||||
void collectDependentProcessStackTrace(in long pid, in boolean isBlocking, in String debugTag);
|
||||
void collectFullBinderDebugInfo(in boolean isBlocking, in String debugTag);
|
||||
void collectHprof(in boolean isBlocking, in long pid, in String debugTag);
|
||||
void collectMemoryInfo(in boolean isBlocking, in String debugTag);
|
||||
void collectPeriodicTraces(in long pid, in long duration, in String debugTag);
|
||||
void collectProcessCPUInfo(in boolean isBlocking, in long pid, in String debugTag);
|
||||
void collectProcessMemoryInfo(in boolean isBlocking, in long pid, in String debugTag);
|
||||
void collectRamdump(in String debugTag);
|
||||
void collectStackTraceByPid(in long pid, in boolean isJava, in boolean isBlocking, in String debugTag);
|
||||
void collectStackTraceByProcessName(in String processName, in boolean isJava, in boolean isBlocking, in String debugTag);
|
||||
void collectUserspaceLogs(in String logCmd, in String debugTag, in long duration);
|
||||
void executeDumpsysCommands(in String command, in boolean isBlocking, in String debugTag);
|
||||
void setBreakPoint(in long pid, in boolean isProcess, in String debugTag);
|
||||
void setWatchPoint(in long pid, in long add, in String debugTag);
|
||||
void startPerfettoTracing(in long duration, in String debugTag);
|
||||
void startSimplePerfTracing(in long pid, in long duration, in String debugTag);
|
||||
void stopPerfettoTracing(in String debugTag);
|
||||
void stopSimplePerfTracing(in String debugTag);
|
||||
}
|
120
qcom/opensource/interfaces/debugutils/aidl/vendor/qti/hardware/debugutils/IDebugUtils.aidl
vendored
Normal file
120
qcom/opensource/interfaces/debugutils/aidl/vendor/qti/hardware/debugutils/IDebugUtils.aidl
vendored
Normal file
@@ -0,0 +1,120 @@
|
||||
/*
|
||||
*Copyright (c) 2023 Qualcomm Innovation Center, Inc. All rights reserved.
|
||||
*SPDX-License-Identifier: BSD-3-Clause-Clear
|
||||
*/
|
||||
|
||||
package vendor.qti.hardware.debugutils;
|
||||
|
||||
|
||||
@VintfStability
|
||||
interface IDebugUtils {
|
||||
/**
|
||||
* Read binder_debugfs specific to a process hosted with @param pid
|
||||
*/
|
||||
void collectBinderDebugInfoByPid(in long pid, in boolean isBlocking, in String debugTag);
|
||||
|
||||
/**
|
||||
* Read binder_debugfs specific to a process hosted with @param ProcessName
|
||||
*/
|
||||
void collectBinderDebugInfoByProcessname(in String processName, in boolean isBlocking,
|
||||
in String debugTag);
|
||||
|
||||
/**
|
||||
* collect CPU specific info
|
||||
*/
|
||||
void collectCPUInfo(in boolean isBlocking, in String debugTag);
|
||||
|
||||
/**
|
||||
* Collect the stack trace of processes which in IPC with process
|
||||
* hosted by @param pid
|
||||
*/
|
||||
void collectDependentProcessStackTrace(in long pid, in boolean isBlocking,
|
||||
in String debugTag);
|
||||
|
||||
/**
|
||||
* Read binder debugfs and move it to another place
|
||||
*/
|
||||
void collectFullBinderDebugInfo(in boolean isBlocking, in String debugTag);
|
||||
|
||||
/**
|
||||
* collect hprof
|
||||
*/
|
||||
void collectHprof(in boolean isBlocking, in long pid, in String debugTag);
|
||||
|
||||
/**
|
||||
* collect memory specific info
|
||||
*/
|
||||
void collectMemoryInfo(in boolean isBlocking, in String debugTag);
|
||||
|
||||
/**
|
||||
* collect periodic ANR traces
|
||||
*/
|
||||
void collectPeriodicTraces(in long pid, in long duration, in String debugTag);
|
||||
|
||||
/**
|
||||
* collect process specific CPU info
|
||||
*/
|
||||
void collectProcessCPUInfo(in boolean isBlocking, in long pid, in String debugTag);
|
||||
|
||||
/**
|
||||
* collect process specific Memory info
|
||||
*/
|
||||
void collectProcessMemoryInfo(in boolean isBlocking, in long pid, in String debugTag);
|
||||
|
||||
/**
|
||||
* crash the device to collect the ramdump
|
||||
*/
|
||||
void collectRamdump(in String debugTag);
|
||||
|
||||
/**
|
||||
* collect stacktrace of a process specified by @param pid
|
||||
*/
|
||||
void collectStackTraceByPid(in long pid, in boolean isJava, in boolean isBlocking,
|
||||
in String debugTag);
|
||||
|
||||
/**
|
||||
* collect stacktrace of a process specified by @param ProcessName
|
||||
*/
|
||||
void collectStackTraceByProcessName(in String processName, in boolean isJava,
|
||||
in boolean isBlocking, in String debugTag);
|
||||
|
||||
/**
|
||||
* Collect logcat buffer speicified by @param bufferName for duration specified by @param duration
|
||||
*/
|
||||
void collectUserspaceLogs(in String logCmd, in String debugTag, in long duration);
|
||||
|
||||
/**
|
||||
* execute am command specified by @param Command
|
||||
*/
|
||||
void executeDumpsysCommands(in String command, in boolean isBlocking, in String debugTag);
|
||||
|
||||
/**
|
||||
* set breakpoint in a process hosted by @param pid
|
||||
*/
|
||||
void setBreakPoint(in long pid, in boolean isProcess, in String debugTag);
|
||||
|
||||
/**
|
||||
* set watchpoint in a thread hosted by @param pid on address stored in @param add
|
||||
*/
|
||||
void setWatchPoint(in long pid, in long add, in String debugTag);
|
||||
|
||||
/**
|
||||
* start Perfetto tracing
|
||||
*/
|
||||
void startPerfettoTracing(in long duration, in String debugTag);
|
||||
|
||||
/**
|
||||
* start SimplePerf tracing hosted by @param pid
|
||||
*/
|
||||
void startSimplePerfTracing(in long pid, in long duration, in String debugTag);
|
||||
|
||||
/**
|
||||
* stop Perfetto tracing
|
||||
*/
|
||||
void stopPerfettoTracing(in String debugTag);
|
||||
|
||||
/**
|
||||
* stop SimplePerf tracing for process
|
||||
*/
|
||||
void stopSimplePerfTracing(in String debugTag);
|
||||
}
|
33
qcom/opensource/interfaces/debugutils/current.txt
Normal file
33
qcom/opensource/interfaces/debugutils/current.txt
Normal file
@@ -0,0 +1,33 @@
|
||||
# Copyright (c) 2020, 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 R######
|
||||
18a63da81d8ba6cce0b26466bcedec4f5f518f72f01a680e99676c6df5f1e79a vendor.qti.hardware.debugutils@1.0::types
|
||||
02c0b8bb7df784cfd6848b23debf534028cb4ef383af54b4f6d927bcc8381a03 vendor.qti.hardware.debugutils@1.0::IDebugUtils
|
||||
|
Reference in New Issue
Block a user