Hi, > On Sat, Jan 11, 2014 at 07:58:04PM -0800, Loc Ho wrote: >> The flush has to occurred immediately after reading the CI >> register. It can not wrap around the isr routine and issue the flush >> after or before the library ahci isr routine. > > I see. So, you're saying that if PMP support is disabled for the > controller, the driver would need to reimplement only the interrupt > handler? > Yes but Let me summary what overrides are required for this X-Gene SATA controller driver: 1. For Query ID, these two functions - ahci_read_id and ahci_qc_issue requires override. 2. For PMP support, these two functions - ahci_qc_prep and ahci_qc_fill_rtf requires override. 3. For softreset, softreset requires override to add additional flags in call to ahci_exec_polled_cmd. 4. For IRQ and ensure data consistent for read operation, function ahci_interrupt and ahci_port_intr requires override. But it only requires an flush call right after reading from the CI register. 5. For hardreset, no need to explain this one as all SATA drivers require its only method. -Loc -- To unsubscribe from this list: send the line "unsubscribe linux-ide" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html