if (!xfer->ptp_sts)
                return;
 
-       if (xfer->timestamped_pre)
+       if (xfer->timestamped)
                return;
 
-       if (progress < xfer->ptp_sts_word_pre)
+       if (progress > xfer->ptp_sts_word_pre)
                return;
 
        /* Capture the resolution of the timestamp */
        xfer->ptp_sts_word_pre = progress;
 
-       xfer->timestamped_pre = true;
-
        if (irqs_off) {
                local_irq_save(ctlr->irq_flags);
                preempt_disable();
        if (!xfer->ptp_sts)
                return;
 
-       if (xfer->timestamped_post)
+       if (xfer->timestamped)
                return;
 
        if (progress < xfer->ptp_sts_word_post)
        /* Capture the resolution of the timestamp */
        xfer->ptp_sts_word_post = progress;
 
-       xfer->timestamped_post = true;
+       xfer->timestamped = true;
 }
 EXPORT_SYMBOL_GPL(spi_take_timestamp_post);
 
                }
        }
 
-       if (unlikely(ctlr->ptp_sts_supported)) {
-               list_for_each_entry(xfer, &mesg->transfers, transfer_list) {
-                       WARN_ON_ONCE(xfer->ptp_sts && !xfer->timestamped_pre);
-                       WARN_ON_ONCE(xfer->ptp_sts && !xfer->timestamped_post);
-               }
-       }
+       if (unlikely(ctlr->ptp_sts_supported))
+               list_for_each_entry(xfer, &mesg->transfers, transfer_list)
+                       WARN_ON_ONCE(xfer->ptp_sts && !xfer->timestamped);
 
        spi_unmap_msg(ctlr, mesg);