• Alan Cox's avatar
    [PATCH] libata: Simplex and other mode filtering logic · 5444a6f4
    Alan Cox authored
    Add a field to the host_set called 'flags' (was host_set_flags changed
    to suit Jeff)
    Add a simplex_claimed field so we can remember who owns the DMA channel
    Add a ->mode_filter() hook to allow drivers to filter modes
    Add docs for mode_filter and set_mode
    Filter according to simplex state
    Filter cable in core
    
    This provides the needed framework to support all the mode rules found
    in the PATA world. The simplex filter deals with 'to spec' simplex DMA
    systems found in older chips. The cable filter avoids duplicating the
    same rules in each chip driver with PATA. Finally the mode filter is
    neccessary because drive/chip combinations have errata that forbid
    certain modes with some drives or types of ATA object.
    
    Drive speed setup remains per channel for now and the filters now use
    the framework Tejun put into place which cleans them up a lot from the
    older libata-pata patches.
    Signed-off-by: default avatarAlan Cox <alan@redhat.com>
    Signed-off-by: default avatarJeff Garzik <jeff@garzik.org>
    5444a6f4
libata-core.c 119 KB