Lines Matching refs:rxts
86 struct rxts { struct
112 struct list_head rxts; argument
114 struct rxts rx_pool_data[MAX_RXTS];
264 static void phy2rxts(struct phy_rxts *p, struct rxts *rxts) in phy2rxts() argument
271 rxts->ns = p->ns_lo; in phy2rxts()
272 rxts->ns |= (p->ns_hi & 0x3fff) << 16; in phy2rxts()
273 rxts->ns += ((u64)sec) * 1000000000ULL; in phy2rxts()
274 rxts->seqid = p->seqid; in phy2rxts()
275 rxts->msgtype = (p->msgtype >> 12) & 0xf; in phy2rxts()
276 rxts->hash = p->msgtype & 0x0fff; in phy2rxts()
277 rxts->tmo = jiffies + SKB_TIMESTAMP_TIMEOUT; in phy2rxts()
585 static int expired(struct rxts *rxts) in expired() argument
587 return time_after(jiffies, rxts->tmo); in expired()
594 struct rxts *rxts; in prune_rx_ts() local
596 list_for_each_safe(this, next, &dp83640->rxts) { in prune_rx_ts()
597 rxts = list_entry(this, struct rxts, list); in prune_rx_ts()
598 if (expired(rxts)) { in prune_rx_ts()
599 list_del_init(&rxts->list); in prune_rx_ts()
600 list_add(&rxts->list, &dp83640->rxpool); in prune_rx_ts()
803 static int match(struct sk_buff *skb, unsigned int type, struct rxts *rxts) in match() argument
818 if (rxts->msgtype != (msgtype & 0xf)) in match()
822 if (rxts->seqid != seqid) in match()
827 if (rxts->hash != hash) in match()
836 struct rxts *rxts; in decode_rxts() local
854 rxts = list_first_entry(&dp83640->rxpool, struct rxts, list); in decode_rxts()
855 list_del_init(&rxts->list); in decode_rxts()
856 phy2rxts(phy_rxts, rxts); in decode_rxts()
863 if (match(skb, skb_info->ptp_type, rxts)) { in decode_rxts()
867 shhwtstamps->hwtstamp = ns_to_ktime(rxts->ns); in decode_rxts()
868 list_add(&rxts->list, &dp83640->rxpool); in decode_rxts()
875 list_add_tail(&rxts->list, &dp83640->rxts); in decode_rxts()
1317 struct rxts *rxts; in dp83640_rxtstamp() local
1335 list_for_each_safe(this, next, &dp83640->rxts) { in dp83640_rxtstamp()
1336 rxts = list_entry(this, struct rxts, list); in dp83640_rxtstamp()
1337 if (match(skb, type, rxts)) { in dp83640_rxtstamp()
1340 shhwtstamps->hwtstamp = ns_to_ktime(rxts->ns); in dp83640_rxtstamp()
1341 list_del_init(&rxts->list); in dp83640_rxtstamp()
1342 list_add(&rxts->list, &dp83640->rxpool); in dp83640_rxtstamp()
1436 INIT_LIST_HEAD(&dp83640->rxts); in dp83640_probe()