sc->sc_adapter.scsi_minphys = adwminphys;
sc->sc_adapter.scsi_minphys = adw_minphys;
adw_attach(sc)	ADW_SOFTC      *sc;{	int             i, error;	TAILQ_INIT(&sc->sc_free_ccb);	TAILQ_INIT(&sc->sc_waiting_ccb);	TAILQ_INIT(&sc->sc_pending_ccb);	LIST_INIT(&sc->sc_queue);	/*         * Allocate the Control Blocks.         */	error = adw_alloc_controls(sc);	if (error)		return; /* (error) */ ;	bzero(sc->sc_control, sizeof(struct adw_control));	/*	 * Create and initialize the Control Blocks.	 */	i = adw_create_ccbs(sc, sc->sc_control->ccbs, ADW_MAX_CCB);	if (i == 0) {		printf("%s: unable to create Control Blocks\n",		       sc->sc_dev.dv_xname);		return; /* (ENOMEM) */ ;	} else if (i != ADW_MAX_CCB) {		printf("%s: WARNING: only %d of %d Control Blocks"		       " created\n",		       sc->sc_dev.dv_xname, i, ADW_MAX_CCB);	}	/*	 * Create and initialize the Carriers.	 */	error = adw_alloc_carriers(sc);	if (error)		return; /* (error) */ ;	/*	 * Zero's the freeze_device status	 */	 bzero(sc->sc_freeze_dev, sizeof(sc->sc_freeze_dev));	/*	 * Initialize the adapter	 */	switch (AdwInitDriver(sc)) {	case ADW_IERR_BIST_PRE_TEST:		panic("%s: BIST pre-test error",		      sc->sc_dev.dv_xname);		break;	case ADW_IERR_BIST_RAM_TEST:		panic("%s: BIST RAM test error",		      sc->sc_dev.dv_xname);		break;	case ADW_IERR_MCODE_CHKSUM:		panic("%s: Microcode checksum error",		      sc->sc_dev.dv_xname);		break;	case ADW_IERR_ILLEGAL_CONNECTION:		panic("%s: All three connectors are in use",		      sc->sc_dev.dv_xname);		break;	case ADW_IERR_REVERSED_CABLE:		panic("%s: Cable is reversed",		      sc->sc_dev.dv_xname);		break;	case ADW_IERR_HVD_DEVICE:		panic("%s: HVD attached to LVD connector",		      sc->sc_dev.dv_xname);		break;	case ADW_IERR_SINGLE_END_DEVICE:		panic("%s: single-ended device is attached to"		      " one of the connectors",		      sc->sc_dev.dv_xname);		break;	case ADW_IERR_NO_CARRIER:		panic("%s: unable to create Carriers",		      sc->sc_dev.dv_xname);		break;	case ADW_WARN_BUSRESET_ERROR:		printf("%s: WARNING: Bus Reset Error\n",		      sc->sc_dev.dv_xname);		break;	}	/*	 * Fill in the adapter.	 */	sc->sc_adapter.scsi_cmd = adw_scsi_cmd;	sc->sc_adapter.scsi_minphys = adwminphys;	/*         * fill in the prototype scsi_link.         */	sc->sc_link.adapter_softc = sc;	sc->sc_link.adapter_target = sc->chip_scsi_id;	sc->sc_link.adapter = &sc->sc_adapter;	sc->sc_link.device = &adw_dev;	sc->sc_link.openings = 4;	sc->sc_link.adapter_buswidth = ADW_MAX_TID+1;	config_found(&sc->sc_dev, &sc->sc_link, scsiprint);}