tran_bus_reset(9E) must reset the SCSI bus without resetting targets.
#include <sys/scsi/scsi.h> int prefixtran_bus_reset(dev_info_t *hba_dip, int level);
Where level is:
reset the SCSI bus only, not the targets
The tran_bus_reset() vector in the scsi_hba_tran(9S) structure should be initialized during the HBA driver's attach(9E) to point to an HBA entry point to be called when a user initiates a bus reset.
Implementation is hardware specific. If it is not possible to reset the SCSI bus without affecting the targets, the HBA driver should fail RESET_BUS or not initialize this vector.
For more information, see "Converting Device Drivers to Support Hot-plugging" in the book Writing Device Drivers.