Add wifi_twt_register_events() HAL api

Currently TWT callback events are registered along with
twt_session_setup(). Add an explicit HAL API to register TWT events.

Bug: 297481123
Test: m
Change-Id: Ia5fd7da70daad32bcb6a8d7c930a1a0b71cfe6a9
diff --git a/include/hardware_legacy/wifi_hal.h b/include/hardware_legacy/wifi_hal.h
index 9de61cc..a154649 100644
--- a/include/hardware_legacy/wifi_hal.h
+++ b/include/hardware_legacy/wifi_hal.h
@@ -1007,6 +1007,16 @@
      */
     wifi_error (*wifi_twt_get_capabilities)(wifi_interface_handle iface,
                                             wifi_twt_capabilities* capabilities);
+
+    /**
+     * Register TWT events before sending any TWT request
+     *
+     * @param wifi_interface_handle:
+     * @param events: TWT events callbacks to register
+     * @return Synchronous wifi_error
+     */
+    wifi_error (*wifi_twt_register_events)(wifi_interface_handle iface, wifi_twt_events events);
+
     /**
      * Setup a TWT session.
      *
@@ -1017,11 +1027,10 @@
      * @param id Identifier for the command. The value 0 is reserved.
      * @param iface Wifi interface handle
      * @param request TWT request parameters
-     * @param events TWT events
      * @return Synchronous wifi_error
     */
     wifi_error (*wifi_twt_session_setup)(wifi_request_id id, wifi_interface_handle iface,
-                                 wifi_twt_request request, wifi_twt_events events);
+                                 wifi_twt_request request);
     /**
      * Update a TWT session.
      *
@@ -1098,7 +1107,7 @@
      * @param TwtCallbackHandler: callback function pointers
      * @return Synchronous wifi_error
      *
-     * Note: This function is deprecated
+     * Note: This function is deprecated by wifi_twt_register_events
      */
     wifi_error (*wifi_twt_register_handler)(wifi_interface_handle iface,
                                             TwtCallbackHandler handler);