/*
* Copyright (C) 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.
*/
#ifndef __WIFI_HAL_STUB_H__
#define __WIFI_HAL_STUB_H__
#ifdef __cplusplus
extern "C"
{
#endif
#include "wifi_hal.h"
int init_wifi_stub_hal_func_table(wifi_hal_fn *hal_fn);
/* declare all HAL stub API here*/
wifi_error wifi_initialize_stub(wifi_handle *handle);
void wifi_cleanup_stub(wifi_handle handle, wifi_cleaned_up_handler handler);
void wifi_event_loop_stub(wifi_handle handle);
void wifi_get_error_info_stub(wifi_error err, const char **msg);
wifi_error wifi_get_supported_feature_set_stub(wifi_interface_handle handle, feature_set *set);
wifi_error wifi_get_concurrency_matrix_stub(wifi_interface_handle handle, int set_size_max,
feature_set set[], int *set_size);
wifi_error wifi_get_ifaces_stub(wifi_handle handle, int *num_ifaces, wifi_interface_handle **ifaces);
wifi_error wifi_get_iface_name_stub(wifi_interface_handle iface, char *name, size_t size);
wifi_error wifi_set_iface_event_handler_stub(wifi_request_id id, wifi_interface_handle iface,
wifi_event_handler eh);
wifi_error wifi_reset_iface_event_handler_stub(wifi_request_id id, wifi_interface_handle iface);
wifi_error wifi_set_nodfs_flag_stub(wifi_interface_handle handle, u32 nodfs);
wifi_error wifi_set_scanning_mac_oui_stub(wifi_interface_handle handle, unsigned char *oui);
wifi_error wifi_get_supported_channels_stub(wifi_handle handle, int *size, wifi_channel *list);
wifi_error wifi_is_epr_supported_stub(wifi_handle handle);
wifi_error wifi_start_gscan_stub(wifi_request_id id, wifi_interface_handle iface,
wifi_scan_cmd_params params, wifi_scan_result_handler handler);
wifi_error wifi_stop_gscan_stub(wifi_request_id id, wifi_interface_handle iface);
wifi_error wifi_get_cached_gscan_results_stub(wifi_interface_handle iface, byte flush,
int max, wifi_cached_scan_results *results, int *num);
wifi_error wifi_set_bssid_hotlist_stub(wifi_request_id id, wifi_interface_handle iface,
wifi_bssid_hotlist_params params, wifi_hotlist_ap_found_handler handler);
wifi_error wifi_reset_bssid_hotlist_stub(wifi_request_id id, wifi_interface_handle iface);
wifi_error wifi_set_significant_change_handler_stub(wifi_request_id id, wifi_interface_handle iface,
wifi_significant_change_params params, wifi_significant_change_handler handler);
wifi_error wifi_reset_significant_change_handler_stub(wifi_request_id id,
wifi_interface_handle iface);
wifi_error wifi_get_gscan_capabilities_stub(wifi_interface_handle handle,
wifi_gscan_capabilities *capabilities);
wifi_error wifi_set_link_stats_stub(wifi_interface_handle iface, wifi_link_layer_params params);
wifi_error wifi_get_link_stats_stub(wifi_request_id id,
wifi_interface_handle iface, wifi_stats_result_handler handler);
wifi_error wifi_clear_link_stats_stub(wifi_interface_handle iface,
u32 stats_clear_req_mask, u32 *stats_clear_rsp_mask, u8 stop_req, u8 *stop_rsp);
wifi_error wifi_get_valid_channels_stub(wifi_interface_handle handle,
int band, int max_channels, wifi_channel *channels, int *num_channels);
wifi_error wifi_rtt_range_request_stub(wifi_request_id id, wifi_interface_handle iface,
unsigned num_rtt_config, wifi_rtt_config rtt_config[], wifi_rtt_event_handler handler);
wifi_error wifi_rtt_range_cancel_stub(wifi_request_id id, wifi_interface_handle iface,
unsigned num_devices, mac_addr addr[]);
wifi_error wifi_get_rtt_capabilities_stub(wifi_interface_handle iface,
wifi_rtt_capabilities *capabilities);
wifi_error wifi_rtt_get_available_channel_stub(wifi_interface_handle iface,
wifi_channel_info* channel);
wifi_error wifi_enable_responder_stub(wifi_request_id id, wifi_interface_handle iface,
wifi_channel_info channel_hint, unsigned max_duration_seconds,
wifi_channel_info* channel_used);
wifi_error wifi_disable_responder_stub(wifi_request_id id, wifi_interface_handle iface);
wifi_error wifi_set_nodfs_flag_stub(wifi_interface_handle iface, u32 nodfs);
wifi_error wifi_start_logging_stub(wifi_interface_handle iface, u32 verbose_level, u32 flags,
u32 max_interval_sec, u32 min_data_size, char *buffer_name);
wifi_error wifi_set_epno_list_stub(wifi_request_id id, wifi_interface_info *iface,
const wifi_epno_params *params, wifi_epno_handler handler);
wifi_error wifi_reset_epno_list_stub(wifi_request_id id, wifi_interface_info *iface);
wifi_error wifi_set_country_code_stub(wifi_interface_handle iface, const char *code);
wifi_error wifi_get_firmware_memory_dump_stub( wifi_interface_handle iface,
wifi_firmware_memory_dump_handler handler);
wifi_error wifi_set_log_handler_stub(wifi_request_id id, wifi_interface_handle iface,
wifi_ring_buffer_data_handler handler);
wifi_error wifi_reset_log_handler_stub(wifi_request_id id, wifi_interface_handle iface);
wifi_error wifi_set_alert_handler_stub(wifi_request_id id, wifi_interface_handle iface,
wifi_alert_handler handler);
wifi_error wifi_reset_alert_handler_stub(wifi_request_id id, wifi_interface_handle iface);
wifi_error wifi_get_firmware_version_stub(wifi_interface_handle iface, char *buffer,
int buffer_size);
wifi_error wifi_get_ring_buffers_status_stub(wifi_interface_handle iface,
u32 *num_rings, wifi_ring_buffer_status *status);
wifi_error wifi_get_logger_supported_feature_set_stub(wifi_interface_handle iface,
unsigned int *support);
wifi_error wifi_get_ring_data_stub(wifi_interface_handle iface, char *ring_name);
wifi_error wifi_enable_tdls_stub(wifi_interface_handle iface, mac_addr addr,
wifi_tdls_params *params, wifi_tdls_handler handler);
wifi_error wifi_disable_tdls_stub(wifi_interface_handle iface, mac_addr addr);
wifi_error wifi_get_tdls_status_stub(wifi_interface_handle iface, mac_addr addr,
wifi_tdls_status *status);
wifi_error wifi_get_tdls_capabilities_stub(wifi_interface_handle iface,
wifi_tdls_capabilities *capabilities);
wifi_error wifi_get_driver_version_stub(wifi_interface_handle iface, char *buffer,
int buffer_size);
wifi_error wifi_set_country_code_stub(wifi_interface_handle iface, const char *code);
wifi_error wifi_set_bssid_blacklist_stub(wifi_request_id id, wifi_interface_handle iface,
wifi_bssid_params params);
wifi_error wifi_start_sending_offloaded_packet_stub(wifi_request_id id,
wifi_interface_handle iface, u8 *ip_packet, u16 ip_packet_len,
u8 *src_mac_addr, u8 *dst_mac_addr, u32 period_msec);
wifi_error wifi_stop_sending_offloaded_packet_stub(wifi_request_id id, wifi_interface_handle iface);
wifi_error wifi_get_wake_reason_stats_stub(wifi_interface_handle iface,
WLAN_DRIVER_WAKE_REASON_CNT *wifi_wake_reason_cnt);
wifi_error wifi_configure_nd_offload_stub(wifi_interface_handle iface, u8 enable);
wifi_error wifi_nan_enable_request_stub(transaction_id id,
wifi_interface_handle iface,
NanEnableRequest* msg);
wifi_error wifi_nan_disable_request_stub(transaction_id id,
wifi_interface_handle iface);
wifi_error wifi_nan_publish_request_stub(transaction_id id,
wifi_interface_handle iface,
NanPublishRequest* msg);
wifi_error wifi_nan_publish_cancel_request_stub(transaction_id id,
wifi_interface_handle iface,
NanPublishCancelRequest* msg);
wifi_error wifi_nan_subscribe_request_stub(transaction_id id,
wifi_interface_handle iface,
NanSubscribeRequest* msg);
wifi_error wifi_nan_subscribe_cancel_request_stub(transaction_id id,
wifi_interface_handle iface,
NanSubscribeCancelRequest* msg);
wifi_error wifi_nan_transmit_followup_request_stub(transaction_id id,
wifi_interface_handle iface,
NanTransmitFollowupRequest* msg);
wifi_error wifi_nan_stats_request_stub(transaction_id id,
wifi_interface_handle iface,
NanStatsRequest* msg);
wifi_error wifi_nan_config_request_stub(transaction_id id,
wifi_interface_handle iface,
NanConfigRequest* msg);
wifi_error wifi_nan_tca_request_stub(transaction_id id,
wifi_interface_handle iface,
NanTCARequest* msg);
wifi_error wifi_nan_beacon_sdf_payload_request_stub(transaction_id id,
wifi_interface_handle iface,
NanBeaconSdfPayloadRequest* msg);
wifi_error wifi_nan_register_handler_stub(wifi_interface_handle iface,
NanCallbackHandler handlers);
wifi_error wifi_nan_get_version_stub(wifi_handle handle,
NanVersion* version);
wifi_error wifi_nan_get_capabilities_stub(transaction_id id,
wifi_interface_handle iface);
wifi_error wifi_get_packet_filter_capabilities_stub(wifi_interface_handle handle,
u32 *version, u32 *max_len);
wifi_error wifi_set_packet_filter_stub(wifi_interface_handle handle,
const u8 *program, u32 len);
#ifdef __cplusplus
}
#endif
#endif //__WIFI_HAL_STUB_H__