summaryrefslogtreecommitdiff
path: root/network/wlan/WDI/COMMON/P2P_ProtocolSpec.h
diff options
context:
space:
mode:
authorDaiqian Hu <[email protected]>2016-11-21 08:54:24 +0800
committerDaiqian Hu <[email protected]>2016-11-21 08:54:24 +0800
commita95eaad088f61aa55da9d73015cf1ed86e64a67e (patch)
tree15b498a08a4aee4b7f8b1627d39c965b3aa3ba98 /network/wlan/WDI/COMMON/P2P_ProtocolSpec.h
parent1aa0338ec5418345ea0c383e92b4fa19f7c98425 (diff)
Re-submit for WDI sample driver to GitHub
Submit WDI sample driver to GitHub for RS1.
Diffstat (limited to 'network/wlan/WDI/COMMON/P2P_ProtocolSpec.h')
-rw-r--r--network/wlan/WDI/COMMON/P2P_ProtocolSpec.h125
1 files changed, 125 insertions, 0 deletions
diff --git a/network/wlan/WDI/COMMON/P2P_ProtocolSpec.h b/network/wlan/WDI/COMMON/P2P_ProtocolSpec.h
new file mode 100644
index 00000000..74eb2e58
--- /dev/null
+++ b/network/wlan/WDI/COMMON/P2P_ProtocolSpec.h
@@ -0,0 +1,125 @@
+//---------------------------------------------------------------------------
+//
+// Copyright (c) 2015 Realtek Semiconductor, Inc. All rights reserved.
+//
+//---------------------------------------------------------------------------
+// Description:
+// Defines values specified in the WFA P2P Specification.
+//
+
+#ifndef __INC_P2P_PROTOCOL_SPEC_H
+#define __INC_P2P_PROTOCOL_SPEC_H
+
+#define P2P_WILDCARD_SSID "DIRECT-"
+#define P2P_WILDCARD_SSID_LEN 7
+
+#define P2P_MAX_GO_INTENT 15
+
+typedef enum _P2P_ATTR_ID
+{
+ P2P_ATTR_STATUS = 0,
+ P2P_ATTR_MINOR_REASON_CODE = 1,
+ P2P_ATTR_CAPABILITY = 2,
+ P2P_ATTR_DEVICE_ID = 3,
+ P2P_ATTR_GROUP_OWNER_INTENT = 4,
+ P2P_ATTR_CONFIGURATION_TIMEOUT = 5,
+ P2P_ATTR_LISTEN_CHANNEL = 6,
+ P2P_ATTR_GROUP_BSSID = 7,
+ P2P_ATTR_EXT_LISTEN_TIMING = 8,
+ P2P_ATTR_INTENDED_INTERFACE_ADDRESS = 9,
+ P2P_ATTR_MANAGEABILITY = 10,
+ P2P_ATTR_CHANNEL_LIST = 11,
+ P2P_ATTR_NOTICE_OF_ABSENCE = 12,
+ P2P_ATTR_DEVICE_INFO = 13,
+ P2P_ATTR_GROUP_INFO = 14,
+ P2P_ATTR_GROUP_ID = 15,
+ P2P_ATTR_INTERFACE = 16,
+ P2P_ATTR_OP_CHANNEL= 17,
+ P2P_ATTR_INVITATION_FLAGS = 18,
+ //-----------------------------------------
+ // P2P service addendum
+ P2P_ATTR_RSVD_19 = 19,
+ P2P_ATTR_RSVD_20 = 20,
+ P2P_ATTR_SVC_HASH = 21,
+ P2P_ATTR_SESSION_INFO_DATA_INFO = 22,
+ P2P_ATTR_CONN_CAP_INFO = 23,
+ P2P_ATTR_ADV_ID_INFO = 24,
+ P2P_ATTR_ADV_SVC_INFO = 25,
+ P2P_ATTR_SESSION_ID_INFO = 26,
+ P2P_ATTR_FEATURE_CAP_INFO = 27,
+
+ P2P_ATTR_VENDOR_SPECIFIC = 221
+}P2P_ATTR_ID, *PP2P_ATTR_ID;
+
+
+// Invitation Flags
+#define P2P_INVITATION_FLAGS_TYPE 0x01
+
+// P2P Capability
+#define P2P_DEV_CAP_SERVICE_DISCOVERY BIT0
+#define P2P_DEV_CAP_CLIENT_DISCOVERABILITY BIT1
+#define P2P_DEV_CAP_CONCURRENT_OPER BIT2
+#define P2P_DEV_CAP_INFRA_MANAGED BIT3
+#define P2P_DEV_CAP_DEVICE_LIMIT BIT4
+#define P2P_DEV_CAP_INVITATION_PROCEDURE BIT5
+
+// P2P Capability
+#define P2P_GROUP_CAP_GROUP_OWNER BIT0
+#define P2P_GROUP_CAP_PERSISTENT_GROUP BIT1
+#define P2P_GROUP_CAP_GROUP_LIMIT BIT2
+#define P2P_GROUP_CAP_INTRA_BSS_DIST BIT3
+#define P2P_GROUP_CAP_CROSS_CONN BIT4
+#define P2P_GROUP_CAP_PERSISTENT_RECONN BIT5
+#define P2P_GROUP_CAP_GROUP_FORMATION BIT6
+#define P2P_GROUP_CAP_IP_ADDR_ALLOCATION BIT7
+
+// P2P action frames
+typedef enum _P2P_ACTION_FRAME_TYPES
+{
+ P2P_NOA = 0,
+ P2P_PRESENCE_REQ = 1,
+ P2P_PRESENCE_RSP = 2,
+ P2P_GO_DISC_REQ = 3
+}P2P_ACTION_FRAME_TYPES, *PP2P_ACTION_FRAME_TYPES;
+
+// P2P public action frames
+typedef enum _P2P_PUBLIC_ACTION_FRAME_TYPES
+{
+ P2P_GO_NEG_REQ = 0,
+ P2P_GO_NEG_RSP = 1,
+ P2P_GO_NEG_CONF = 2,
+ P2P_INVITATION_REQ = 3,
+ P2P_INVITATION_RSP = 4,
+ P2P_DEV_DISC_REQ = 5,
+ P2P_DEV_DISC_RSP = 6,
+ P2P_PROV_DISC_REQ = 7,
+ P2P_PROV_DISC_RSP = 8
+}P2P_PUBLIC_ACTION_FRAME_TYPES, *PP2P_PUBLIC_ACTION_FRAME_TYPES;
+
+#define OUI_WFA 0x506F9A
+#define P2P_IE_VENDOR_TYPE 0x506f9a09
+
+#define P2P_SC_SUCCESS (u1Byte)0
+#define P2P_SC_FAIL_INFO_CURRENTLY_UNAVAILABLE (u1Byte)1
+#define P2P_SC_FAIL_INCOMPATIBLE_PARAMS (u1Byte)2
+#define P2P_SC_FAIL_LIMIT_REACHED (u1Byte)3
+#define P2P_SC_FAIL_INVALID_PARAMS (u1Byte)4
+#define P2P_SC_FAIL_UNABLE_TO_ACCOMMODATE (u1Byte)5
+#define P2P_SC_FAIL_PREV_PROTOCOL_ERROR (u1Byte)6
+#define P2P_SC_FAIL_NO_COMMON_CHANNELS (u1Byte)7
+#define P2P_SC_FAIL_UNKNOWN_GROUP (u1Byte)8
+#define P2P_SC_FAIL_BOTH_GO_INTENT_15 (u1Byte)9
+#define P2P_SC_FAIL_INCOMPATIBLE_PROV_METHOD (u1Byte)10
+#define P2P_SC_FAIL_REJECTED_BY_USER (u1Byte)11
+
+#define P2P_SC_FAIL_COMMON_CHANNEL_NOT_ARRIVED (u1Byte)200
+#define P2P_SC_FAIL_TIMEOUT_WAITING_FOR_GON_RSP (u1Byte)201
+#define P2P_SC_FAIL_TIMEOUT_WAITING_FOR_GON_CONFIRM (u1Byte)202
+#define P2P_SC_FAIL_TIMEOUT_WAITING_FOR_GO_BEACON (u1Byte)203
+#define P2P_SC_FAIL_TIMEOUT_WAITING_FOR_DEVICE_DISCOVERABILITY_RSP (u1Byte)204
+#define P2P_SC_FAIL_TIMEOUT_WAITING_FOR_PROVISION_DISCOVERY_RSP (u1Byte)205
+#define P2P_SC_FAIL_TIMEOUT_WAITING_FOR_INVITATION_RSP (u1Byte)206
+#define P2P_SC_FAIL_FAIL_PROVISION_DISCOVERY_FAILED (u1Byte)207
+#define P2P_SC_FAIL_FAIL_SERVICE_DISCOVERY_FAILED (u1Byte)208
+
+#endif // #ifndef __INC_P2P_PROTOCOL_SPEC_H