diff --git a/cmm/src/ffcontrol.c b/cmm/src/ffcontrol.c
index 4c38e14..b012bae 100644
--- a/cmm/src/ffcontrol.c
+++ b/cmm/src/ffcontrol.c
@@ -1107,6 +1107,13 @@
 
 						continue;
 					}
+					else if (strcasecmp(buf2, "direct_path_tx") == 0)
+					{
+						if (wifi_if)
+							wifi_if->direct_path_tx = atoi(buf3);
+
+						continue;
+					}
 
 					cmm_print(DEBUG_CRIT, "cmmFcParser: Error parsing configuration file.\nUnknown attribut name: %s\n", buf2);
 					ret = -1;
diff --git a/cmm/src/ffcontrol.h b/cmm/src/ffcontrol.h
index f6b4cbb..3e3d90e 100644
--- a/cmm/src/ffcontrol.h
+++ b/cmm/src/ffcontrol.h
@@ -103,6 +103,7 @@
 	unsigned short  used;
 	unsigned int    vapid;
 	unsigned int    direct_path_rx;
+	unsigned int    direct_path_tx;
 	struct interface *wifi_ff_if;
 };
 #endif
diff --git a/cmm/src/module_wifi.c b/cmm/src/module_wifi.c
index e957bd2..1984d84 100644
--- a/cmm/src/module_wifi.c
+++ b/cmm/src/module_wifi.c
@@ -126,7 +126,12 @@
         memcpy( cmd.macaddr, itf->macaddr, 6);
 	
 	cmd.vap_id = itf->wifi_if->vapid;	
-	cmd.direct_path_rx = itf->wifi_if->direct_path_rx;	
+        if (itf->wifi_if->direct_path_rx) {
+          cmd.cmd_flags |= VWD_CMD_ENABLE_DIRECT_PATH_RX;
+        }
+        if (itf->wifi_if->direct_path_tx) {
+          cmd.cmd_flags |= VWD_CMD_ENABLE_DIRECT_PATH_TX;
+        }
         cmm_print(DEBUG_INFO, "%s: mac:%s:%d %x:%x:%x:%x:%x:%x \n", __func__,
                                         itf->ifname, itf->ifindex, itf->macaddr[0], itf->macaddr[1],
                                        itf->macaddr[2],itf->macaddr[3],itf->macaddr[4],itf->macaddr[5]  );
diff --git a/cmm/src/module_wifi.h b/cmm/src/module_wifi.h
index c1b73f3..9037e25 100644
--- a/cmm/src/module_wifi.h
+++ b/cmm/src/module_wifi.h
@@ -29,7 +29,9 @@
 	int32_t		action;
 	int32_t		ifindex;
 	int16_t		vap_id;
-	int16_t		direct_path_rx;
+	uint16_t	cmd_flags;
+#define VWD_CMD_ENABLE_DIRECT_PATH_RX (1 << 0)
+#define VWD_CMD_ENABLE_DIRECT_PATH_TX (1 << 1)
 	char		ifname[12];
 	u_int8_t	macaddr[6];
 } __attribute__((__packed__)) vwd_cmd_t;
diff --git a/pfe_ctrl/pfe_vwd.c b/pfe_ctrl/pfe_vwd.c
index da3f879..f719df7 100644
--- a/pfe_ctrl/pfe_vwd.c
+++ b/pfe_ctrl/pfe_vwd.c
@@ -213,7 +213,7 @@
 			vap_cmd.ifindex = wifi_dev->ifindex;
 			strcpy(vap_cmd.ifname, name);
 			memcpy(vap_cmd.macaddr, wifi_dev->dev_addr, 6);
-			vap_cmd.direct_rx_path = 0;
+			vap_cmd.cmd_flags = 0;
 
 			if (!pfe_vwd_handle_vap(priv, &vap_cmd)){
 				strcpy(priv->conf_vap_names[ii], name);
@@ -2199,8 +2199,8 @@
 	vap = netdev_priv(dev);
 	vap->vapid = cmd->vapid;
 	vap->ifindex = wifi_dev->ifindex;
-	vap->direct_rx_path = cmd->direct_rx_path;
-	vap->direct_tx_path = 0;
+	vap->direct_rx_path = (cmd->cmd_flags & VAP_CMD_ENABLE_DIRECT_PATH_RX) ? 1 : 0;
+	vap->direct_tx_path = (cmd->cmd_flags & VAP_CMD_ENABLE_DIRECT_PATH_TX) ? 1 : 0;
 	memcpy(vap->ifname, wifi_dev->name, 12);
 	memcpy(vap->macaddr, wifi_dev->dev_addr, 6);
 
@@ -2457,7 +2457,7 @@
 
 			vap_cmd.vapid = ii;
 			strcpy(vap_cmd.ifname, priv->conf_vap_names[ii]);
-			vap_cmd.direct_rx_path = 0;
+			vap_cmd.cmd_flags = 0;
 			if ((vap = pfe_vwd_vap_up(priv, &vap_cmd, wifi_dev))) {
 				printk("%s:ADD: name:%s, vapid:%d, direct_rx_path : %s, ifindex:%d, mac:%x:%x:%x:%x:%x:%x\n",
 						__func__, vap->ifname, vap->vapid,
diff --git a/pfe_ctrl/pfe_vwd.h b/pfe_ctrl/pfe_vwd.h
index 7d7aed4..5dbf79b 100644
--- a/pfe_ctrl/pfe_vwd.h
+++ b/pfe_ctrl/pfe_vwd.h
@@ -66,7 +66,9 @@
 #define 	RESET	3
 	int     	ifindex;
 	unsigned short	vapid;
-	unsigned short  direct_rx_path;
+	unsigned short  cmd_flags;
+#define VAP_CMD_ENABLE_DIRECT_PATH_RX (1 << 0)
+#define VAP_CMD_ENABLE_DIRECT_PATH_TX (1 << 1)
 	unsigned char	ifname[12];
 	unsigned char	macaddr[6];
 };
