ata_bus_reset(9)

ata_bus_reset9

Reset host port and associated ata channel

Usage

void ata_bus_reset(struct ata_port * ap);

Arguments

ap

port to reset

Overview

This is typically the first time we actually start issuing commands to the ATA channel. We wait for BSY to clear, then issue EXECUTE DEVICE DIAGNOSTIC command, polling for its result. Determine what devices, if any, are on the channel by looking at the device 0/1 error register. Look at the signature stored in each device's taskfile registers, to determine if the device is ATA or ATAPI.

Locking

PCI/etc. bus probe sem. Obtains host_set lock.

Side effects

Sets ATA_FLAG_DISABLED if bus reset fails.

Author

Jeff Garzik

Author.

From linux-manual-2.6.18 2.6.18.dfsg.1-26etch2 in Debian 4.0 (Etch). Also shipped by linux-manual-2.6.24. Parsed by carta from the page's man source.