[LinuxPPS] 10 May 00:15 - sata_nv: fix ADMA freeze/thaw/irq_clear issues

linuxpps: Robert Hancock <> webmaster at enneenne.com
Fri May 11 23:45:12 CEST 2007


sata_nv: fix ADMA freeze/thaw/irq_clear issues  
  
This patch fixes some problems with ADMA-capable controllers with  
regard to freeze, thaw and irq_clear libata callbacks. Freeze and  
thaw didn't switch the ADMA-specific interrupts on or off, and more  
critically the irq_clear function didn't respect the restriction that  
the notifier clear registers for both ports have to be written at  
the same time even when only one port is being cleared. This could  
result in timeouts on one port when error handling (i.e. as a result  
of hotplug) occurred on the other port.  
  
As well, this fixes some issues in the interrupt handler: we shouldn't  
check any ADMA status if the port has ADMA switched off because of  
an ATAPI device, and it also checks to see if any ADMA interrupt has  
been raised even when we are in port-register mode.  
  
Signed-off-by: Robert Hancock   
Signed-off-by: Jeff Garzik   
  
drivers/ata/sata_nv.c

URL: http://gitweb.enneenne.com/?p=linuxpps;a=commit;h=53014e2526dff68628adb11c44bd1e8f2a2a9ae9



More information about the LinuxPPS mailing list