File:  [NeXTSTEP 3.3 examples] / Examples / DriverKit / Adaptec1542B / Adaptec1542B_reloc.tproj / AHAThread.h
Revision 1.1.1.1 (vendor branch): download - view: text, annotated - select for diffs
Tue Apr 24 17:49:02 2018 UTC (8 years, 1 month ago) by root
Branches: NeXT, MAIN
CVS tags: NeXTSTEP33, HEAD
Sample Programs from NeXSTEP 3.3

/*
 * Copyright (c) 1993 NeXT Computer, Inc.
 *
 * Adaptec 1542 SCSI controller I/O thread definitions.
 *
 * HISTORY
 *
 * 13 Apr 1993	Doug Mitchell at NeXT
 *	Created.
 */

#import <machkit/NXLock.h>
#import <mach/mach_types.h>
#import <mach/message.h>
#import <driverkit/interruptMsg.h>
#import "AHAController.h"

/*
 * Reason for calling -commandCompleted.
 */
typedef enum {
	CS_Complete,		// normal - controller completed command
	CS_Timeout,		// I/O timeout
	CS_Reset		// Bus was reset; abort
} completeStatus;

/*
 * Methods executed by the I/O thread.
 */
@interface AHAController(IOThread)

- (int)threadExecuteRequest	: (AHACommandBuf *)cmdBuf;
- (void)threadResetBus		: (AHACommandBuf *)cmdBuf;
- (int)ccbFromCmd		: (AHACommandBuf *)cmdBuf
			    ccb : (struct ccb *)ccb;
- runPendingCommands;
- (void)commandCompleted	: (struct ccb *)ccb 
			 reason : (completeStatus)status;
- (struct ccb *)allocCcb        : (BOOL)doDMA;
- (void)freeCcb 		: (struct ccb *)ccb;
- (void)completeDMA		: (IOEISADMABuffer *)dmaList
		         length : (unsigned)xferLen;
- (void)abortDMA		: (IOEISADMABuffer *)dmaList
		         length : (unsigned)xferLen;

@end


unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.