Scroll to navigation

ATA_HOST_ACTIVATE(9) libata Library ATA_HOST_ACTIVATE(9)

NAME

ata_host_activate - start host, request IRQ and register it

SYNOPSIS

int ata_host_activate(struct ata_host * host, int irq, irq_handler_t irq_handler, unsigned long irq_flags, struct scsi_host_template * sht);

ARGUMENTS

struct ata_host * host

target ATA host

int irq

IRQ to request

irq_handler_t irq_handler

irq_handler used when requesting IRQ

unsigned long irq_flags

irq_flags used when requesting IRQ

struct scsi_host_template * sht

scsi_host_template to use when registering the host

DESCRIPTION

After allocating an ATA host and initializing it, most libata LLDs perform three steps to activate the host - start host, request IRQ and register it. This helper takes necessary arguments and performs the three steps in one go.

An invalid IRQ skips the IRQ registration and expects the host to have set polling mode on the port. In this case, irq_handler should be NULL.

LOCKING: Inherited from calling layer (may sleep).

RETURN

0 on success, -errno otherwise.

AUTHOR

Jeff Garzik

Author.

COPYRIGHT

June 2017 Kernel Hackers Manual 4.11