ahc->sc_channel.flags = SCSIDEBUG_LEVEL;
ahc_attach(struct ahc_softc *ahc){	char ahc_info[256];	int i, s;	LIST_INIT(&ahc->pending_scbs);	for (i = 0; i < AHC_NUM_TARGETS; i++)		TAILQ_INIT(&ahc->untagged_queues[i]);        ahc_lock(ahc, &s);	/*	 * fill in the prototype scsi_links.	 */	ahc->sc_channel.adapter_target = ahc->our_id;	if (ahc->features & AHC_WIDE)		ahc->sc_channel.adapter_buswidth = 16;	ahc->sc_channel.adapter_softc = ahc;	ahc->sc_channel.adapter = &ahc_switch;	ahc->sc_channel.openings = 16;	ahc->sc_channel.device = &ahc_dev;	ahc->sc_channel.flags = SCSIDEBUG_LEVEL;	if (ahc->features & AHC_TWIN) {		/* Configure the second scsi bus */		ahc->sc_channel_b = ahc->sc_channel;		ahc->sc_channel_b.adapter_target = ahc->our_id_b;	}	if (bootverbose) {		ahc_controller_info(ahc, ahc_info, sizeof ahc_info);		printf("%s: %s\n", ahc->sc_dev.dv_xname, ahc_info);	}	ahc_intr_enable(ahc, TRUE);	if (ahc->flags & AHC_RESET_BUS_A)		ahc_reset_channel(ahc, 'A', TRUE);	if ((ahc->features & AHC_TWIN) && ahc->flags & AHC_RESET_BUS_B)		ahc_reset_channel(ahc, 'B', TRUE);	if ((ahc->flags & AHC_PRIMARY_CHANNEL) == 0) {		/*		 * Ensure SCSI_IS_SCSIBUS_B() returns false for sc_channel		 * until sc_channel_b has been properly initialized by scsi		 * layer.		 */		ahc->sc_channel_b.scsibus = 0xff;		ahc->sc_child = config_found((void *)&ahc->sc_dev,		    &ahc->sc_channel, scsiprint);		if (ahc->features & AHC_TWIN)			ahc->sc_child_b = config_found((void *)&ahc->sc_dev,			    &ahc->sc_channel_b, scsiprint);	} else {		/*		 * Ensure SCSI_IS_SCSIBUS_B() returns false for sc_channel_b		 * until sc_channel has been properly initialized by scsi		 * layer.		 */		ahc->sc_channel.scsibus = 0xff;		if (ahc->features & AHC_TWIN)			ahc->sc_child = config_found((void *)&ahc->sc_dev,			    &ahc->sc_channel_b, scsiprint);		ahc->sc_child_b = config_found((void *)&ahc->sc_dev,		    &ahc->sc_channel, scsiprint);	}	ahc_unlock(ahc, &s);	return (1);}