TRAN_RESET_NOTIFY(9E) Driver Entry Points TRAN_RESET_NOTIFY(9E)

tran_reset_notify - request to notify SCSI target of bus reset

#include <sys/scsi/scsi.h>
int prefixtran_reset_notify(struct scsi_address *ap, int flag,

void (*callback, caddr_t),caddr_t arg);

illumos architecture specific (illumos DDI).

ap

Pointer to the scsi_address(9S) structure.

flag

A flag indicating registration or cancellation of a notification request.

callback

A pointer to the target driver's reset notification function.

arg

The callback function argument.

The tran_reset_notify() entry point is called when a target driver requests notification of a bus reset.

The tran_reset_notify() vector in the scsi_hba_tran(9S) structure may be initialized in the HBA driver's attach(9E) routine to point to the HBA entry point to be called when a target driver calls scsi_reset_notify(9F).

The argument flag is used to register or cancel the notification. The supported values for flag are as follows:

SCSI_RESET_NOTIFY

Register callback as the reset notification function for the target.

SCSI_RESET_CANCEL

Cancel the reset notification request for the target.

The HBA driver maintains a list of reset notification requests registered by the target drivers. When a bus reset occurs, the HBA driver notifies registered target drivers by calling the callback routine, callback, with the argument, arg, for each registered target.

For SCSI_RESET_NOTIFY requests, tran_reset_notify() must return DDI_SUCCESS if the notification request has been accepted, and DDI_FAILURE otherwise.

For SCSI_RESET_CANCEL requests, tran_reset_notify() must return DDI_SUCCESS if the notification request has been canceled, and DDI_FAILURE otherwise.

attach(9E), scsi_ifgetcap(9F), scsi_reset_notify(9F), scsi_address(9S), scsi_hba_tran(9S)

Writing Device Drivers

August 30, 1995 OmniOS