diff --git a/drivers/staging/vt6656/rxtx.c b/drivers/staging/vt6656/rxtx.c
index a89f7fd..3c92360 100644
--- a/drivers/staging/vt6656/rxtx.c
+++ b/drivers/staging/vt6656/rxtx.c
@@ -28,7 +28,7 @@
  *      vnt_generate_tx_parameter - Generate tx dma required parameter.
  *      csBeacon_xmit - beacon tx function
  *      csMgmt_xmit - management tx function
- *      s_uGetDataDuration - get tx data required duration
+ *      vnt_get_duration_le - get tx data required duration
  *      s_uFillDataHead- fulfill tx data duration header
  *      vnt_get_rtscts_duration_le- get rtx/cts required duration
  *      s_uGetRTSCTSRsvTime- get rts/cts reserved time
@@ -89,7 +89,7 @@
 static __le16 s_uGetRTSCTSRsvTime(struct vnt_private *priv,
 	u8 rsv_type, u8 pkt_type, u32 frame_length, u16 current_rate);
 
-static __le16 s_uGetDataDuration(struct vnt_private *pDevice,
+static __le16 vnt_get_duration_le(struct vnt_private *pDevice,
 	u8 byPktType, int bNeedAck);
 
 static __le16 vnt_get_rtscts_duration_le(struct vnt_private *priv,
@@ -210,7 +210,7 @@
 }
 
 //byFreqType 0: 5GHz, 1:2.4Ghz
-static __le16 s_uGetDataDuration(struct vnt_private *piv,
+static __le16 vnt_get_duration_le(struct vnt_private *piv,
 					u8 pkt_type, int need_ack)
 {
 	u32 ack_time = 0;
@@ -305,8 +305,8 @@
 		buf->duration_a = dur;
 		buf->duration_b = dur;
 	} else {
-		buf->duration_a = s_uGetDataDuration(priv, pkt_type, need_ack);
-		buf->duration_b = s_uGetDataDuration(priv,
+		buf->duration_a = vnt_get_duration_le(priv, pkt_type, need_ack);
+		buf->duration_b = vnt_get_duration_le(priv,
 							PK_TYPE_11B, need_ack);
 	}
 
@@ -332,11 +332,11 @@
 						PK_TYPE_11B, &buf->b);
 
 	/* Get Duration and TimeStamp */
-	buf->duration_a = s_uGetDataDuration(priv, pkt_type, need_ack);
-	buf->duration_b = s_uGetDataDuration(priv, PK_TYPE_11B, need_ack);
+	buf->duration_a = vnt_get_duration_le(priv, pkt_type, need_ack);
+	buf->duration_b = vnt_get_duration_le(priv, PK_TYPE_11B, need_ack);
 
-	buf->duration_a_f0 = s_uGetDataDuration(priv, pkt_type, need_ack);
-	buf->duration_a_f1 = s_uGetDataDuration(priv, pkt_type, need_ack);
+	buf->duration_a_f0 = vnt_get_duration_le(priv, pkt_type, need_ack);
+	buf->duration_a_f1 = vnt_get_duration_le(priv, pkt_type, need_ack);
 
 	buf->time_stamp_off_a = vnt_time_stamp_off(priv, rate);
 	buf->time_stamp_off_b = vnt_time_stamp_off(priv,
@@ -356,10 +356,10 @@
 	/* Get SignalField,ServiceField,Length */
 	vnt_get_phy_field(priv, frame_len, rate, pkt_type, &buf->a);
 	/* Get Duration and TimeStampOff */
-	buf->duration = s_uGetDataDuration(priv, pkt_type, need_ack);
+	buf->duration = vnt_get_duration_le(priv, pkt_type, need_ack);
 
-	buf->duration_f0 = s_uGetDataDuration(priv, pkt_type, need_ack);
-	buf->duration_f1 = s_uGetDataDuration(priv, pkt_type, need_ack);
+	buf->duration_f0 = vnt_get_duration_le(priv, pkt_type, need_ack);
+	buf->duration_f1 = vnt_get_duration_le(priv, pkt_type, need_ack);
 
 	buf->time_stamp_off = vnt_time_stamp_off(priv, rate);
 
@@ -385,7 +385,7 @@
 
 		buf->duration = dur;
 	} else {
-		buf->duration = s_uGetDataDuration(priv, pkt_type, need_ack);
+		buf->duration = vnt_get_duration_le(priv, pkt_type, need_ack);
 	}
 
 	buf->time_stamp_off = vnt_time_stamp_off(priv, rate);
@@ -1027,7 +1027,7 @@
 			PK_TYPE_11A, &short_head->ab);
 
 		/* Get Duration and TimeStampOff */
-		short_head->duration = s_uGetDataDuration(priv,
+		short_head->duration = vnt_get_duration_le(priv,
 							PK_TYPE_11A, false);
 		short_head->time_stamp_off =
 				vnt_time_stamp_off(priv, current_rate);
@@ -1040,7 +1040,7 @@
 					PK_TYPE_11B, &short_head->ab);
 
 		/* Get Duration and TimeStampOff */
-		short_head->duration = s_uGetDataDuration(priv,
+		short_head->duration = vnt_get_duration_le(priv,
 						PK_TYPE_11B, false);
 		short_head->time_stamp_off =
 			vnt_time_stamp_off(priv, current_rate);
