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

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

wifi: Stub implementation of WifiChip methods

am: 7d08d7a1

Change-Id: If81d1003542b4131448c11df5a3e7c00a6c00fab
parents dd5c2b89 7d08d7a1
Loading
Loading
Loading
Loading
+84 −4
Original line number Diff line number Diff line
@@ -73,6 +73,13 @@ Return<void> WifiChip::registerEventCallback(
                         event_callback);
}

Return<void> WifiChip::getCapabilities(getCapabilities_cb hidl_status_cb) {
  return validateAndCall(this,
                         WifiStatusCode::ERROR_WIFI_CHIP_INVALID,
                         &WifiChip::getCapabilitiesInternal,
                         hidl_status_cb);
}

Return<void> WifiChip::getAvailableModes(getAvailableModes_cb hidl_status_cb) {
  return validateAndCall(this,
                         WifiStatusCode::ERROR_WIFI_CHIP_INVALID,
@@ -221,6 +228,48 @@ Return<void> WifiChip::createRttController(
                         bound_iface);
}

Return<void> WifiChip::getDebugRingBuffersStatus(
    getDebugRingBuffersStatus_cb hidl_status_cb) {
  return validateAndCall(this,
                         WifiStatusCode::ERROR_WIFI_CHIP_INVALID,
                         &WifiChip::getDebugRingBuffersStatusInternal,
                         hidl_status_cb);
}

Return<void> WifiChip::startLoggingToDebugRingBuffer(
    const hidl_string& ring_name,
    WifiDebugRingBufferVerboseLevel verbose_level,
    uint32_t max_interval_in_sec,
    uint32_t min_data_size_in_bytes,
    startLoggingToDebugRingBuffer_cb hidl_status_cb) {
  return validateAndCall(this,
                         WifiStatusCode::ERROR_WIFI_CHIP_INVALID,
                         &WifiChip::startLoggingToDebugRingBufferInternal,
                         hidl_status_cb,
                         ring_name,
                         verbose_level,
                         max_interval_in_sec,
                         min_data_size_in_bytes);
}

Return<void> WifiChip::forceDumpToDebugRingBuffer(
    const hidl_string& ring_name,
    forceDumpToDebugRingBuffer_cb hidl_status_cb) {
  return validateAndCall(this,
                         WifiStatusCode::ERROR_WIFI_CHIP_INVALID,
                         &WifiChip::forceDumpToDebugRingBufferInternal,
                         hidl_status_cb,
                         ring_name);
}

Return<void> WifiChip::getDebugHostWakeReasonStats(
    getDebugHostWakeReasonStats_cb hidl_status_cb) {
  return validateAndCall(this,
                         WifiStatusCode::ERROR_WIFI_CHIP_INVALID,
                         &WifiChip::getDebugHostWakeReasonStatsInternal,
                         hidl_status_cb);
}

void WifiChip::invalidateAndRemoveAllIfaces() {
  invalidateAndClear(ap_iface_);
  invalidateAndClear(nan_iface_);
@@ -245,11 +294,15 @@ WifiStatus WifiChip::registerEventCallbackInternal(
  return createWifiStatus(WifiStatusCode::SUCCESS);
}

std::pair<WifiStatus, uint32_t> WifiChip::getCapabilitiesInternal() {
  // TODO add implementation
  return {createWifiStatus(WifiStatusCode::SUCCESS), 0};
}

std::pair<WifiStatus, std::vector<IWifiChip::ChipMode>>
WifiChip::getAvailableModesInternal() {
  // TODO add implementation
  return {createWifiStatus(WifiStatusCode::SUCCESS),
          std::vector<IWifiChip::ChipMode>()};
  return {createWifiStatus(WifiStatusCode::SUCCESS), {}};
}

WifiStatus WifiChip::configureChipInternal(uint32_t /* mode_id */) {
@@ -317,8 +370,7 @@ WifiChip::requestFirmwareDebugDumpInternal() {
  if (legacy_status != WIFI_SUCCESS) {
    LOG(ERROR) << "Failed to get firmware debug dump: "
               << legacyErrorToString(legacy_status);
    return {createWifiStatusFromLegacyError(legacy_status),
            std::vector<uint8_t>()};
    return {createWifiStatusFromLegacyError(legacy_status), {}};
  }
  return {createWifiStatus(WifiStatusCode::SUCCESS), firmware_dump};
}
@@ -429,6 +481,34 @@ WifiChip::createRttControllerInternal(const sp<IWifiIface>& bound_iface) {
  rtt_controllers_.emplace_back(rtt);
  return {createWifiStatus(WifiStatusCode::SUCCESS), rtt};
}

std::pair<WifiStatus, std::vector<WifiDebugRingBufferStatus>>
WifiChip::getDebugRingBuffersStatusInternal() {
  // TODO implement
  return {createWifiStatus(WifiStatusCode::SUCCESS), {}};
}

WifiStatus WifiChip::startLoggingToDebugRingBufferInternal(
    const hidl_string& /* ring_name */,
    WifiDebugRingBufferVerboseLevel /* verbose_level */,
    uint32_t /* max_interval_in_sec */,
    uint32_t /* min_data_size_in_bytes */) {
  // TODO implement
  return createWifiStatus(WifiStatusCode::SUCCESS);
}

WifiStatus WifiChip::forceDumpToDebugRingBufferInternal(
    const hidl_string& /* ring_name */) {
  // TODO implement
  return createWifiStatus(WifiStatusCode::SUCCESS);
}

std::pair<WifiStatus, WifiDebugHostWakeReasonStats>
WifiChip::getDebugHostWakeReasonStatsInternal() {
  // TODO implement
  return {createWifiStatus(WifiStatusCode::SUCCESS), {}};
}

}  // namespace implementation
}  // namespace V1_0
}  // namespace wifi
+25 −0
Original line number Diff line number Diff line
@@ -64,6 +64,7 @@ class WifiChip : public IWifiChip {
  Return<void> registerEventCallback(
      const sp<IWifiChipEventCallback>& event_callback,
      registerEventCallback_cb hidl_status_cb) override;
  Return<void> getCapabilities(getCapabilities_cb hidl_status_cb) override;
  Return<void> getAvailableModes(getAvailableModes_cb hidl_status_cb) override;
  Return<void> configureChip(uint32_t mode_id,
                             configureChip_cb hidl_status_cb) override;
@@ -93,6 +94,19 @@ class WifiChip : public IWifiChip {
  Return<void> createRttController(
      const sp<IWifiIface>& bound_iface,
      createRttController_cb hidl_status_cb) override;
  Return<void> getDebugRingBuffersStatus(
      getDebugRingBuffersStatus_cb hidl_status_cb) override;
  Return<void> startLoggingToDebugRingBuffer(
      const hidl_string& ring_name,
      WifiDebugRingBufferVerboseLevel verbose_level,
      uint32_t max_interval_in_sec,
      uint32_t min_data_size_in_bytes,
      startLoggingToDebugRingBuffer_cb hidl_status_cb) override;
  Return<void> forceDumpToDebugRingBuffer(
      const hidl_string& ring_name,
      forceDumpToDebugRingBuffer_cb hidl_status_cb) override;
  Return<void> getDebugHostWakeReasonStats(
      getDebugHostWakeReasonStats_cb hidl_status_cb) override;

 private:
  void invalidateAndRemoveAllIfaces();
@@ -101,6 +115,7 @@ class WifiChip : public IWifiChip {
  std::pair<WifiStatus, ChipId> getIdInternal();
  WifiStatus registerEventCallbackInternal(
      const sp<IWifiChipEventCallback>& event_callback);
  std::pair<WifiStatus, uint32_t> getCapabilitiesInternal();
  std::pair<WifiStatus, std::vector<ChipMode>> getAvailableModesInternal();
  WifiStatus configureChipInternal(uint32_t mode_id);
  std::pair<WifiStatus, uint32_t> getModeInternal();
@@ -127,6 +142,16 @@ class WifiChip : public IWifiChip {
      const hidl_string& ifname);
  std::pair<WifiStatus, sp<IWifiRttController>> createRttControllerInternal(
      const sp<IWifiIface>& bound_iface);
  std::pair<WifiStatus, std::vector<WifiDebugRingBufferStatus>>
  getDebugRingBuffersStatusInternal();
  WifiStatus startLoggingToDebugRingBufferInternal(
      const hidl_string& ring_name,
      WifiDebugRingBufferVerboseLevel verbose_level,
      uint32_t max_interval_in_sec,
      uint32_t min_data_size_in_bytes);
  WifiStatus forceDumpToDebugRingBufferInternal(const hidl_string& ring_name);
  std::pair<WifiStatus, WifiDebugHostWakeReasonStats>
  getDebugHostWakeReasonStatsInternal();

  ChipId chip_id_;
  std::weak_ptr<WifiLegacyHal> legacy_hal_;