android_kernel_xiaomi_sm8350/drivers/pci
Jesse Barnes 2bd0fa3b62 [PATCH] add boot option to control Intel SATA/PATA combined mode
Combined mode sucks.  Especially when both libata and the legacy IDE
drivers try to drive ports on the same device, since that makes DMA
rather difficult.

This patch addresses the problem by allowing the user to control which
driver binds to the ports in a combined mode configuration.  In many
cases, they'll probably want the libata driver to control both ports
since it can use DMA for talking with ATAPI devices (when
libata.atapi_enabled=1 of course).  It also allows the user to get old
school behavior by letting the legacy IDE driver bind to both ports.
But neither is forced, the patch doesn't change current behavior unless
one of combined_mode=ide or combined_mode=libata is passed
on the boot line.  Either of those options may require you to access
your devices via different device nodes (/dev/hd* in the ide case
and /dev/sd* in the libata case), though of course if you have udev
installed nicely you may not notice anything.  :)

Let me know if the documentation is too cryptic, I'd be happy to expand
on it if necessary.  I think most users will want to boot with
'combined_mode=libata' and add 'options libata atapi_enabled=1'
to their modules.conf to get good DVD playing and disk behavior
(haven't tested CD or DVD writing though).

I'd much rather things behave sanely by default (i.e. DMA for devices on
both ports), but apparently that's difficult given the various chip
bugs and hardware configs out there (not to mention that people's
drives may suddenly change from /dev/hdc to /dev/sdb), so this boot
option may be the correct long term fix.

Signed-off-by: Jesse Barnes <jbarnes@virtuousgeek.org>
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
2005-12-13 03:05:03 -05:00
..
hotplug [PATCH] PCI Express Hotplug: clear sticky power-fault bit 2005-11-23 23:04:27 -08:00
pcie [PATCH] fix missing includes 2005-10-30 17:37:32 -08:00
.gitignore Add some basic .gitignore files 2005-10-18 08:26:15 -07:00
access.c [PATCH] PCI: drivers/pci/: small cleanups 2005-11-10 16:09:18 -08:00
bus.c [PATCH] PCI: Add pci_walk_bus function to PCI core (nonrecursive) 2005-09-08 15:04:30 -07:00
hotplug.c [PATCH] PCI: remove unused "scratch" 2005-09-22 07:58:24 -07:00
Kconfig [PATCH] PCI: remove CONFIG_PCI_NAMES 2005-09-08 14:57:23 -07:00
Makefile [PATCH] Make sparc64 use setup-res.c 2005-09-08 14:57:25 -07:00
msi.c [PATCH] PCI: Change MSI to use physical delivery mode always 2005-11-10 16:09:18 -08:00
msi.h [PATCH] x86/x86_64: deferred handling of writes to /proc/irqxx/smp_affinity 2005-09-07 16:57:15 -07:00
pci-acpi.c [PATCH] PCI: kernel-doc fix for pci-acpi.c 2005-11-23 23:04:27 -08:00
pci-driver.c [PATCH] PCI: automatically set device_driver.owner 2005-11-10 16:09:16 -08:00
pci-sysfs.c [PATCH] PCI: Block config access during BIST 2005-10-28 15:36:58 -07:00
pci.c [PATCH] PCI: add pci_find_next_capability() 2005-11-10 16:09:14 -08:00
pci.h [PATCH] PCI: Block config access during BIST 2005-10-28 15:36:58 -07:00
probe.c [PATCH] kernel-doc: PCI fixes 2005-10-28 15:37:01 -07:00
proc.c [PATCH] PCI: Block config access during BIST 2005-10-28 15:36:58 -07:00
quirks.c [PATCH] add boot option to control Intel SATA/PATA combined mode 2005-12-13 03:05:03 -05:00
remove.c [PATCH] acpi bridge hotadd: Make the PCI remove routines safe for failed hot-plug 2005-06-27 21:52:41 -07:00
rom.c [PATCH] fix missing includes 2005-10-30 17:37:32 -08:00
search.c [IA64] hotplug/ia64: SN Hotplug Driver - pci_find_next_bus export 2005-07-06 15:28:40 -07:00
setup-bus.c cardbus: limit IO windows to 256 bytes 2005-10-23 16:31:16 -07:00
setup-irq.c
setup-res.c [PATCH] Make sparc64 use setup-res.c 2005-09-08 14:57:25 -07:00
syscall.c [PATCH] PCI: Block config access during BIST 2005-10-28 15:36:58 -07:00