Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Functions
ide-dma.c File Reference
#include <linux/types.h>
#include <linux/gfp.h>
#include <linux/kernel.h>
#include <linux/export.h>
#include <linux/ide.h>
#include <linux/scatterlist.h>
#include <linux/dma-mapping.h>

Go to the source code of this file.

Functions

ide_startstop_t ide_dma_intr (ide_drive_t *drive)
 
int ide_dma_good_drive (ide_drive_t *drive)
 
void ide_dma_unmap_sg (ide_drive_t *drive, struct ide_cmd *cmd)
 
 EXPORT_SYMBOL_GPL (ide_dma_unmap_sg)
 
void ide_dma_off_quietly (ide_drive_t *drive)
 
 EXPORT_SYMBOL (ide_dma_off_quietly)
 
void ide_dma_off (ide_drive_t *drive)
 
 EXPORT_SYMBOL (ide_dma_off)
 
void ide_dma_on (ide_drive_t *drive)
 
int __ide_dma_bad_drive (ide_drive_t *drive)
 
 EXPORT_SYMBOL (__ide_dma_bad_drive)
 
u8 ide_find_dma_mode (ide_drive_t *drive, u8 req_mode)
 
int ide_set_dma (ide_drive_t *drive)
 
void ide_check_dma_crc (ide_drive_t *drive)
 
void ide_dma_lost_irq (ide_drive_t *drive)
 
 EXPORT_SYMBOL_GPL (ide_dma_lost_irq)
 
ide_startstop_t ide_dma_timeout_retry (ide_drive_t *drive, int error)
 
void ide_release_dma_engine (ide_hwif_t *hwif)
 
 EXPORT_SYMBOL_GPL (ide_release_dma_engine)
 
int ide_allocate_dma_engine (ide_hwif_t *hwif)
 
 EXPORT_SYMBOL_GPL (ide_allocate_dma_engine)
 
int ide_dma_prepare (ide_drive_t *drive, struct ide_cmd *cmd)
 

Function Documentation

int __ide_dma_bad_drive ( ide_drive_t drive)

Definition at line 219 of file ide-dma.c.

EXPORT_SYMBOL ( ide_dma_off_quietly  )
EXPORT_SYMBOL ( ide_dma_off  )
EXPORT_SYMBOL ( __ide_dma_bad_drive  )
EXPORT_SYMBOL_GPL ( ide_dma_unmap_sg  )
EXPORT_SYMBOL_GPL ( ide_dma_lost_irq  )
EXPORT_SYMBOL_GPL ( ide_release_dma_engine  )
EXPORT_SYMBOL_GPL ( ide_allocate_dma_engine  )
int ide_allocate_dma_engine ( ide_hwif_t hwif)

Definition at line 509 of file ide-dma.c.

void ide_check_dma_crc ( ide_drive_t drive)

Definition at line 417 of file ide-dma.c.

int ide_dma_good_drive ( ide_drive_t drive)

Definition at line 117 of file ide-dma.c.

ide_startstop_t ide_dma_intr ( ide_drive_t drive)

ide_dma_intr - IDE DMA interrupt handler : the drive the interrupt is for

Handle an interrupt completing a read/write DMA transfer on an IDE device

Definition at line 91 of file ide-dma.c.

void ide_dma_lost_irq ( ide_drive_t drive)

Definition at line 437 of file ide-dma.c.

void ide_dma_off ( ide_drive_t drive)

ide_dma_off - disable DMA on a device : drive to disable DMA on

Disable IDE DMA for a device on this IDE controller. Inform the user that DMA has been disabled.

Definition at line 197 of file ide-dma.c.

void ide_dma_off_quietly ( ide_drive_t drive)

ide_dma_off_quietly - Generic DMA kill : drive to control

Turn off the current DMA on this IDE controller.

Definition at line 180 of file ide-dma.c.

void ide_dma_on ( ide_drive_t drive)

ide_dma_on - Enable DMA on a device : drive to enable DMA on

Enable IDE DMA for a device on this IDE controller.

Definition at line 211 of file ide-dma.c.

int ide_dma_prepare ( ide_drive_t drive,
struct ide_cmd cmd 
)

Definition at line 533 of file ide-dma.c.

ide_startstop_t ide_dma_timeout_retry ( ide_drive_t drive,
int  error 
)

Definition at line 448 of file ide-dma.c.

void ide_dma_unmap_sg ( ide_drive_t drive,
struct ide_cmd cmd 
)

ide_dma_unmap_sg - clean up DMA mapping : The drive to unmap

Teardown mappings after DMA has completed. This must be called after the completion of each use of ide_build_dmatable and before the next use of ide_build_dmatable. Failure to do so will cause an oops as only one mapping can be live for each target at a given time.

Definition at line 164 of file ide-dma.c.

u8 ide_find_dma_mode ( ide_drive_t drive,
u8  req_mode 
)

ide_find_dma_mode - compute DMA speed : IDE device : requested mode

Checks the drive/host capabilities and finds the speed to use for the DMA transfer. The speed is then limited by the requested mode.

Returns 0 if the drive/host combination is incapable of DMA transfers or if the requested mode is not a DMA mode.

Definition at line 313 of file ide-dma.c.

void ide_release_dma_engine ( ide_hwif_t hwif)

Definition at line 497 of file ide-dma.c.

int ide_set_dma ( ide_drive_t drive)

Definition at line 396 of file ide-dma.c.