• A
    [PATCH] libata: rework legacy handling to remove much of the cruft · 2ec7df04
    Alan Cox 提交于
    Kill host_set->next
    Fix simplex support
    Allow per platform setting of IDE legacy bases
    
    Some of this can be tidied further later on, in particular all the
    legacy port gunge belongs as a PCI quirk/PCI header decode to understand
    the special legacy IDE rules in the PCI spec.
    
    Longer term Jeff also wants to move the request_irq/free_irq out of core
    which will make this even cleaner.
    
    tj: folded in three followup patches - ata_piix-fix, broken-arch-fix
    and fix-new-legacy-handling, and separated per-dev xfermask into
    separate patch preceding this one.  Folded in fixes are...
    
    * ata_piix-fix: fix build failure due to host_set->next removal
    * broken-arch-fix: add missing include/asm-*/libata-portmap.h
    * fix-new-legacy-handling:
    	* In ata_pci_init_legacy_port(), probe_num was incorrectly
              incremented during initialization of the secondary port and
              probe_ent->n_ports was incorrectly fixed to 1.
    
    	* Both legacy ports ended up having the same hard_port_no.
    
    	* When printing port information, both legacy ports printed
    	  the first irq.
    Signed-off-by: NAlan Cox <alan@redhat.com>
    Signed-off-by: NAndrew Morton <akpm@osdl.org>
    Signed-off-by: NTejun Heo <htejun@gmail.com>
    2ec7df04
ata_piix.c 25.9 KB