Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit e88ab128 authored by Roshan Pius's avatar Roshan Pius Committed by android-build-merger
Browse files

wifi(interface): Rtt controller HIDL interface am: 18eec81a am: 4c0a4e5a

am: b5db64a5

Change-Id: I63495ce35c9d438deba45b0a8e934c858bd36bc6
parents 90bb209b b5db64a5
Loading
Loading
Loading
Loading
+8 −0
Original line number Original line Diff line number Diff line
@@ -16,6 +16,7 @@ genrule {
        "IWifiNanIfaceEventCallback.hal",
        "IWifiNanIfaceEventCallback.hal",
        "IWifiP2pIface.hal",
        "IWifiP2pIface.hal",
        "IWifiRttController.hal",
        "IWifiRttController.hal",
        "IWifiRttControllerEventCallback.hal",
        "IWifiStaIface.hal",
        "IWifiStaIface.hal",
        "IWifiStaIfaceEventCallback.hal",
        "IWifiStaIfaceEventCallback.hal",
    ],
    ],
@@ -31,6 +32,7 @@ genrule {
        "android/hardware/wifi/1.0/WifiNanIfaceEventCallbackAll.cpp",
        "android/hardware/wifi/1.0/WifiNanIfaceEventCallbackAll.cpp",
        "android/hardware/wifi/1.0/WifiP2pIfaceAll.cpp",
        "android/hardware/wifi/1.0/WifiP2pIfaceAll.cpp",
        "android/hardware/wifi/1.0/WifiRttControllerAll.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/WifiStaIfaceAll.cpp",
        "android/hardware/wifi/1.0/WifiStaIfaceEventCallbackAll.cpp",
        "android/hardware/wifi/1.0/WifiStaIfaceEventCallbackAll.cpp",
    ],
    ],
@@ -52,6 +54,7 @@ genrule {
        "IWifiNanIfaceEventCallback.hal",
        "IWifiNanIfaceEventCallback.hal",
        "IWifiP2pIface.hal",
        "IWifiP2pIface.hal",
        "IWifiRttController.hal",
        "IWifiRttController.hal",
        "IWifiRttControllerEventCallback.hal",
        "IWifiStaIface.hal",
        "IWifiStaIface.hal",
        "IWifiStaIfaceEventCallback.hal",
        "IWifiStaIfaceEventCallback.hal",
    ],
    ],
@@ -107,6 +110,11 @@ genrule {
        "android/hardware/wifi/1.0/BnWifiRttController.h",
        "android/hardware/wifi/1.0/BnWifiRttController.h",
        "android/hardware/wifi/1.0/BpWifiRttController.h",
        "android/hardware/wifi/1.0/BpWifiRttController.h",
        "android/hardware/wifi/1.0/BsWifiRttController.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/IWifiStaIface.h",
        "android/hardware/wifi/1.0/IHwWifiStaIface.h",
        "android/hardware/wifi/1.0/IHwWifiStaIface.h",
        "android/hardware/wifi/1.0/BnWifiStaIface.h",
        "android/hardware/wifi/1.0/BnWifiStaIface.h",
+1092 −336

File changed.

Preview size limit exceeded, changes collapsed.

+207 −2
Original line number Original line Diff line number Diff line
@@ -17,13 +17,14 @@
package android.hardware.wifi@1.0;
package android.hardware.wifi@1.0;


import IWifiIface;
import IWifiIface;
import IWifiRttControllerEventCallback;


/**
/**
 * Interface used to perform RTT operations.
 * Interface used to perform RTT(Round trip time) operations.
 */
 */
interface IWifiRttController {
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.
   * @return status WifiStatus of the operation.
   *         Possible status codes:
   *         Possible status codes:
@@ -33,4 +34,208 @@ interface IWifiRttController {
   *         to a specific iface, null otherwise
   *         to a specific iface, null otherwise
   */
   */
  getBoundIface() generates (WifiStatus status, IWifiIface boundIface);
  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);
};
};
+30 −0
Original line number Original line Diff line number Diff line
/*
 * 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);
};
+2 −2
Original line number Original line Diff line number Diff line
@@ -295,11 +295,11 @@ interface IWifiStaIface extends IWifiIface {
    LinkLayerIfaceStats iface;
    LinkLayerIfaceStats iface;
    LinkLayerRadioStats radio;
    LinkLayerRadioStats radio;
    /**
    /**
     * Timestamp for each stats sample.
     * TimeStamp for each stats sample.
     * This is the absolute milliseconds from boot when these stats were
     * This is the absolute milliseconds from boot when these stats were
     * sampled.
     * sampled.
     */
     */
    uint32_t timeStampInMs;
    TimeStampInMs timeStampInMs;
  };
  };


  /**
  /**
Loading