Patch not signed off since I haven't tested this at all.
I would appreciate test results from using this patch on boards which have both SATA controller(s) and one or more PATA controllers in compatibility (AKA legacy) mode.
Previously it was not possible to boot from a drive on a PATA controller in compat mode when there were PCI devices in native mode (SATA always are) on lower devfn numbers. Native mode devices were basically still assumed to use the legacy IO ports in the code looking up IO ports for compat devices.
Please set DEBUG_IDE=1 in Config and send output to me or the list.
Thanks!
//Peter