• Jeff Garzik's avatar
    [libata] ata_piix: Consolidate PCS register writing · ea35d29e
    Jeff Garzik authored
    Prior to this patch, the driver would do this for each port:
    	read 8-bit PCS
    	write 8-bit PCS
    	read 8-bit PCS
    	write 8-bit PCS
    
    In the field, flaky behavior has been observed related to this register.
    In particular, these overzealous register writes can cause misdetection
    problems.
    
    Update to do the following once (not once per port) at boot:
    	read 16-bit PCS
    	if needs changing,
    		write 16-bit PCS
    
    And thereafter, we only perform a 'read 16-bit PCS' per port.
    
    This should eliminate all PCS writes in many cases, and be more friendly
    in the cases where we do need to enable ports.
    Signed-off-by: default avatarJeff Garzik <jeff@garzik.org>
    ea35d29e
ata_piix.c 25.5 KB