kernels/linux-2.4.0/drivers/acorn/scsi/powertec.c
/* Prototype: int powertecscsi_release(struct Scsi_Host * host)
 * Purpose  : releases all resources used by this adapter
 * Params   : host - driver host structure to return info for.
 */
int powertecscsi_release(struct Scsi_Host * host)
Purpose  : releases all resources used by this adapter
Params   : host - driver host structure to return info for.
int powertecscsi_release ( struct Scsi_Host * host ) Purpose : releases all resources used by this adapter Params : host - driver host structure to return info for .
int powertecscsi_release(struct Scsi_Host *host)
{
	int i;
	fas216_release(host);
	if (host->irq != NO_IRQ)
		free_irq(host->irq, host);
	if (host->dma_channel != NO_DMA)
		free_dma(host->dma_channel);
	release_region(host->io_port + POWERTEC_FAS216_OFFSET,
		       16 << POWERTEC_FAS216_SHIFT);
	for (i = 0; i < MAX_ECARDS; i++)
		if (ecs[i] &&
		    host->io_port == ecard_address(ecs[i], ECARD_IOC, ECARD_FAST))
			ecard_release(ecs[i]);
	return 0;
}
int powertecscsi_release ( struct Scsi_Host * host ) { int i ; fas216_release ( host ) ; if ( host -> irq != NO_IRQ ) free_irq ( host -> irq , host ) ; if ( host -> dma_channel != NO_DMA ) free_dma ( host -> dma_channel ) ; release_region ( host -> io_port + POWERTEC_FAS216_OFFSET , 16 << POWERTEC_FAS216_SHIFT ) ; for ( i = 0 ; i < MAX_ECARDS ; i ++ ) if ( ecs [ i ] && host -> io_port == ecard_address ( ecs [ i ] , ECARD_IOC , ECARD_FAST ) ) ecard_release ( ecs [ i ] ) ; return 0 ; }
Prototype: int powertecscsi_release(struct Scsi_Host * host)
 Purpose  : releases all resources used by this adapter
 Params   : host - driver host structure to return info for.
Prototype : int powertecscsi_release ( struct Scsi_Host * host ) Purpose : releases all resources used by this adapter Params : host - driver host structure to return info for .