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

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

wifi(interface): Make methods synchronous am: a52dc732

am: 0f0a37f3

Change-Id: I8e57a4c91cf6aefab8f335a74375814c160a62b2
parents c6d85104 0f0a37f3
Loading
Loading
Loading
Loading
+18 −52
Original line number Diff line number Diff line
@@ -13,26 +13,9 @@ intermediates := $(local-generated-sources-dir)
HIDL := $(HOST_OUT_EXECUTABLES)/hidl-gen$(HOST_EXECUTABLE_SUFFIX)

#
# Build types.hal (FailureReason)
#
GEN := $(intermediates)/android/hardware/wifi/1.0/FailureReason.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.FailureReason

$(GEN): $(LOCAL_PATH)/types.hal
	$(transform-generated-source)
LOCAL_GENERATED_SOURCES += $(GEN)

#
# Build types.hal (FailureReasonCode)
# Build types.hal (IfaceType)
#
GEN := $(intermediates)/android/hardware/wifi/1.0/FailureReasonCode.java
GEN := $(intermediates)/android/hardware/wifi/1.0/IfaceType.java
$(GEN): $(HIDL)
$(GEN): PRIVATE_HIDL := $(HIDL)
$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/types.hal
@@ -40,16 +23,16 @@ $(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.FailureReasonCode
        android.hardware.wifi@1.0::types.IfaceType

$(GEN): $(LOCAL_PATH)/types.hal
	$(transform-generated-source)
LOCAL_GENERATED_SOURCES += $(GEN)

#
# Build types.hal (IfaceType)
# Build types.hal (WifiStatus)
#
GEN := $(intermediates)/android/hardware/wifi/1.0/IfaceType.java
GEN := $(intermediates)/android/hardware/wifi/1.0/WifiStatus.java
$(GEN): $(HIDL)
$(GEN): PRIVATE_HIDL := $(HIDL)
$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/types.hal
@@ -57,16 +40,16 @@ $(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.IfaceType
        android.hardware.wifi@1.0::types.WifiStatus

$(GEN): $(LOCAL_PATH)/types.hal
	$(transform-generated-source)
LOCAL_GENERATED_SOURCES += $(GEN)

#
# Build types.hal (StatusCode)
# Build types.hal (WifiStatusCode)
#
GEN := $(intermediates)/android/hardware/wifi/1.0/StatusCode.java
GEN := $(intermediates)/android/hardware/wifi/1.0/WifiStatusCode.java
$(GEN): $(HIDL)
$(GEN): PRIVATE_HIDL := $(HIDL)
$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/types.hal
@@ -74,7 +57,7 @@ $(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.StatusCode
        android.hardware.wifi@1.0::types.WifiStatusCode

$(GEN): $(LOCAL_PATH)/types.hal
	$(transform-generated-source)
@@ -326,26 +309,9 @@ intermediates := $(local-generated-sources-dir)
HIDL := $(HOST_OUT_EXECUTABLES)/hidl-gen$(HOST_EXECUTABLE_SUFFIX)

#
# Build types.hal (FailureReason)
#
GEN := $(intermediates)/android/hardware/wifi/1.0/FailureReason.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.FailureReason

$(GEN): $(LOCAL_PATH)/types.hal
	$(transform-generated-source)
LOCAL_GENERATED_SOURCES += $(GEN)

#
# Build types.hal (FailureReasonCode)
# Build types.hal (IfaceType)
#
GEN := $(intermediates)/android/hardware/wifi/1.0/FailureReasonCode.java
GEN := $(intermediates)/android/hardware/wifi/1.0/IfaceType.java
$(GEN): $(HIDL)
$(GEN): PRIVATE_HIDL := $(HIDL)
$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/types.hal
@@ -353,16 +319,16 @@ $(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.FailureReasonCode
        android.hardware.wifi@1.0::types.IfaceType

$(GEN): $(LOCAL_PATH)/types.hal
	$(transform-generated-source)
LOCAL_GENERATED_SOURCES += $(GEN)

#
# Build types.hal (IfaceType)
# Build types.hal (WifiStatus)
#
GEN := $(intermediates)/android/hardware/wifi/1.0/IfaceType.java
GEN := $(intermediates)/android/hardware/wifi/1.0/WifiStatus.java
$(GEN): $(HIDL)
$(GEN): PRIVATE_HIDL := $(HIDL)
$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/types.hal
@@ -370,16 +336,16 @@ $(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.IfaceType
        android.hardware.wifi@1.0::types.WifiStatus

$(GEN): $(LOCAL_PATH)/types.hal
	$(transform-generated-source)
LOCAL_GENERATED_SOURCES += $(GEN)

#
# Build types.hal (StatusCode)
# Build types.hal (WifiStatusCode)
#
GEN := $(intermediates)/android/hardware/wifi/1.0/StatusCode.java
GEN := $(intermediates)/android/hardware/wifi/1.0/WifiStatusCode.java
$(GEN): $(HIDL)
$(GEN): PRIVATE_HIDL := $(HIDL)
$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/types.hal
@@ -387,7 +353,7 @@ $(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.StatusCode
        android.hardware.wifi@1.0::types.WifiStatusCode

$(GEN): $(LOCAL_PATH)/types.hal
	$(transform-generated-source)
+20 −8
Original line number Diff line number Diff line
@@ -48,27 +48,39 @@ interface IWifi {

  /**
   * Perform any setup that is required to make use of the module. If the module
   * is already started then this must be a noop. The onStart callback must be
   * called when the setup completes or if the HAL is already started. If the
   * setup fails then onStartFailure must be called.
   * is already started then this must be a noop.
   * Must trigger |IWifiEventCallback.onStart| on success.
   *
   * @return status WifiStatus of the operation.
   *         Possible status codes:
   *         |WifiStatusCode.SUCCESS|,
   *         |WifiStatusCode.NOT_AVAILABLE|,
   *         |WifiStatusCode.UNKNOWN|
   */
  @entry
  @callflow(next={"registerEventCallback", "start", "stop", "getChip"})
  oneway start();
  start() generates (WifiStatus status);

  /**
   * Tear down any state, ongoing commands, etc. If the module is already
   * stopped then this must be a noop. If the HAL is already stopped or it
   * succeeds then onStop must be called. If the teardown fails onFailure must
   * be called. After calling this all IWifiChip objects will be considered
   * invalid.
   * succeeds then onStop must be called. After calling this all IWifiChip
   * objects will be considered invalid.
   * Must trigger |IWifiEventCallback.onStop| on success.
   * Must trigger |IWifiEventCallback.onFailure| on failure.
   *
   * Calling stop then start is a valid way of resetting state in the HAL,
   * driver, firmware.
   *
   * @return status WifiStatus of the operation.
   *         Possible status codes:
   *         |WifiStatusCode.SUCCESS|,
   *         |WifiStatusCode.NOT_AVAILABLE|,
   *         |WifiStatusCode.UNKNOWN|
   */
  @exit
  @callflow(next={"registerEventCallback", "start", "stop"})
  oneway stop();
  stop() generates (WifiStatus status);

  /**
   * Retrieve the list of all chip Id's on the device.
+128 −100
Original line number Diff line number Diff line
@@ -118,16 +118,28 @@ interface IWifiChip {
    vec<ChipIfaceCombination> availableCombinations;
  };

  /**
   * Information about the version of the driver and firmware running this chip.
   *
   * The information in these ASCII strings are vendor specific and does not
   * need to follow any particular format. It may be dumped as part of the bug
   * report.
   */
  struct ChipDebugInfo {
    string driverDescription;
    string firmwareDescription;
  };

  /**
   * Get the id assigned to this chip.
   *
   * @return status Status of the operation.
   * @return status WifiStatus of the operation.
   *         Possible status codes:
   *         |StatusCode.SUCCESS|,
   *         |StatusCode.ERROR_WIFI_CHIP_INVALID|
   *         |WifiStatusCode.SUCCESS|,
   *         |WifiStatusCode.ERROR_WIFI_CHIP_INVALID|
   * @return id Assigned chip Id.
   */
  getId() generates (StatusCode status, ChipId id);
  getId() generates (WifiStatus status, ChipId id);

  /**
   * Requests notifications of significant events on this chip. Multiple calls
@@ -136,257 +148,273 @@ interface IWifiChip {
   *
   * @param callback An instance of the |IWifiChipEventCallback| HIDL interface
   *        object.
   * @return status Status of the operation.
   * @return status WifiStatus of the operation.
   *         Possible status codes:
   *         |StatusCode.SUCCESS|,
   *         |StatusCode.ERROR_WIFI_CHIP_INVALID|
   *         |WifiStatusCode.SUCCESS|,
   *         |WifiStatusCode.ERROR_WIFI_CHIP_INVALID|
   */
  registerEventCallback(IWifiChipEventCallback callback) generates (StatusCode status);
  registerEventCallback(IWifiChipEventCallback callback) generates (WifiStatus status);

  /**
   * Get the set of operation modes that the chip supports.
   *
   * @return status Status of the operation.
   * @return status WifiStatus of the operation.
   *         Possible status codes:
   *         |StatusCode.SUCCESS|,
   *         |StatusCode.ERROR_WIFI_CHIP_INVALID|
   *         |WifiStatusCode.SUCCESS|,
   *         |WifiStatusCode.ERROR_WIFI_CHIP_INVALID|
   * @return modes List of modes supported by the device.
   */
  getAvailableModes() generates (StatusCode status, vec<ChipMode> modes);
  getAvailableModes() generates (WifiStatus status, vec<ChipMode> modes);

  /**
   * Reconfigure the Chip.
   * Must trigger |IWifiChipEventCallback.onChipReconfigured| on sucess,
   * or |IWifiChipEventCallback.onChipReconfigureFailure| on failure.
   * Any existing |IWifiIface| objects must be marked invalid after this call.
   * If this fails then the chips is now in an undefined state and
   * configureChip must be called again.
   * Must trigger |IWifiChipEventCallback.onChipReconfigured| on success.
   * Must trigger |IWifiEventCallback.onFailure| on failure.
   *
   * @param modeId The mode that the chip should switch to, corresponding to the
   *        id property of the target ChipMode.
   * @return status Status of the operation.
   * @return status WifiStatus of the operation.
   *         Possible status codes:
   *         |StatusCode.SUCCESS|,
   *         |StatusCode.ERROR_WIFI_CHIP_INVALID|
   *         |WifiStatusCode.SUCCESS|,
   *         |WifiStatusCode.ERROR_WIFI_CHIP_INVALID|,
   *         |WifiStatusCode.ERROR_NOT_AVAILABLE|,
   *         |WifiStatusCode.ERROR_UNKNOWN|
   */
  configureChip(ChipModeId modeId) generates (StatusCode status);
  configureChip(ChipModeId modeId) generates (WifiStatus status);

  /**
   * Get the current mode that the chip is in.
   *
   * @return modeId The mode that the chip is currently configured to,
   *         corresponding to the id property of the target ChipMode.
   * @return status Status of the operation.
   * @return status WifiStatus of the operation.
   *         Possible status codes:
   *         |StatusCode.SUCCESS|,
   *         |StatusCode.ERROR_WIFI_CHIP_INVALID|
   *         |WifiStatusCode.SUCCESS|,
   *         |WifiStatusCode.ERROR_WIFI_CHIP_INVALID|
   */
  getMode() generates (StatusCode status, ChipModeId modeId);
  getMode() generates (WifiStatus status, ChipModeId modeId);

  /**
   * Request information about the chip.
   * Must trigger |IWifiChipEventCallback.onChipDebugInfoAvailable| on sucess,
   * or |IWifiChipEventCallback.onChipDebugInfoFailure| on failure.
   *
   * @return status Status of the operation.
   * @return status WifiStatus of the operation.
   *         Possible status codes:
   *         |StatusCode.SUCCESS|,
   *         |StatusCode.ERROR_WIFI_CHIP_INVALID|
   *         |WifiStatusCode.SUCCESS|,
   *         |WifiStatusCode.ERROR_WIFI_CHIP_INVALID|,
   *         |WifiStatusCode.ERROR_NOT_AVAILABLE|,
   *         |WifiStatusCode.ERROR_UNKNOWN|
   * @return chipDebugInfo Instance of |ChipDebugInfo|.
   */
  requestChipDebugInfo() generates (StatusCode status);
  requestChipDebugInfo() generates (WifiStatus status, ChipDebugInfo chipDebugInfo);

  /**
   * Request vendor debug info from the driver.
   * Must trigger |IWifiChipEventCallback.onDriverDebugDumpAvailable| on success,
   * or |IWifiChipEventCallback.onDriverDebugDumpFailure| on failure.
   *
   * @return status Status of the operation.
   * @return status WifiStatus of the operation.
   *         Possible status codes:
   *         |StatusCode.SUCCESS|,
   *         |StatusCode.ERROR_WIFI_CHIP_INVALID|
   *         |WifiStatusCode.SUCCESS|,
   *         |WifiStatusCode.ERROR_WIFI_CHIP_INVALID|,
   *         |WifiStatusCode.ERROR_NOT_AVAILABLE|,
   *         |WifiStatusCode.ERROR_UNKNOWN|
   * @param blob Vector of bytes retrieved from the driver.
   */
  requestDriverDebugDump() generates (StatusCode status);
  requestDriverDebugDump() generates (WifiStatus status, vec<uint8_t> blob);

  /**
   * Request vendor debug info from the firmware.
   * Must trigger |IWifiChipEventCallback.onFirmwareDebugDumpAvailable| on
   * success, or |IWifiChipEventCallback.onFirmwareDebugDumpFailure| on failure.
   *
   * @return status Status of the operation.
   * @return status WifiStatus of the operation.
   *         Possible status codes:
   *         |StatusCode.SUCCESS|,
   *         |StatusCode.ERROR_WIFI_CHIP_INVALID|
   *         |WifiStatusCode.SUCCESS|,
   *         |WifiStatusCode.ERROR_WIFI_CHIP_INVALID|,
   *         |WifiStatusCode.ERROR_NOT_AVAILABLE|,
   *         |WifiStatusCode.ERROR_UNKNOWN|
   * @param blob Vector of bytes retrieved from the driver.
   */
  requestFirmwareDebugDump() generates (StatusCode status);
  requestFirmwareDebugDump() generates (WifiStatus status, vec<uint8_t> blob);

  /**
   * Create an AP iface on the chip.
   *
   * Depending on the mode the chip is configured in, the interface creation
   * may fail if we've already reached the maximum allowed
   * (specified in |ChipIfaceCombination|) number of ifaces of the AP type.
   * may fail (code: |ERROR_NOT_SUPPORTED|) if we've already reached the maximum
   * allowed (specified in |ChipIfaceCombination|) number of ifaces of the AP
   * type.
   *
   * @return status Status of the operation.
   * @return status WifiStatus of the operation.
   *         Possible status codes:
   *         |StatusCode.SUCCESS|,
   *         |StatusCode.ERROR_WIFI_CHIP_INVALID|
   *         |WifiStatusCode.SUCCESS|,
   *         |WifiStatusCode.ERROR_WIFI_CHIP_INVALID|,
   *         |WifiStatusCode.ERROR_NOT_SUPPORTED|
   * @return iface HIDL interface object representing the iface if
   *         successful, null otherwise.
   */
  createApIface() generates (StatusCode status, IWifiApIface iface);
  createApIface() generates (WifiStatus status, IWifiApIface iface);

  /**
   * List all the AP iface names configured on the chip.
   * The corresponding |IWifiApIface| object for any iface are
   * retrieved using |getApIface| method.
   *
   * @return status Status of the operation.
   * @return status WifiStatus of the operation.
   *         Possible status codes:
   *         |StatusCode.SUCCESS|,
   *         |StatusCode.ERROR_WIFI_CHIP_INVALID|
   *         |WifiStatusCode.SUCCESS|,
   *         |WifiStatusCode.ERROR_WIFI_CHIP_INVALID|
   * @return ifnames List of all AP iface names on the chip.
   */
  getApIfaceNames() generates (StatusCode status, vec<string> ifnames);
  getApIfaceNames() generates (WifiStatus status, vec<string> ifnames);

  /**
   * Gets a HIDL interface object for the AP Iface corresponding
   * to the provided ifname.
   *
   * @param ifname Name of the iface.
   * @return status Status of the operation.
   * @return status WifiStatus of the operation.
   *         Possible status codes:
   *         |StatusCode.SUCCESS|,
   *         |StatusCode.ERROR_WIFI_CHIP_INVALID|
   *         |WifiStatusCode.SUCCESS|,
   *         |WifiStatusCode.ERROR_WIFI_CHIP_INVALID|
   * @return iface HIDL interface object representing the iface if
   *         it exists, null otherwise.
   */
  getApIface(string ifname) generates (StatusCode status, IWifiApIface iface);
  getApIface(string ifname) generates (WifiStatus status, IWifiApIface iface);

  /**
   * Create a NAN iface on the chip.
   *
   * Depending on the mode the chip is configured in, the interface creation
   * may fail if we've already reached the maximum allowed
   * (specified in |ChipIfaceCombination|) number of ifaces of the NAN type.
   * may fail (code: |ERROR_NOT_SUPPORTED|) if we've already reached the maximum
   * allowed (specified in |ChipIfaceCombination|) number of ifaces of the NAN
   * type.
   *
   * @return status Status of the operation.
   * @return status WifiStatus of the operation.
   *         Possible status codes:
   *         |StatusCode.SUCCESS|,
   *         |StatusCode.ERROR_WIFI_CHIP_INVALID|
   *         |WifiStatusCode.SUCCESS|,
   *         |WifiStatusCode.ERROR_WIFI_CHIP_INVALID|,
   *         |WifiStatusCode.ERROR_NOT_SUPPORTED|
   * @return iface HIDL interface object representing the iface if
   *         successful, null otherwise.
   */
  createNanIface() generates (StatusCode status, IWifiNanIface iface);
  createNanIface() generates (WifiStatus status, IWifiNanIface iface);

  /**
   * List all the NAN iface names configured on the chip.
   * The corresponding |IWifiNanIface| object for any iface are
   * retrieved using |getNanIface| method.
   *
   * @return status Status of the operation.
   * @return status WifiStatus of the operation.
   *         Possible status codes:
   *         |StatusCode.SUCCESS|,
   *         |StatusCode.ERROR_WIFI_CHIP_INVALID|
   *         |WifiStatusCode.SUCCESS|,
   *         |WifiStatusCode.ERROR_WIFI_CHIP_INVALID|
   * @return ifnames List of all NAN iface names on the chip.
   */
  getNanIfaceNames() generates (StatusCode status, vec<string> ifnames);
  getNanIfaceNames() generates (WifiStatus status, vec<string> ifnames);

  /**
   * Gets a HIDL interface object for the NAN Iface corresponding
   * to the provided ifname.
   *
   * @param ifname Name of the iface.
   * @return status Status of the operation.
   * @return status WifiStatus of the operation.
   *         Possible status codes:
   *         |StatusCode.SUCCESS|,
   *         |StatusCode.ERROR_WIFI_CHIP_INVALID|
   *         |WifiStatusCode.SUCCESS|,
   *         |WifiStatusCode.ERROR_WIFI_CHIP_INVALID|
   * @return iface HIDL interface object representing the iface if
   *         it exists, null otherwise.
   */
  getNanIface(string ifname) generates (StatusCode status, IWifiNanIface iface);
  getNanIface(string ifname) generates (WifiStatus status, IWifiNanIface iface);

  /**
   * Create a P2P iface on the chip.
   *
   * Depending on the mode the chip is configured in, the interface creation
   * may fail if we've already reached the maximum allowed
   * (specified in |ChipIfaceCombination|) number of ifaces of the P2P type.
   * may fail (code: |ERROR_NOT_SUPPORTED|) if we've already reached the maximum
   * allowed (specified in |ChipIfaceCombination|) number of ifaces of the P2P
   * type.
   *
   * @return status Status of the operation.
   * @return status WifiStatus of the operation.
   *         Possible status codes:
   *         |StatusCode.SUCCESS|,
   *         |StatusCode.ERROR_WIFI_CHIP_INVALID|
   *         |WifiStatusCode.SUCCESS|,
   *         |WifiStatusCode.ERROR_WIFI_CHIP_INVALID|,
   *         |WifiStatusCode.ERROR_NOT_SUPPORTED|
   * @return iface HIDL interface object representing the iface if
   *         successful, null otherwise.
   */
  createP2pIface() generates (StatusCode status, IWifiP2pIface iface);
  createP2pIface() generates (WifiStatus status, IWifiP2pIface iface);

  /**
   * List all the P2P iface names configured on the chip.
   * The corresponding |IWifiP2pIface| object for any iface are
   * retrieved using |getP2pIface| method.
   *
   * @return status Status of the operation.
   * @return status WifiStatus of the operation.
   *         Possible status codes:
   *         |StatusCode.SUCCESS|,
   *         |StatusCode.ERROR_WIFI_CHIP_INVALID|
   *         |WifiStatusCode.SUCCESS|,
   *         |WifiStatusCode.ERROR_WIFI_CHIP_INVALID|
   * @return ifnames List of all P2P iface names on the chip.
   */
  getP2pIfaceNames() generates (StatusCode status, vec<string> ifnames);
  getP2pIfaceNames() generates (WifiStatus status, vec<string> ifnames);

  /**
   * Gets a HIDL interface object for the P2P Iface corresponding
   * to the provided ifname.
   *
   * @param ifname Name of the iface.
   * @return status Status of the operation.
   * @return status WifiStatus of the operation.
   *         Possible status codes:
   *         |StatusCode.SUCCESS|,
   *         |StatusCode.ERROR_WIFI_CHIP_INVALID|
   *         |WifiStatusCode.SUCCESS|,
   *         |WifiStatusCode.ERROR_WIFI_CHIP_INVALID|
   * @return iface HIDL interface object representing the iface if
   *         it exists, null otherwise.
   */
  getP2pIface(string ifname) generates (StatusCode status, IWifiP2pIface iface);
  getP2pIface(string ifname) generates (WifiStatus status, IWifiP2pIface iface);

  /**
   * Create an STA iface on the chip.
   *
   * Depending on the mode the chip is configured in, the interface creation
   * may fail if we've already reached the maximum allowed
   * (specified in |ChipIfaceCombination|) number of ifaces of the STA type.
   * may fail (code: |ERROR_NOT_SUPPORTED|) if we've already reached the maximum
   * allowed (specified in |ChipIfaceCombination|) number of ifaces of the STA
   * type.
   *
   * @return status Status of the operation.
   * @return status WifiStatus of the operation.
   *         Possible status codes:
   *         |StatusCode.SUCCESS|,
   *         |StatusCode.ERROR_WIFI_CHIP_INVALID|
   *         |WifiStatusCode.SUCCESS|,
   *         |WifiStatusCode.ERROR_WIFI_CHIP_INVALID|,
   *         |WifiStatusCode.ERROR_NOT_SUPPORTED|
   * @return iface HIDL interface object representing the iface if
   *         successful, null otherwise.
   */
  createStaIface() generates (StatusCode status, IWifiStaIface iface);
  createStaIface() generates (WifiStatus status, IWifiStaIface iface);

  /**
   * List all the STA iface names configured on the chip.
   * The corresponding |IWifiStaIface| object for any iface are
   * retrieved using |getStaIface| method.
   *
   * @return status Status of the operation.
   * @return status WifiStatus of the operation.
   *         Possible status codes:
   *         |StatusCode.SUCCESS|,
   *         |StatusCode.ERROR_WIFI_CHIP_INVALID|
   *         |WifiStatusCode.SUCCESS|,
   *         |WifiStatusCode.ERROR_WIFI_CHIP_INVALID|
   * @return ifnames List of all STA iface names on the chip.
   */
  getStaIfaceNames() generates (StatusCode status, vec<string> ifnames);
  getStaIfaceNames() generates (WifiStatus status, vec<string> ifnames);

  /**
   * Gets a HIDL interface object for the STA Iface corresponding
   * to the provided ifname.
   *
   * @param ifname Name of the iface.
   * @return status Status of the operation.
   * @return status WifiStatus of the operation.
   *         Possible status codes:
   *         |StatusCode.SUCCESS|,
   *         |StatusCode.ERROR_WIFI_CHIP_INVALID|
   *         |WifiStatusCode.SUCCESS|,
   *         |WifiStatusCode.ERROR_WIFI_CHIP_INVALID|
   * @return iface HIDL interface object representing the iface if
   *         it exists, null otherwise.
   */
  getStaIface(string ifname) generates (StatusCode status, IWifiStaIface iface);
  getStaIface(string ifname) generates (WifiStatus status, IWifiStaIface iface);

  /**
   * Create a RTTController instance.
@@ -399,11 +427,11 @@ interface IWifiChip {
   *
   * @param boundIface HIDL interface object representing the iface if
   *        the responder must be bound to a specific iface, null otherwise.
   * @return status Status of the operation.
   * @return status WifiStatus of the operation.
   *         Possible status codes:
   *         |StatusCode.SUCCESS|,
   *         |StatusCode.ERROR_WIFI_CHIP_INVALID|
   *         |WifiStatusCode.SUCCESS|,
   *         |WifiStatusCode.ERROR_WIFI_CHIP_INVALID|
   */
  createRttController(IWifiIface boundIface)
      generates (StatusCode status, IWifiRttController rtt);
      generates (WifiStatus status, IWifiRttController rtt);
};
+0 −66

File changed.

Preview size limit exceeded, changes collapsed.

+4 −14

File changed.

Preview size limit exceeded, changes collapsed.

Loading