libata: reimplement reset sequencing