mirror of
https://github.com/Evolution-X/hardware_interfaces
synced 2026-02-01 22:04:26 +00:00
wifi(interface): Add wifi debug ring buffer related interface
am: e3a02b07b6
Change-Id: I1cac68e450cc87b8674ca00120964bf9dfcc0a9f
This commit is contained in:
@@ -1542,6 +1542,210 @@ $(GEN): $(LOCAL_PATH)/types.hal
|
||||
$(transform-generated-source)
|
||||
LOCAL_GENERATED_SOURCES += $(GEN)
|
||||
|
||||
#
|
||||
# Build types.hal (WifiDebugRingBufferFlags)
|
||||
#
|
||||
GEN := $(intermediates)/android/hardware/wifi/1.0/WifiDebugRingBufferFlags.java
|
||||
$(GEN): $(HIDL)
|
||||
$(GEN): PRIVATE_HIDL := $(HIDL)
|
||||
$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/types.hal
|
||||
$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates)
|
||||
$(GEN): PRIVATE_CUSTOM_TOOL = \
|
||||
$(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \
|
||||
-Ljava -randroid.hardware:hardware/interfaces \
|
||||
android.hardware.wifi@1.0::types.WifiDebugRingBufferFlags
|
||||
|
||||
$(GEN): $(LOCAL_PATH)/types.hal
|
||||
$(transform-generated-source)
|
||||
LOCAL_GENERATED_SOURCES += $(GEN)
|
||||
|
||||
#
|
||||
# Build types.hal (WifiDebugRingBufferStatus)
|
||||
#
|
||||
GEN := $(intermediates)/android/hardware/wifi/1.0/WifiDebugRingBufferStatus.java
|
||||
$(GEN): $(HIDL)
|
||||
$(GEN): PRIVATE_HIDL := $(HIDL)
|
||||
$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/types.hal
|
||||
$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates)
|
||||
$(GEN): PRIVATE_CUSTOM_TOOL = \
|
||||
$(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \
|
||||
-Ljava -randroid.hardware:hardware/interfaces \
|
||||
android.hardware.wifi@1.0::types.WifiDebugRingBufferStatus
|
||||
|
||||
$(GEN): $(LOCAL_PATH)/types.hal
|
||||
$(transform-generated-source)
|
||||
LOCAL_GENERATED_SOURCES += $(GEN)
|
||||
|
||||
#
|
||||
# Build types.hal (WifiDebugRingBufferVerboseLevel)
|
||||
#
|
||||
GEN := $(intermediates)/android/hardware/wifi/1.0/WifiDebugRingBufferVerboseLevel.java
|
||||
$(GEN): $(HIDL)
|
||||
$(GEN): PRIVATE_HIDL := $(HIDL)
|
||||
$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/types.hal
|
||||
$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates)
|
||||
$(GEN): PRIVATE_CUSTOM_TOOL = \
|
||||
$(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \
|
||||
-Ljava -randroid.hardware:hardware/interfaces \
|
||||
android.hardware.wifi@1.0::types.WifiDebugRingBufferVerboseLevel
|
||||
|
||||
$(GEN): $(LOCAL_PATH)/types.hal
|
||||
$(transform-generated-source)
|
||||
LOCAL_GENERATED_SOURCES += $(GEN)
|
||||
|
||||
#
|
||||
# Build types.hal (WifiDebugRingEntryConnectivityEvent)
|
||||
#
|
||||
GEN := $(intermediates)/android/hardware/wifi/1.0/WifiDebugRingEntryConnectivityEvent.java
|
||||
$(GEN): $(HIDL)
|
||||
$(GEN): PRIVATE_HIDL := $(HIDL)
|
||||
$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/types.hal
|
||||
$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates)
|
||||
$(GEN): PRIVATE_CUSTOM_TOOL = \
|
||||
$(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \
|
||||
-Ljava -randroid.hardware:hardware/interfaces \
|
||||
android.hardware.wifi@1.0::types.WifiDebugRingEntryConnectivityEvent
|
||||
|
||||
$(GEN): $(LOCAL_PATH)/types.hal
|
||||
$(transform-generated-source)
|
||||
LOCAL_GENERATED_SOURCES += $(GEN)
|
||||
|
||||
#
|
||||
# Build types.hal (WifiDebugRingEntryEventTlv)
|
||||
#
|
||||
GEN := $(intermediates)/android/hardware/wifi/1.0/WifiDebugRingEntryEventTlv.java
|
||||
$(GEN): $(HIDL)
|
||||
$(GEN): PRIVATE_HIDL := $(HIDL)
|
||||
$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/types.hal
|
||||
$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates)
|
||||
$(GEN): PRIVATE_CUSTOM_TOOL = \
|
||||
$(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \
|
||||
-Ljava -randroid.hardware:hardware/interfaces \
|
||||
android.hardware.wifi@1.0::types.WifiDebugRingEntryEventTlv
|
||||
|
||||
$(GEN): $(LOCAL_PATH)/types.hal
|
||||
$(transform-generated-source)
|
||||
LOCAL_GENERATED_SOURCES += $(GEN)
|
||||
|
||||
#
|
||||
# Build types.hal (WifiDebugRingEntryEventTlvType)
|
||||
#
|
||||
GEN := $(intermediates)/android/hardware/wifi/1.0/WifiDebugRingEntryEventTlvType.java
|
||||
$(GEN): $(HIDL)
|
||||
$(GEN): PRIVATE_HIDL := $(HIDL)
|
||||
$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/types.hal
|
||||
$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates)
|
||||
$(GEN): PRIVATE_CUSTOM_TOOL = \
|
||||
$(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \
|
||||
-Ljava -randroid.hardware:hardware/interfaces \
|
||||
android.hardware.wifi@1.0::types.WifiDebugRingEntryEventTlvType
|
||||
|
||||
$(GEN): $(LOCAL_PATH)/types.hal
|
||||
$(transform-generated-source)
|
||||
LOCAL_GENERATED_SOURCES += $(GEN)
|
||||
|
||||
#
|
||||
# Build types.hal (WifiDebugRingEntryEventType)
|
||||
#
|
||||
GEN := $(intermediates)/android/hardware/wifi/1.0/WifiDebugRingEntryEventType.java
|
||||
$(GEN): $(HIDL)
|
||||
$(GEN): PRIVATE_HIDL := $(HIDL)
|
||||
$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/types.hal
|
||||
$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates)
|
||||
$(GEN): PRIVATE_CUSTOM_TOOL = \
|
||||
$(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \
|
||||
-Ljava -randroid.hardware:hardware/interfaces \
|
||||
android.hardware.wifi@1.0::types.WifiDebugRingEntryEventType
|
||||
|
||||
$(GEN): $(LOCAL_PATH)/types.hal
|
||||
$(transform-generated-source)
|
||||
LOCAL_GENERATED_SOURCES += $(GEN)
|
||||
|
||||
#
|
||||
# Build types.hal (WifiDebugRingEntryFlags)
|
||||
#
|
||||
GEN := $(intermediates)/android/hardware/wifi/1.0/WifiDebugRingEntryFlags.java
|
||||
$(GEN): $(HIDL)
|
||||
$(GEN): PRIVATE_HIDL := $(HIDL)
|
||||
$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/types.hal
|
||||
$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates)
|
||||
$(GEN): PRIVATE_CUSTOM_TOOL = \
|
||||
$(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \
|
||||
-Ljava -randroid.hardware:hardware/interfaces \
|
||||
android.hardware.wifi@1.0::types.WifiDebugRingEntryFlags
|
||||
|
||||
$(GEN): $(LOCAL_PATH)/types.hal
|
||||
$(transform-generated-source)
|
||||
LOCAL_GENERATED_SOURCES += $(GEN)
|
||||
|
||||
#
|
||||
# Build types.hal (WifiDebugRingEntryHeader)
|
||||
#
|
||||
GEN := $(intermediates)/android/hardware/wifi/1.0/WifiDebugRingEntryHeader.java
|
||||
$(GEN): $(HIDL)
|
||||
$(GEN): PRIVATE_HIDL := $(HIDL)
|
||||
$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/types.hal
|
||||
$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates)
|
||||
$(GEN): PRIVATE_CUSTOM_TOOL = \
|
||||
$(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \
|
||||
-Ljava -randroid.hardware:hardware/interfaces \
|
||||
android.hardware.wifi@1.0::types.WifiDebugRingEntryHeader
|
||||
|
||||
$(GEN): $(LOCAL_PATH)/types.hal
|
||||
$(transform-generated-source)
|
||||
LOCAL_GENERATED_SOURCES += $(GEN)
|
||||
|
||||
#
|
||||
# Build types.hal (WifiDebugRingEntryPowerEvent)
|
||||
#
|
||||
GEN := $(intermediates)/android/hardware/wifi/1.0/WifiDebugRingEntryPowerEvent.java
|
||||
$(GEN): $(HIDL)
|
||||
$(GEN): PRIVATE_HIDL := $(HIDL)
|
||||
$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/types.hal
|
||||
$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates)
|
||||
$(GEN): PRIVATE_CUSTOM_TOOL = \
|
||||
$(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \
|
||||
-Ljava -randroid.hardware:hardware/interfaces \
|
||||
android.hardware.wifi@1.0::types.WifiDebugRingEntryPowerEvent
|
||||
|
||||
$(GEN): $(LOCAL_PATH)/types.hal
|
||||
$(transform-generated-source)
|
||||
LOCAL_GENERATED_SOURCES += $(GEN)
|
||||
|
||||
#
|
||||
# Build types.hal (WifiDebugRingEntryVendorData)
|
||||
#
|
||||
GEN := $(intermediates)/android/hardware/wifi/1.0/WifiDebugRingEntryVendorData.java
|
||||
$(GEN): $(HIDL)
|
||||
$(GEN): PRIVATE_HIDL := $(HIDL)
|
||||
$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/types.hal
|
||||
$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates)
|
||||
$(GEN): PRIVATE_CUSTOM_TOOL = \
|
||||
$(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \
|
||||
-Ljava -randroid.hardware:hardware/interfaces \
|
||||
android.hardware.wifi@1.0::types.WifiDebugRingEntryVendorData
|
||||
|
||||
$(GEN): $(LOCAL_PATH)/types.hal
|
||||
$(transform-generated-source)
|
||||
LOCAL_GENERATED_SOURCES += $(GEN)
|
||||
|
||||
#
|
||||
# Build types.hal (WifiDebugRingEntryWakelockEvent)
|
||||
#
|
||||
GEN := $(intermediates)/android/hardware/wifi/1.0/WifiDebugRingEntryWakelockEvent.java
|
||||
$(GEN): $(HIDL)
|
||||
$(GEN): PRIVATE_HIDL := $(HIDL)
|
||||
$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/types.hal
|
||||
$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates)
|
||||
$(GEN): PRIVATE_CUSTOM_TOOL = \
|
||||
$(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \
|
||||
-Ljava -randroid.hardware:hardware/interfaces \
|
||||
android.hardware.wifi@1.0::types.WifiDebugRingEntryWakelockEvent
|
||||
|
||||
$(GEN): $(LOCAL_PATH)/types.hal
|
||||
$(transform-generated-source)
|
||||
LOCAL_GENERATED_SOURCES += $(GEN)
|
||||
|
||||
#
|
||||
# Build types.hal (WifiInformationElement)
|
||||
#
|
||||
@@ -3463,6 +3667,210 @@ $(GEN): $(LOCAL_PATH)/types.hal
|
||||
$(transform-generated-source)
|
||||
LOCAL_GENERATED_SOURCES += $(GEN)
|
||||
|
||||
#
|
||||
# Build types.hal (WifiDebugRingBufferFlags)
|
||||
#
|
||||
GEN := $(intermediates)/android/hardware/wifi/1.0/WifiDebugRingBufferFlags.java
|
||||
$(GEN): $(HIDL)
|
||||
$(GEN): PRIVATE_HIDL := $(HIDL)
|
||||
$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/types.hal
|
||||
$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates)
|
||||
$(GEN): PRIVATE_CUSTOM_TOOL = \
|
||||
$(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \
|
||||
-Ljava -randroid.hardware:hardware/interfaces \
|
||||
android.hardware.wifi@1.0::types.WifiDebugRingBufferFlags
|
||||
|
||||
$(GEN): $(LOCAL_PATH)/types.hal
|
||||
$(transform-generated-source)
|
||||
LOCAL_GENERATED_SOURCES += $(GEN)
|
||||
|
||||
#
|
||||
# Build types.hal (WifiDebugRingBufferStatus)
|
||||
#
|
||||
GEN := $(intermediates)/android/hardware/wifi/1.0/WifiDebugRingBufferStatus.java
|
||||
$(GEN): $(HIDL)
|
||||
$(GEN): PRIVATE_HIDL := $(HIDL)
|
||||
$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/types.hal
|
||||
$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates)
|
||||
$(GEN): PRIVATE_CUSTOM_TOOL = \
|
||||
$(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \
|
||||
-Ljava -randroid.hardware:hardware/interfaces \
|
||||
android.hardware.wifi@1.0::types.WifiDebugRingBufferStatus
|
||||
|
||||
$(GEN): $(LOCAL_PATH)/types.hal
|
||||
$(transform-generated-source)
|
||||
LOCAL_GENERATED_SOURCES += $(GEN)
|
||||
|
||||
#
|
||||
# Build types.hal (WifiDebugRingBufferVerboseLevel)
|
||||
#
|
||||
GEN := $(intermediates)/android/hardware/wifi/1.0/WifiDebugRingBufferVerboseLevel.java
|
||||
$(GEN): $(HIDL)
|
||||
$(GEN): PRIVATE_HIDL := $(HIDL)
|
||||
$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/types.hal
|
||||
$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates)
|
||||
$(GEN): PRIVATE_CUSTOM_TOOL = \
|
||||
$(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \
|
||||
-Ljava -randroid.hardware:hardware/interfaces \
|
||||
android.hardware.wifi@1.0::types.WifiDebugRingBufferVerboseLevel
|
||||
|
||||
$(GEN): $(LOCAL_PATH)/types.hal
|
||||
$(transform-generated-source)
|
||||
LOCAL_GENERATED_SOURCES += $(GEN)
|
||||
|
||||
#
|
||||
# Build types.hal (WifiDebugRingEntryConnectivityEvent)
|
||||
#
|
||||
GEN := $(intermediates)/android/hardware/wifi/1.0/WifiDebugRingEntryConnectivityEvent.java
|
||||
$(GEN): $(HIDL)
|
||||
$(GEN): PRIVATE_HIDL := $(HIDL)
|
||||
$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/types.hal
|
||||
$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates)
|
||||
$(GEN): PRIVATE_CUSTOM_TOOL = \
|
||||
$(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \
|
||||
-Ljava -randroid.hardware:hardware/interfaces \
|
||||
android.hardware.wifi@1.0::types.WifiDebugRingEntryConnectivityEvent
|
||||
|
||||
$(GEN): $(LOCAL_PATH)/types.hal
|
||||
$(transform-generated-source)
|
||||
LOCAL_GENERATED_SOURCES += $(GEN)
|
||||
|
||||
#
|
||||
# Build types.hal (WifiDebugRingEntryEventTlv)
|
||||
#
|
||||
GEN := $(intermediates)/android/hardware/wifi/1.0/WifiDebugRingEntryEventTlv.java
|
||||
$(GEN): $(HIDL)
|
||||
$(GEN): PRIVATE_HIDL := $(HIDL)
|
||||
$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/types.hal
|
||||
$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates)
|
||||
$(GEN): PRIVATE_CUSTOM_TOOL = \
|
||||
$(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \
|
||||
-Ljava -randroid.hardware:hardware/interfaces \
|
||||
android.hardware.wifi@1.0::types.WifiDebugRingEntryEventTlv
|
||||
|
||||
$(GEN): $(LOCAL_PATH)/types.hal
|
||||
$(transform-generated-source)
|
||||
LOCAL_GENERATED_SOURCES += $(GEN)
|
||||
|
||||
#
|
||||
# Build types.hal (WifiDebugRingEntryEventTlvType)
|
||||
#
|
||||
GEN := $(intermediates)/android/hardware/wifi/1.0/WifiDebugRingEntryEventTlvType.java
|
||||
$(GEN): $(HIDL)
|
||||
$(GEN): PRIVATE_HIDL := $(HIDL)
|
||||
$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/types.hal
|
||||
$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates)
|
||||
$(GEN): PRIVATE_CUSTOM_TOOL = \
|
||||
$(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \
|
||||
-Ljava -randroid.hardware:hardware/interfaces \
|
||||
android.hardware.wifi@1.0::types.WifiDebugRingEntryEventTlvType
|
||||
|
||||
$(GEN): $(LOCAL_PATH)/types.hal
|
||||
$(transform-generated-source)
|
||||
LOCAL_GENERATED_SOURCES += $(GEN)
|
||||
|
||||
#
|
||||
# Build types.hal (WifiDebugRingEntryEventType)
|
||||
#
|
||||
GEN := $(intermediates)/android/hardware/wifi/1.0/WifiDebugRingEntryEventType.java
|
||||
$(GEN): $(HIDL)
|
||||
$(GEN): PRIVATE_HIDL := $(HIDL)
|
||||
$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/types.hal
|
||||
$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates)
|
||||
$(GEN): PRIVATE_CUSTOM_TOOL = \
|
||||
$(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \
|
||||
-Ljava -randroid.hardware:hardware/interfaces \
|
||||
android.hardware.wifi@1.0::types.WifiDebugRingEntryEventType
|
||||
|
||||
$(GEN): $(LOCAL_PATH)/types.hal
|
||||
$(transform-generated-source)
|
||||
LOCAL_GENERATED_SOURCES += $(GEN)
|
||||
|
||||
#
|
||||
# Build types.hal (WifiDebugRingEntryFlags)
|
||||
#
|
||||
GEN := $(intermediates)/android/hardware/wifi/1.0/WifiDebugRingEntryFlags.java
|
||||
$(GEN): $(HIDL)
|
||||
$(GEN): PRIVATE_HIDL := $(HIDL)
|
||||
$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/types.hal
|
||||
$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates)
|
||||
$(GEN): PRIVATE_CUSTOM_TOOL = \
|
||||
$(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \
|
||||
-Ljava -randroid.hardware:hardware/interfaces \
|
||||
android.hardware.wifi@1.0::types.WifiDebugRingEntryFlags
|
||||
|
||||
$(GEN): $(LOCAL_PATH)/types.hal
|
||||
$(transform-generated-source)
|
||||
LOCAL_GENERATED_SOURCES += $(GEN)
|
||||
|
||||
#
|
||||
# Build types.hal (WifiDebugRingEntryHeader)
|
||||
#
|
||||
GEN := $(intermediates)/android/hardware/wifi/1.0/WifiDebugRingEntryHeader.java
|
||||
$(GEN): $(HIDL)
|
||||
$(GEN): PRIVATE_HIDL := $(HIDL)
|
||||
$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/types.hal
|
||||
$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates)
|
||||
$(GEN): PRIVATE_CUSTOM_TOOL = \
|
||||
$(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \
|
||||
-Ljava -randroid.hardware:hardware/interfaces \
|
||||
android.hardware.wifi@1.0::types.WifiDebugRingEntryHeader
|
||||
|
||||
$(GEN): $(LOCAL_PATH)/types.hal
|
||||
$(transform-generated-source)
|
||||
LOCAL_GENERATED_SOURCES += $(GEN)
|
||||
|
||||
#
|
||||
# Build types.hal (WifiDebugRingEntryPowerEvent)
|
||||
#
|
||||
GEN := $(intermediates)/android/hardware/wifi/1.0/WifiDebugRingEntryPowerEvent.java
|
||||
$(GEN): $(HIDL)
|
||||
$(GEN): PRIVATE_HIDL := $(HIDL)
|
||||
$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/types.hal
|
||||
$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates)
|
||||
$(GEN): PRIVATE_CUSTOM_TOOL = \
|
||||
$(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \
|
||||
-Ljava -randroid.hardware:hardware/interfaces \
|
||||
android.hardware.wifi@1.0::types.WifiDebugRingEntryPowerEvent
|
||||
|
||||
$(GEN): $(LOCAL_PATH)/types.hal
|
||||
$(transform-generated-source)
|
||||
LOCAL_GENERATED_SOURCES += $(GEN)
|
||||
|
||||
#
|
||||
# Build types.hal (WifiDebugRingEntryVendorData)
|
||||
#
|
||||
GEN := $(intermediates)/android/hardware/wifi/1.0/WifiDebugRingEntryVendorData.java
|
||||
$(GEN): $(HIDL)
|
||||
$(GEN): PRIVATE_HIDL := $(HIDL)
|
||||
$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/types.hal
|
||||
$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates)
|
||||
$(GEN): PRIVATE_CUSTOM_TOOL = \
|
||||
$(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \
|
||||
-Ljava -randroid.hardware:hardware/interfaces \
|
||||
android.hardware.wifi@1.0::types.WifiDebugRingEntryVendorData
|
||||
|
||||
$(GEN): $(LOCAL_PATH)/types.hal
|
||||
$(transform-generated-source)
|
||||
LOCAL_GENERATED_SOURCES += $(GEN)
|
||||
|
||||
#
|
||||
# Build types.hal (WifiDebugRingEntryWakelockEvent)
|
||||
#
|
||||
GEN := $(intermediates)/android/hardware/wifi/1.0/WifiDebugRingEntryWakelockEvent.java
|
||||
$(GEN): $(HIDL)
|
||||
$(GEN): PRIVATE_HIDL := $(HIDL)
|
||||
$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/types.hal
|
||||
$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates)
|
||||
$(GEN): PRIVATE_CUSTOM_TOOL = \
|
||||
$(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \
|
||||
-Ljava -randroid.hardware:hardware/interfaces \
|
||||
android.hardware.wifi@1.0::types.WifiDebugRingEntryWakelockEvent
|
||||
|
||||
$(GEN): $(LOCAL_PATH)/types.hal
|
||||
$(transform-generated-source)
|
||||
LOCAL_GENERATED_SOURCES += $(GEN)
|
||||
|
||||
#
|
||||
# Build types.hal (WifiInformationElement)
|
||||
#
|
||||
|
||||
@@ -85,7 +85,7 @@ interface IWifiChip {
|
||||
* [{STA} <=1, {AP} <= 1].
|
||||
*
|
||||
* When switching between two available combinations it is expected that
|
||||
* interfaces only supported by the initial combination will be removed until
|
||||
* interfaces only supported by the initial combination must be removed until
|
||||
* the target combination is also satisfied. At that point new interfaces
|
||||
* satisfying only the target combination can be added (meaning the initial
|
||||
* combination limits will no longer satisfied). The addition of these new
|
||||
@@ -102,8 +102,8 @@ interface IWifiChip {
|
||||
*
|
||||
* If a chip does not support this kind of reconfiguration in this mode then
|
||||
* the combinations must be separated into two separate modes. Before
|
||||
* switching modes all interfaces will be torn down, the mode switch will be
|
||||
* enacted and when it completes the new interfaces will be brought up.
|
||||
* switching modes all interfaces must be torn down, the mode switch must be
|
||||
* enacted and when it completes the new interfaces must be brought up.
|
||||
*/
|
||||
struct ChipMode {
|
||||
/**
|
||||
@@ -143,7 +143,7 @@ interface IWifiChip {
|
||||
|
||||
/**
|
||||
* Requests notifications of significant events on this chip. Multiple calls
|
||||
* to this will register multiple callbacks each of which will receive all
|
||||
* to this must register multiple callbacks each of which must receive all
|
||||
* events.
|
||||
*
|
||||
* @param callback An instance of the |IWifiChipEventCallback| HIDL interface
|
||||
@@ -434,4 +434,80 @@ interface IWifiChip {
|
||||
*/
|
||||
createRttController(IWifiIface boundIface)
|
||||
generates (WifiStatus status, IWifiRttController rtt);
|
||||
|
||||
/**
|
||||
* WiFi debug ring buffer life cycle is as follow:
|
||||
* - At initialization time, framework must call |getDebugRingBuffersStatus|.
|
||||
* to obtain the names and list of supported ring buffers.
|
||||
* The driver may expose several different rings each holding a different
|
||||
* type of data (connection events, power events, etc).
|
||||
* - When WiFi operations start framework must call
|
||||
* |startLoggingToDebugRingBuffer| to trigger log collection for a specific
|
||||
* ring. The vebose level for each ring buffer can be specified in this API.
|
||||
* - During wifi operations, driver must periodically report per ring data to
|
||||
* framework by invoking the
|
||||
* |IWifiChipEventCallback.onDebugRingBuffer<Type>EntriesAvailable| callback.
|
||||
* - When capturing a bug report, framework must indicate to driver that all
|
||||
* the data has to be uploaded urgently by calling
|
||||
* |forceDumpToDebugRingBuffer|.
|
||||
*
|
||||
* The data uploaded by driver must be stored by framework in separate files,
|
||||
* with one stream of file per ring. Framework must store the files in pcapng
|
||||
* format, allowing for easy merging and parsing with network analyzer tools.
|
||||
* TODO: Since we're not longer dumping out the raw data, storing in separate
|
||||
* pcapng files for parsing later must not work anymore.
|
||||
*/
|
||||
/**
|
||||
* API to get the status of all ring buffers supported by driver.
|
||||
*
|
||||
* @return status WifiStatus of the operation.
|
||||
* Possible status codes:
|
||||
* |WifiStatusCode.SUCCESS|,
|
||||
* |WifiStatusCode.ERROR_WIFI_CHIP_INVALID|,
|
||||
* |WifiStatusCode.NOT_AVAILABLE|,
|
||||
* |WifiStatusCode.UNKNOWN|
|
||||
* @return ringBuffers Vector of |WifiDebugRingBufferStatus| corresponding to the
|
||||
* status of each ring bufffer on the device.
|
||||
*/
|
||||
getDebugRingBuffersStatus() generates (WifiStatus status,
|
||||
vec<WifiDebugRingBufferStatus> ringBuffers);
|
||||
|
||||
/**
|
||||
* API to trigger the debug data collection.
|
||||
*
|
||||
* @param ringName represent the name of the ring for which data collection
|
||||
* shall start. This can be retrieved via the corresponding
|
||||
* |WifiDebugRingBufferStatus|.
|
||||
* @parm maxIntervalInSec Maximum interval in seconds for driver to invoke
|
||||
* |onDebugRingBufferData|, ignore if zero.
|
||||
* @parm minDataSizeInBytes: Minimum data size in buffer for driver to invoke
|
||||
* |onDebugRingBufferData|, ignore if zero.
|
||||
* @return status WifiStatus of the operation.
|
||||
* Possible status codes:
|
||||
* |WifiStatusCode.SUCCESS|,
|
||||
* |WifiStatusCode.ERROR_WIFI_CHIP_INVALID|,
|
||||
* |WifiStatusCode.NOT_AVAILABLE|,
|
||||
* |WifiStatusCode.UNKNOWN|
|
||||
*/
|
||||
startLoggingToDebugRingBuffer(string ringName,
|
||||
WifiDebugRingBufferVerboseLevel verboseLevel,
|
||||
uint32_t maxIntervalInSec,
|
||||
uint32_t minDataSizeInBytes)
|
||||
generates (WifiStatus status);
|
||||
|
||||
/**
|
||||
* API to force dump data into the corresponding ring buffer.
|
||||
* This is to be invoked during bugreport collection.
|
||||
*
|
||||
* @param ringName represent the name of the ring for which data collection
|
||||
* shall be forced. This can be retrieved via the corresponding
|
||||
* |WifiDebugRingBufferStatus|.
|
||||
* @return status WifiStatus of the operation.
|
||||
* Possible status codes:
|
||||
* |WifiStatusCode.SUCCESS|,
|
||||
* |WifiStatusCode.ERROR_WIFI_CHIP_INVALID|,
|
||||
* |WifiStatusCode.NOT_AVAILABLE|,
|
||||
* |WifiStatusCode.UNKNOWN|
|
||||
*/
|
||||
forceDumpToDebugRingBuffer(string ringName) generates (WifiStatus status);
|
||||
};
|
||||
|
||||
@@ -27,4 +27,47 @@ interface IWifiChipEventCallback {
|
||||
* property of the target ChipMode.
|
||||
*/
|
||||
oneway onChipReconfigured(ChipModeId modeId);
|
||||
|
||||
/**
|
||||
* Callbacks for reporting debug ring buffer data.
|
||||
*
|
||||
* The ring buffer data collection is event based:
|
||||
* - Driver calls this callback when new records are available, the
|
||||
* |WifiDebugRingBufferStatus| passed up to framework in the callback
|
||||
* indicates to framework if more data is available in the ring buffer.
|
||||
* It is not expected that driver will necessarily always empty the ring
|
||||
* immediately as data is available, instead driver will report data
|
||||
* every X seconds or if N bytes are available based on the parameters
|
||||
* set via |startLoggingToDebugRingBuffer|.
|
||||
* - In the case where a bug report has to be captured, framework will
|
||||
* require driver to upload all data immediately. This is indicated to
|
||||
* driver when framework calls |forceDumpToDebugRingBuffer|. The driver
|
||||
* will start sending all available data in the indicated ring by repeatedly
|
||||
* invoking this callback.
|
||||
*
|
||||
* @return status Status of the corresponding ring buffer. This should
|
||||
* contain the name of the ring buffer on which the data is
|
||||
* available.
|
||||
* @return entries Vector of debug ring buffer data entries. These
|
||||
* should be parsed based on the type of entry.
|
||||
*/
|
||||
/** Connectivity event data callback */
|
||||
oneway onDebugRingBufferConnectivityEventEntriesAvailable(
|
||||
WifiDebugRingBufferStatus status,
|
||||
vec<WifiDebugRingEntryConnectivityEvent> entries);
|
||||
|
||||
/** Power event data callback */
|
||||
oneway onDebugRingBufferPowerEventEntriesAvailable(
|
||||
WifiDebugRingBufferStatus status,
|
||||
vec<WifiDebugRingEntryPowerEvent> entries);
|
||||
|
||||
/** Wakelock event data callback */
|
||||
oneway onDebugRingBufferWakelockEventEntriesAvailable(
|
||||
WifiDebugRingBufferStatus status,
|
||||
vec<WifiDebugRingEntryWakelockEvent> entries);
|
||||
|
||||
/** Vendor data event data callback */
|
||||
oneway onDebugRingBufferVendorDataEntriesAvailable(
|
||||
WifiDebugRingBufferStatus status,
|
||||
vec<WifiDebugRingEntryVendorData> entries);
|
||||
};
|
||||
|
||||
@@ -128,6 +128,11 @@ typedef int32_t Rssi;
|
||||
*/
|
||||
typedef uint8_t[6] MacAddress;
|
||||
|
||||
/**
|
||||
* SSID type. 32 octets representing the network.
|
||||
*/
|
||||
typedef uint8_t[32] Ssid;
|
||||
|
||||
/**
|
||||
* BSSID type. 6 octets representing the physical address of an AP.
|
||||
*/
|
||||
@@ -536,7 +541,6 @@ enum NanMaxSize : uint32_t {
|
||||
*/
|
||||
typedef int32_t NanVersion;
|
||||
|
||||
/** NAN Iface specific types */
|
||||
/**
|
||||
* NAN data path identifiers.
|
||||
*/
|
||||
@@ -732,7 +736,7 @@ enum NanDataPathChannelCfg : uint32_t {
|
||||
* Host can send Vendor specific attributes which the Discovery Engine can
|
||||
* enclose in Beacons and/or Service Discovery frames transmitted.
|
||||
* Below structure is used to populate that.
|
||||
* TODO(b/32207606): This can be moved to vendor extension to the HIDL.
|
||||
* TODO(b/32207606): This can be moved to vendor extension.
|
||||
*/
|
||||
struct NanTransmitVendorSpecificAttribute {
|
||||
/**
|
||||
@@ -812,7 +816,6 @@ struct NanEnableRequest {
|
||||
* Optional configuration of Enable request.
|
||||
* Each of the optional parameters have configure flag which
|
||||
* determine whether configuration is to be passed or not.
|
||||
* TODO(b/32207606): Check if these config variables needed or not.
|
||||
*/
|
||||
bool validSupport5gVal;
|
||||
uint8_t support5gVal;
|
||||
@@ -2348,3 +2351,539 @@ struct RttResponder {
|
||||
WifiChannelInfo channel;
|
||||
RttPreamble preamble;
|
||||
};
|
||||
|
||||
/**
|
||||
* Debug data specific types.
|
||||
* TODO(b/32159498): Move to a separate debug_types.hal.
|
||||
*/
|
||||
typedef uint32_t WifiRingBufferId;
|
||||
|
||||
/**
|
||||
* Mask of flags present in |WifiDebugRingEntryHeader.flags| field.
|
||||
*/
|
||||
enum WifiDebugRingEntryFlags : uint8_t {
|
||||
/**
|
||||
* Set for binary entries
|
||||
*/
|
||||
HAS_BINARY = 1 << 0,
|
||||
/**
|
||||
* Set if 64 bits timestamp is present
|
||||
*/
|
||||
HAS_TIMESTAMP = 1 << 1,
|
||||
};
|
||||
|
||||
/**
|
||||
* This structure represent an entry within a debug ring buffer.
|
||||
* Wifi driver are responsible to manage the debug ring buffer and write the
|
||||
* debug information into those buffer.
|
||||
*
|
||||
* In general, the debug entries can be used to store meaningful 802.11
|
||||
* information (SME, MLME, connection and packet statistics) as well as vendor
|
||||
* proprietary data that is specific to a specific driver or chipset.
|
||||
* Binary entries can be used so as to store packet data or vendor specific
|
||||
* information and will be treated as blobs of data by android framework.
|
||||
*
|
||||
* A user land process will be started by framework so as to periodically
|
||||
* retrieve the data logged by drivers into their debug ring buffer, store the
|
||||
* data into log files and include the logs into android bugreports.
|
||||
*/
|
||||
struct WifiDebugRingEntryHeader {
|
||||
/**
|
||||
* The size of |payload| excluding the header.
|
||||
*/
|
||||
uint16_t sizeInBytes;
|
||||
/**
|
||||
* Combination of |WifiDebugRingEntryFlags| values.
|
||||
*/
|
||||
uint8_t flags;
|
||||
/**
|
||||
* Present if |HAS_TIMESTAMP| bit is set.
|
||||
*/
|
||||
TimeStampInUs timestamp;
|
||||
};
|
||||
|
||||
/**
|
||||
* Below event types are used for both the connect and power event
|
||||
* ring entries.
|
||||
*/
|
||||
enum WifiDebugRingEntryEventType : uint16_t {
|
||||
/**
|
||||
* Driver receives association command from kernel.
|
||||
*/
|
||||
ASSOCIATION_REQUESTED = 0,
|
||||
AUTH_COMPLETE = 1,
|
||||
ASSOC_COMPLETE = 2,
|
||||
/**
|
||||
* Firmware event indicating auth frames are sent.
|
||||
*/
|
||||
FW_AUTH_STARTED = 3,
|
||||
/**
|
||||
* Firmware event indicating assoc frames are sent.
|
||||
*/
|
||||
FW_ASSOC_STARTED = 4,
|
||||
/**
|
||||
* Firmware event indicating reassoc frames are sent.
|
||||
*/
|
||||
FW_RE_ASSOC_STARTED = 5,
|
||||
DRIVER_SCAN_REQUESTED = 6,
|
||||
DRIVER_SCAN_RESULT_FOUND = 7,
|
||||
DRIVER_SCAN_COMPLETE = 8,
|
||||
BACKGROUND_SCAN_STARTED = 9,
|
||||
BACKGROUND_SCAN_COMPLETE = 10,
|
||||
DISASSOCIATION_REQUESTED = 11,
|
||||
RE_ASSOCIATION_REQUESTED = 12,
|
||||
ROAM_REQUESTED = 13,
|
||||
/**
|
||||
* Received beacon from AP (event enabled only in verbose mode).
|
||||
*/
|
||||
BEACON_RECEIVED = 14,
|
||||
/**
|
||||
* Firmware has triggered a roam scan (not g-scan).
|
||||
*/
|
||||
ROAM_SCAN_STARTED = 15,
|
||||
/**
|
||||
* Firmware has completed a roam scan (not g-scan).
|
||||
*/
|
||||
ROAM_SCAN_COMPLETE = 16,
|
||||
/**
|
||||
* Firmware has started searching for roam candidates (with reason =xx).
|
||||
*/
|
||||
ROAM_SEARCH_STARTED = 17,
|
||||
/**
|
||||
* Firmware has stopped searching for roam candidates (with reason =xx).
|
||||
*/
|
||||
ROAM_SEARCH_STOPPED = 18,
|
||||
/**
|
||||
* Received channel switch anouncement from AP.
|
||||
*/
|
||||
CHANNEL_SWITCH_ANOUNCEMENT = 20,
|
||||
/**
|
||||
* Firmware start transmit eapol frame, with EAPOL index 1-4.
|
||||
*/
|
||||
FW_EAPOL_FRAME_TRANSMIT_START = 21,
|
||||
/**
|
||||
* Firmware gives up eapol frame, with rate, success/failure and number
|
||||
* retries.
|
||||
*/
|
||||
FW_EAPOL_FRAME_TRANSMIT_STOP = 22,
|
||||
/**
|
||||
* Kernel queue EAPOL for transmission in driver with EAPOL index 1-4.
|
||||
*/
|
||||
DRIVER_EAPOL_FRAME_TRANSMIT_REQUESTED = 23,
|
||||
/**
|
||||
* With rate, regardless of the fact that EAPOL frame is accepted or
|
||||
* rejected by firmware.
|
||||
*/
|
||||
FW_EAPOL_FRAME_RECEIVED = 24,
|
||||
/**
|
||||
* With rate, and eapol index, driver has received EAPOL frame and will
|
||||
* queue it up to wpa_supplicant.
|
||||
*/
|
||||
DRIVER_EAPOL_FRAME_RECEIVED = 26,
|
||||
/**
|
||||
* With success/failure, parameters
|
||||
*/
|
||||
BLOCK_ACK_NEGOTIATION_COMPLETE = 27,
|
||||
BT_COEX_BT_SCO_START = 28,
|
||||
BT_COEX_BT_SCO_STOP = 29,
|
||||
/**
|
||||
* For paging/scan etc., when BT starts transmiting twice per BT slot.
|
||||
*/
|
||||
BT_COEX_BT_SCAN_START = 30,
|
||||
BT_COEX_BT_SCAN_STOP = 31,
|
||||
BT_COEX_BT_HID_START = 32,
|
||||
BT_COEX_BT_HID_STOP = 33,
|
||||
/**
|
||||
* Firmware sends auth frame in roaming to next candidate.
|
||||
*/
|
||||
ROAM_AUTH_STARTED = 34,
|
||||
/**
|
||||
* Firmware receive auth confirm from ap
|
||||
*/
|
||||
ROAM_AUTH_COMPLETE = 35,
|
||||
/**
|
||||
* Firmware sends assoc/reassoc frame in roaming to next candidate.
|
||||
*/
|
||||
ROAM_ASSOC_STARTED = 36,
|
||||
/**
|
||||
* Firmware receive assoc/reassoc confirm from ap.
|
||||
*/
|
||||
ROAM_ASSOC_COMPLETE = 37,
|
||||
/**
|
||||
* Firmware sends stop BACKGROUND_SCAN
|
||||
*/
|
||||
BACKGROUND_SCAN_STOP = 38,
|
||||
/**
|
||||
* Firmware indicates BACKGROUND_SCAN scan cycle started.
|
||||
*/
|
||||
BACKGROUND_SCAN_CYCLE_STARTED = 39,
|
||||
/**
|
||||
* Firmware indicates BACKGROUND_SCAN scan cycle completed.
|
||||
*/
|
||||
BACKGROUND_SCAN_CYCLE_COMPLETED = 40,
|
||||
/**
|
||||
* Firmware indicates BACKGROUND_SCAN scan start for a particular bucket.
|
||||
*/
|
||||
BACKGROUND_SCAN_BUCKET_STARTED = 41,
|
||||
/**
|
||||
* Firmware indicates BACKGROUND_SCAN scan completed for for a particular bucket.
|
||||
*/
|
||||
BACKGROUND_SCAN_BUCKET_COMPLETED = 42,
|
||||
/**
|
||||
* Event received from firmware about BACKGROUND_SCAN scan results being available.
|
||||
*/
|
||||
BACKGROUND_SCAN_RESULTS_AVAILABLE = 43,
|
||||
/**
|
||||
* Event received from firmware with BACKGROUND_SCAN capabilities.
|
||||
*/
|
||||
BACKGROUND_SCAN_CAPABILITIES = 44,
|
||||
/**
|
||||
* Event received from firmware when eligible candidate is found.
|
||||
*/
|
||||
ROAM_CANDIDATE_FOUND = 45,
|
||||
/**
|
||||
* Event received from firmware when roam scan configuration gets
|
||||
* enabled or disabled.
|
||||
*/
|
||||
ROAM_SCAN_CONFIG = 46,
|
||||
/**
|
||||
* Firmware/driver timed out authentication.
|
||||
*/
|
||||
AUTH_TIMEOUT = 47,
|
||||
/**
|
||||
* Firmware/driver timed out association.
|
||||
*/
|
||||
ASSOC_TIMEOUT = 48,
|
||||
/**
|
||||
* Firmware/driver encountered allocation failure.
|
||||
*/
|
||||
MEM_ALLOC_FAILURE = 49,
|
||||
/**
|
||||
* Driver added a PNO network in firmware.
|
||||
*/
|
||||
DRIVER_PNO_ADD = 50,
|
||||
/**
|
||||
* Driver removed a PNO network in firmware.
|
||||
*/
|
||||
DRIVER_PNO_REMOVE = 51,
|
||||
/**
|
||||
* Driver received PNO networks found indication from firmware.
|
||||
*/
|
||||
DRIVER_PNO_NETWORK_FOUND = 52,
|
||||
/**
|
||||
* Driver triggered a scan for PNO networks.
|
||||
*/
|
||||
DRIVER_PNO_SCAN_REQUESTED = 53,
|
||||
/**
|
||||
* Driver received scan results of PNO networks.
|
||||
*/
|
||||
DRIVER_PNO_SCAN_RESULT_FOUND = 54,
|
||||
/**
|
||||
* Driver updated scan results from PNO networks to cfg80211.
|
||||
*/
|
||||
DRIVER_PNO_SCAN_COMPLETE = 55,
|
||||
};
|
||||
|
||||
/**
|
||||
* Parameters of the various events are a sequence of TLVs
|
||||
* (type, length, value). The types for different TLV's are defined below.
|
||||
*/
|
||||
enum WifiDebugRingEntryEventTlvType : uint16_t {
|
||||
/**
|
||||
* Take a byte stream as parameter.
|
||||
*/
|
||||
VENDOR_SPECIFIC = 0,
|
||||
/**
|
||||
* Takes a MAC address as parameter.
|
||||
*/
|
||||
BSSID = 1,
|
||||
/**
|
||||
* Takes a MAC address as parameter.
|
||||
*/
|
||||
ADDR = 2,
|
||||
/**
|
||||
* Takes an SSID as parameter.
|
||||
*/
|
||||
SSID = 3,
|
||||
/**
|
||||
* Takes an integer as parameter.
|
||||
*/
|
||||
STATUS = 4,
|
||||
/**
|
||||
* Takes a |WifiChannelInfo| struct as parameter.
|
||||
*/
|
||||
CHANNEL_SPEC = 5,
|
||||
/**
|
||||
* Takes a MAC address as parameter.
|
||||
*/
|
||||
ADDR_1 = 6,
|
||||
/**
|
||||
* Takes a MAC address as parameter.
|
||||
*/
|
||||
ADDR_2 = 7,
|
||||
/**
|
||||
* Takes a MAC address as parameter.
|
||||
*/
|
||||
ADDR_3 = 8,
|
||||
/**
|
||||
* Takes a MAC address as parameter.
|
||||
*/
|
||||
ADDR_4 = 9,
|
||||
/**
|
||||
* Takes a TSF value as parameter.
|
||||
*/
|
||||
TSF = 10,
|
||||
/**
|
||||
* Takes one or more specific 802.11 IEs parameter IEs are in turn
|
||||
* indicated in TLV format as per 802.11, spec.
|
||||
*/
|
||||
IE = 11,
|
||||
/**
|
||||
* Takes a string interface name as parameter.
|
||||
*/
|
||||
IFACE_NAME = 12,
|
||||
/**
|
||||
* Takes a integer reason code as per 802.11 as parameter.
|
||||
*/
|
||||
REASON_CODE = 13,
|
||||
/**
|
||||
* Takes an integer representing wifi rate in 1 mbps as parameter.
|
||||
*/
|
||||
RATE_MBPS = 14,
|
||||
/**
|
||||
* Takes an integer as parameter.
|
||||
*/
|
||||
REQUEST_ID = 15,
|
||||
/**
|
||||
* Takes an integer as parameter.
|
||||
*/
|
||||
BUCKET_ID = 16,
|
||||
/**
|
||||
* Takes a |BackgroundScanParameters| struct as parameter.
|
||||
*/
|
||||
BACKGROUND_SCAN_PARAMS = 17,
|
||||
/**
|
||||
* Takes a |BackgroundScanCapabilities| struct as parameter.
|
||||
*/
|
||||
BACKGROUND_SCAN_CAPABILITIES = 18,
|
||||
/**
|
||||
* Takes an integer as parameter.
|
||||
*/
|
||||
SCAN_ID = 19,
|
||||
/**
|
||||
* Takes an integer as parameter.
|
||||
*/
|
||||
RSSI = 20,
|
||||
/**
|
||||
* Takes a |WifiChannelInMhz| as parameter.
|
||||
*/
|
||||
CHANNEL = 21,
|
||||
/**
|
||||
* Takes an integer as parameter.
|
||||
*/
|
||||
LINK_ID = 22,
|
||||
/**
|
||||
* Takes an integer as parameter.
|
||||
*/
|
||||
LINK_ROLE = 23,
|
||||
/**
|
||||
* Takes an integer as parameter.
|
||||
*/
|
||||
LINK_STATE = 24,
|
||||
/**
|
||||
* Takes an integer as parameter.
|
||||
*/
|
||||
LINK_TYPE = 25,
|
||||
/**
|
||||
* Takes an integer as parameter.
|
||||
*/
|
||||
TSCO = 26,
|
||||
/**
|
||||
* Takes an integer as parameter.
|
||||
*/
|
||||
RSCO = 27,
|
||||
/**
|
||||
* Takes an integer as parameter.
|
||||
* M1=1, M2=2, M3=3, M=4,
|
||||
*/
|
||||
EAPOL_MESSAGE_TYPE = 28,
|
||||
};
|
||||
|
||||
/**
|
||||
* Used to describe a specific TLV in an event entry.
|
||||
*/
|
||||
struct WifiDebugRingEntryEventTlv {
|
||||
WifiDebugRingEntryEventTlvType type;
|
||||
/**
|
||||
* All possible types of values that can be held in the TLV.
|
||||
* Note: This should ideally be a union. But, since this HIDL package
|
||||
* is going to be used by a java client, we cannot have unions in this
|
||||
* package.
|
||||
*/
|
||||
/* TODO(b/32207606): This can be moved to vendor extension. */
|
||||
vec<uint8_t> vendorSpecific;
|
||||
Bssid bssid;
|
||||
MacAddress addr;
|
||||
Ssid ssid;
|
||||
WifiChannelInfo channelSpec;
|
||||
uint64_t tsf;
|
||||
vec<WifiInformationElement> ie;
|
||||
string ifaceName;
|
||||
StaBackgroundScanParameters bgScanParams;
|
||||
StaBackgroundScanCapabilities bgScanCapabilities;
|
||||
Rssi rssi;
|
||||
WifiChannelInMhz channel;
|
||||
uint32_t integerVal;
|
||||
};
|
||||
|
||||
/**
|
||||
* Used to describe a connect event ring entry.
|
||||
*/
|
||||
struct WifiDebugRingEntryConnectivityEvent {
|
||||
/**
|
||||
* Ring entry header.
|
||||
*/
|
||||
WifiDebugRingEntryHeader header;
|
||||
/**
|
||||
* Type of connection event.
|
||||
*/
|
||||
WifiDebugRingEntryEventType event;
|
||||
/**
|
||||
* Separate parameter structure per event to be provided and optional data.
|
||||
* The event data is expected to include an official android part, with some
|
||||
* parameter as transmit rate, num retries, num scan result found, etc.
|
||||
* event data can include a vendor proprietary part which is understood by
|
||||
* the vendor only.
|
||||
*/
|
||||
vec<WifiDebugRingEntryEventTlv> tlvs;
|
||||
};
|
||||
|
||||
/**
|
||||
* Used to describe a power event ring entry.
|
||||
*/
|
||||
struct WifiDebugRingEntryPowerEvent {
|
||||
/**
|
||||
* Ring entry header.
|
||||
*/
|
||||
WifiDebugRingEntryHeader header;
|
||||
/**
|
||||
* Type of power event.
|
||||
*/
|
||||
WifiDebugRingEntryEventType event;
|
||||
/**
|
||||
* Separate parameter structure per event to be provided and optional data.
|
||||
* The event data is expected to include an official android part, with some
|
||||
* parameter as transmit rate, num retries, num scan result found, etc.
|
||||
* event data can include a vendor proprietary part which is understood by
|
||||
* the vendor only.
|
||||
*/
|
||||
vec<WifiDebugRingEntryEventTlv> tlvs;
|
||||
};
|
||||
|
||||
/**
|
||||
* Used to describe a wakelock event ring entry.
|
||||
*/
|
||||
struct WifiDebugRingEntryWakelockEvent {
|
||||
/**
|
||||
* Ring entry header.
|
||||
*/
|
||||
WifiDebugRingEntryHeader header;
|
||||
/**
|
||||
* true = wake lock acquired.
|
||||
* false = wake lock released.
|
||||
*/
|
||||
bool wasAcquired;
|
||||
/**
|
||||
* Reason why this wake lock is taken.
|
||||
* This is a vendor defined reason and can only be understood by the
|
||||
* vendor.
|
||||
*/
|
||||
uint32_t vendorSpecificReason;
|
||||
/**
|
||||
* Wake lock name.
|
||||
*/
|
||||
string wakelockName;
|
||||
};
|
||||
|
||||
/**
|
||||
* Used to describe a vendor specific data ring entry.
|
||||
*/
|
||||
struct WifiDebugRingEntryVendorData {
|
||||
/**
|
||||
* Ring entry header.
|
||||
*/
|
||||
WifiDebugRingEntryHeader header;
|
||||
/**
|
||||
* This is a blob that will only be understood by the
|
||||
* vendor.
|
||||
*/
|
||||
vec<uint8_t> vendorData;
|
||||
};
|
||||
|
||||
/**
|
||||
* Flags describing each debug ring buffer.
|
||||
*/
|
||||
enum WifiDebugRingBufferFlags : uint32_t {
|
||||
HAS_BINARY_ENTRIES = 1 << 0,
|
||||
HAS_ASCII_ENTRIES = 1 << 1,
|
||||
HAS_PER_PACKET_ENTRIES = 1 << 2,
|
||||
};
|
||||
|
||||
/**
|
||||
* Struct describing each debug ring buffer supported by
|
||||
* the device.
|
||||
*/
|
||||
struct WifiDebugRingBufferStatus {
|
||||
/**
|
||||
* Name of this debug ring buffer.
|
||||
*/
|
||||
string ringName;
|
||||
/**
|
||||
* Combination of |WifiDebugRingBufferFlags| values.
|
||||
*/
|
||||
uint32_t flags;
|
||||
/**
|
||||
* Unique integer representing the ring.
|
||||
*/
|
||||
WifiRingBufferId ringId;
|
||||
/**
|
||||
* Total memory size allocated for the buffer.
|
||||
*/
|
||||
uint32_t sizeInBytes;
|
||||
/**
|
||||
* Amount of free space in the buffer.
|
||||
*/
|
||||
uint32_t freeSizeInBytes;
|
||||
/**
|
||||
* Verbose level for ring buffer.
|
||||
*/
|
||||
uint32_t verboseLevel;
|
||||
};
|
||||
|
||||
/**
|
||||
* Verbose logging level to set for each debug ring buffer supported
|
||||
* by the device.
|
||||
*/
|
||||
enum WifiDebugRingBufferVerboseLevel : uint32_t {
|
||||
/**
|
||||
* Level 0 corresponds to no collection, and it makes log handler
|
||||
* stop by no more events from driver.
|
||||
*/
|
||||
NONE = 0,
|
||||
/**
|
||||
* Level 1 correspond to normal log level, with minimal user impact.
|
||||
* This is the default value.
|
||||
*/
|
||||
DEFAULT = 1,
|
||||
/**
|
||||
* Level 2 is enabled when user is lazily trying to reproduce a problem,
|
||||
* wifi performances and power can be impacted but device should not
|
||||
* otherwise be significantly impacted.
|
||||
*/
|
||||
VERBOSE = 2,
|
||||
/**
|
||||
* Level 3 is used when trying to actively debug a problem.
|
||||
* This will cause sever performance degradation.
|
||||
*/
|
||||
EXCESSIVE = 3
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user