|
@@ -163,6 +163,21 @@ void peak_usb_get_ts_tv(struct peak_time_ref *time_ref, u32 ts,
|
|
|
}
|
|
|
}
|
|
|
|
|
|
+/*
|
|
|
+ * post received skb after having set any hw timestamp
|
|
|
+ */
|
|
|
+int peak_usb_netif_rx(struct sk_buff *skb,
|
|
|
+ struct peak_time_ref *time_ref, u32 ts_low, u32 ts_high)
|
|
|
+{
|
|
|
+ struct skb_shared_hwtstamps *hwts = skb_hwtstamps(skb);
|
|
|
+ struct timeval tv;
|
|
|
+
|
|
|
+ peak_usb_get_ts_tv(time_ref, ts_low, &tv);
|
|
|
+ hwts->hwtstamp = timeval_to_ktime(tv);
|
|
|
+
|
|
|
+ return netif_rx(skb);
|
|
|
+}
|
|
|
+
|
|
|
/*
|
|
|
* callback for bulk Rx urb
|
|
|
*/
|