1 /* ////////////////////////////////////////////////////////////////////////// */
3 /* Copyright (c) Atmel Corporation. All rights reserved. */
5 /* Module Name: wilc_wlan_if.h */
8 /* ///////////////////////////////////////////////////////////////////////// */
11 #ifndef WILC_WLAN_IF_H
12 #define WILC_WLAN_IF_H
14 /*bug 3887: [AP] Allow Management frames to be passed to the host*/
15 #define WILC_AP_EXTERNAL_MLME
17 #define TCP_ENHANCEMENTS
18 /* #define MEMORY_STATIC */
19 /* #define WILC_FULLY_HOSTING_AP */
20 /* #define USE_OLD_SPI_SW */
23 #include "wilc_oswrapper.h"
24 #include "linux_wlan_common.h"
27 /********************************************
31 ********************************************/
33 #define N_INIT 0x00000001
34 #define N_ERR 0x00000002
35 #define N_TXQ 0x00000004
36 #define N_INTR 0x00000008
37 #define N_RXQ 0x00000010
39 /********************************************
41 * Host Interface Defines
43 ********************************************/
46 #define HIF_SPI BIT(0)
47 #define HIF_SDIO_GPIO_IRQ BIT(2)
50 /********************************************
52 * Tx/Rx Buffer Size Defines
54 ********************************************/
56 #define CE_TX_BUFFER_SIZE (64 * 1024)
57 #define CE_RX_BUFFER_SIZE (384 * 1024)
59 /********************************************
61 * Wlan Interface Defines
63 ********************************************/
66 uint32_t read_write: 1;
75 uint32_t read_write: 1;
77 uint32_t block_mode: 1;
78 uint32_t increment: 1;
87 void (*os_sleep)(uint32_t);
88 void (*os_debug)(uint8_t *);
89 void (*os_lock)(void *);
90 void (*os_unlock)(void *);
91 int (*os_wait)(void *, u32);
92 void (*os_signal)(void *);
94 /*Added by Amr - BugID_4720*/
95 void (*os_spin_lock)(void *, unsigned long *);
96 void (*os_spin_unlock)(void *, unsigned long *);
98 } wilc_wlan_os_func_t;
102 int (*io_init)(void *);
103 void (*io_deinit)(void *);
106 int (*sdio_cmd52)(sdio_cmd52_t *);
107 int (*sdio_cmd53)(sdio_cmd53_t *);
108 int (*sdio_set_max_speed)(void);
109 int (*sdio_set_default_speed)(void);
112 int (*spi_max_speed)(void);
113 int (*spi_tx)(uint8_t *, uint32_t);
114 int (*spi_rx)(uint8_t *, uint32_t);
115 int (*spi_trx)(uint8_t *, uint8_t *, uint32_t);
118 } wilc_wlan_io_func_t;
121 void (*rx_indicate)(uint8_t *, uint32_t, uint32_t);
122 void (*rx_complete)(void);
123 } wilc_wlan_net_func_t;
126 void (*mac_indicate)(int);
127 } wilc_wlan_indicate_func_t;
128 #define WILC_MAC_INDICATE_STATUS 0x1
129 #define WILC_MAC_STATUS_INIT -1
130 #define WILC_MAC_STATUS_READY 0
131 #define WILC_MAC_STATUS_CONNECT 1
133 #define WILC_MAC_INDICATE_SCAN 0x2
138 struct mutex *hif_critical_section;
140 uint32_t tx_buffer_size;
141 void *txq_critical_section;
143 /*Added by Amr - BugID_4720*/
144 void *txq_add_to_head_critical_section;
147 void *txq_wait_event;
149 #if defined(MEMORY_STATIC)
150 uint32_t rx_buffer_size;
152 void *rxq_critical_section;
153 void *rxq_wait_event;
155 void *cfg_wait_event;
156 } wilc_wlan_os_context_t;
159 wilc_wlan_os_context_t os_context;
160 wilc_wlan_os_func_t os_func;
161 wilc_wlan_io_func_t io_func;
162 wilc_wlan_net_func_t net_func;
163 wilc_wlan_indicate_func_t indicate_func;
166 struct tx_complete_data {
167 #ifdef WILC_FULLY_HOSTING_AP
168 struct tx_complete_data *next;
177 typedef void (*wilc_tx_complete_func_t)(void *, int);
179 #define WILC_TX_ERR_NO_BUF (-2)
182 int (*wlan_firmware_download)(const uint8_t *, uint32_t);
183 int (*wlan_start)(void);
184 int (*wlan_stop)(void);
185 int (*wlan_add_to_tx_que)(void *, uint8_t *, uint32_t, wilc_tx_complete_func_t);
186 int (*wlan_handle_tx_que)(uint32_t *);
187 void (*wlan_handle_rx_que)(void);
188 void (*wlan_handle_rx_isr)(void);
189 void (*wlan_cleanup)(void);
190 int (*wlan_cfg_set)(int, uint32_t, uint8_t *, uint32_t, int, uint32_t);
191 int (*wlan_cfg_get)(int, uint32_t, int, uint32_t);
192 int (*wlan_cfg_get_value)(uint32_t, uint8_t *, uint32_t);
193 /*Bug3959: transmitting mgmt frames received from host*/
194 #if defined(WILC_AP_EXTERNAL_MLME) || defined(WILC_P2P)
195 int (*wlan_add_mgmt_to_tx_que)(void *, uint8_t *, uint32_t, wilc_tx_complete_func_t);
197 #ifdef WILC_FULLY_HOSTING_AP
198 int (*wlan_add_data_to_tx_que)(void *, uint8_t *, uint32_t, wilc_tx_complete_func_t);
204 /********************************************
206 * Wlan Configuration ID
208 ********************************************/
210 #define MAX_SSID_LEN 33
211 #define MAX_RATES_SUPPORTED 12
213 #define INFINITE_SLEEP_TIME ((u32)0xFFFFFFFF)
215 #ifdef WILC_PARSE_SCAN_IN_HOST
218 EXT_SUPP_RATES_IE = 50,
219 HT_CAPABILITY_IE = 45,
251 B_ONLY_MODE = 0, /* basic rate: 1, 2 Mbps, otherwise: 5, 11 Mbps */
252 G_ONLY_MODE, /* basic rate: 6, 12, 24 Mbps, otherwise: 9, 18, 36, 48, 54 Mbps */
253 G_MIXED_11B_1_MODE, /* basic rate: 1, 2, 5.5, 11 Mbps, otherwise: all on */
254 G_MIXED_11B_2_MODE, /* basic rate: 1, 2, 5, 11, 6, 12, 24 Mbps, otherwise: all on */
255 } G_OPERATING_MODE_T;
258 G_SHORT_PREAMBLE = 0, /* Short Preamble */
259 G_LONG_PREAMBLE = 1, /* Long Preamble */
260 G_AUTO_PREAMBLE = 2, /* Auto Preamble Selection */
263 #define MAC_CONNECTED 1
264 #define MAC_DISCONNECTED 0
267 #define SCAN_DONE TRUE
283 CHIP_SLEEPING_AUTO = 1,
284 CHIP_SLEEPING_MANUAL = 2
289 ACQUIRE_AND_WAKEUP = 1,
294 RELEASE_ALLOW_SLEEP = 1,
303 WPA_AES_TKIP = 0x69, /* Aes or Tkip */
306 WPA2_AES_TKIP = 0x71, /* Aes or Tkip */
318 SITE_SURVEY_ALL_CH = 1,
338 } RSNA_REKEY_POLICY_T;
342 FILTER_AP_ONLY = 0x01,
343 FILTER_STA_ONLY = 0x02
344 } SCAN_CLASS_FITLER_T;
347 PRI_HIGH_RSSI = 0x00,
353 CH_FILTER_OFF = 0x00,
358 AUTO_PROT = 0, /* Auto */
359 NO_PROT, /* Do not use any protection */
360 ERP_PROT, /* Protect all ERP frame exchanges */
361 HT_PROT, /* Protect all HT frame exchanges */
362 GF_PROT, /* Protect all GF frame exchanges */
363 } N_PROTECTION_MODE_T;
368 } G_PROTECTION_MODE_T;
373 HT_ONLY_20_40MHZ_MODE,
374 } N_OPERATING_MODE_T;
380 DETECT_PROTECT_REPORT = 3,
381 } N_OBSS_DETECTION_T;
384 RTS_CTS_NONHT_PROT = 0, /* RTS-CTS at non-HT rate */
385 FIRST_FRAME_NONHT_PROT, /* First frame at non-HT rate */
386 LSIG_TXOP_PROT, /* LSIG TXOP Protection */
387 FIRST_FRAME_MIXED_PROT, /* First frame at Mixed format */
388 } N_PROTECTION_TYPE_T;
393 MIMO_MODE = 3, /* power save disable */
415 WID_TYPE_FORCE_32BIT = 0xFFFFFFFF
417 } WID_TYPE_T, tenuWIDtype;
424 /* -------------------------------------------------------------- */
425 /* Configuration : Infrastructure Independent Access Point */
426 /* Values to set : 0 1 2 */
427 /* -------------------------------------------------------------- */
428 WID_BSS_TYPE = 0x0000,
431 /* -------------------------------------------------------------- */
432 /* Configuration : 1 2 5.5 11 6 9 12 18 24 36 48 54 */
433 /* Values to set : 1 2 5 11 6 9 12 18 24 36 48 54 */
434 /* -------------------------------------------------------------- */
435 WID_CURRENT_TX_RATE = 0x0001,
438 /* ------------------------------------------------------------------- */
439 /* Configuration(g) : 1 2 3 4 5 6 7 8 9 10 11 12 13 14 */
440 /* Values to set : 1 2 3 4 5 6 7 8 9 10 11 12 13 14 */
441 /* -------------------------------------------------------------------- */
442 WID_CURRENT_CHANNEL = 0x0002,
445 /* -------------------------------------------------------------- */
446 /* Configuration : short long Auto */
447 /* Values to set : 0 1 2 */
448 /* -------------------------------------------------------------- */
449 WID_PREAMBLE = 0x0003,
451 /* 11g operating mode (ignored if 11g not present) */
452 /* -------------------------------------------------------------- */
453 /* Configuration : HighPerf Compat(RSet #1) Compat(RSet #2) */
454 /* Values to set : 1 2 3 */
455 /* -------------------------------------------------------------- */
456 WID_11G_OPERATING_MODE = 0x0004,
458 /* Mac status (response only) */
459 /* -------------------------------------------------------------- */
460 /* Configuration : disconnect connect */
461 /* Values to get : 0 1 */
462 /* -------------------------------------------------------------- */
466 /* -------------------------------------------------------------- */
467 /* Configuration : Passive Scanning Active Scanning */
468 /* Values to set : 0 1 */
469 /* -------------------------------------------------------------- */
470 WID_SCAN_TYPE = 0x0007,
472 /* Key Id (WEP default key Id) */
473 /* -------------------------------------------------------------- */
474 /* Configuration : Any value between 0 to 3 */
475 /* Values to set : Same value. Default is 0 */
476 /* -------------------------------------------------------------- */
480 /* -------------------------------------------------------------- */
481 /* Configuration : QoS Disable WMM Enable */
482 /* Values to set : 0 1 */
483 /* -------------------------------------------------------------- */
484 WID_QOS_ENABLE = 0x000A,
486 /* Power Management */
487 /* ------------------------------------------------------------------ */
488 /* Configuration : NO_POWERSAVE MIN_POWERSAVE MAX_POWERSAVE */
489 /* Values to set : 0 1 2 */
490 /* ------------------------------------------------------------------ */
491 WID_POWER_MANAGEMENT = 0x000B,
493 /* WEP/802 11I Configuration */
494 /* ------------------------------------------------------------------ */
495 /* Configuration : Disable WP40 WP104 WPA-AES WPA-TKIP RSN-AES RSN-TKIP */
496 /* Values (0x) : 00 03 07 29 49 31 51 */
498 /* Configuration : WPA-AES+TKIP RSN-AES+TKIP */
499 /* Values (0x) : 69 71 */
500 /* ------------------------------------------------------------------ */
501 WID_11I_MODE = 0x000C,
503 /* WEP Configuration: Used in BSS STA mode only when WEP is enabled */
504 /* ------------------------------------------------------------------ */
505 /* Configuration : Open System Shared Key Any Type | 802.1x Auth */
506 /* Values (0x) : 01 02 03 | BIT2 */
507 /* ------------------------------------------------------------------ */
508 WID_AUTH_TYPE = 0x000D,
510 /* Site Survey Type */
511 /* -------------------------------------------------------------- */
512 /* Configuration : Values to set */
513 /* Survey 1 Channel : 0 */
514 /* survey all Channels : 1 */
515 /* Disable Site Survey : 2 */
516 /* -------------------------------------------------------------- */
517 WID_SITE_SURVEY = 0x000E,
519 /* Listen Interval */
520 /* -------------------------------------------------------------- */
521 /* Configuration : Any value between 1 to 255 */
522 /* Values to set : Same value. Default is 3 */
523 /* -------------------------------------------------------------- */
524 WID_LISTEN_INTERVAL = 0x000F,
527 /* -------------------------------------------------------------- */
528 /* Configuration : Any value between 1 to 255 */
529 /* Values to set : Same value. Default is 3 */
530 /* -------------------------------------------------------------- */
531 WID_DTIM_PERIOD = 0x0010,
534 /* -------------------------------------------------------------- */
535 /* Configuration : Normal Ack No Ack */
536 /* Values to set : 0 1 */
537 /* -------------------------------------------------------------- */
538 WID_ACK_POLICY = 0x0011,
540 /* Reset MAC (Set only) */
541 /* -------------------------------------------------------------- */
542 /* Configuration : Don't Reset Reset No Request */
543 /* Values to set : 0 1 2 */
544 /* -------------------------------------------------------------- */
547 /* Broadcast SSID Option: Setting this will adhere to "" SSID element */
548 /* ------------------------------------------------------------------ */
549 /* Configuration : Enable Disable */
550 /* Values to set : 1 0 */
551 /* ------------------------------------------------------------------ */
552 WID_BCAST_SSID = 0x0015,
554 /* Disconnect (Station) */
555 /* ------------------------------------------------------------------ */
556 /* Configuration : Association ID */
557 /* Values to set : Association ID */
558 /* ------------------------------------------------------------------ */
559 WID_DISCONNECT = 0x0016,
561 /* 11a Tx Power Level */
562 /* -------------------------------------------------------------------- */
563 /* Configuration : Sets TX Power (Higher the value greater the power) */
564 /* Values to set : Any value between 0 and 63 (inclusive; Default is 48)*/
565 /* -------------------------------------------------------------------- */
566 WID_TX_POWER_LEVEL_11A = 0x0018,
568 /* Group Key Update Policy Selection */
569 /* -------------------------------------------------------------------- */
570 /* Configuration : Disabled timeBased packetBased timePacketBased */
571 /* Values to set : 1 2 3 4 */
572 /* -------------------------------------------------------------------- */
573 WID_REKEY_POLICY = 0x0019,
575 /* Allow Short Slot */
576 /* -------------------------------------------------------------- */
577 /* Configuration : Disallow Short Slot Allow Short Slot */
578 /* (Enable Only Long Slot) (Enable Short Slot if applicable)*/
579 /* Values to set : 0 1 */
580 /* -------------------------------------------------------------- */
581 WID_SHORT_SLOT_ALLOWED = 0x001A,
583 WID_PHY_ACTIVE_REG = 0x001B,
585 /* 11b Tx Power Level */
586 /* -------------------------------------------------------------------- */
587 /* Configuration : Sets TX Power (Higher the value greater the power) */
588 /* Values to set : Any value between 0 and 63 (inclusive; Default is 48)*/
589 /* -------------------------------------------------------------------- */
590 WID_TX_POWER_LEVEL_11B = 0x001D,
593 /* -------------------------------------------------------------------- */
594 /* Configuration : Request default scan */
595 /* Values to set : 0 */
596 /* -------------------------------------------------------------------- */
597 WID_START_SCAN_REQ = 0x001E,
599 /* Rssi (get only) */
600 /* -------------------------------------------------------------------- */
601 /* Configuration : */
602 /* Values to get : Rssi value */
603 /* -------------------------------------------------------------------- */
607 /* -------------------------------------------------------------------- */
608 /* Configuration : Request to join */
609 /* Values to set : index of scan result */
610 /* -------------------------------------------------------------------- */
611 WID_JOIN_REQ = 0x0020,
613 WID_LINKSPEED = 0x0026,
615 /* Enable User Control of TX Power */
616 /* -------------------------------------------------------------------- */
617 /* Configuration : Disable Enable */
618 /* Values to set : 0 1 */
619 /* -------------------------------------------------------------------- */
620 WID_USER_CONTROL_ON_TX_POWER = 0x0027,
622 WID_MEMORY_ACCESS_8BIT = 0x0029,
624 /* Enable Auto RX Sensitivity feature */
625 /* -------------------------------------------------------------------- */
626 /* Configuration : Disable Enable */
627 /* Values to set : 0 1 */
628 /* -------------------------------------------------------------------- */
629 WID_AUTO_RX_SENSITIVITY = 0x0032,
631 /* Receive Buffer Based Ack */
632 /* -------------------------------------------------------------------- */
633 /* Configuration : Disable Enable */
634 /* Values to set : 0 1 */
635 /* -------------------------------------------------------------------- */
636 WID_DATAFLOW_CONTROL = 0x0033,
639 /* -------------------------------------------------------------------- */
640 /* Configuration : Class No filter AP only Station Only */
641 /* Values to set : 0 1 2 */
642 /* Configuration : Priority High Rssi Low Rssi Detect */
643 /* Values to set : 0 0x4 0x08 */
644 /* Configuration : Channel filter off filter on */
645 /* Values to set : 0 0x10 */
646 /* -------------------------------------------------------------------- */
647 WID_SCAN_FILTER = 0x0036,
649 /* Link Loss Threshold (measure in the beacon period) */
650 /* -------------------------------------------------------------------- */
651 /* Configuration : Any value between 10 and 254 (Set to 255 to disable it) */
652 /* Values to set : Same value. Default is 10 */
653 /* -------------------------------------------------------------------- */
654 WID_LINK_LOSS_THRESHOLD = 0x0037,
657 WID_ABORT_RUNNING_SCAN = 0x003E,
659 /* NMAC Character WID list */
660 WID_WPS_START = 0x0043,
662 /* Protection mode for MAC */
663 /* -------------------------------------------------------------- */
664 /* Configuration : Auto No protection ERP HT GF */
665 /* Values to set : 0 1 2 3 4 */
666 /* -------------------------------------------------------------- */
667 WID_11N_PROT_MECH = 0x0080,
669 /* ERP Protection type for MAC */
670 /* -------------------------------------------------------------- */
671 /* Configuration : Self-CTS RTS-CTS */
672 /* Values to set : 0 1 */
673 /* -------------------------------------------------------------- */
674 WID_11N_ERP_PROT_TYPE = 0x0081,
676 /* HT Option Enable */
677 /* -------------------------------------------------------------- */
678 /* Configuration : HT Enable HT Disable */
679 /* Values to set : 1 0 */
680 /* -------------------------------------------------------------- */
681 WID_11N_ENABLE = 0x0082,
683 /* 11n Operating mode (Note that 11g operating mode will also be */
684 /* used in addition to this, if this is set to HT Mixed mode) */
685 /* -------------------------------------------------------------- */
686 /* Configuration : HT Mixed HT Only-20MHz HT Only-20/40MHz */
687 /* Values to set : 1 2 3 */
688 /* -------------------------------------------------------------- */
689 WID_11N_OPERATING_MODE = 0x0083,
691 /* 11n OBSS non-HT STA Detection flag */
692 /* -------------------------------------------------------------- */
693 /* Configuration : Do not detect */
694 /* Values to set : 0 */
695 /* Configuration : Detect, do not protect or report */
696 /* Values to set : 1 */
697 /* Configuration : Detect, protect and do not report */
698 /* Values to set : 2 */
699 /* Configuration : Detect, protect and report to other BSS */
700 /* Values to set : 3 */
701 /* -------------------------------------------------------------- */
702 WID_11N_OBSS_NONHT_DETECTION = 0x0084,
704 /* 11n HT Protection Type */
705 /* -------------------------------------------------------------- */
706 /* Configuration : RTS-CTS First Frame Exchange at non-HT-rate */
707 /* Values to set : 0 1 */
708 /* Configuration : LSIG TXOP First Frame Exchange in Mixed Fmt */
709 /* Values to set : 2 3 */
710 /* -------------------------------------------------------------- */
711 WID_11N_HT_PROT_TYPE = 0x0085,
713 /* 11n RIFS Protection Enable Flag */
714 /* -------------------------------------------------------------- */
715 /* Configuration : Disable Enable */
716 /* Values to set : 0 1 */
717 /* -------------------------------------------------------------- */
718 WID_11N_RIFS_PROT_ENABLE = 0x0086,
721 /* -------------------------------------------------------------- */
722 /* Configuration : Static Dynamic MIMO (Power Save Disabled) */
723 /* Values to set : 1 2 3 */
724 /* -------------------------------------------------------------- */
725 WID_11N_SMPS_MODE = 0x0087,
727 /* Current transmit MCS */
728 /* -------------------------------------------------------------- */
729 /* Configuration : MCS Index for data rate */
730 /* Values to set : 0 to 7 */
731 /* -------------------------------------------------------------- */
732 WID_11N_CURRENT_TX_MCS = 0x0088,
734 WID_11N_PRINT_STATS = 0x0089,
736 /* 11n Short GI Enable Flag */
737 /* -------------------------------------------------------------- */
738 /* Configuration : Disable Enable */
739 /* Values to set : 0 1 */
740 /* -------------------------------------------------------------- */
741 WID_11N_SHORT_GI_ENABLE = 0x008D,
743 /* 11n RIFS Enable Flag */
744 /* -------------------------------------------------------------- */
745 /* Configuration : Disable Enable */
746 /* Values to set : 0 1 */
747 /* -------------------------------------------------------------- */
748 WID_RIFS_MODE = 0x0094,
750 /* TX Abort Feature */
751 /* -------------------------------------------------------------- */
752 /* Configuration : Disable Self CTS Enable Self CTS */
753 /* Values to set : 0 1 */
754 /* Configuration : Disable TX Abort Enable TX Abort */
755 /* Values to set : 2 3 */
756 /* Configuration : Enable HW TX Abort Enable SW TX Abort */
757 /* Values to set : 4 5 */
758 /* -------------------------------------------------------------- */
759 WID_TX_ABORT_CONFIG = 0x00A1,
761 WID_REG_TSSI_11B_VALUE = 0x00A6,
762 WID_REG_TSSI_11G_VALUE = 0x00A7,
763 WID_REG_TSSI_11N_VALUE = 0x00A8,
764 WID_TX_CALIBRATION = 0x00A9,
765 WID_DSCR_TSSI_11B_VALUE = 0x00AA,
766 WID_DSCR_TSSI_11G_VALUE = 0x00AB,
767 WID_DSCR_TSSI_11N_VALUE = 0x00AC,
769 /* Immediate Block-Ack Support */
770 /* -------------------------------------------------------------- */
771 /* Configuration : Disable Enable */
772 /* Values to set : 0 1 */
773 /* -------------------------------------------------------------- */
774 WID_11N_IMMEDIATE_BA_ENABLED = 0x00AF,
776 /* TXOP Disable Flag */
777 /* -------------------------------------------------------------- */
778 /* Configuration : Disable Enable */
779 /* Values to set : 1 0 */
780 /* -------------------------------------------------------------- */
781 WID_11N_TXOP_PROT_DISABLE = 0x00B0,
784 WID_TX_POWER_LEVEL_11N = 0x00B1,
786 /* Custom Character WID list */
787 WID_PC_TEST_MODE = 0x00C8,
789 /* SCAN Complete notification WID*/
790 WID_SCAN_COMPLETE = 0x00C9,
792 #ifdef WILC_AP_EXTERNAL_MLME
793 WID_DEL_BEACON = 0x00CA,
796 WID_LOGTerminal_Switch = 0x00CD,
797 /* EMAC Short WID list */
799 /* -------------------------------------------------------------- */
800 /* Configuration : Any value between 256 to 2347 */
801 /* Values to set : Same value. Default is 2347 */
802 /* -------------------------------------------------------------- */
803 WID_RTS_THRESHOLD = 0x1000,
805 /* Fragmentation Threshold */
806 /* -------------------------------------------------------------- */
807 /* Configuration : Any value between 256 to 2346 */
808 /* Values to set : Same value. Default is 2346 */
809 /* -------------------------------------------------------------- */
810 WID_FRAG_THRESHOLD = 0x1001,
812 WID_SHORT_RETRY_LIMIT = 0x1002,
813 WID_LONG_RETRY_LIMIT = 0x1003,
814 WID_BEACON_INTERVAL = 0x1006,
815 WID_MEMORY_ACCESS_16BIT = 0x1008,
816 WID_RX_SENSE = 0x100B,
817 WID_ACTIVE_SCAN_TIME = 0x100C,
818 WID_PASSIVE_SCAN_TIME = 0x100D,
820 WID_SITE_SURVEY_SCAN_TIME = 0x100E,
821 WID_JOIN_START_TIMEOUT = 0x100F,
822 WID_AUTH_TIMEOUT = 0x1010,
823 WID_ASOC_TIMEOUT = 0x1011,
824 WID_11I_PROTOCOL_TIMEOUT = 0x1012,
825 WID_EAPOL_RESPONSE_TIMEOUT = 0x1013,
827 /* NMAC Short WID list */
828 WID_11N_SIG_QUAL_VAL = 0x1085,
829 WID_CCA_THRESHOLD = 0x1087,
831 /* Custom Short WID list */
833 /* EMAC Integer WID list */
834 WID_FAILED_COUNT = 0x2000,
835 WID_RETRY_COUNT = 0x2001,
836 WID_MULTIPLE_RETRY_COUNT = 0x2002,
837 WID_FRAME_DUPLICATE_COUNT = 0x2003,
838 WID_ACK_FAILURE_COUNT = 0x2004,
839 WID_RECEIVED_FRAGMENT_COUNT = 0x2005,
840 WID_MCAST_RECEIVED_FRAME_COUNT = 0x2006,
841 WID_FCS_ERROR_COUNT = 0x2007,
842 WID_SUCCESS_FRAME_COUNT = 0x2008,
843 WID_HUT_TX_COUNT = 0x200A,
844 WID_TX_FRAGMENT_COUNT = 0x200B,
845 WID_TX_MULTICAST_FRAME_COUNT = 0x200C,
846 WID_RTS_SUCCESS_COUNT = 0x200D,
847 WID_RTS_FAILURE_COUNT = 0x200E,
848 WID_WEP_UNDECRYPTABLE_COUNT = 0x200F,
849 WID_REKEY_PERIOD = 0x2010,
850 WID_REKEY_PACKET_COUNT = 0x2011,
851 WID_1X_SERV_ADDR = 0x2012,
852 WID_STACK_IP_ADDR = 0x2013,
853 WID_STACK_NETMASK_ADDR = 0x2014,
854 WID_HW_RX_COUNT = 0x2015,
855 WID_MEMORY_ADDRESS = 0x201E,
856 WID_MEMORY_ACCESS_32BIT = 0x201F,
857 WID_RF_REG_VAL = 0x2021,
860 /* NMAC Integer WID list */
861 WID_11N_PHY_ACTIVE_REG_VAL = 0x2080,
863 /* Custom Integer WID list */
864 WID_GET_INACTIVE_TIME = 0x2084,
865 WID_SET_DRV_HANDLER = 0X2085,
866 WID_SET_OPERATION_MODE = 0X2086,
867 /* EMAC String WID list */
869 WID_FIRMWARE_VERSION = 0x3001,
870 WID_OPERATIONAL_RATE_SET = 0x3002,
872 WID_WEP_KEY_VALUE = 0x3004,
873 WID_11I_PSK = 0x3008,
874 WID_11E_P_ACTION_REQ = 0x3009,
876 WID_HARDWARE_VERSION = 0x300B,
877 WID_MAC_ADDR = 0x300C,
878 WID_HUT_DEST_ADDR = 0x300D,
879 WID_PHY_VERSION = 0x300F,
880 WID_SUPP_USERNAME = 0x3010,
881 WID_SUPP_PASSWORD = 0x3011,
882 WID_SITE_SURVEY_RESULTS = 0x3012,
883 WID_RX_POWER_LEVEL = 0x3013,
884 WID_DEL_ALL_RX_BA = 0x3014,
885 WID_SET_STA_MAC_INACTIVE_TIME = 0x3017,
886 WID_ADD_WEP_KEY = 0x3019,
887 WID_REMOVE_WEP_KEY = 0x301A,
888 WID_ADD_PTK = 0x301B,
889 WID_ADD_RX_GTK = 0x301C,
890 WID_ADD_TX_GTK = 0x301D,
891 WID_REMOVE_KEY = 0x301E,
892 WID_ASSOC_REQ_INFO = 0x301F,
893 WID_ASSOC_RES_INFO = 0x3020,
894 WID_MANUFACTURER = 0x3026, /*Added for CAPI tool */
895 WID_MODEL_NAME = 0x3027, /*Added for CAPI tool */
896 WID_MODEL_NUM = 0x3028, /*Added for CAPI tool */
897 WID_DEVICE_NAME = 0x3029, /*Added for CAPI tool */
899 /* NMAC String WID list */
900 WID_11N_P_ACTION_REQ = 0x3080,
901 WID_HUT_TEST_ID = 0x3081,
902 WID_PMKID_INFO = 0x3082,
903 WID_FIRMWARE_INFO = 0x3083,
905 WID_REGISTER_FRAME = 0x3084,
907 WID_DEL_ALL_STA = 0x3085,
909 WID_REMAIN_ON_CHAN = 0x3996,
912 WID_SSID_PROBE_REQ = 0x3997,
913 /*BugID_4124 WID to trigger modified Join Request using SSID and BSSID instead of bssListIdx (used by WID_JOIN_REQ)*/
914 WID_JOIN_REQ_EXTENDED = 0x3998,
916 /* BugID 4951: WID toset IP address in firmware */
917 WID_IP_ADDRESS = 0x3999,
921 /* Custom String WID list */
923 /* EMAC Binary WID list */
924 WID_UAPSD_CONFIG = 0x4001,
925 WID_UAPSD_STATUS = 0x4002,
926 WID_WMM_AP_AC_PARAMS = 0x4003,
927 WID_WMM_STA_AC_PARAMS = 0x4004,
928 WID_NETWORK_INFO = 0x4005,
929 WID_STA_JOIN_INFO = 0x4006,
930 WID_CONNECTED_STA_LIST = 0x4007,
932 /* NMAC Binary WID list */
933 WID_11N_AUTORATE_TABLE = 0x4080,
936 /*Added here by Amr - BugID 4134*/
937 WID_SCAN_CHANNEL_LIST = 0x4084,
939 /*BugID_3746 WID to add IE to be added in next probe request*/
940 WID_INFO_ELEMENT_PROBE = 0x4085,
941 /*BugID_3746 WID to add IE to be added in next associate request*/
942 WID_INFO_ELEMENT_ASSOCIATE = 0x4086,
943 WID_ADD_STA = 0X4087,
944 WID_REMOVE_STA = 0X4088,
945 WID_EDIT_STA = 0X4089,
946 WID_ADD_BEACON = 0x408a,
949 WID_SETUP_MULTICAST_FILTER = 0x408b,
951 /* Miscellaneous WIDs */
956 int wilc_wlan_init(wilc_wlan_inp_t *inp, wilc_wlan_oup_t *oup);
958 void wilc_bus_set_max_speed(void);
959 void wilc_bus_set_default_speed(void);
960 uint32_t wilc_get_chipid(uint8_t update);