taglinefilesource code
instance340drivers/scsi/NCR5380.cstatic void NCR5380_print(struct Scsi_Host *instance) {
instance343drivers/scsi/NCR5380.cNCR5380_setup(instance);
instance382drivers/scsi/NCR5380.cstatic void NCR5380_print_phase(struct Scsi_Host *instance) {
instance386drivers/scsi/NCR5380.cNCR5380_setup(instance);
instance391drivers/scsi/NCR5380.cinstance->host_no);
instance395drivers/scsi/NCR5380.cprintk("scsi%d : phase %s\n", instance->host_no, phases[i].name);
instance516drivers/scsi/NCR5380.cstatic int NCR5380_set_timer (struct Scsi_Host *instance) {
instance520drivers/scsi/NCR5380.cif (((struct NCR5380_hostdata *) (instance->host_data))->next_timer) {
instance528drivers/scsi/NCR5380.cif (instance->time_expires < tmp->time_expires) 
instance531drivers/scsi/NCR5380.cinstance->next_timer = tmp;
instance532drivers/scsi/NCR5380.c*prev = instance;
instance541drivers/scsi/NCR5380.cstruct Scsi_Host *instance;
instance544drivers/scsi/NCR5380.cinstance = ((NCR5380_hostdata *) expires_first->host_data)->
instance550drivers/scsi/NCR5380.cexpires_first = instance;
instance603drivers/scsi/NCR5380.cstatic int NCR5380_probe_irq (struct Scsi_Host *instance, int possible) {
instance606drivers/scsi/NCR5380.cinstance->hostdata;
instance609drivers/scsi/NCR5380.cNCR5380_setup(instance);
instance657drivers/scsi/NCR5380.cstatic void NCR5380_print_options (struct Scsi_Host *instance) {
instance706drivers/scsi/NCR5380.cstatic void NCR5380_init (struct Scsi_Host *instance) {
instance710drivers/scsi/NCR5380.cinstance->hostdata;
instance711drivers/scsi/NCR5380.cNCR5380_setup(instance);
instance715drivers/scsi/NCR5380.chostdata->id_mask = 1 << instance->this_id;
instance730drivers/scsi/NCR5380.cthe_template = instance->hostt;
instance731drivers/scsi/NCR5380.cfirst_instance = instance;
instance741drivers/scsi/NCR5380.cif ((instance->cmd_per_lun > 1) || instance->can_queue > 1)) 
instance744drivers/scsi/NCR5380.c"         be incorrectly cleared.\n", instance->host_no);
instance785drivers/scsi/NCR5380.cinstance->host_no);
instance821drivers/scsi/NCR5380.cprintk("scsi%d : command added to %s of queue\n", instance->host_no,
instance844drivers/scsi/NCR5380.cstruct Scsi_Host *instance;
instance863drivers/scsi/NCR5380.cfor (instance = first_instance; instance && instance->hostt == the_template; 
instance864drivers/scsi/NCR5380.cinstance=instance->next) {
instance865drivers/scsi/NCR5380.chostdata = (struct NCR5380_hostdata *) instance->hostdata;
instance869drivers/scsi/NCR5380.cprintk("scsi%d : not connected\n", instance->host_no);
instance898drivers/scsi/NCR5380.cinstance->host_no, tmp->target, tmp->lun);
instance907drivers/scsi/NCR5380.cif (!NCR5380_select(instance, tmp, 
instance919drivers/scsi/NCR5380.cinstance->host_no);
instance936drivers/scsi/NCR5380.cinstance->host_no);
instance938drivers/scsi/NCR5380.cNCR5380_information_transfer(instance);
instance940drivers/scsi/NCR5380.cprintk("scsi%d : main() : done set false\n", instance->host_no);
instance963drivers/scsi/NCR5380.cstruct Scsi_Host *instance;
instance971drivers/scsi/NCR5380.cfor (instance = first_instance; instance && (instance->hostt == 
instance972drivers/scsi/NCR5380.cthe_template); instance = instance->next)
instance973drivers/scsi/NCR5380.cif (instance->irq == irq) {
instance976drivers/scsi/NCR5380.cNCR5380_setup(instance);
instance981drivers/scsi/NCR5380.cNCR5380_print(instance);
instance988drivers/scsi/NCR5380.cprintk("scsi%d : SEL interrupt\n", instance->host_no);
instance990drivers/scsi/NCR5380.cNCR5380_reselect(instance);
instance995drivers/scsi/NCR5380.cprintk("scsi%d : PARITY interrupt\n", instance->host_no);
instance1018drivers/scsi/NCR5380.cinstance->hostno);
instance1020drivers/scsi/NCR5380.ctransfered = (hostdata->dmalen - NCR5380_dma_residual(instance));
instance1078drivers/scsi/NCR5380.cstatic int NCR5380_select (struct Scsi_Host *instance, Scsi_Cmnd *cmd,
instance1082drivers/scsi/NCR5380.cinstance->hostdata;
instance1087drivers/scsi/NCR5380.cNCR5380_setup(instance);
instance1090drivers/scsi/NCR5380.cNCR5380_print(instance);
instance1091drivers/scsi/NCR5380.cprintk("scsi%d : starting arbitration, id = %d\n", instance->host_no,
instance1092drivers/scsi/NCR5380.cinstance->this_id);
instance1110drivers/scsi/NCR5380.cprintk("scsi%d : arbitration complete\n", instance->host_no);
instance1131drivers/scsi/NCR5380.cinstance->host_no);
instance1143drivers/scsi/NCR5380.cinstance->host_no);
instance1156drivers/scsi/NCR5380.cprintk("scsi%d : won arbitration\n", instance->host_no);
instance1203drivers/scsi/NCR5380.cprintk("scsi%d : selecting target %d\n", instance->host_no, cmd->target);
instance1230drivers/scsi/NCR5380.cinstance->host_no);
instance1255drivers/scsi/NCR5380.cinstance->host_no, cmd->target);
instance1257drivers/scsi/NCR5380.ctmp[0] = IDENTIFY(((instance->irq == IRQ_NONE) ? 0 : 1), cmd->lun);
instance1284drivers/scsi/NCR5380.cNCR5380_transfer_pio(instance, &phase, &len, &data);
instance1286drivers/scsi/NCR5380.cprintk("scsi%d : nexus established.\n", instance->host_no);
instance1325drivers/scsi/NCR5380.cstatic int NCR5380_transfer_pio (struct Scsi_Host *instance, 
instance1331drivers/scsi/NCR5380.cNCR5380_setup(instance);
instance1349drivers/scsi/NCR5380.cprintk("scsi%d : REQ detected\n", instance->host_no);
instance1355drivers/scsi/NCR5380.cprintk("scsi%d : phase mismatch\n", instance->host_no);
instance1356drivers/scsi/NCR5380.cNCR5380_print_phase(instance);
instance1381drivers/scsi/NCR5380.cNCR5380_print(instance);
instance1389drivers/scsi/NCR5380.cNCR5380_print(instance);
instance1396drivers/scsi/NCR5380.cNCR5380_print(instance);
instance1404drivers/scsi/NCR5380.cprintk("scsi%d : req false, handshake complete\n", instance->host_no);
instance1414drivers/scsi/NCR5380.cprintk("scsi%d : residual %d\n", instance->host_no, c);
instance1452drivers/scsi/NCR5380.cstatic int NCR5380_transfer_dma (struct Scsi_Host *instance, 
instance1466drivers/scsi/NCR5380.cinstance->hostdata;
instance1468drivers/scsi/NCR5380.cNCR5380_setup(instance);
instance1482drivers/scsi/NCR5380.cinstance->host_no, instance->dma_channel, (p & SR_IO) ? "reading" :
instance1486drivers/scsi/NCR5380.cNCR5380_dma_read_setup(instance, d, c) : 
instance1487drivers/scsi/NCR5380.cNCR5380_dma_write_setup(instance, d, c);
instance1510drivers/scsi/NCR5380.cprintk("scsi%d : mode reg = 0x%X\n", instance->host_no, NCR5380_read(MODE_REG));
instance1583drivers/scsi/NCR5380.cinstance->host_no, tmp, NCR5380_read(STATUS_REG));
instance1589drivers/scsi/NCR5380.cresidue = NCR5380_dma_residual(instance);
instance1612drivers/scsi/NCR5380.cNCR5380_transfer_pio(instance, phase, &cnt, data);
instance1627drivers/scsi/NCR5380.cif (!(foo = NCR5380_pread(instance, d, c - 1))) {
instance1657drivers/scsi/NCR5380.cif (!(foo = NCR5380_pwrite(instance, d, c))) {
instance1683drivers/scsi/NCR5380.cinstance->host_no);
instance1693drivers/scsi/NCR5380.cinstance->host_no);
instance1736drivers/scsi/NCR5380.cstatic void NCR5380_information_transfer (struct Scsi_Host *instance) {
instance1739drivers/scsi/NCR5380.cinstance->hostdata;
instance1745drivers/scsi/NCR5380.cNCR5380_setup(instance);
instance1755drivers/scsi/NCR5380.cNCR5380_print_phase(instance);
instance1763drivers/scsi/NCR5380.cinstance->host_no);
instance1780drivers/scsi/NCR5380.cinstance->host_no, cmd->SCp.this_residual,
instance1798drivers/scsi/NCR5380.c(transfersize = NCR5380_dma_xfer_len(instance, cmd)) != 0) {
instance1806drivers/scsi/NCR5380.cif (NCR5380_transfer_dma(instance, &phase,
instance1813drivers/scsi/NCR5380.cinstance->host_no, cmd->target, cmd->lun);
instance1822drivers/scsi/NCR5380.cNCR5380_transfer_pio(instance, &phase, 
instance1835drivers/scsi/NCR5380.cNCR5380_transfer_pio(instance, &phase, &len, &data);
instance1854drivers/scsi/NCR5380.cinstance->host_no, cmd->target, cmd->lun);
instance1864drivers/scsi/NCR5380.cinstance->host_no, cmd->target, cmd->lun);
instance1877drivers/scsi/NCR5380.cinstance->host_no, cmd->target, cmd->lun);
instance1888drivers/scsi/NCR5380.cinstance->host_no, cmd->target, cmd->lun);
instance1918drivers/scsi/NCR5380.cinstance->host_no);
instance1970drivers/scsi/NCR5380.c"  the disconnected_queue\n", instance->host_no, 
instance2017drivers/scsi/NCR5380.cNCR5380_transfer_pio(instance, &phase, &len, &data);
instance2036drivers/scsi/NCR5380.cNCR5380_transfer_pio(instance, &phase, &len, 
instance2042drivers/scsi/NCR5380.cprintk("scsi%d : issued command, sleeping until %ul\n", instance->host_no,
instance2045drivers/scsi/NCR5380.cNCR5380_set_timer (instance);
instance2053drivers/scsi/NCR5380.cNCR5380_transfer_pio(instance, &phase, &len, &data);
instance2057drivers/scsi/NCR5380.cprintk("scsi%d : unknown phase\n", instance->host_no);
instance2059drivers/scsi/NCR5380.cNCR5380_print(instance);
instance2069drivers/scsi/NCR5380.cprintk("scsi%d : poll timed out, sleeping until %ul\n", instance->host_no,
instance2072drivers/scsi/NCR5380.cNCR5380_set_timer (instance);
instance2092drivers/scsi/NCR5380.cstatic void NCR5380_reselect (struct Scsi_Host *instance) {
instance2095drivers/scsi/NCR5380.cinstance->hostdata;
instance2106drivers/scsi/NCR5380.cNCR5380_setup(instance);
instance2111drivers/scsi/NCR5380.cprintk("scsi%d : reselect\n", instance->host_no);
instance2137drivers/scsi/NCR5380.cNCR5380_transfer_pio(instance, &phase, &len, &data);
instance2161drivers/scsi/NCR5380.cinstance->host_no);
instance2191drivers/scsi/NCR5380.cinstance->host_no, target_mask, lun, tag);
instance2194drivers/scsi/NCR5380.cinstance->host_no, target_mask, lun);
instance2210drivers/scsi/NCR5380.cNCR5380_transfer_pio(instance, &phase, &len, &data);
instance2215drivers/scsi/NCR5380.cinstance->host_no, cmd->target, cmd->lun, cmd->tag);
instance2233drivers/scsi/NCR5380.cstatic void NCR5380_dma_complete (NCR5380_instance *instance) {
instance2236drivers/scsi/NCR5380.cinstance->hostdata);
instance2238drivers/scsi/NCR5380.cNCR5380_setup(instance);
instance2261drivers/scsi/NCR5380.ctransferred = instance->dmalen - NCR5380_dma_residual();
instance2290drivers/scsi/NCR5380.cstruct Scsi_Host *instance = cmd->host;
instance2292drivers/scsi/NCR5380.cinstance->hostdata;
instance2298drivers/scsi/NCR5380.cNCR5380_setup(instance);
instance2301drivers/scsi/NCR5380.cprintk("scsi%d : abort called\n", instance->host_no);
instance2320drivers/scsi/NCR5380.cinstance->host_no);
instance2340drivers/scsi/NCR5380.cprintk("scsi%d : abort failed, command connected.\n", instance->host_no);
instance2375drivers/scsi/NCR5380.cprintk("scsi%d : aborting disconnected command.\n", instance->host_no);
instance2378drivers/scsi/NCR5380.cif (NCR5380_select (instance, cmd, (int) cmd->tag)) 
instance2382drivers/scsi/NCR5380.cprintk("scsi%d : nexus restablished.\n", instance->host_no);
instance2390drivers/scsi/NCR5380.cNCR5380_transfer_pio (instance, &phase, &len, &msgptr);
instance2419drivers/scsi/NCR5380.c"         before abortion\n", instance->host_no); 
instance242drivers/scsi/NCR5380.hstatic int NCR5380_probe_irq (struct Scsi_Host *instance, int possible);
instance244drivers/scsi/NCR5380.hstatic void NCR5380_init (struct Scsi_Host *instance);
instance245drivers/scsi/NCR5380.hstatic void NCR5380_information_transfer (struct Scsi_Host *instance);
instance248drivers/scsi/NCR5380.hstatic void NCR5380_print_options (struct Scsi_Host *instance);
instance263drivers/scsi/NCR5380.hstatic void NCR5380_reselect (struct Scsi_Host *instance);
instance264drivers/scsi/NCR5380.hstatic int NCR5380_select (struct Scsi_Host *instance, Scsi_Cmnd *cmd, int tag);
instance266drivers/scsi/NCR5380.hstatic int NCR5380_transfer_dma (struct Scsi_Host *instance,
instance269drivers/scsi/NCR5380.hstatic int NCR5380_transfer_pio (struct Scsi_Host *instance,
instance273drivers/scsi/NCR5380.hstatic __inline__ int NCR5380_i386_dma_setup (struct Scsi_Host *instance,
instance277drivers/scsi/NCR5380.hif (instance->dma_channel <=3) {
instance290drivers/scsi/NCR5380.hpanic ("scsi%d : attmpted unaligned DMA transfer\n", instance->host_no);
instance292drivers/scsi/NCR5380.hdisable_dma(instance->dma_channel);
instance293drivers/scsi/NCR5380.hclear_dma_ff(instance->dma_channel);
instance294drivers/scsi/NCR5380.hset_dma_addr(instance->dma_channel, (unsigned int) ptr);
instance295drivers/scsi/NCR5380.hset_dma_count(instance->dma_channel, count);
instance296drivers/scsi/NCR5380.hset_dma_mode(instance->dma_channel, mode);
instance297drivers/scsi/NCR5380.henable_dma(instance->dma_channel);
instance302drivers/scsi/NCR5380.hstatic __inline__ int NCR5380_i386_dma_write_setup (struct Scsi_Host *instance,
instance304drivers/scsi/NCR5380.hreturn NCR5380_i386_dma_setup (instance, src, count, DMA_MODE_WRITE);
instance307drivers/scsi/NCR5380.hstatic __inline__ int NCR5380_i386_dma_read_setup (struct Scsi_Host *instance,
instance309drivers/scsi/NCR5380.hreturn NCR5380_i386_dma_setup (instance, src, count, DMA_MODE_READ);
instance312drivers/scsi/NCR5380.hstatic __inline__ int NCR5380_i386_dma_residual (struct Scsi_Host *instance) {
instance315drivers/scsi/NCR5380.hclear_dma_ff(instance->dma_channel);
instance316drivers/scsi/NCR5380.htmp = get_dma_residue(instance->dma_channel);
instance128drivers/scsi/g_NCR5380.cstruct Scsi_Host *instance;
instance134drivers/scsi/g_NCR5380.cinstance = scsi_register (hostno, sizeof(struct NCR5380_hostdata));
instance135drivers/scsi/g_NCR5380.cinstance->io_port = overrides[current_override].port;
instance137drivers/scsi/g_NCR5380.cNCR5380_init(instance);
instance140drivers/scsi/g_NCR5380.cinstance->irq = overrides[current_override].irq;
instance142drivers/scsi/g_NCR5380.cinstance->irq = NCR5380_probe_irq(instance, 0xffff);
instance144drivers/scsi/g_NCR5380.cif (instance->irq != IRQ_NONE) 
instance145drivers/scsi/g_NCR5380.cif (irqaction (instance->irq, &sa)) {
instance147drivers/scsi/g_NCR5380.chostno, instance->irq);
instance148drivers/scsi/g_NCR5380.cinstance->irq = IRQ_NONE;
instance151drivers/scsi/g_NCR5380.cif (instance->irq == IRQ_NONE) {
instance156drivers/scsi/g_NCR5380.cprintk("scsi%d : at port %d", instance->host_no, instance->io_port);
instance157drivers/scsi/g_NCR5380.cif (instance->irq == IRQ_NONE)
instance160drivers/scsi/g_NCR5380.cprintk (" irq %d", instance->irq);
instance163drivers/scsi/g_NCR5380.cNCR5380_print_options(instance);
instance71drivers/scsi/g_NCR5380.h#define NCR5380_setup(instance) \
instance72drivers/scsi/g_NCR5380.hport = (instance)->io_port
instance296drivers/scsi/pas16.cstruct Scsi_Host *instance;
instance332drivers/scsi/pas16.cinstance = scsi_register (hostno, sizeof(struct NCR5380_hostdata));
instance333drivers/scsi/pas16.cinstance->io_port = io_port;
instance335drivers/scsi/pas16.cNCR5380_init(instance);
instance338drivers/scsi/pas16.cinstance->irq = overrides[current_override].irq;
instance340drivers/scsi/pas16.cinstance->irq = NCR5380_probe_irq(instance, PAS16_IRQS);
instance342drivers/scsi/pas16.cif (instance->irq != IRQ_NONE) 
instance343drivers/scsi/pas16.cif (irqaction (instance->irq, &pas16_sigaction)) {
instance345drivers/scsi/pas16.chostno, instance->irq);
instance346drivers/scsi/pas16.cinstance->irq = IRQ_NONE;
instance349drivers/scsi/pas16.cif (instance->irq == IRQ_NONE) {
instance355drivers/scsi/pas16.cprintk("scsi%d : irq = %d\n", hostno, instance->irq);
instance358drivers/scsi/pas16.cprintk("scsi%d : at 0x%04x", instance->host_no, (int) 
instance359drivers/scsi/pas16.cinstance->io_port);
instance360drivers/scsi/pas16.cif (instance->irq == IRQ_NONE)
instance363drivers/scsi/pas16.cprintk (" irq %d", instance->irq);
instance366drivers/scsi/pas16.cNCR5380_print_options(instance);
instance417drivers/scsi/pas16.cstatic inline int NCR5380_pread (struct Scsi_Host *instance, unsigned char *dst,
instance420drivers/scsi/pas16.cregister unsigned short reg = (unsigned short) (instance->io_port + 
instance424drivers/scsi/pas16.cwhile ( inb(instance->io_port + P_STATUS_REG_OFFSET) & P_ST_RDY );
instance429drivers/scsi/pas16.cif ( inb(instance->io_port + P_TIMEOUT_STATUS_REG_OFFSET) & P_TS_TIM) {
instance430drivers/scsi/pas16.coutb( P_TS_CT, instance->io_port + P_TIMEOUT_STATUS_REG_OFFSET);
instance432drivers/scsi/pas16.cinstance->host_no);
instance451drivers/scsi/pas16.cstatic inline int NCR5380_pwrite (struct Scsi_Host *instance, unsigned char *src,
instance454drivers/scsi/pas16.cregister unsigned short reg = (instance->io_port + P_DATA_REG_OFFSET);
instance457drivers/scsi/pas16.cwhile ( ( inb( instance->io_port + P_STATUS_REG_OFFSET ) ) & P_ST_RDY );
instance461drivers/scsi/pas16.cif (inb(instance->io_port + P_TIMEOUT_STATUS_REG_OFFSET) & P_TS_TIM) {
instance462drivers/scsi/pas16.coutb( P_TS_CT, instance->io_port + P_TIMEOUT_STATUS_REG_OFFSET);
instance464drivers/scsi/pas16.cinstance->host_no);
instance158drivers/scsi/pas16.h#define NCR5380_setup(instance) \
instance159drivers/scsi/pas16.hio_port = (instance)->io_port
instance169drivers/scsi/pas16.h, instance->hostno, (reg), PAS16_io_port(reg))), inb( PAS16_io_port(reg)) )
instance173drivers/scsi/pas16.hinstance->hostno, (value), (reg), PAS16_io_port(reg)),  \
instance198drivers/scsi/t128.cstruct Scsi_Host *instance;
instance231drivers/scsi/t128.cinstance = scsi_register (hostno, sizeof(struct NCR5380_hostdata));
instance232drivers/scsi/t128.cinstance->base = base;
instance234drivers/scsi/t128.cNCR5380_init(instance);
instance237drivers/scsi/t128.cinstance->irq = overrides[current_override].irq;
instance239drivers/scsi/t128.cinstance->irq = NCR5380_probe_irq(instance, T128_IRQS);
instance241drivers/scsi/t128.cif (instance->irq != IRQ_NONE) 
instance242drivers/scsi/t128.cif (irqaction (instance->irq, &t128_sigaction)) {
instance244drivers/scsi/t128.chostno, instance->irq);
instance245drivers/scsi/t128.cinstance->irq = IRQ_NONE;
instance248drivers/scsi/t128.cif (instance->irq == IRQ_NONE) {
instance254drivers/scsi/t128.cprintk("scsi%d : irq = %d\n", hostno, instance->irq);
instance257drivers/scsi/t128.cprintk("scsi%d : at 0x%08x", instance->host_no, (int) 
instance258drivers/scsi/t128.cinstance->base);
instance259drivers/scsi/t128.cif (instance->irq == IRQ_NONE)
instance262drivers/scsi/t128.cprintk (" irq %d", instance->irq);
instance265drivers/scsi/t128.cNCR5380_print_options(instance);
instance316drivers/scsi/t128.cstatic inline int NCR5380_pread (struct Scsi_Host *instance, unsigned char *dst,
instance318drivers/scsi/t128.cregister unsigned char *reg = (unsigned char *) (instance->base + 
instance322drivers/scsi/t128.cwhile (!(instance->base[T_STATUS_REG_OFFSET]) & T_ST_RDY);
instance327drivers/scsi/t128.cif (*(instance->base + T_STATUS_REG_OFFSET) & T_ST_TIM) {
instance330drivers/scsi/t128.cfoo = instance->base + T_CONTROL_REG_OFFSET;
instance335drivers/scsi/t128.cinstance->host_no);
instance354drivers/scsi/t128.cstatic inline int NCR5380_pwrite (struct Scsi_Host *instance, unsigned char *src,
instance356drivers/scsi/t128.cregister unsigned char *reg = (unsigned char *) (instance->base + 
instance360drivers/scsi/t128.cwhile (!(instance->base[T_STATUS_REG_OFFSET]) & T_ST_RDY);
instance364drivers/scsi/t128.cif (*(instance->base + T_STATUS_REG_OFFSET) & T_ST_TIM) {
instance367drivers/scsi/t128.cfoo = instance->base + T_CONTROL_REG_OFFSET;
instance372drivers/scsi/t128.cinstance->host_no);
instance135drivers/scsi/t128.h#define NCR5380_setup(instance) \
instance136drivers/scsi/t128.hbase = (volatile unsigned char *) (instance)->base
instance146drivers/scsi/t128.h, instance->hostno, (reg), T128_address(reg))), *(T128_address(reg)))
instance150drivers/scsi/t128.hinstance->hostno, (value), (reg), T128_address(reg));  \