blob: e977ea1f3564d3728d1b76e7cb490ef3692c5480 [file] [log] [blame]
Vinay Krishna Eranna4d055d42013-12-17 17:02:01 +05301/*
2 * Copyright (c) 2012-2013 Qualcomm Atheros, Inc.
3 * All Rights Reserved.
4 * Qualcomm Atheros Confidential and Proprietary.
5 */
6#ifndef __WLAN_HDD_POWER_H
7#define __WLAN_HDD_POWER_H
8
9/**===========================================================================
10
11 \file wlan_hdd_power.h
12
13 \brief Linux HDD Power
14 Copyright 2008 (c) Qualcomm Technologies, Inc.
15 All Rights Reserved.
16 Qualcomm Technologies Confidential and Proprietary.
17
18 ==========================================================================*/
19
20
21/*--------------------------------------------------------------------------
22 * Include Files
23 *------------------------------------------------------------------------*/
24#include "wlan_hdd_main.h"
25
26/*---------------------------------------------------------------------------
27 * Preprocessor definitions and constants
28 *-------------------------------------------------------------------------*/
29 //gEnableSuspend = 1 in INI file implies suspend to standby
30 #define WLAN_MAP_SUSPEND_TO_STANDBY 1
31
32 //gEnableSuspend = 2 in INI file implies suspend to deep sleep
33 #define WLAN_MAP_SUSPEND_TO_DEEP_SLEEP 2
34
35 //gEnableSuspend = 3 in INI file implies suspend to set MCAST/BCAST filter
36 #define WLAN_MAP_SUSPEND_TO_MCAST_BCAST_FILTER 3
37
38 //gEnableDriverStop = 1 implies map driver stop to standby
39 #define WLAN_MAP_DRIVER_STOP_TO_STANDBY 1
40
41 //gEnableDriverStop = 2 implies map sriver stop to deep sleep
42 #define WLAN_MAP_DRIVER_STOP_TO_DEEP_SLEEP 2
43
44 //Maximum time (ms) to wait for standby to complete
45 #define WLAN_WAIT_TIME_STANDBY 3000
46
47 //Maximum time (ms) to wait for full pwr to complete
48 #define WLAN_WAIT_TIME_FULL_PWR 3000
49
50
51/*---------------------------------------------------------------------------
52 * Type declarations
53 *-------------------------------------------------------------------------*/
54
55/*-------------------------------------------------------------------------
56 * Function declarations and documentation
57 * ------------------------------------------------------------------------*/
58 eHalStatus hdd_exit_standby(hdd_context_t *pHddCtx);
59 VOS_STATUS hdd_exit_deep_sleep(hdd_context_t *pHddCtx,
60 hdd_adapter_t* pAdapter);
61 VOS_STATUS hdd_enter_standby(hdd_context_t *pHddCtx);
62 VOS_STATUS hdd_enter_deep_sleep(hdd_context_t *pHddCtx,
63 hdd_adapter_t* pAdapter);
64#ifdef CONFIG_HAS_EARLYSUSPEND
65 VOS_STATUS hdd_wlan_reset(void);
66 VOS_STATUS hdd_wlan_reset_initialization(void) ;
67#endif
68 /* SSR shutdown & re-init functions */
69 VOS_STATUS hdd_wlan_shutdown(void);
70 VOS_STATUS hdd_wlan_re_init(void);
71
72void hdd_conf_mcastbcast_filter(hdd_context_t* pHddCtx, v_BOOL_t setfilter);
73VOS_STATUS hdd_conf_arp_offload(hdd_adapter_t* pAdapter, int fenable);
74/*
75 * Function: hdd_conf_hostoffload
76 * Central function to configure the supported offloads,
77 * either enable or disable them.
78 */
79void hdd_conf_hostoffload(hdd_adapter_t * pAdapter, v_BOOL_t fenable);
80#ifdef WLAN_FEATURE_GTK_OFFLOAD
81void hdd_conf_gtk_offload(hdd_adapter_t *pAdapter, v_BOOL_t fenable);
82#endif
83#ifdef WLAN_NS_OFFLOAD
84void hdd_conf_ns_offload(hdd_adapter_t *pAdapter, int fenable);
85#endif
86#endif // if !defined __WLAN_QCT_DRIVER_H