Add HAL APIs for WiFi CHRE NAN RTT
1. Add new APIs to enable/disable CHRE NAN RTT
2. Add a new API to register callback.
This callback should report events from WLAN driver for CHRE.
Test: New APIs work fine
Bug: 206614765
Change-Id: I8c8ab002064a9556be2e7d3972703bb3255a3a41
diff --git a/wifi/1.6/default/wifi_legacy_hal.h b/wifi/1.6/default/wifi_legacy_hal.h
index 638bfa1..ab21e8e 100644
--- a/wifi/1.6/default/wifi_legacy_hal.h
+++ b/wifi/1.6/default/wifi_legacy_hal.h
@@ -36,6 +36,7 @@
namespace legacy_hal {
// Import all the types defined inside the legacy HAL header files into this
// namespace.
+using ::chre_nan_rtt_state;
using ::frame_info;
using ::frame_type;
using ::FRAME_TYPE_80211_MGMT;
@@ -458,6 +459,12 @@
std::function<void(const TwtDeviceNotify&)> on_device_notify;
};
+// CHRE response and event callbacks struct.
+struct ChreCallbackHandlers {
+ // Callback for CHRE NAN RTT
+ std::function<void(chre_nan_rtt_state)> on_wifi_chre_nan_rtt_state;
+};
+
/**
* Class that encapsulates all legacy HAL interactions.
* This class manages the lifetime of the event loop thread used by legacy HAL.
@@ -670,6 +677,12 @@
std::pair<wifi_error, wifi_radio_combination_matrix*> getSupportedRadioCombinationsMatrix();
+ // CHRE NAN RTT function
+ wifi_error chreNanRttRequest(const std::string& iface_name, bool enable);
+
+ wifi_error chreRegisterHandler(const std::string& iface_name,
+ const ChreCallbackHandlers& handler);
+
private:
// Retrieve interface handles for all the available interfaces.
wifi_error retrieveIfaceHandles();