|
@@ -1439,6 +1439,7 @@ enum hdd_tsf_op_result hdd_netbuf_timestamp(qdf_nbuf_t netbuf,
|
|
|
{
|
|
|
struct hdd_adapter *adapter;
|
|
|
struct net_device *net_dev = netbuf->dev;
|
|
|
+ struct skb_shared_hwtstamps hwtstamps;
|
|
|
|
|
|
if (!net_dev)
|
|
|
return HDD_TSF_OP_FAIL;
|
|
@@ -1451,7 +1452,9 @@ enum hdd_tsf_op_result hdd_netbuf_timestamp(qdf_nbuf_t netbuf,
|
|
|
int32_t ret = hdd_get_soctime_from_tsf64time(adapter,
|
|
|
tsf64_time, &soc_time);
|
|
|
if (!ret) {
|
|
|
- netbuf->tstamp = soc_time;
|
|
|
+ hwtstamps.hwtstamp = soc_time;
|
|
|
+ *skb_hwtstamps(netbuf) = hwtstamps;
|
|
|
+ netbuf->tstamp = 0;
|
|
|
return HDD_TSF_OP_SUCC;
|
|
|
}
|
|
|
}
|
|
@@ -1503,7 +1506,7 @@ int hdd_tx_timestamp(qdf_nbuf_t netbuf, uint64_t target_time)
|
|
|
if (!sk)
|
|
|
return -EINVAL;
|
|
|
|
|
|
- if ((skb_shinfo(netbuf)->tx_flags & SKBTX_SW_TSTAMP) &&
|
|
|
+ if ((skb_shinfo(netbuf)->tx_flags & SKBTX_HW_TSTAMP) &&
|
|
|
!(skb_shinfo(netbuf)->tx_flags & SKBTX_IN_PROGRESS)) {
|
|
|
struct sock_exterr_skb *serr;
|
|
|
qdf_nbuf_t new_netbuf;
|
|
@@ -1540,7 +1543,7 @@ int hdd_rx_timestamp(qdf_nbuf_t netbuf, uint64_t target_time)
|
|
|
return 0;
|
|
|
|
|
|
/* reset tstamp when failed */
|
|
|
- netbuf->tstamp = ns_to_ktime(0);
|
|
|
+ netbuf->tstamp = 0;
|
|
|
return -EINVAL;
|
|
|
}
|
|
|
|