rdesc->particle_size = len;
        rdesc->rsvd0 = 0;
-       rdesc->descriptor_overflow = 0;
-       rdesc->buffer_overflow = 0;
+       rdesc->descriptor_overflow = 1; /* assume error */
+       rdesc->buffer_overflow = 1;     /* assume error */
        rdesc->last_seg = last;
        rdesc->first_seg = first;
        rdesc->result_size = EIP197_RD64_RESULT_SIZE;
        rdesc->data_lo = lower_32_bits(data);
        rdesc->data_hi = upper_32_bits(data);
 
-       /* Clear length & error code in result token */
+       /* Clear length in result token */
        rtoken->packet_length = 0;
-       rtoken->error_code = 0;
+       /* Assume errors - HW will clear if not the case */
+       rtoken->error_code = 0x7fff;
 
        return rdesc;
 }