taglinefilesource code
bse174drivers/scsi/aha1542.cstatic int aha1542_test_port(int bse, struct Scsi_Host * shpnt)
bse180drivers/scsi/aha1542.cif(inb(STATUS(bse)) == 0xff) return 0;
bse186drivers/scsi/aha1542.coutb(SRST|IRST/*|SCRST*/, CONTROL(bse));
bse193drivers/scsi/aha1542.cWAIT(STATUS(bse), STATMASK, INIT|IDLE, STST|DIAGF|INVDCMD|DF|CDF);
bse197drivers/scsi/aha1542.cif (inb(INTRFLAGS(bse))&INTRMASK) goto fail;
bse198drivers/scsi/aha1542.csetup_mailboxes(bse, shpnt);
bse202drivers/scsi/aha1542.coutb(CMD_ECHO, DATA(bse));
bse206drivers/scsi/aha1542.cWAIT(STATUS(bse), STATMASK, 0, STST|DIAGF|INVDCMD|DF|CDF);
bse210drivers/scsi/aha1542.coutb(42, DATA(bse));
bse214drivers/scsi/aha1542.cWAIT(STATUS(bse), STATMASK, DF, STST|DIAGF|CDF|INVDCMD);
bse218drivers/scsi/aha1542.cif (inb(DATA(bse)) != 42) goto fail;
bse222drivers/scsi/aha1542.cif (inb(STATUS(bse)) & DF) goto fail;
bse226drivers/scsi/aha1542.cWAIT(INTRFLAGS(bse), HACC, HACC, 0);
bse231drivers/scsi/aha1542.coutb(IRST, CONTROL(bse));
bse568drivers/scsi/aha1542.cstatic void setup_mailboxes(int bse, struct Scsi_Host * shpnt)
bse583drivers/scsi/aha1542.caha1542_intr_reset(bse);     /* reset interrupts, so they don't block */  
bse585drivers/scsi/aha1542.caha1542_out(bse, cmd, 5);
bse586drivers/scsi/aha1542.cWAIT(INTRFLAGS(bse), INTRMASK, HACC, 0);
bse591drivers/scsi/aha1542.caha1542_intr_reset(bse);