Chapter 5. libata Core Internals

Table of Contents

ata_tf_load_pio - send taskfile registers to host controller
ata_tf_load_mmio - send taskfile registers to host controller
ata_exec_command_pio - issue ATA command to host controller
ata_exec_command_mmio - issue ATA command to host controller
ata_tf_to_host - issue ATA taskfile to host controller
ata_tf_read_pio - input device's ATA taskfile shadow registers
ata_tf_read_mmio - input device's ATA taskfile shadow registers
ata_check_status_pio - Read device status reg & clear interrupt
ata_check_status_mmio - Read device status reg & clear interrupt
ata_rwcmd_protocol - set taskfile r/w commands and protocol
ata_mode_string - convert UDMA bit offset to string
ata_pio_devchk - PATA device presence detection
ata_mmio_devchk - PATA device presence detection
ata_devchk - PATA device presence detection
ata_dev_try_classify - Parse returned ATA device signature
ata_dev_select - Select device 0/1 on ATA bus
ata_dump_id - IDENTIFY DEVICE info debugging output
ata_exec_internal - execute libata internal command
ata_dev_identify - obtain IDENTIFY x DEVICE page
ata_bus_probe - Reset and probe ATA bus
ata_set_mode - Program timings and issue SET FEATURES - XFER
ata_busy_sleep - sleep until BSY clears, or timeout
ata_bus_edd - Issue EXECUTE DEVICE DIAGNOSTIC command.
ata_choose_xfer_mode - attempt to find best transfer mode
ata_dev_set_xfermode - Issue SET FEATURES - XFER MODE command
ata_dev_reread_id - Reread the device identify device info
ata_dev_init_params - Issue INIT DEV PARAMS command
ata_sg_clean - Unmap DMA memory associated with command
ata_fill_sg - Fill PCI IDE PRD table
ata_check_atapi_dma - Check whether ATAPI DMA can be supported
ata_sg_setup_one - DMA-map the memory buffer associated with a command.
ata_sg_setup - DMA-map the scatter-gather table associated with a command.
ata_poll_qc_complete - turn irq back on and finish qc
ata_pio_poll -
ata_pio_complete - check if drive is busy or idle
swap_buf_le16 - swap halves of 16-words in place
ata_mmio_data_xfer - Transfer data by MMIO
ata_pio_data_xfer - Transfer data by PIO
ata_data_xfer - Transfer data from/to the data register.
ata_pio_sector - Transfer ATA_SECT_SIZE (512 bytes) of data.
ata_pio_sectors - Transfer one or many 512-byte sectors.
atapi_send_cdb - Write CDB bytes to hardware
ata_pio_first_block - Write first data block to hardware
__atapi_pio_bytes - Transfer data from/to the ATAPI device.
atapi_pio_bytes - Transfer data from/to the ATAPI device.
ata_pio_block - start PIO on a block
ata_qc_timeout - Handle timeout of queued command
ata_qc_new - Request an available ATA command, for queueing
ata_qc_new_init - Request an available ATA command, and initialize it
ata_qc_free - free unused ata_queued_cmd
ata_qc_issue - issue taskfile to device
ata_bmdma_setup_mmio - Set up PCI IDE BMDMA transaction
ata_bmdma_start_mmio - Start a PCI IDE BMDMA transaction
ata_bmdma_setup_pio - Set up PCI IDE BMDMA transaction (PIO)
ata_bmdma_start_pio - Start a PCI IDE BMDMA transaction (PIO)
ata_do_simple_cmd - Set port up for dma.
ata_host_remove - Unregister SCSI host structure with upper layers
ata_host_init - Initialize an ata_port structure
ata_host_add - Attach low-level ATA driver to system