wifi(interface): Rtt controller HIDL interface

Bug: 31991232
Test: ./hardware/interfaces/update-makefiles.sh
Change-Id: I53b95e85ee8a71bcb0494420913c9511f87908c0
This commit is contained in:
Roshan Pius
2016-10-14 11:29:30 -07:00
parent 120f94c594
commit 18eec81adc
7 changed files with 1581 additions and 16 deletions

View File

@@ -16,6 +16,7 @@ genrule {
"IWifiNanIfaceEventCallback.hal",
"IWifiP2pIface.hal",
"IWifiRttController.hal",
"IWifiRttControllerEventCallback.hal",
"IWifiStaIface.hal",
"IWifiStaIfaceEventCallback.hal",
],
@@ -31,6 +32,7 @@ genrule {
"android/hardware/wifi/1.0/WifiNanIfaceEventCallbackAll.cpp",
"android/hardware/wifi/1.0/WifiP2pIfaceAll.cpp",
"android/hardware/wifi/1.0/WifiRttControllerAll.cpp",
"android/hardware/wifi/1.0/WifiRttControllerEventCallbackAll.cpp",
"android/hardware/wifi/1.0/WifiStaIfaceAll.cpp",
"android/hardware/wifi/1.0/WifiStaIfaceEventCallbackAll.cpp",
],
@@ -52,6 +54,7 @@ genrule {
"IWifiNanIfaceEventCallback.hal",
"IWifiP2pIface.hal",
"IWifiRttController.hal",
"IWifiRttControllerEventCallback.hal",
"IWifiStaIface.hal",
"IWifiStaIfaceEventCallback.hal",
],
@@ -107,6 +110,11 @@ genrule {
"android/hardware/wifi/1.0/BnWifiRttController.h",
"android/hardware/wifi/1.0/BpWifiRttController.h",
"android/hardware/wifi/1.0/BsWifiRttController.h",
"android/hardware/wifi/1.0/IWifiRttControllerEventCallback.h",
"android/hardware/wifi/1.0/IHwWifiRttControllerEventCallback.h",
"android/hardware/wifi/1.0/BnWifiRttControllerEventCallback.h",
"android/hardware/wifi/1.0/BpWifiRttControllerEventCallback.h",
"android/hardware/wifi/1.0/BsWifiRttControllerEventCallback.h",
"android/hardware/wifi/1.0/IWifiStaIface.h",
"android/hardware/wifi/1.0/IHwWifiStaIface.h",
"android/hardware/wifi/1.0/BnWifiStaIface.h",

View File

@@ -12,6 +12,40 @@ intermediates := $(local-generated-sources-dir)
HIDL := $(HOST_OUT_EXECUTABLES)/hidl-gen$(HOST_EXECUTABLE_SUFFIX)
#
# Build types.hal (ChannelInfo)
#
GEN := $(intermediates)/android/hardware/wifi/1.0/ChannelInfo.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.ChannelInfo
$(GEN): $(LOCAL_PATH)/types.hal
$(transform-generated-source)
LOCAL_GENERATED_SOURCES += $(GEN)
#
# Build types.hal (ChannelWidth)
#
GEN := $(intermediates)/android/hardware/wifi/1.0/ChannelWidth.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.ChannelWidth
$(GEN): $(LOCAL_PATH)/types.hal
$(transform-generated-source)
LOCAL_GENERATED_SOURCES += $(GEN)
#
# Build types.hal (IfaceType)
#
@@ -29,6 +63,23 @@ $(GEN): $(LOCAL_PATH)/types.hal
$(transform-generated-source)
LOCAL_GENERATED_SOURCES += $(GEN)
#
# Build types.hal (InformationElement)
#
GEN := $(intermediates)/android/hardware/wifi/1.0/InformationElement.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.InformationElement
$(GEN): $(LOCAL_PATH)/types.hal
$(transform-generated-source)
LOCAL_GENERATED_SOURCES += $(GEN)
#
# Build types.hal (NanAvailDuration)
#
@@ -1134,6 +1185,312 @@ $(GEN): $(LOCAL_PATH)/types.hal
$(transform-generated-source)
LOCAL_GENERATED_SOURCES += $(GEN)
#
# Build types.hal (RateInfo)
#
GEN := $(intermediates)/android/hardware/wifi/1.0/RateInfo.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.RateInfo
$(GEN): $(LOCAL_PATH)/types.hal
$(transform-generated-source)
LOCAL_GENERATED_SOURCES += $(GEN)
#
# Build types.hal (RttBw)
#
GEN := $(intermediates)/android/hardware/wifi/1.0/RttBw.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.RttBw
$(GEN): $(LOCAL_PATH)/types.hal
$(transform-generated-source)
LOCAL_GENERATED_SOURCES += $(GEN)
#
# Build types.hal (RttCapabilities)
#
GEN := $(intermediates)/android/hardware/wifi/1.0/RttCapabilities.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.RttCapabilities
$(GEN): $(LOCAL_PATH)/types.hal
$(transform-generated-source)
LOCAL_GENERATED_SOURCES += $(GEN)
#
# Build types.hal (RttChannelMap)
#
GEN := $(intermediates)/android/hardware/wifi/1.0/RttChannelMap.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.RttChannelMap
$(GEN): $(LOCAL_PATH)/types.hal
$(transform-generated-source)
LOCAL_GENERATED_SOURCES += $(GEN)
#
# Build types.hal (RttConfig)
#
GEN := $(intermediates)/android/hardware/wifi/1.0/RttConfig.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.RttConfig
$(GEN): $(LOCAL_PATH)/types.hal
$(transform-generated-source)
LOCAL_GENERATED_SOURCES += $(GEN)
#
# Build types.hal (RttConstants)
#
GEN := $(intermediates)/android/hardware/wifi/1.0/RttConstants.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.RttConstants
$(GEN): $(LOCAL_PATH)/types.hal
$(transform-generated-source)
LOCAL_GENERATED_SOURCES += $(GEN)
#
# Build types.hal (RttDebugFormat)
#
GEN := $(intermediates)/android/hardware/wifi/1.0/RttDebugFormat.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.RttDebugFormat
$(GEN): $(LOCAL_PATH)/types.hal
$(transform-generated-source)
LOCAL_GENERATED_SOURCES += $(GEN)
#
# Build types.hal (RttDebugInfo)
#
GEN := $(intermediates)/android/hardware/wifi/1.0/RttDebugInfo.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.RttDebugInfo
$(GEN): $(LOCAL_PATH)/types.hal
$(transform-generated-source)
LOCAL_GENERATED_SOURCES += $(GEN)
#
# Build types.hal (RttDebugType)
#
GEN := $(intermediates)/android/hardware/wifi/1.0/RttDebugType.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.RttDebugType
$(GEN): $(LOCAL_PATH)/types.hal
$(transform-generated-source)
LOCAL_GENERATED_SOURCES += $(GEN)
#
# Build types.hal (RttLciInformation)
#
GEN := $(intermediates)/android/hardware/wifi/1.0/RttLciInformation.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.RttLciInformation
$(GEN): $(LOCAL_PATH)/types.hal
$(transform-generated-source)
LOCAL_GENERATED_SOURCES += $(GEN)
#
# Build types.hal (RttLcrInformation)
#
GEN := $(intermediates)/android/hardware/wifi/1.0/RttLcrInformation.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.RttLcrInformation
$(GEN): $(LOCAL_PATH)/types.hal
$(transform-generated-source)
LOCAL_GENERATED_SOURCES += $(GEN)
#
# Build types.hal (RttMotionPattern)
#
GEN := $(intermediates)/android/hardware/wifi/1.0/RttMotionPattern.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.RttMotionPattern
$(GEN): $(LOCAL_PATH)/types.hal
$(transform-generated-source)
LOCAL_GENERATED_SOURCES += $(GEN)
#
# Build types.hal (RttPeerType)
#
GEN := $(intermediates)/android/hardware/wifi/1.0/RttPeerType.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.RttPeerType
$(GEN): $(LOCAL_PATH)/types.hal
$(transform-generated-source)
LOCAL_GENERATED_SOURCES += $(GEN)
#
# Build types.hal (RttPreamble)
#
GEN := $(intermediates)/android/hardware/wifi/1.0/RttPreamble.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.RttPreamble
$(GEN): $(LOCAL_PATH)/types.hal
$(transform-generated-source)
LOCAL_GENERATED_SOURCES += $(GEN)
#
# Build types.hal (RttResponder)
#
GEN := $(intermediates)/android/hardware/wifi/1.0/RttResponder.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.RttResponder
$(GEN): $(LOCAL_PATH)/types.hal
$(transform-generated-source)
LOCAL_GENERATED_SOURCES += $(GEN)
#
# Build types.hal (RttResult)
#
GEN := $(intermediates)/android/hardware/wifi/1.0/RttResult.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.RttResult
$(GEN): $(LOCAL_PATH)/types.hal
$(transform-generated-source)
LOCAL_GENERATED_SOURCES += $(GEN)
#
# Build types.hal (RttStatus)
#
GEN := $(intermediates)/android/hardware/wifi/1.0/RttStatus.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.RttStatus
$(GEN): $(LOCAL_PATH)/types.hal
$(transform-generated-source)
LOCAL_GENERATED_SOURCES += $(GEN)
#
# Build types.hal (RttType)
#
GEN := $(intermediates)/android/hardware/wifi/1.0/RttType.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.RttType
$(GEN): $(LOCAL_PATH)/types.hal
$(transform-generated-source)
LOCAL_GENERATED_SOURCES += $(GEN)
#
# Build types.hal (WifiStatus)
#
@@ -1370,6 +1727,8 @@ $(GEN): PRIVATE_HIDL := $(HIDL)
$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/IWifiRttController.hal
$(GEN): PRIVATE_DEPS += $(LOCAL_PATH)/IWifiIface.hal
$(GEN): $(LOCAL_PATH)/IWifiIface.hal
$(GEN): PRIVATE_DEPS += $(LOCAL_PATH)/IWifiRttControllerEventCallback.hal
$(GEN): $(LOCAL_PATH)/IWifiRttControllerEventCallback.hal
$(GEN): PRIVATE_DEPS += $(LOCAL_PATH)/types.hal
$(GEN): $(LOCAL_PATH)/types.hal
$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates)
@@ -1382,6 +1741,25 @@ $(GEN): $(LOCAL_PATH)/IWifiRttController.hal
$(transform-generated-source)
LOCAL_GENERATED_SOURCES += $(GEN)
#
# Build IWifiRttControllerEventCallback.hal
#
GEN := $(intermediates)/android/hardware/wifi/1.0/IWifiRttControllerEventCallback.java
$(GEN): $(HIDL)
$(GEN): PRIVATE_HIDL := $(HIDL)
$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/IWifiRttControllerEventCallback.hal
$(GEN): PRIVATE_DEPS += $(LOCAL_PATH)/types.hal
$(GEN): $(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::IWifiRttControllerEventCallback
$(GEN): $(LOCAL_PATH)/IWifiRttControllerEventCallback.hal
$(transform-generated-source)
LOCAL_GENERATED_SOURCES += $(GEN)
#
# Build IWifiStaIface.hal
#
@@ -1436,6 +1814,40 @@ intermediates := $(local-generated-sources-dir)
HIDL := $(HOST_OUT_EXECUTABLES)/hidl-gen$(HOST_EXECUTABLE_SUFFIX)
#
# Build types.hal (ChannelInfo)
#
GEN := $(intermediates)/android/hardware/wifi/1.0/ChannelInfo.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.ChannelInfo
$(GEN): $(LOCAL_PATH)/types.hal
$(transform-generated-source)
LOCAL_GENERATED_SOURCES += $(GEN)
#
# Build types.hal (ChannelWidth)
#
GEN := $(intermediates)/android/hardware/wifi/1.0/ChannelWidth.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.ChannelWidth
$(GEN): $(LOCAL_PATH)/types.hal
$(transform-generated-source)
LOCAL_GENERATED_SOURCES += $(GEN)
#
# Build types.hal (IfaceType)
#
@@ -1453,6 +1865,23 @@ $(GEN): $(LOCAL_PATH)/types.hal
$(transform-generated-source)
LOCAL_GENERATED_SOURCES += $(GEN)
#
# Build types.hal (InformationElement)
#
GEN := $(intermediates)/android/hardware/wifi/1.0/InformationElement.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.InformationElement
$(GEN): $(LOCAL_PATH)/types.hal
$(transform-generated-source)
LOCAL_GENERATED_SOURCES += $(GEN)
#
# Build types.hal (NanAvailDuration)
#
@@ -2558,6 +2987,312 @@ $(GEN): $(LOCAL_PATH)/types.hal
$(transform-generated-source)
LOCAL_GENERATED_SOURCES += $(GEN)
#
# Build types.hal (RateInfo)
#
GEN := $(intermediates)/android/hardware/wifi/1.0/RateInfo.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.RateInfo
$(GEN): $(LOCAL_PATH)/types.hal
$(transform-generated-source)
LOCAL_GENERATED_SOURCES += $(GEN)
#
# Build types.hal (RttBw)
#
GEN := $(intermediates)/android/hardware/wifi/1.0/RttBw.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.RttBw
$(GEN): $(LOCAL_PATH)/types.hal
$(transform-generated-source)
LOCAL_GENERATED_SOURCES += $(GEN)
#
# Build types.hal (RttCapabilities)
#
GEN := $(intermediates)/android/hardware/wifi/1.0/RttCapabilities.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.RttCapabilities
$(GEN): $(LOCAL_PATH)/types.hal
$(transform-generated-source)
LOCAL_GENERATED_SOURCES += $(GEN)
#
# Build types.hal (RttChannelMap)
#
GEN := $(intermediates)/android/hardware/wifi/1.0/RttChannelMap.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.RttChannelMap
$(GEN): $(LOCAL_PATH)/types.hal
$(transform-generated-source)
LOCAL_GENERATED_SOURCES += $(GEN)
#
# Build types.hal (RttConfig)
#
GEN := $(intermediates)/android/hardware/wifi/1.0/RttConfig.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.RttConfig
$(GEN): $(LOCAL_PATH)/types.hal
$(transform-generated-source)
LOCAL_GENERATED_SOURCES += $(GEN)
#
# Build types.hal (RttConstants)
#
GEN := $(intermediates)/android/hardware/wifi/1.0/RttConstants.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.RttConstants
$(GEN): $(LOCAL_PATH)/types.hal
$(transform-generated-source)
LOCAL_GENERATED_SOURCES += $(GEN)
#
# Build types.hal (RttDebugFormat)
#
GEN := $(intermediates)/android/hardware/wifi/1.0/RttDebugFormat.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.RttDebugFormat
$(GEN): $(LOCAL_PATH)/types.hal
$(transform-generated-source)
LOCAL_GENERATED_SOURCES += $(GEN)
#
# Build types.hal (RttDebugInfo)
#
GEN := $(intermediates)/android/hardware/wifi/1.0/RttDebugInfo.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.RttDebugInfo
$(GEN): $(LOCAL_PATH)/types.hal
$(transform-generated-source)
LOCAL_GENERATED_SOURCES += $(GEN)
#
# Build types.hal (RttDebugType)
#
GEN := $(intermediates)/android/hardware/wifi/1.0/RttDebugType.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.RttDebugType
$(GEN): $(LOCAL_PATH)/types.hal
$(transform-generated-source)
LOCAL_GENERATED_SOURCES += $(GEN)
#
# Build types.hal (RttLciInformation)
#
GEN := $(intermediates)/android/hardware/wifi/1.0/RttLciInformation.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.RttLciInformation
$(GEN): $(LOCAL_PATH)/types.hal
$(transform-generated-source)
LOCAL_GENERATED_SOURCES += $(GEN)
#
# Build types.hal (RttLcrInformation)
#
GEN := $(intermediates)/android/hardware/wifi/1.0/RttLcrInformation.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.RttLcrInformation
$(GEN): $(LOCAL_PATH)/types.hal
$(transform-generated-source)
LOCAL_GENERATED_SOURCES += $(GEN)
#
# Build types.hal (RttMotionPattern)
#
GEN := $(intermediates)/android/hardware/wifi/1.0/RttMotionPattern.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.RttMotionPattern
$(GEN): $(LOCAL_PATH)/types.hal
$(transform-generated-source)
LOCAL_GENERATED_SOURCES += $(GEN)
#
# Build types.hal (RttPeerType)
#
GEN := $(intermediates)/android/hardware/wifi/1.0/RttPeerType.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.RttPeerType
$(GEN): $(LOCAL_PATH)/types.hal
$(transform-generated-source)
LOCAL_GENERATED_SOURCES += $(GEN)
#
# Build types.hal (RttPreamble)
#
GEN := $(intermediates)/android/hardware/wifi/1.0/RttPreamble.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.RttPreamble
$(GEN): $(LOCAL_PATH)/types.hal
$(transform-generated-source)
LOCAL_GENERATED_SOURCES += $(GEN)
#
# Build types.hal (RttResponder)
#
GEN := $(intermediates)/android/hardware/wifi/1.0/RttResponder.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.RttResponder
$(GEN): $(LOCAL_PATH)/types.hal
$(transform-generated-source)
LOCAL_GENERATED_SOURCES += $(GEN)
#
# Build types.hal (RttResult)
#
GEN := $(intermediates)/android/hardware/wifi/1.0/RttResult.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.RttResult
$(GEN): $(LOCAL_PATH)/types.hal
$(transform-generated-source)
LOCAL_GENERATED_SOURCES += $(GEN)
#
# Build types.hal (RttStatus)
#
GEN := $(intermediates)/android/hardware/wifi/1.0/RttStatus.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.RttStatus
$(GEN): $(LOCAL_PATH)/types.hal
$(transform-generated-source)
LOCAL_GENERATED_SOURCES += $(GEN)
#
# Build types.hal (RttType)
#
GEN := $(intermediates)/android/hardware/wifi/1.0/RttType.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.RttType
$(GEN): $(LOCAL_PATH)/types.hal
$(transform-generated-source)
LOCAL_GENERATED_SOURCES += $(GEN)
#
# Build types.hal (WifiStatus)
#
@@ -2794,6 +3529,8 @@ $(GEN): PRIVATE_HIDL := $(HIDL)
$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/IWifiRttController.hal
$(GEN): PRIVATE_DEPS += $(LOCAL_PATH)/IWifiIface.hal
$(GEN): $(LOCAL_PATH)/IWifiIface.hal
$(GEN): PRIVATE_DEPS += $(LOCAL_PATH)/IWifiRttControllerEventCallback.hal
$(GEN): $(LOCAL_PATH)/IWifiRttControllerEventCallback.hal
$(GEN): PRIVATE_DEPS += $(LOCAL_PATH)/types.hal
$(GEN): $(LOCAL_PATH)/types.hal
$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates)
@@ -2806,6 +3543,25 @@ $(GEN): $(LOCAL_PATH)/IWifiRttController.hal
$(transform-generated-source)
LOCAL_GENERATED_SOURCES += $(GEN)
#
# Build IWifiRttControllerEventCallback.hal
#
GEN := $(intermediates)/android/hardware/wifi/1.0/IWifiRttControllerEventCallback.java
$(GEN): $(HIDL)
$(GEN): PRIVATE_HIDL := $(HIDL)
$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/IWifiRttControllerEventCallback.hal
$(GEN): PRIVATE_DEPS += $(LOCAL_PATH)/types.hal
$(GEN): $(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::IWifiRttControllerEventCallback
$(GEN): $(LOCAL_PATH)/IWifiRttControllerEventCallback.hal
$(transform-generated-source)
LOCAL_GENERATED_SOURCES += $(GEN)
#
# Build IWifiStaIface.hal
#

View File

@@ -17,13 +17,14 @@
package android.hardware.wifi@1.0;
import IWifiIface;
import IWifiRttControllerEventCallback;
/**
* Interface used to perform RTT operations.
* Interface used to perform RTT(Round trip time) operations.
*/
interface IWifiRttController {
/**
* Get the iface on which the RTT operations will be performed.
* Get the iface on which the RTT operations must be performed.
*
* @return status WifiStatus of the operation.
* Possible status codes:
@@ -33,4 +34,208 @@ interface IWifiRttController {
* to a specific iface, null otherwise
*/
getBoundIface() generates (WifiStatus status, IWifiIface boundIface);
/**
* Requests notifications of significant events on this rtt controller.
* Multiple calls to this must register multiple callbacks each of which must
* receive all events.
*
* @param callback An instance of the |IWifiRttControllerEventCallback| HIDL
* interface object.
* @return status WifiStatus of the operation.
* Possible status codes:
* |WifiStatusCode.SUCCESS|,
* |WifiStatusCode.ERROR_WIFI_IFACE_INVALID|
*/
registerEventCallback(IWifiRttControllerEventCallback callback)
generates (WifiStatus status);
/**
* API to request RTT measurement.
*
* @param cmdId command Id to use for this invocation.
* @param rttConfigs Vector of |RttConfig| parameters.
* @return status WifiStatus of the operation.
* Possible status codes:
* |WifiStatusCode.SUCCESS|,
* |WifiStatusCode.ERROR_WIFI_RTT_CONTROLLER_INVALID|,
* |WifiStatusCode.ERROR_INVALID_ARGS|,
* |WifiStatusCode.ERROR_NOT_AVAILABLE|,
* |WifiStatusCode.ERROR_UNKNOWN|
*/
rangeRequest(CommandId cmdId, vec<RttConfig> rttConfigs)
generates (WifiStatus status);
/**
* API to cancel RTT measurements.
*
* @param cmdId command Id corresponding to the original request.
* @param addrs Vector of addresses for which to cancel.
* @return status WifiStatus of the operation.
* Possible status codes:
* |WifiStatusCode.SUCCESS|,
* |WifiStatusCode.ERROR_WIFI_RTT_CONTROLLER_INVALID|,
* |WifiStatusCode.ERROR_INVALID_ARGS|,
* |WifiStatusCode.ERROR_NOT_AVAILABLE|,
* |WifiStatusCode.ERROR_UNKNOWN|
*/
rangeCancel(CommandId cmdId, vec<MacAddress> addrs)
generates (WifiStatus status);
/**
* API to start publishing the channel map on responder device in an NBD
* cluster.
* Responder device must take this request and schedule broadcasting the
* channel map in a NBD ranging attribute in a Service Discovery Frame.
* DE must automatically remove the ranging attribute from the OTA queue
* after number of Discovery Window specified by numDw where each
* Discovery Window is 512 TUs apart.
*
* @param cmdId command Id to use for this invocation.
* @param params Instance of |RttChannelMap|.
* @return status WifiStatus of the operation.
* Possible status codes:
* |WifiStatusCode.SUCCESS|,
* |WifiStatusCode.ERROR_WIFI_RTT_CONTROLLER_INVALID|,
* |WifiStatusCode.ERROR_INVALID_ARGS|,
* |WifiStatusCode.ERROR_NOT_AVAILABLE|,
* |WifiStatusCode.ERROR_UNKNOWN|
*/
setChannelMap(CommandId cmdId, RttChannelMap params, uint32_t numDw)
generates (WifiStatus status);
/**
* API to clear the channel map on the responder device in an NBD cluster.
* Responder device must cancel future ranging channel request, starting from
* next Discovery Window interval and must also stop broadcasting NBD
* ranging attribute in Service Discovery Frame.
*
* @param cmdId command Id corresponding to the original request.
* @return status WifiStatus of the operation.
* Possible status codes:
* |WifiStatusCode.SUCCESS|,
* |WifiStatusCode.ERROR_WIFI_RTT_CONTROLLER_INVALID|,
* |WifiStatusCode.ERROR_INVALID_ARGS|,
* |WifiStatusCode.ERROR_NOT_AVAILABLE|,
* |WifiStatusCode.ERROR_UNKNOWN|
*/
clearChannelMap(CommandId cmdId) generates (WifiStatus status);
/**
* RTT capabilities of the device.
*
* @return status WifiStatus of the operation.
* Possible status codes:
* |WifiStatusCode.SUCCESS|,
* |WifiStatusCode.ERROR_WIFI_RTT_CONTROLLER_INVALID|,
* |WifiStatusCode.ERROR_UNKNOWN|
* @return capabilities Instance of |RttCapabilities|.
*/
getCapabilities() generates (WifiStatus status, RttCapabilities capabilities);
/**
* Set configuration for debug.
*
* @param type debug level to be set.
* @return status WifiStatus of the operation.
* Possible status codes:
* |WifiStatusCode.SUCCESS|,
* |WifiStatusCode.ERROR_WIFI_RTT_CONTROLLER_INVALID|,
* |WifiStatusCode.ERROR_INVALID_ARGS|,
* |WifiStatusCode.ERROR_NOT_AVAILABLE|,
* |WifiStatusCode.ERROR_UNKNOWN|
*/
setDebugCfg(RttDebugType Type) generates (WifiStatus status);
/**
* Get the debug information.
*
* @return status WifiStatus of the operation.
* Possible status codes:
* |WifiStatusCode.ERROR_WIFI_RTT_CONTROLLER_INVALID|,
* |WifiStatusCode.ERROR_NOT_AVAILABLE|,
* |WifiStatusCode.ERROR_UNKNOWN|
* @return info Instance of |RttDebugInfo|.
*/
getDebugInfo() generates (WifiStatus status, RttDebugInfo info);
/**
* API to configure the LCI(Location civic information).
* Used in RTT Responder mode only.
*
* @param cmdId command Id to use for this invocation.
* @param lci Instance of |RttLciInformation|.
* @return status WifiStatus of the operation.
* Possible status codes:
* |WifiStatusCode.SUCCESS|,
* |WifiStatusCode.ERROR_WIFI_RTT_CONTROLLER_INVALID|,
* |WifiStatusCode.ERROR_INVALID_ARGS|,
* |WifiStatusCode.ERROR_NOT_AVAILABLE|,
* |WifiStatusCode.ERROR_UNKNOWN|
*/
setLci(CommandId cmdId, RttLciInformation lci) generates (WifiStatus status);
/**
* API to configure the LCR(Location civic records).
* Used in RTT Responder mode only.
*
* @param cmdId command Id to use for this invocation.
* @param lcr Instance of |RttLcrInformation|.
* @return status WifiStatus of the operation.
* Possible status codes:
* |WifiStatusCode.SUCCESS|,
* |WifiStatusCode.ERROR_WIFI_RTT_CONTROLLER_INVALID|,
* |WifiStatusCode.ERROR_INVALID_ARGS|,
* |WifiStatusCode.ERROR_NOT_AVAILABLE|,
* |WifiStatusCode.ERROR_UNKNOWN|
*/
setLcr(CommandId cmdId, RttLcrInformation lcr) generates (WifiStatus status);
/**
* Get RTT responder information e.g. WiFi channel to enable responder on.
*
* @return status WifiStatus of the operation.
* Possible status codes:
* |WifiStatusCode.SUCCESS|,
* |WifiStatusCode.ERROR_WIFI_RTT_CONTROLLER_INVALID|,
* |WifiStatusCode.ERROR_NOT_AVAILABLE|,
* |WifiStatusCode.ERROR_UNKNOWN|
* @return info Instance of |RttResponderInfo|.
*/
getResponderInfo() generates (WifiStatus status, RttResponder info);
/**
* Enable RTT responder mode.
*
* @param cmdId command Id to use for this invocation.
* @parm channelHint Hint of the channel information where RTT responder must
* be enabled on.
* @param maxDurationInSeconds Timeout of responder mode.
* @param info Instance of |RttResponderInfo|.
* @return status WifiStatus of the operation.
* Possible status codes:
* |WifiStatusCode.SUCCESS|,
* |WifiStatusCode.ERROR_WIFI_RTT_CONTROLLER_INVALID|,
* |WifiStatusCode.ERROR_INVALID_ARGS|,
* |WifiStatusCode.ERROR_NOT_AVAILABLE|,
* |WifiStatusCode.ERROR_UNKNOWN|
*/
enableResponder(CommandId cmdId,
WifiChannelInfo channelHint,
uint32_t maxDurationSeconds,
RttResponder info)
generates (WifiStatus status);
/**
* Disable RTT responder mode.
*
* @param cmdId command Id corresponding to the original request.
* @return status WifiStatus of the operation.
* Possible status codes:
* |WifiStatusCode.SUCCESS|,
* |WifiStatusCode.ERROR_WIFI_RTT_CONTROLLER_INVALID|,
* |WifiStatusCode.ERROR_NOT_AVAILABLE|,
* |WifiStatusCode.ERROR_UNKNOWN|
*/
disableResponder(CommandId cmdId) generates (WifiStatus status);
};

View File

@@ -0,0 +1,30 @@
/*
* Copyright 2016 The Android Open Source Project
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package android.hardware.wifi@1.0;
/**
* RTT Response and Event Callbacks.
*/
interface IWifiRttControllerEventCallback {
/**
* Invoked when an RTT result is available.
*
* @param cmdId command Id corresponding to the original request.
* @param results Vector of |RttResult| instances.
*/
oneway onResults(CommandId cmdId, vec<RttResult> results);
};

View File

@@ -295,11 +295,11 @@ interface IWifiStaIface extends IWifiIface {
LinkLayerIfaceStats iface;
LinkLayerRadioStats radio;
/**
* Timestamp for each stats sample.
* TimeStamp for each stats sample.
* This is the absolute milliseconds from boot when these stats were
* sampled.
*/
uint32_t timeStampInMs;
TimeStampInMs timeStampInMs;
};
/**

View File

@@ -17,28 +17,19 @@
package android.hardware.wifi@1.0;
interface IWifiStaIfaceEventCallback {
/**
* Information elements contained within the |ScanResult| structure.
* These elements correspond to the IEEE_802.11 standard.
*/
struct InformationElement {
uint8_t id;
vec<uint8_t> data;
};
/**
* Structure describing all the information about a single access point seen
* during the scan.
*/
struct ScanResult {
int64_t timeStampInUs;
TimeStampInUs timeStampInUs;
vec<uint8_t> ssid;
Bssid bssid;
int8_t rssi;
Rssi rssi;
WifiChannelInMhz frequency;
uint16_t beaconPeriodInMs;
uint16_t capability;
vec<InformationElement> informationElements;
vec<WifiInformationElement> informationElements;
};
/**

View File

@@ -82,6 +82,47 @@ typedef uint32_t CommandId;
*/
typedef uint32_t WifiChannelInMhz;
/**
* Channel operating width in Mhz.
*/
enum WifiChannelWidthInMhz : uint32_t {
WIDTH_20 = 0,
WIDTH_40 = 1,
WIDTH_80 = 2,
WIDTH_160 = 3,
WIDTH_80P80 = 4,
WIDTH_5 = 5,
WIDTH_10 = 6,
WIDTH_INVALID = -1
};
/**
* Channel information.
*/
struct WifiChannelInfo {
/**
* Channel width (20, 40, 80, 80+80, 160).
*/
WifiChannelWidthInMhz width;
/**
* Primary 20 MHz channel.
*/
WifiChannelInMhz centerFreq;
/**
* Center frequency (MHz) first segment.
*/
WifiChannelInMhz centerFreq0;
/**
* Center frequency (MHz) second segment.
*/
WifiChannelInMhz centerFreq1;
};
/**
* RSSI information.
*/
typedef int32_t Rssi;
/**
* Mac Address type. 6 octets representing physical address of a device.
*/
@@ -92,6 +133,75 @@ typedef uint8_t[6] MacAddress;
*/
typedef MacAddress Bssid;
/**
* TimeStamp in milliseconds (ms).
*/
typedef uint32_t TimeStampInMs;
/**
* TimeStamp in microseconds (us).
*/
typedef uint64_t TimeStampInUs;
/**
* TimeStamp in picoseconds (ps).
*/
typedef uint64_t TimeSpanInPs;
/**
* Information elements contained within the |ScanResult| structure.
* These elements correspond to the IEEE_802.11 standard.
*/
struct WifiInformationElement {
uint8_t id;
vec<uint8_t> data;
};
enum WifiRatePreamble : uint32_t {
OFDM = 0,
CCK = 1,
HT = 2,
VHT = 3,
RESERVED = 4
};
/**
* Number of spatial streams in VHT/HT.
*/
enum WifiRateNss : uint32_t {
NSS_1x1 = 0,
NSS_2x2 = 1,
NSS_3x3 = 2,
NSS_4x4 = 3
};
/**
* Wifi rate info.
*/
struct WifiRateInfo {
/**
* Preamble used for RTT measurements.
*/
WifiRatePreamble preamble;
/**
* Number of spatial streams.
*/
WifiRateNss nss;
/**
* Bandwidth of channel.
*/
WifiChannelWidthInMhz bw;
/**
* OFDM/CCK rate code would be as per ieee std in the units of 0.5mbps.
* HT/VHT it would be mcs index.
*/
uint8_t rateMcsIdx;
/**
* Bitrate in units of 100 Kbps.
*/
uint32_t bitRateInKbps;
};
/**
* NAN specific types.
* TODO(b/32159498): Move to a separate nan_types.hal.
@@ -1457,3 +1567,468 @@ struct NanTransmitFollowupInd {
NanStatusType reason;
};
/**
* RTT specific types.
* TODO(b/32159498): Move to a separate rtt_types.hal.
*/
/**
* Constants used in the RTT interface.
*/
enum RttConstants : uint32_t {
PREAMBLE_LEGACY = 0x1,
PREAMBLE_HT = 0x2,
PREAMBLE_VHT = 0x4,
BW_5_SUPPORT = 0x1,
BW_10_SUPPORT = 0x2,
BW_20_SUPPORT = 0x4,
BW_40_SUPPORT = 0x8,
BW_80_SUPPORT = 0x10,
BW_160_SUPPORT = 0x20,
};
/**
* Ranging status.
*/
enum RttStatus : uint32_t {
SUCCESS = 0,
/** General failure status */
FAILURE = 1,
/** Target STA does not respond to request */
FAIL_NO_RSP = 2,
/** Request rejected. Applies to 2-sided RTT only */
FAIL_REJECTED = 3,
FAIL_NOT_SCHEDULED_YET = 4,
/** Timing measurement times out */
FAIL_TM_TIMEOUT = 5,
/** Target on different channel, cannot range */
FAIL_AP_ON_DIFF_CHANNEL = 6,
/** Ranging not supported */
FAIL_NO_CAPABILITY = 7,
/** Request aborted for unknown reason */
ABORTED = 8,
/** Invalid T1-T4 timestamp */
FAIL_INVALID_TS = 9,
/** 11mc protocol failed */
FAIL_PROTOCOL = 10,
/** Request could not be scheduled */
FAIL_SCHEDULE = 11,
/** Responder cannot collaborate at time of request */
FAIL_BUSY_TRY_LATER = 12,
/** Bad request args */
INVALID_REQ = 13,
/** WiFi not enabled. */
NO_WIFI = 14,
/** Responder overrides param info, cannot range with new params */
FAIL_FTM_PARAM_OVERRIDE = 15,
};
/**
* RTT peer types.
*/
enum RttPeerType : uint32_t {
AP = 0x1,
STA = 0x2,
P2P_GO = 0x3,
P2P_CLIENT = 0x4,
NAN = 0x5,
};
/**
* RTT Measurement Bandwidth.
*/
enum RttBw : uint32_t {
BW_5MHZ = 0x01,
BW_10MHZ = 0x02,
BW_20MHZ = 0x04,
BW_40MHZ = 0x08,
BW_80MHZ = 0x10,
BW_160MHZ = 0x20,
};
/**
* RTT Measurement Preamble.
*/
enum RttPreamble : uint32_t {
LEGACY = 0x1,
HT = 0x2,
VHT = 0x4,
};
/**
* RTT Types.
*/
enum RttType : uint32_t {
ONE_SIDED = 0x1,
TWO_SIDED = 0x2,
};
/**
* RTT configuration.
*/
struct RttConfig {
/**
* Peer device mac address.
*/
MacAddress addr;
/**
* 1-sided or 2-sided RTT.
*/
RttType type;
/**
* Optional - peer device hint (STA, P2P, AP).
*/
RttPeerType peer;
/**
* Required for STA-AP mode, optional for P2P, NBD etc.
*/
WifiChannelInfo channel;
/**
* Time interval between bursts (units: 100 ms).
* Applies to 1-sided and 2-sided RTT multi-burst requests.
* Range: 0-31, 0: no preference by initiator (2-sided RTT).
*/
uint32_t burstPeriod;
/**
* Total number of RTT bursts to be executed. It will be
* specified in the same way as the parameter "Number of
* Burst Exponent" found in the FTM frame format. It
* applies to both: 1-sided RTT and 2-sided RTT. Valid
* values are 0 to 15 as defined in 802.11mc std.
* 0 means single shot
* The implication of this parameter on the maximum
* number of RTT results is the following:
* for 1-sided RTT: max num of RTT results = (2^num_burst)*(num_frames_per_burst)
* for 2-sided RTT: max num of RTT results = (2^num_burst)*(num_frames_per_burst - 1)
*/
uint32_t numBurst;
/**
* Num of frames per burst.
* Minimum value = 1, Maximum value = 31
* For 2-sided this equals the number of FTM frames
* to be attempted in a single burst. This also
* equals the number of FTM frames that the
* initiator will request that the responder send
* in a single frame.
*/
uint32_t numFramesPerBurst;
/**
* Number of retries for a failed RTT frame.
* Applies to 1-sided RTT only. Minimum value = 0, Maximum value = 3
*/
uint32_t numRetriesPerRttFrame;
/** Following fields are only valid for 2-side RTT. */
/**
* Maximum number of retries that the initiator can
* retry an FTMR frame.
* Minimum value = 0, Maximum value = 3
*/
uint32_t numRetriesPerFtmr;
/**
* Whether to request location civic info or not.
*/
bool mustRequestLci;
/**
* Whether to request location civic records or not.
*/
bool mustRequestLcr;
/**
* Applies to 1-sided and 2-sided RTT. Valid values will
* be 2-11 and 15 as specified by the 802.11mc std for
* the FTM parameter burst duration. In a multi-burst
* request, if responder overrides with larger value,
* the initiator will return failure. In a single-burst
* request if responder overrides with larger value,
* the initiator will sent TMR_STOP to terminate RTT
* at the end of the burst_duration it requested.
*/
uint32_t burstDuration;
/**
* RTT preamble to be used in the RTT frames.
*/
RttPreamble preamble;
/**
* RTT BW to be used in the RTT frames.
*/
RttBw bw;
};
/**
* RTT results.
*/
struct RttResult {
/**
* Peer device mac address.
*/
MacAddress addr;
/**
* Burst number in a multi-burst request.
*/
uint32_t burstNum;
/**
* Total RTT measurement frames attempted.
*/
uint32_t measurementNumber;
/**
* Total successful RTT measurement frames.
*/
uint32_t successNumber;
/**
* Maximum number of "FTM frames per burst" supported by
* the responder STA. Applies to 2-sided RTT only.
* If reponder overrides with larger value:
* - for single-burst request initiator will truncate the
* larger value and send a TMR_STOP after receiving as
* many frames as originally requested.
* - for multi-burst request, initiator will return
* failure right away.
*/
uint8_t numberPerBurstPeer;
/**
* Ranging status.
*/
RttStatus status;
/**
* When status == RTT_STATUS_FAIL_BUSY_TRY_LATER,
* this will be the time provided by the responder as to
* when the request can be tried again. Applies to 2-sided
* RTT only. In sec, 1-31sec.
*/
uint8_t retryAfterDuration;
/**
* RTT type.
*/
RttType type;
/**
* Average rssi in 0.5 dB steps e.g. 143 implies -71.5 dB.
*/
Rssi rssi;
/**
* Rssi spread in 0.5 dB steps e.g. 5 implies 2.5 dB spread (optional).
*/
Rssi rssiSpread;
/**
* 1-sided RTT: TX rate of RTT frame.
* 2-sided RTT: TX rate of initiator's Ack in response to FTM frame.
*/
WifiRateInfo txRate;
/**
* 1-sided RTT: TX rate of Ack from other side.
* 2-sided RTT: TX rate of FTM frame coming from responder.
*/
WifiRateInfo rxRate;
/**
* Round trip time in picoseconds
*/
TimeSpanInPs rtt;
/**
* Rtt standard deviation in picoseconds.
*/
TimeSpanInPs rttSd;
/**
* Difference between max and min rtt times recorded in picoseconds.
*/
TimeSpanInPs rttSpread;
/**
* Distance in mm (optional).
*/
int32_t distanceInMm;
/**
* Standard deviation in mm (optional).
*/
int32_t distanceSdInMm;
/**
* Difference between max and min distance recorded in mm (optional).
*/
int32_t distanceSpreadInMm;
/**
* Time of the measurement (in microseconds since boot).
*/
TimeStampInUs timeStampInUs;
/**
* in ms, actual time taken by the FW to finish one burst
* measurement. Applies to 1-sided and 2-sided RTT.
*/
uint32_t burstDurationInMs;
/**
* Number of bursts allowed by the responder. Applies
* to 2-sided RTT only.
*/
uint32_t negotiatedBurstNum;
/**
* for 11mc only.
*/
WifiInformationElement lci;
/**
* for 11mc only.
*/
WifiInformationElement lcr;
};
/**
* NBD ranging channel map.
*/
struct RttChannelMap {
WifiChannelInMhz[32] availablity;
};
/**
* RTT Capabilities.
*/
struct RttCapabilities {
/**
* if 1-sided rtt data collection is supported.
*/
bool rttOneSidedSupported;
/**
* if ftm rtt data collection is supported.
*/
bool rttFtmSupported;
/**
* if initiator supports LCI request. Applies to 2-sided RTT.
*/
bool lciSupported;
/**
* if initiator supports LCR request. Applies to 2-sided RTT.
*/
bool lcrSupported;
/**
* if 11mc responder mode is supported.
*/
bool responderSupported;
/**
* bit mask indicates what preamble is supported by initiator.
*/
uint8_t preambleSupport;
/**
* bit mask indicates what BW is supported by initiator.
*/
uint8_t bwSupport;
/**
* Draft 11mc spec version supported by chip.
* For instance, version 4.0 must be 40 and version 4.3 must be 43 etc.
*/
uint8_t mcVersion;
};
/**
* Debugging definitions.
*/
enum RttDebugType : uint32_t {
DISABLE,
LOG,
PROTO,
BURST,
ACCURACY,
LOGDETAIL,
};
enum RttDebugFormat : uint32_t {
TXT,
BINARY,
};
/**
* Debug info.
*/
struct RttDebugInfo {
/**
* Version info.
*/
uint32_t version;
/**
* Debug data type.
*/
RttDebugType type;
/**
* Debug data format.
*/
RttDebugFormat format;
/**
* Debug data content.
*/
vec<uint8_t> data;
};
/**
* Structs for setting LCI/LCR information to be provided to a requestor.
*/
enum RttMotionPattern : uint32_t {
/**
* Not expected to change location.
*/
NOT_EXPECTED = 0,
/**
* Expected to change location.
*/
EXPECTED = 1,
/**
* Movement pattern unknown.
*/
UNKNOWN = 2,
};
/**
* Movement pattern unknown.
*/
struct RttLciInformation {
/**
* latitude in degrees * 2^25 , 2's complement.
*/
int64_t latitude;
/**
* longitude in degrees * 2^25 , 2's complement.
*/
int64_t longitude;
/**
* Altitude in units of 1/256 m.
*/
int32_t altitude;
/**
* As defined in Section 2.3.2 of IETF RFC 6225.
*/
uint8_t latitudeUnc;
/**
* As defined in Section 2.3.2 of IETF RFC 6225.
*/
uint8_t longitudeUnc;
/**
* As defined in Section 2.4.5 from IETF RFC 6225.
*/
uint8_t altitudeUnc;
/** Following element for configuring the Z subelement. */
/**
* Motion pattern type.
*/
RttMotionPattern motionPattern;
/**
* Floor in units of 1/16th of floor. 0x80000000 if unknown.
*/
int32_t floor;
/**
* in units of 1/64 m.
*/
int32_t heightAboveFloor;
/**
* in units of 1/64 m. 0 if unknown
*/
int32_t heightUnc;
};
struct RttLcrInformation {
/**
* Country code symbol.
*/
int8_t[2] countryCode;
/**
* Civic info to be copied in FTM frame.
*/
string civicInfo;
};
/***
* RTT Responder information
*/
struct RttResponder {
WifiChannelInfo channel;
RttPreamble preamble;
};