diff --git a/exports/nss_wifi_vdev.h b/exports/nss_wifi_vdev.h
index b62d850..763ceb3 100644
--- a/exports/nss_wifi_vdev.h
+++ b/exports/nss_wifi_vdev.h
@@ -508,13 +508,25 @@
 };
 
 /**
+ * nss_wifi_vdev_wds_info_type
+ *	Specifies the type of WDS notification information.
+ */
+enum wifi_vdev_ext_wds_info_type {
+	NSS_WIFI_VDEV_WDS_TYPE_NONE = 0,
+	NSS_WIFI_VDEV_WDS_TYPE_RX,	/**< Rx WDS entry. */
+	NSS_WIFI_VDEV_WDS_TYPE_MEC	/**< Multicast Tx WDS entry. */
+};
+
+/**
  * nss_wifi_vdev_per_packet_metadata
  *	Payload of per-packet metadata.
  */
 struct nss_wifi_vdev_wds_per_packet_metadata {
-	uint16_t peer_id;	/**< peer id */
-	uint8_t is_sa_valid;	/**< is source address valid */
-	uint8_t reserved;	/**< reserve for alignment */
+	uint16_t peer_id;	/**< Peer ID. */
+	uint8_t is_sa_valid;	/**< Specifies whether source address is valid. */
+	uint8_t reserved;	/**< Reserve bytes for alignment. */
+	enum wifi_vdev_ext_wds_info_type wds_type;
+						/**< WDS message type. */
 };
 
 /**
diff --git a/exports/nss_wifili_if.h b/exports/nss_wifili_if.h
index 331f84e..6705687 100644
--- a/exports/nss_wifili_if.h
+++ b/exports/nss_wifili_if.h
@@ -59,6 +59,8 @@
 				/**< Maximum supported reception types. */
 #define NSS_WIFILI_SOC_PER_PACKET_METADATA_SIZE 60
 				/**< Metadata area total size. */
+#define NSS_WIFILI_MEC_PEER_ID 0xDEAD
+				/**< MEC (Multicast echo check) peer ID. */
 
 /**
  * nss_wifili_wme_stream_classes
@@ -103,6 +105,9 @@
 	NSS_WIFILI_STATS_MSG,
 	NSS_WIFILI_WDS_VENDOR_MSG,
 	NSS_WIFILI_PEER_STATS_MSG,
+	NSS_WIFILI_WDS_PEER_ADD_MSG,
+	NSS_WIFILI_WDS_PEER_DEL_MSG,
+	NSS_WIFILI_WDS_PEER_MAP_MSG,
 	NSS_WIFILI_MAX_MSG
 };
 
@@ -176,7 +181,7 @@
 	NSS_WIFILI_EMSG_HAL_RXEXCP_SRNG_ALLOC_FAIL,
 			/**< Rx exception srng ring allocation failure. */
 	NSS_WIFILI_EMSG_HAL_TX_MEMALLOC_FAIL,
-			/**< Tx hal (hardware Abstraction Layer) srng ring allocation failure. */
+			/**< Tx HAL (hardware abstraction layer) srng ring allocation failure. */
 	NSS_WIFILI_EMSG_HAL_TX_INVLID_POOL_NUM_FAIL,
 			/**< Invalid pool number in initialization message. */
 	NSS_WIFILI_EMSG_HAL_TX_INVALID_PAGE_NUM_FAIL,
@@ -185,6 +190,36 @@
 			/**< Tx descriptor memory allocation failure. */
 	NSS_WIFILI_EMSG_HAL_RX_MEMALLOC_FAIL,
 			/**< Rx memory allocation failure. */
+	NSS_WIFILI_EMSG_PDEV_RXDMA_RING_ALLOC_FAIL,
+			/**< Rx DMA ring allocation failed. */
+	NSS_WIFILI_EMSG_NAWDSEN_PEERID_INVALID,
+			/**< Peer NAWDS enable failure due to invalid peer ID. */
+	NSS_WIFILI_EMSG_NAWDSEN_PEER_NULL,
+			/**< Peer NAWDS enable failure due to peer being null. */
+	NSS_WIFILI_EMSG_NAWDSEN_PEER_CORRUPTED,
+			/**< Peer NAWDS enable failure due to corrupted peer. */
+	NSS_WIFILI_EMSG_WDS_PEER_CFG_FAIL,
+			/**< WDS peer configuration failure. */
+	NSS_WIFILI_EMSG_RESET_NO_STOP,
+			/**< Reset issued without stopping the device. */
+	NSS_WIFILI_EMSG_HAL_SRNG_INVALID_RING_BASE_FAIL,
+			/**< Ring base address is invalid. */
+	NSS_WIFILI_EMSG_PDEV_RX_INIT_FAIL,
+			/**< Pdev Rx initialization failure. */
+	NSS_WIFILI_EMESG_AST_ADD_FAIL,
+			/**< AST entry addition failure for connected peer. */
+	NSS_WIFILI_EMESG_AST_REMOVE_FAIL,
+			/**< AST entry removal failure for connected peer. */
+	NSS_WIFILI_EMESG_WDS_ADD_FAIL,
+			/**< WDS peer AST entry addition failure. */
+	NSS_WIFILI_EMESG_WDS_REMOVE_FAIL,
+			/**< WDS peer AST entry removal failure. */
+	NSS_WIFILI_EMESG_WDS_MAP_FAIL,
+			/**< WDS peer AST entry hardware index mapping failure. */
+	NSS_WIFILI_EMSG_WDS_INVALID_PEERID_FAIL,
+			 /**< Invalid peer id passed in WDS messages. */
+	NSS_WIFILI_EMSG_WDS_DUPLICATE_AST_INDEX_PEER_ID_FAIL,
+		/**< AST entry index is already filled. */
 	NSS_WIFILI_EMSG_UNKNOWN
 			/**< Unknown error message. */
 };
@@ -658,6 +693,25 @@
 			/**< Wifili peer statistics. */
 };
 
+/**
+ * nss_wifili_wds_peer_msg
+ *	Wi-Fi Wireless distribution system(WDS) peer-specific message.
+ */
+struct nss_wifili_wds_peer_msg {
+	uint8_t dest_mac[ETH_ALEN];	/**< MAC address of the destination. */
+	uint8_t peer_mac[ETH_ALEN];	/**< MAC address of the base peer. */
+};
+
+/**
+ * nss_wifili_wds_peer_map_msg
+ *	Wi-Fi Wireless distribution system(WDS) peer-specific message.
+ */
+struct nss_wifili_wds_peer_map_msg {
+	uint8_t dest_mac[ETH_ALEN];	/**< MAC address of the destination. */
+	uint16_t peer_id;			/**< Connected  peer ID for this WDS peer. */
+	uint16_t ast_idx;			/**< AST (address search table) index for this peer in host. */
+	uint8_t reserved[2];		/**< Reserved for 4-byte alignment padding. */
+};
 
 /**
  * nss_wifili_msg
@@ -680,6 +734,10 @@
 				/**< Synchronization statistics. */
 		struct nss_wifili_peer_stats_msg peer_stats;
 				/**< Wifili peer statistics. */
+		struct nss_wifili_wds_peer_msg wdspeermsg;
+				/**< WDS peer-specific message. */
+		struct nss_wifili_wds_peer_map_msg wdspeermapmsg;
+				/**< WDS peer-mapping specific message. */
 	} msg;
 };
 
