scb 172 arch/mips/sgi-ip22/ip28-berr.c u32 scb, scw; scb 180 arch/mips/sgi-ip22/ip28-berr.c scb = cache_tags.err_addr & ((1 << 12) - 1) & ~((1 << 5) - 1); scb 189 arch/mips/sgi-ip22/ip28-berr.c scb | (1 << 12)*i); scb 191 arch/mips/sgi-ip22/ip28-berr.c scb = cache_tags.err_addr & ((1 << 12) - 1) & ~((1 << 6) - 1); scb 200 arch/mips/sgi-ip22/ip28-berr.c scb | (1 << 12)*i); scb 203 arch/mips/sgi-ip22/ip28-berr.c scb = i & (1 << 13) ? 7:6; /* scblksize = 2^[7..6] */ scb 206 arch/mips/sgi-ip22/ip28-berr.c i = ((1 << scw) - 1) & ~((1 << scb) - 1); scb 210 arch/mips/sgi-ip22/ip28-berr.c scw-1, scb, i & (unsigned)cache_tags.err_addr); scb 408 arch/riscv/include/asm/uaccess.h #define __cmpxchg_user(ptr, old, new, err, size, lrb, scb) \ scb 421 arch/riscv/include/asm/uaccess.h " lr.w" #scb " %[ret], %[ptr]\n" \ scb 447 arch/riscv/include/asm/uaccess.h " lr.d" #scb " %[ret], %[ptr]\n" \ scb 238 arch/s390/kvm/kvm-s390.c static void kvm_clock_sync_scb(struct kvm_s390_sie_block *scb, u64 delta) scb 252 arch/s390/kvm/kvm-s390.c scb->epoch += delta; scb 253 arch/s390/kvm/kvm-s390.c if (scb->ecd & ECD_MEF) { scb 254 arch/s390/kvm/kvm-s390.c scb->epdx += delta_idx; scb 255 arch/s390/kvm/kvm-s390.c if (scb->epoch < delta) scb 256 arch/s390/kvm/kvm-s390.c scb->epdx += 1; scb 53 arch/s390/kvm/vsie.c static int set_validity_icpt(struct kvm_s390_sie_block *scb, scb 56 arch/s390/kvm/vsie.c scb->ipa = 0x1000; scb 57 arch/s390/kvm/vsie.c scb->ipb = ((__u32) reason_code) << 16; scb 58 arch/s390/kvm/vsie.c scb->icptcode = ICPT_VALIDITY; scb 1368 arch/s390/kvm/vsie.c struct kvm_s390_sie_block *scb = READ_ONCE(vcpu->arch.vsie_block); scb 1374 arch/s390/kvm/vsie.c if (scb) { scb 1375 arch/s390/kvm/vsie.c atomic_or(PROG_BLOCK_SIE, &scb->prog20); scb 1376 arch/s390/kvm/vsie.c if (scb->prog0c & PROG_IN_SIE) scb 1377 arch/s390/kvm/vsie.c atomic_or(CPUSTAT_STOP_INT, &scb->cpuflags); scb 113 drivers/bluetooth/bfusb.c struct bfusb_data_scb *scb = (void *) skb->cb; scb 130 drivers/bluetooth/bfusb.c scb->urb = urb; scb 203 drivers/bluetooth/bfusb.c struct bfusb_data_scb *scb; scb 223 drivers/bluetooth/bfusb.c scb = (struct bfusb_data_scb *) skb->cb; scb 224 drivers/bluetooth/bfusb.c scb->urb = urb; scb 968 drivers/media/pci/cx18/cx18-driver.c cx->scb = (struct cx18_scb __iomem *)(cx->enc_mem + SCB_OFFSET); scb 579 drivers/media/pci/cx18/cx18-driver.h struct cx18_scb __iomem *scb; /* pointer to SCB */ scb 390 drivers/media/pci/cx18/cx18-mailbox.c ack_mb = &cx->scb->apu2epu_mb; scb 394 drivers/media/pci/cx18/cx18-mailbox.c ack_mb = &cx->scb->cpu2epu_mb; scb 530 drivers/media/pci/cx18/cx18-mailbox.c mb = &cx->scb->cpu2epu_mb; scb 533 drivers/media/pci/cx18/cx18-mailbox.c mb = &cx->scb->apu2epu_mb; scb 614 drivers/media/pci/cx18/cx18-mailbox.c mb = &cx->scb->epu2apu_mb; scb 620 drivers/media/pci/cx18/cx18-mailbox.c mb = &cx->scb->epu2cpu_mb; scb 293 drivers/media/pci/cx18/cx18-queue.c &cx->scb->cpu_mdl[mdl_id + i].paddr); scb 295 drivers/media/pci/cx18/cx18-queue.c &cx->scb->cpu_mdl[mdl_id + i].length); scb 309 drivers/media/pci/cx18/cx18-queue.c &cx->scb->cpu_mdl[mdl_id + i - 1].length); scb 345 drivers/media/pci/cx18/cx18-queue.c if (((char __iomem *)&cx->scb->cpu_mdl[cx->free_mdl_idx + s->buffers] - scb 346 drivers/media/pci/cx18/cx18-queue.c (char __iomem *)cx->scb) > SCB_RESERVED_SIZE) { scb 347 drivers/media/pci/cx18/cx18-queue.c unsigned bufsz = (((char __iomem *)cx->scb) + SCB_RESERVED_SIZE - scb 348 drivers/media/pci/cx18/cx18-queue.c ((char __iomem *)cx->scb->cpu_mdl)); scb 16 drivers/media/pci/cx18/cx18-scb.c cx18_memset_io(cx, cx->scb, 0, 0x10000); scb 18 drivers/media/pci/cx18/cx18-scb.c cx18_writel(cx, IRQ_APU_TO_CPU, &cx->scb->apu2cpu_irq); scb 19 drivers/media/pci/cx18/cx18-scb.c cx18_writel(cx, IRQ_CPU_TO_APU_ACK, &cx->scb->cpu2apu_irq_ack); scb 20 drivers/media/pci/cx18/cx18-scb.c cx18_writel(cx, IRQ_HPU_TO_CPU, &cx->scb->hpu2cpu_irq); scb 21 drivers/media/pci/cx18/cx18-scb.c cx18_writel(cx, IRQ_CPU_TO_HPU_ACK, &cx->scb->cpu2hpu_irq_ack); scb 22 drivers/media/pci/cx18/cx18-scb.c cx18_writel(cx, IRQ_PPU_TO_CPU, &cx->scb->ppu2cpu_irq); scb 23 drivers/media/pci/cx18/cx18-scb.c cx18_writel(cx, IRQ_CPU_TO_PPU_ACK, &cx->scb->cpu2ppu_irq_ack); scb 24 drivers/media/pci/cx18/cx18-scb.c cx18_writel(cx, IRQ_EPU_TO_CPU, &cx->scb->epu2cpu_irq); scb 25 drivers/media/pci/cx18/cx18-scb.c cx18_writel(cx, IRQ_CPU_TO_EPU_ACK, &cx->scb->cpu2epu_irq_ack); scb 27 drivers/media/pci/cx18/cx18-scb.c cx18_writel(cx, IRQ_CPU_TO_APU, &cx->scb->cpu2apu_irq); scb 28 drivers/media/pci/cx18/cx18-scb.c cx18_writel(cx, IRQ_APU_TO_CPU_ACK, &cx->scb->apu2cpu_irq_ack); scb 29 drivers/media/pci/cx18/cx18-scb.c cx18_writel(cx, IRQ_HPU_TO_APU, &cx->scb->hpu2apu_irq); scb 30 drivers/media/pci/cx18/cx18-scb.c cx18_writel(cx, IRQ_APU_TO_HPU_ACK, &cx->scb->apu2hpu_irq_ack); scb 31 drivers/media/pci/cx18/cx18-scb.c cx18_writel(cx, IRQ_PPU_TO_APU, &cx->scb->ppu2apu_irq); scb 32 drivers/media/pci/cx18/cx18-scb.c cx18_writel(cx, IRQ_APU_TO_PPU_ACK, &cx->scb->apu2ppu_irq_ack); scb 33 drivers/media/pci/cx18/cx18-scb.c cx18_writel(cx, IRQ_EPU_TO_APU, &cx->scb->epu2apu_irq); scb 34 drivers/media/pci/cx18/cx18-scb.c cx18_writel(cx, IRQ_APU_TO_EPU_ACK, &cx->scb->apu2epu_irq_ack); scb 36 drivers/media/pci/cx18/cx18-scb.c cx18_writel(cx, IRQ_CPU_TO_HPU, &cx->scb->cpu2hpu_irq); scb 37 drivers/media/pci/cx18/cx18-scb.c cx18_writel(cx, IRQ_HPU_TO_CPU_ACK, &cx->scb->hpu2cpu_irq_ack); scb 38 drivers/media/pci/cx18/cx18-scb.c cx18_writel(cx, IRQ_APU_TO_HPU, &cx->scb->apu2hpu_irq); scb 39 drivers/media/pci/cx18/cx18-scb.c cx18_writel(cx, IRQ_HPU_TO_APU_ACK, &cx->scb->hpu2apu_irq_ack); scb 40 drivers/media/pci/cx18/cx18-scb.c cx18_writel(cx, IRQ_PPU_TO_HPU, &cx->scb->ppu2hpu_irq); scb 41 drivers/media/pci/cx18/cx18-scb.c cx18_writel(cx, IRQ_HPU_TO_PPU_ACK, &cx->scb->hpu2ppu_irq_ack); scb 42 drivers/media/pci/cx18/cx18-scb.c cx18_writel(cx, IRQ_EPU_TO_HPU, &cx->scb->epu2hpu_irq); scb 43 drivers/media/pci/cx18/cx18-scb.c cx18_writel(cx, IRQ_HPU_TO_EPU_ACK, &cx->scb->hpu2epu_irq_ack); scb 45 drivers/media/pci/cx18/cx18-scb.c cx18_writel(cx, IRQ_CPU_TO_PPU, &cx->scb->cpu2ppu_irq); scb 46 drivers/media/pci/cx18/cx18-scb.c cx18_writel(cx, IRQ_PPU_TO_CPU_ACK, &cx->scb->ppu2cpu_irq_ack); scb 47 drivers/media/pci/cx18/cx18-scb.c cx18_writel(cx, IRQ_APU_TO_PPU, &cx->scb->apu2ppu_irq); scb 48 drivers/media/pci/cx18/cx18-scb.c cx18_writel(cx, IRQ_PPU_TO_APU_ACK, &cx->scb->ppu2apu_irq_ack); scb 49 drivers/media/pci/cx18/cx18-scb.c cx18_writel(cx, IRQ_HPU_TO_PPU, &cx->scb->hpu2ppu_irq); scb 50 drivers/media/pci/cx18/cx18-scb.c cx18_writel(cx, IRQ_PPU_TO_HPU_ACK, &cx->scb->ppu2hpu_irq_ack); scb 51 drivers/media/pci/cx18/cx18-scb.c cx18_writel(cx, IRQ_EPU_TO_PPU, &cx->scb->epu2ppu_irq); scb 52 drivers/media/pci/cx18/cx18-scb.c cx18_writel(cx, IRQ_PPU_TO_EPU_ACK, &cx->scb->ppu2epu_irq_ack); scb 54 drivers/media/pci/cx18/cx18-scb.c cx18_writel(cx, IRQ_CPU_TO_EPU, &cx->scb->cpu2epu_irq); scb 55 drivers/media/pci/cx18/cx18-scb.c cx18_writel(cx, IRQ_EPU_TO_CPU_ACK, &cx->scb->epu2cpu_irq_ack); scb 56 drivers/media/pci/cx18/cx18-scb.c cx18_writel(cx, IRQ_APU_TO_EPU, &cx->scb->apu2epu_irq); scb 57 drivers/media/pci/cx18/cx18-scb.c cx18_writel(cx, IRQ_EPU_TO_APU_ACK, &cx->scb->epu2apu_irq_ack); scb 58 drivers/media/pci/cx18/cx18-scb.c cx18_writel(cx, IRQ_HPU_TO_EPU, &cx->scb->hpu2epu_irq); scb 59 drivers/media/pci/cx18/cx18-scb.c cx18_writel(cx, IRQ_EPU_TO_HPU_ACK, &cx->scb->epu2hpu_irq_ack); scb 60 drivers/media/pci/cx18/cx18-scb.c cx18_writel(cx, IRQ_PPU_TO_EPU, &cx->scb->ppu2epu_irq); scb 61 drivers/media/pci/cx18/cx18-scb.c cx18_writel(cx, IRQ_EPU_TO_PPU_ACK, &cx->scb->epu2ppu_irq_ack); scb 64 drivers/media/pci/cx18/cx18-scb.c &cx->scb->apu2cpu_mb_offset); scb 66 drivers/media/pci/cx18/cx18-scb.c &cx->scb->hpu2cpu_mb_offset); scb 68 drivers/media/pci/cx18/cx18-scb.c &cx->scb->ppu2cpu_mb_offset); scb 70 drivers/media/pci/cx18/cx18-scb.c &cx->scb->epu2cpu_mb_offset); scb 72 drivers/media/pci/cx18/cx18-scb.c &cx->scb->cpu2apu_mb_offset); scb 74 drivers/media/pci/cx18/cx18-scb.c &cx->scb->hpu2apu_mb_offset); scb 76 drivers/media/pci/cx18/cx18-scb.c &cx->scb->ppu2apu_mb_offset); scb 78 drivers/media/pci/cx18/cx18-scb.c &cx->scb->epu2apu_mb_offset); scb 80 drivers/media/pci/cx18/cx18-scb.c &cx->scb->cpu2hpu_mb_offset); scb 82 drivers/media/pci/cx18/cx18-scb.c &cx->scb->apu2hpu_mb_offset); scb 84 drivers/media/pci/cx18/cx18-scb.c &cx->scb->ppu2hpu_mb_offset); scb 86 drivers/media/pci/cx18/cx18-scb.c &cx->scb->epu2hpu_mb_offset); scb 88 drivers/media/pci/cx18/cx18-scb.c &cx->scb->cpu2ppu_mb_offset); scb 90 drivers/media/pci/cx18/cx18-scb.c &cx->scb->apu2ppu_mb_offset); scb 92 drivers/media/pci/cx18/cx18-scb.c &cx->scb->hpu2ppu_mb_offset); scb 94 drivers/media/pci/cx18/cx18-scb.c &cx->scb->epu2ppu_mb_offset); scb 96 drivers/media/pci/cx18/cx18-scb.c &cx->scb->cpu2epu_mb_offset); scb 98 drivers/media/pci/cx18/cx18-scb.c &cx->scb->apu2epu_mb_offset); scb 100 drivers/media/pci/cx18/cx18-scb.c &cx->scb->hpu2epu_mb_offset); scb 102 drivers/media/pci/cx18/cx18-scb.c &cx->scb->ppu2epu_mb_offset); scb 105 drivers/media/pci/cx18/cx18-scb.c &cx->scb->ipc_offset); scb 107 drivers/media/pci/cx18/cx18-scb.c cx18_writel(cx, 1, &cx->scb->epu_state); scb 692 drivers/media/pci/cx18/cx18-streams.c (void __iomem *) &cx->scb->cpu_mdl[mdl->id] - cx->enc_mem, scb 909 drivers/media/pci/cx18/cx18-streams.c (void __iomem *)&cx->scb->cpu_mdl_ack[s->type][0] - cx->enc_mem, scb 910 drivers/media/pci/cx18/cx18-streams.c (void __iomem *)&cx->scb->cpu_mdl_ack[s->type][1] - cx->enc_mem); scb 307 drivers/net/ethernet/i825xx/82596.c struct i596_scb *scb; scb 319 drivers/net/ethernet/i825xx/82596.c volatile struct i596_scb scb; scb 419 drivers/net/ethernet/i825xx/82596.c dev->name, str, lp->scb.status, lp->scb.command); scb 429 drivers/net/ethernet/i825xx/82596.c while (--delcnt && lp->scb.command) scb 433 drivers/net/ethernet/i825xx/82596.c dev->name, str, lp->scb.status, lp->scb.command); scb 466 drivers/net/ethernet/i825xx/82596.c &lp->iscp, lp->iscp.stat, lp->iscp.scb); scb 469 drivers/net/ethernet/i825xx/82596.c &lp->scb, lp->scb.status, lp->scb.command, scb 470 drivers/net/ethernet/i825xx/82596.c lp->scb.cmd, lp->scb.rfd); scb 473 drivers/net/ethernet/i825xx/82596.c lp->scb.crc_err, lp->scb.align_err, lp->scb.resource_err, scb 474 drivers/net/ethernet/i825xx/82596.c lp->scb.over_err, lp->scb.rcvdt_err, lp->scb.short_err); scb 583 drivers/net/ethernet/i825xx/82596.c lp->scb.rfd = WSWAPrfd(virt_to_bus(lp->rfds)); scb 609 drivers/net/ethernet/i825xx/82596.c lp->scb.rfd = WSWAPrfd(virt_to_bus(lp->rfds)); scb 665 drivers/net/ethernet/i825xx/82596.c lp->iscp.scb = WSWAPscb(virt_to_bus((void *)&lp->scb)); scb 669 drivers/net/ethernet/i825xx/82596.c lp->cmd_head = lp->scb.cmd = I596_NULL; scb 673 drivers/net/ethernet/i825xx/82596.c lp->scb.t_on = 7 * 25; scb 674 drivers/net/ethernet/i825xx/82596.c lp->scb.t_off = 1 * 25; scb 688 drivers/net/ethernet/i825xx/82596.c lp->scb.command = 0; scb 729 drivers/net/ethernet/i825xx/82596.c lp->scb.command = RX_START; scb 866 drivers/net/ethernet/i825xx/82596.c lp->scb.rfd = rfd->b_next; scb 907 drivers/net/ethernet/i825xx/82596.c lp->scb.cmd = I596_NULL; scb 923 drivers/net/ethernet/i825xx/82596.c lp->scb.command = CUC_ABORT | RX_ABORT; scb 957 drivers/net/ethernet/i825xx/82596.c lp->scb.cmd = WSWAPcmd(virt_to_bus(&cmd->status)); scb 958 drivers/net/ethernet/i825xx/82596.c lp->scb.command = CUC_START; scb 1041 drivers/net/ethernet/i825xx/82596.c lp->scb.command = CUC_START | RX_START; scb 1208 drivers/net/ethernet/i825xx/82596.c sizeof(struct i596_private), (unsigned long)&lp->scb)); scb 1216 drivers/net/ethernet/i825xx/82596.c lp->scb.command = 0; scb 1217 drivers/net/ethernet/i825xx/82596.c lp->scb.cmd = I596_NULL; scb 1218 drivers/net/ethernet/i825xx/82596.c lp->scb.rfd = I596_NULL; scb 1267 drivers/net/ethernet/i825xx/82596.c status = lp->scb.status; scb 1354 drivers/net/ethernet/i825xx/82596.c lp->scb.cmd = WSWAPcmd(virt_to_bus(&lp->cmd_head->status)); scb 1372 drivers/net/ethernet/i825xx/82596.c lp->scb.command = ack_cmd; scb 1407 drivers/net/ethernet/i825xx/82596.c dev->name, lp->scb.status)); scb 1412 drivers/net/ethernet/i825xx/82596.c lp->scb.command = CUC_ABORT | RX_ABORT; scb 291 drivers/net/ethernet/i825xx/lib82596.c u32 scb; scb 303 drivers/net/ethernet/i825xx/lib82596.c volatile struct i596_scb scb __attribute__((aligned(32))); scb 387 drivers/net/ethernet/i825xx/lib82596.c DMA_INV(dev, &(dma->scb), sizeof(struct i596_scb)); scb 388 drivers/net/ethernet/i825xx/lib82596.c while (--delcnt && dma->scb.command) { scb 390 drivers/net/ethernet/i825xx/lib82596.c DMA_INV(dev, &(dma->scb), sizeof(struct i596_scb)); scb 395 drivers/net/ethernet/i825xx/lib82596.c SWAP16(dma->scb.status), scb 396 drivers/net/ethernet/i825xx/lib82596.c SWAP16(dma->scb.command)); scb 414 drivers/net/ethernet/i825xx/lib82596.c &dma->iscp, SWAP32(dma->iscp.stat), SWAP32(dma->iscp.scb)); scb 417 drivers/net/ethernet/i825xx/lib82596.c &dma->scb, SWAP16(dma->scb.status), SWAP16(dma->scb.command), scb 418 drivers/net/ethernet/i825xx/lib82596.c SWAP16(dma->scb.cmd), SWAP32(dma->scb.rfd)); scb 421 drivers/net/ethernet/i825xx/lib82596.c SWAP32(dma->scb.crc_err), SWAP32(dma->scb.align_err), scb 422 drivers/net/ethernet/i825xx/lib82596.c SWAP32(dma->scb.resource_err), SWAP32(dma->scb.over_err), scb 423 drivers/net/ethernet/i825xx/lib82596.c SWAP32(dma->scb.rcvdt_err), SWAP32(dma->scb.short_err)); scb 502 drivers/net/ethernet/i825xx/lib82596.c dma->scb.rfd = SWAP32(virt_to_dma(lp, dma->rfds)); scb 546 drivers/net/ethernet/i825xx/lib82596.c dma->scb.rfd = SWAP32(virt_to_dma(lp, dma->rfds)); scb 569 drivers/net/ethernet/i825xx/lib82596.c dma->iscp.scb = SWAP32(virt_to_dma(lp, &(dma->scb))); scb 574 drivers/net/ethernet/i825xx/lib82596.c dma->scb.cmd = I596_NULL; scb 580 drivers/net/ethernet/i825xx/lib82596.c DMA_WBACK(dev, &(dma->scb), sizeof(struct i596_scb)); scb 598 drivers/net/ethernet/i825xx/lib82596.c dma->scb.command = 0; scb 599 drivers/net/ethernet/i825xx/lib82596.c DMA_WBACK(dev, &(dma->scb), sizeof(struct i596_scb)); scb 626 drivers/net/ethernet/i825xx/lib82596.c dma->scb.command = SWAP16(RX_START); scb 627 drivers/net/ethernet/i825xx/lib82596.c dma->scb.rfd = SWAP32(virt_to_dma(lp, dma->rfds)); scb 628 drivers/net/ethernet/i825xx/lib82596.c DMA_WBACK(dev, &(dma->scb), sizeof(struct i596_scb)); scb 780 drivers/net/ethernet/i825xx/lib82596.c lp->dma->scb.rfd = rfd->b_next; scb 834 drivers/net/ethernet/i825xx/lib82596.c lp->dma->scb.cmd = I596_NULL; scb 835 drivers/net/ethernet/i825xx/lib82596.c DMA_WBACK(dev, &(lp->dma->scb), sizeof(struct i596_scb)); scb 852 drivers/net/ethernet/i825xx/lib82596.c lp->dma->scb.command = SWAP16(CUC_ABORT | RX_ABORT); scb 853 drivers/net/ethernet/i825xx/lib82596.c DMA_WBACK(dev, &(lp->dma->scb), sizeof(struct i596_scb)); scb 892 drivers/net/ethernet/i825xx/lib82596.c dma->scb.cmd = SWAP32(virt_to_dma(lp, &cmd->status)); scb 893 drivers/net/ethernet/i825xx/lib82596.c dma->scb.command = SWAP16(CUC_START); scb 894 drivers/net/ethernet/i825xx/lib82596.c DMA_WBACK(dev, &(dma->scb), sizeof(struct i596_scb)); scb 958 drivers/net/ethernet/i825xx/lib82596.c lp->dma->scb.command = SWAP16(CUC_START | RX_START); scb 959 drivers/net/ethernet/i825xx/lib82596.c DMA_WBACK_INV(dev, &(lp->dma->scb), sizeof(struct i596_scb)); scb 1080 drivers/net/ethernet/i825xx/lib82596.c dma->scb.command = 0; scb 1081 drivers/net/ethernet/i825xx/lib82596.c dma->scb.cmd = I596_NULL; scb 1082 drivers/net/ethernet/i825xx/lib82596.c dma->scb.rfd = I596_NULL; scb 1100 drivers/net/ethernet/i825xx/lib82596.c &dma->scb)); scb 1127 drivers/net/ethernet/i825xx/lib82596.c status = SWAP16(dma->scb.status); scb 1259 drivers/net/ethernet/i825xx/lib82596.c dma->scb.cmd = SWAP32(virt_to_dma(lp, &lp->cmd_head->status)); scb 1260 drivers/net/ethernet/i825xx/lib82596.c DMA_WBACK_INV(dev, &dma->scb, sizeof(struct i596_scb)); scb 1284 drivers/net/ethernet/i825xx/lib82596.c dma->scb.command = SWAP16(ack_cmd); scb 1285 drivers/net/ethernet/i825xx/lib82596.c DMA_WBACK(dev, &dma->scb, sizeof(struct i596_scb)); scb 1310 drivers/net/ethernet/i825xx/lib82596.c dev->name, SWAP16(lp->dma->scb.status))); scb 1315 drivers/net/ethernet/i825xx/lib82596.c lp->dma->scb.command = SWAP16(CUC_ABORT | RX_ABORT); scb 1316 drivers/net/ethernet/i825xx/lib82596.c DMA_WBACK(dev, &lp->dma->scb, sizeof(struct i596_scb)); scb 101 drivers/net/ethernet/i825xx/sun3_82586.c if(!p->scb->cmd_cuc) break; \ scb 104 drivers/net/ethernet/i825xx/sun3_82586.c printk("%s: scb_cmd timed out: %04x,%04x .. disabling i82586!!\n",dev->name,p->scb->cmd_cuc,p->scb->cus); \ scb 109 drivers/net/ethernet/i825xx/sun3_82586.c if(!p->scb->cmd_ruc) break; \ scb 112 drivers/net/ethernet/i825xx/sun3_82586.c printk("%s: scb_cmd (ruc) timed out: %04x,%04x .. disabling i82586!!\n",dev->name,p->scb->cmd_ruc,p->scb->rus); \ scb 152 drivers/net/ethernet/i825xx/sun3_82586.c volatile struct scb_struct *scb; /* volatile is important */ scb 255 drivers/net/ethernet/i825xx/sun3_82586.c p->scb = (struct scb_struct *) ((char *)p->iscp + sizeof(struct iscp_struct)); scb 262 drivers/net/ethernet/i825xx/sun3_82586.c p->iscp->scb_offset = make16(p->scb); scb 276 drivers/net/ethernet/i825xx/sun3_82586.c memset((char *)p->scb,0,sizeof(struct scb_struct)); scb 416 drivers/net/ethernet/i825xx/sun3_82586.c ptr = (void *) ((char *)p->scb + sizeof(struct scb_struct)); scb 443 drivers/net/ethernet/i825xx/sun3_82586.c p->scb->cbl_offset = make16(cfg_cmd); scb 444 drivers/net/ethernet/i825xx/sun3_82586.c p->scb->cmd_ruc = 0; scb 446 drivers/net/ethernet/i825xx/sun3_82586.c p->scb->cmd_cuc = CUC_START; /* cmd.-unit start */ scb 469 drivers/net/ethernet/i825xx/sun3_82586.c p->scb->cbl_offset = make16(ias_cmd); scb 471 drivers/net/ethernet/i825xx/sun3_82586.c p->scb->cmd_cuc = CUC_START; /* cmd.-unit start */ scb 492 drivers/net/ethernet/i825xx/sun3_82586.c p->scb->cbl_offset = make16(tdr_cmd); scb 493 drivers/net/ethernet/i825xx/sun3_82586.c p->scb->cmd_cuc = CUC_START; /* cmd.-unit start */ scb 507 drivers/net/ethernet/i825xx/sun3_82586.c p->scb->cmd_cuc = p->scb->cus & STAT_MASK; scb 541 drivers/net/ethernet/i825xx/sun3_82586.c p->scb->cbl_offset = make16(mc_cmd); scb 542 drivers/net/ethernet/i825xx/sun3_82586.c p->scb->cmd_cuc = CUC_START; scb 612 drivers/net/ethernet/i825xx/sun3_82586.c p->scb->cbl_offset = make16(p->nop_cmds[0]); scb 613 drivers/net/ethernet/i825xx/sun3_82586.c p->scb->cmd_cuc = CUC_START; scb 624 drivers/net/ethernet/i825xx/sun3_82586.c p->scb->cmd_cuc = p->scb->cus & STAT_MASK; scb 674 drivers/net/ethernet/i825xx/sun3_82586.c p->scb->rfa_offset = make16(p->rfd_first); scb 703 drivers/net/ethernet/i825xx/sun3_82586.c while((stat=p->scb->cus & STAT_MASK)) scb 705 drivers/net/ethernet/i825xx/sun3_82586.c p->scb->cmd_cuc = stat; scb 714 drivers/net/ethernet/i825xx/sun3_82586.c if(p->scb->rus & RU_SUSPEND) /* special case: RU_SUSPEND */ scb 717 drivers/net/ethernet/i825xx/sun3_82586.c p->scb->cmd_ruc = RUC_RESUME; scb 723 drivers/net/ethernet/i825xx/sun3_82586.c printk("%s: Receiver-Unit went 'NOT READY': %04x/%02x.\n",dev->name,(int) stat,(int) p->scb->rus); scb 735 drivers/net/ethernet/i825xx/sun3_82586.c printk("%s: oops! CU has left active state. stat: %04x/%02x.\n",dev->name,(int) stat,(int) p->scb->cus); scb 743 drivers/net/ethernet/i825xx/sun3_82586.c if(p->scb->cmd_cuc) /* timed out? */ scb 827 drivers/net/ethernet/i825xx/sun3_82586.c p->scb->rfa_offset = make16(p->rfd_top); scb 836 drivers/net/ethernet/i825xx/sun3_82586.c p->scb->cmd_ruc = RUC_RESUME; scb 868 drivers/net/ethernet/i825xx/sun3_82586.c printk("\nerrs: %04x %04x stat: %04x\n",(int)p->scb->rsc_errs,(int)p->scb->ovrn_errs,(int)p->scb->status); scb 869 drivers/net/ethernet/i825xx/sun3_82586.c printk("\nerrs: %04x %04x rus: %02x, cus: %02x\n",(int)p->scb->rsc_errs,(int)p->scb->ovrn_errs,(int)p->scb->rus,(int)p->scb->cus); scb 889 drivers/net/ethernet/i825xx/sun3_82586.c p->scb->cmd_ruc = RUC_ABORT; /* usually the RU is in the 'no resource'-state .. abort it now. */ scb 897 drivers/net/ethernet/i825xx/sun3_82586.c printk("%s: Receive-Unit restarted. Status: %04x\n",dev->name,p->scb->rus); scb 962 drivers/net/ethernet/i825xx/sun3_82586.c p->scb->rfa_offset = make16(p->rfd_first); scb 963 drivers/net/ethernet/i825xx/sun3_82586.c p->scb->cmd_ruc = RUC_START; scb 972 drivers/net/ethernet/i825xx/sun3_82586.c if(p->scb->cus & CU_ACTIVE) /* COMMAND-UNIT active? */ scb 979 drivers/net/ethernet/i825xx/sun3_82586.c p->scb->cmd_cuc = CUC_ABORT; scb 982 drivers/net/ethernet/i825xx/sun3_82586.c p->scb->cbl_offset = make16(p->nop_cmds[p->nop_point]); scb 983 drivers/net/ethernet/i825xx/sun3_82586.c p->scb->cmd_cuc = CUC_START; scb 992 drivers/net/ethernet/i825xx/sun3_82586.c printk("%s: xmitter timed out, try to restart! stat: %02x\n",dev->name,p->scb->cus); scb 1043 drivers/net/ethernet/i825xx/sun3_82586.c if(p->scb->cus & CU_ACTIVE) scb 1046 drivers/net/ethernet/i825xx/sun3_82586.c printk("%s: stat: %04x %04x\n",dev->name,p->scb->cus,swab16(p->xmit_cmds[0]->cmd_status)); scb 1055 drivers/net/ethernet/i825xx/sun3_82586.c if( (p->scb->cus & CU_STATUS) == CU_SUSPEND) scb 1056 drivers/net/ethernet/i825xx/sun3_82586.c p->scb->cmd_cuc = CUC_RESUME; scb 1059 drivers/net/ethernet/i825xx/sun3_82586.c p->scb->cbl_offset = make16(p->xmit_cmds[0]); scb 1060 drivers/net/ethernet/i825xx/sun3_82586.c p->scb->cmd_cuc = CUC_START; scb 1067 drivers/net/ethernet/i825xx/sun3_82586.c if( (p->scb->cus & CU_ACTIVE)) /* test it, because CU sometimes doesn't start immediately */ scb 1122 drivers/net/ethernet/i825xx/sun3_82586.c crc = swab16(p->scb->crc_errs); /* get error-statistic from the ni82586 */ scb 1123 drivers/net/ethernet/i825xx/sun3_82586.c p->scb->crc_errs = 0; scb 1124 drivers/net/ethernet/i825xx/sun3_82586.c aln = swab16(p->scb->aln_errs); scb 1125 drivers/net/ethernet/i825xx/sun3_82586.c p->scb->aln_errs = 0; scb 1126 drivers/net/ethernet/i825xx/sun3_82586.c rsc = swab16(p->scb->rsc_errs); scb 1127 drivers/net/ethernet/i825xx/sun3_82586.c p->scb->rsc_errs = 0; scb 1128 drivers/net/ethernet/i825xx/sun3_82586.c ovrn = swab16(p->scb->ovrn_errs); scb 1129 drivers/net/ethernet/i825xx/sun3_82586.c p->scb->ovrn_errs = 0; scb 1164 drivers/net/ethernet/i825xx/sun3_82586.c p->scb->cmd_cuc = CUC_ABORT; scb 1174 drivers/net/ethernet/i825xx/sun3_82586.c p->scb->cbl_offset = make16(dump_cmd); scb 1175 drivers/net/ethernet/i825xx/sun3_82586.c p->scb->cmd_cuc = CUC_START; scb 270 drivers/net/ethernet/intel/e100.c } scb; scb 613 drivers/net/ethernet/intel/e100.c (void)ioread8(&nic->csr->scb.status); scb 621 drivers/net/ethernet/intel/e100.c iowrite8(irq_mask_none, &nic->csr->scb.cmd_hi); scb 631 drivers/net/ethernet/intel/e100.c iowrite8(irq_mask_all, &nic->csr->scb.cmd_hi); scb 826 drivers/net/ethernet/intel/e100.c if (likely(!ioread8(&nic->csr->scb.cmd_lo))) scb 838 drivers/net/ethernet/intel/e100.c iowrite32(dma_addr, &nic->csr->scb.gen_ptr); scb 839 drivers/net/ethernet/intel/e100.c iowrite8(cmd, &nic->csr->scb.cmd_lo); scb 1369 drivers/net/ethernet/intel/e100.c iowrite8(~0, &nic->csr->scb.stat_ack); scb 1718 drivers/net/ethernet/intel/e100.c iowrite8(ioread8(&nic->csr->scb.cmd_hi) | irq_sw_gen,&nic->csr->scb.cmd_hi); scb 1985 drivers/net/ethernet/intel/e100.c if (ioread8(&nic->csr->scb.status) & rus_no_res) scb 2013 drivers/net/ethernet/intel/e100.c if (ioread8(&nic->csr->scb.status) & rus_no_res) scb 2123 drivers/net/ethernet/intel/e100.c iowrite8(stat_ack_rnr, &nic->csr->scb.stat_ack); scb 2196 drivers/net/ethernet/intel/e100.c u8 stat_ack = ioread8(&nic->csr->scb.stat_ack); scb 2206 drivers/net/ethernet/intel/e100.c iowrite8(stat_ack, &nic->csr->scb.stat_ack); scb 2334 drivers/net/ethernet/intel/e100.c "scb.status=0x%02X\n", ioread8(&nic->csr->scb.status)); scb 2453 drivers/net/ethernet/intel/e100.c buff[0] = ioread8(&nic->csr->scb.cmd_hi) << 24 | scb 2454 drivers/net/ethernet/intel/e100.c ioread8(&nic->csr->scb.cmd_lo) << 16 | scb 2455 drivers/net/ethernet/intel/e100.c ioread16(&nic->csr->scb.status); scb 216 drivers/net/macsec.c bool scb; scb 405 drivers/net/macsec.c (secy->n_rx_sc > 1 && !tx_sc->end_station && !tx_sc->scb); scb 463 drivers/net/macsec.c if (tx_sc->scb) scb 2392 drivers/net/macsec.c nla_put_u8(skb, MACSEC_SECY_ATTR_SCB, tx_sc->scb) || scb 3059 drivers/net/macsec.c tx_sc->scb = !!nla_get_u8(data[IFLA_MACSEC_SCB]); scb 3220 drivers/net/macsec.c secy->tx_sc.scb = false; scb 3319 drivers/net/macsec.c bool es, scb, sci; scb 3370 drivers/net/macsec.c scb = data[IFLA_MACSEC_SCB] ? nla_get_u8(data[IFLA_MACSEC_SCB]) : false; scb 3372 drivers/net/macsec.c if ((sci && (scb || es)) || (scb && es)) scb 3437 drivers/net/macsec.c nla_put_u8(skb, IFLA_MACSEC_SCB, tx_sc->scb) || scb 284 drivers/net/wireless/broadcom/brcm80211/brcmsmac/ampdu.c struct scb *scb) scb 286 drivers/net/wireless/broadcom/brcm80211/brcmsmac/ampdu.c struct scb_ampdu *scb_ampdu = &scb->scb_ampdu; scb 485 drivers/net/wireless/broadcom/brcm80211/brcmsmac/ampdu.c struct scb *scb = &wlc->pri_scb; scb 486 drivers/net/wireless/broadcom/brcm80211/brcmsmac/ampdu.c scb_ampdu = &scb->scb_ampdu; scb 496 drivers/net/wireless/broadcom/brcm80211/brcmsmac/ampdu.c ini->scb = scb_ampdu->scb; scb 522 drivers/net/wireless/broadcom/brcm80211/brcmsmac/ampdu.c struct scb *scb = &wlc->pri_scb; scb 523 drivers/net/wireless/broadcom/brcm80211/brcmsmac/ampdu.c struct scb_ampdu *scb_ampdu = &scb->scb_ampdu; scb 837 drivers/net/wireless/broadcom/brcm80211/brcmsmac/ampdu.c brcms_c_ampdu_dotxstatus_complete(struct ampdu_info *ampdu, struct scb *scb, scb 864 drivers/net/wireless/broadcom/brcm80211/brcmsmac/ampdu.c scb_ampdu = &scb->scb_ampdu; scb 1030 drivers/net/wireless/broadcom/brcm80211/brcmsmac/ampdu.c brcms_c_ampdu_dotxstatus(struct ampdu_info *ampdu, struct scb *scb, scb 1062 drivers/net/wireless/broadcom/brcm80211/brcmsmac/ampdu.c if (scb) { scb 1063 drivers/net/wireless/broadcom/brcm80211/brcmsmac/ampdu.c scb_ampdu = &scb->scb_ampdu; scb 1065 drivers/net/wireless/broadcom/brcm80211/brcmsmac/ampdu.c brcms_c_ampdu_dotxstatus_complete(ampdu, scb, p, txs, s1, s2); scb 48 drivers/net/wireless/broadcom/brcm80211/brcmsmac/ampdu.h void brcms_c_ampdu_dotxstatus(struct ampdu_info *ampdu, struct scb *scb, scb 809 drivers/net/wireless/broadcom/brcm80211/brcmsmac/mac80211_if.c struct scb *scb = &wl->wlc->pri_scb; scb 811 drivers/net/wireless/broadcom/brcm80211/brcmsmac/mac80211_if.c brcms_c_init_scb(scb); scb 813 drivers/net/wireless/broadcom/brcm80211/brcmsmac/mac80211_if.c wl->pub->global_ampdu = &(scb->scb_ampdu); scb 814 drivers/net/wireless/broadcom/brcm80211/brcmsmac/mac80211_if.c wl->pub->global_ampdu->scb = scb; scb 830 drivers/net/wireless/broadcom/brcm80211/brcmsmac/mac80211_if.c struct scb *scb = &wl->wlc->pri_scb; scb 837 drivers/net/wireless/broadcom/brcm80211/brcmsmac/mac80211_if.c if (WARN_ON(scb->magic != SCB_MAGIC)) scb 840 drivers/net/wireless/broadcom/brcm80211/brcmsmac/main.c struct scb *scb = NULL; scb 897 drivers/net/wireless/broadcom/brcm80211/brcmsmac/main.c scb = &wlc->pri_scb; scb 900 drivers/net/wireless/broadcom/brcm80211/brcmsmac/main.c brcms_c_ampdu_dotxstatus(wlc->ampdu, scb, p, txs); scb 3157 drivers/net/wireless/broadcom/brcm80211/brcmsmac/main.c void brcms_c_init_scb(struct scb *scb) scb 3161 drivers/net/wireless/broadcom/brcm80211/brcmsmac/main.c memset(scb, 0, sizeof(struct scb)); scb 3162 drivers/net/wireless/broadcom/brcm80211/brcmsmac/main.c scb->flags = SCB_WMECAP | SCB_HTCAP; scb 3164 drivers/net/wireless/broadcom/brcm80211/brcmsmac/main.c scb->seqnum[i] = 0; scb 3165 drivers/net/wireless/broadcom/brcm80211/brcmsmac/main.c scb->seqctl[i] = 0xFFFF; scb 3168 drivers/net/wireless/broadcom/brcm80211/brcmsmac/main.c scb->seqctl_nonqos = 0xFFFF; scb 3169 drivers/net/wireless/broadcom/brcm80211/brcmsmac/main.c scb->magic = SCB_MAGIC; scb 6210 drivers/net/wireless/broadcom/brcm80211/brcmsmac/main.c struct sk_buff *p, struct scb *scb, uint frag, scb 6274 drivers/net/wireless/broadcom/brcm80211/brcmsmac/main.c scb->seqnum[p->priority]++; scb 6278 drivers/net/wireless/broadcom/brcm80211/brcmsmac/main.c seq |= (scb->seqnum[p->priority] << SEQNUM_SHIFT); scb 6368 drivers/net/wireless/broadcom/brcm80211/brcmsmac/main.c && BRCMS_STF_SS_STBC_TX(wlc, scb)) { scb 6402 drivers/net/wireless/broadcom/brcm80211/brcmsmac/main.c else if (scb->flags & SCB_IS40) scb 6684 drivers/net/wireless/broadcom/brcm80211/brcmsmac/main.c brcm_c_ampdu_null_delim_cnt(wlc->ampdu, scb, rspec, phylen); scb 6757 drivers/net/wireless/broadcom/brcm80211/brcmsmac/main.c if ((scb->flags & SCB_WMECAP) && qos && wlc->edcf_txop[ac]) { scb 6908 drivers/net/wireless/broadcom/brcm80211/brcmsmac/main.c struct scb *scb = &wlc->pri_scb; scb 6911 drivers/net/wireless/broadcom/brcm80211/brcmsmac/main.c brcms_c_d11hdrs_mac80211(wlc, hw, sdu, scb, 0, 1, fifo, 0); scb 216 drivers/net/wireless/broadcom/brcm80211/brcmsmac/main.h #define BRCMS_STF_SS_STBC_TX(wlc, scb) \ scb 218 drivers/net/wireless/broadcom/brcm80211/brcmsmac/main.h || (((scb)->flags & SCB_STBCCAP) && \ scb 262 drivers/net/wireless/broadcom/brcm80211/brcmsmac/main.h struct scb *hwrs_scb; /* permanent scb for hw rateset */ scb 565 drivers/net/wireless/broadcom/brcm80211/brcmsmac/main.h struct scb pri_scb; scb 668 drivers/net/wireless/broadcom/brcm80211/brcmsmac/main.h void brcms_c_init_scb(struct scb *scb); scb 42 drivers/net/wireless/broadcom/brcm80211/brcmsmac/scb.h struct scb *scb; /* backptr for easy lookup */ scb 47 drivers/net/wireless/broadcom/brcm80211/brcmsmac/scb.h struct scb *scb; /* back pointer for easy reference */ scb 1848 drivers/net/wireless/ray_cs.c rcsindex = readb(&((struct scb __iomem *)(local->sram))->rcs_index); scb 86 drivers/scsi/a100u2w.c static void inia100_scb_handler(struct orc_host *host, struct orc_scb *scb); scb 277 drivers/scsi/a100u2w.c static void orc_exec_scb(struct orc_host * host, struct orc_scb * scb) scb 279 drivers/scsi/a100u2w.c scb->status = ORCSCB_POST; scb 280 drivers/scsi/a100u2w.c outb(scb->scbidx, host->base + ORC_PQUEUE); scb 444 drivers/scsi/a100u2w.c struct orc_scb *scb; scb 457 drivers/scsi/a100u2w.c scb = host->scb_virt; scb 462 drivers/scsi/a100u2w.c scb->sg_addr = cpu_to_le32((u32) escb_phys); scb 463 drivers/scsi/a100u2w.c scb->sense_addr = cpu_to_le32((u32) escb_phys); scb 464 drivers/scsi/a100u2w.c scb->escb = escb; scb 465 drivers/scsi/a100u2w.c scb->scbidx = i; scb 466 drivers/scsi/a100u2w.c scb++; scb 597 drivers/scsi/a100u2w.c struct orc_scb *scb; scb 604 drivers/scsi/a100u2w.c scb = (struct orc_scb *) NULL; scb 629 drivers/scsi/a100u2w.c if ((scb = __orc_alloc_scb(host)) == NULL) { scb 637 drivers/scsi/a100u2w.c scb->opcode = ORC_BUSDEVRST; scb 638 drivers/scsi/a100u2w.c scb->target = target; scb 639 drivers/scsi/a100u2w.c scb->hastat = 0; scb 640 drivers/scsi/a100u2w.c scb->tastat = 0; scb 641 drivers/scsi/a100u2w.c scb->status = 0x0; scb 642 drivers/scsi/a100u2w.c scb->link = 0xFF; scb 643 drivers/scsi/a100u2w.c scb->reserved0 = 0; scb 644 drivers/scsi/a100u2w.c scb->reserved1 = 0; scb 645 drivers/scsi/a100u2w.c scb->xferlen = cpu_to_le32(0); scb 646 drivers/scsi/a100u2w.c scb->sg_len = cpu_to_le32(0); scb 650 drivers/scsi/a100u2w.c orc_exec_scb(host, scb); /* Start execute SCB */ scb 698 drivers/scsi/a100u2w.c struct orc_scb *scb; scb 702 drivers/scsi/a100u2w.c scb = __orc_alloc_scb(host); scb 704 drivers/scsi/a100u2w.c return scb; scb 716 drivers/scsi/a100u2w.c static void orc_release_scb(struct orc_host *host, struct orc_scb *scb) scb 723 drivers/scsi/a100u2w.c index = scb->scbidx; scb 738 drivers/scsi/a100u2w.c static int orchid_abort_scb(struct orc_host * host, struct orc_scb * scb) scb 747 drivers/scsi/a100u2w.c outb(scb->scbidx, host->base + ORC_HDATA); /* Write address */ scb 765 drivers/scsi/a100u2w.c struct orc_scb *scb; scb 771 drivers/scsi/a100u2w.c scb = host->scb_virt; scb 777 drivers/scsi/a100u2w.c for (i = 0; i < ORC_MAXQUEUE; i++, scb++) { scb 778 drivers/scsi/a100u2w.c escb = scb->escb; scb 779 drivers/scsi/a100u2w.c if (scb->status && escb->srb == cmd) { scb 780 drivers/scsi/a100u2w.c if (scb->tag_msg == 0) { scb 784 drivers/scsi/a100u2w.c if (orchid_abort_scb(host, scb)) { scb 814 drivers/scsi/a100u2w.c struct orc_scb *scb; scb 825 drivers/scsi/a100u2w.c scb = (struct orc_scb *) ((unsigned long) host->scb_virt + (unsigned long) (sizeof(struct orc_scb) * scb_index)); scb 826 drivers/scsi/a100u2w.c scb->status = 0x0; scb 828 drivers/scsi/a100u2w.c inia100_scb_handler(host, scb); scb 842 drivers/scsi/a100u2w.c static int inia100_build_scb(struct orc_host * host, struct orc_scb * scb, struct scsi_cmnd * cmd) scb 850 drivers/scsi/a100u2w.c escb = scb->escb; scb 855 drivers/scsi/a100u2w.c scb->opcode = ORC_EXECSCSI; scb 856 drivers/scsi/a100u2w.c scb->flags = SCF_NO_DCHK; /* Clear done bit */ scb 857 drivers/scsi/a100u2w.c scb->target = cmd->device->id; scb 858 drivers/scsi/a100u2w.c scb->lun = cmd->device->lun; scb 859 drivers/scsi/a100u2w.c scb->reserved0 = 0; scb 860 drivers/scsi/a100u2w.c scb->reserved1 = 0; scb 861 drivers/scsi/a100u2w.c scb->sg_len = cpu_to_le32(0); scb 863 drivers/scsi/a100u2w.c scb->xferlen = cpu_to_le32((u32) scsi_bufflen(cmd)); scb 873 drivers/scsi/a100u2w.c scb->sg_len = cpu_to_le32((u32) (count_sg * 8)); scb 880 drivers/scsi/a100u2w.c scb->sg_len = cpu_to_le32(0); scb 884 drivers/scsi/a100u2w.c scb->sg_addr = (u32) scb->sense_addr; /* sense_addr is already little endian */ scb 885 drivers/scsi/a100u2w.c scb->hastat = 0; scb 886 drivers/scsi/a100u2w.c scb->tastat = 0; scb 887 drivers/scsi/a100u2w.c scb->link = 0xFF; scb 888 drivers/scsi/a100u2w.c scb->sense_len = SENSE_SIZE; scb 889 drivers/scsi/a100u2w.c scb->cdb_len = cmd->cmd_len; scb 890 drivers/scsi/a100u2w.c if (scb->cdb_len >= IMAX_CDB) { scb 892 drivers/scsi/a100u2w.c scb->cdb_len = IMAX_CDB; scb 894 drivers/scsi/a100u2w.c scb->ident = (u8)(cmd->device->lun & 0xff) | DISC_ALLOW; scb 896 drivers/scsi/a100u2w.c scb->tag_msg = SIMPLE_QUEUE_TAG; /* Do simple tag only */ scb 898 drivers/scsi/a100u2w.c scb->tag_msg = 0; /* No tag support */ scb 900 drivers/scsi/a100u2w.c memcpy(scb->cdb, cmd->cmnd, scb->cdb_len); scb 916 drivers/scsi/a100u2w.c struct orc_scb *scb; scb 922 drivers/scsi/a100u2w.c if ((scb = orc_alloc_scb(host)) == NULL) scb 925 drivers/scsi/a100u2w.c if (inia100_build_scb(host, scb, cmd)) { scb 926 drivers/scsi/a100u2w.c orc_release_scb(host, scb); scb 929 drivers/scsi/a100u2w.c orc_exec_scb(host, scb); /* Start execute SCB */ scb 991 drivers/scsi/a100u2w.c static void inia100_scb_handler(struct orc_host *host, struct orc_scb *scb) scb 996 drivers/scsi/a100u2w.c escb = scb->escb; scb 999 drivers/scsi/a100u2w.c orc_release_scb(host, scb); /* Release SCB for current channel */ scb 1004 drivers/scsi/a100u2w.c switch (scb->hastat) { scb 1008 drivers/scsi/a100u2w.c scb->hastat = 0; scb 1013 drivers/scsi/a100u2w.c scb->hastat = DID_TIME_OUT; scb 1020 drivers/scsi/a100u2w.c scb->hastat = DID_RESET; scb 1024 drivers/scsi/a100u2w.c scb->hastat = DID_ABORT; scb 1034 drivers/scsi/a100u2w.c printk(KERN_DEBUG "inia100: %x %x\n", scb->hastat, scb->tastat); scb 1035 drivers/scsi/a100u2w.c scb->hastat = DID_ERROR; /* Couldn't find any better */ scb 1039 drivers/scsi/a100u2w.c if (scb->tastat == 2) { /* Check condition */ scb 1043 drivers/scsi/a100u2w.c cmd->result = scb->tastat | (scb->hastat << 16); scb 1046 drivers/scsi/a100u2w.c orc_release_scb(host, scb); /* Release SCB for current channel */ scb 76 drivers/scsi/aic7xxx/aic79xx.h #define SCB_IS_SCSIBUS_B(ahd, scb) (0) scb 77 drivers/scsi/aic7xxx/aic79xx.h #define SCB_GET_OUR_ID(scb) \ scb 78 drivers/scsi/aic7xxx/aic79xx.h SCSIID_OUR_ID((scb)->hscb->scsiid) scb 79 drivers/scsi/aic7xxx/aic79xx.h #define SCB_GET_TARGET(ahd, scb) \ scb 80 drivers/scsi/aic7xxx/aic79xx.h SCSIID_TARGET((ahd), (scb)->hscb->scsiid) scb 81 drivers/scsi/aic7xxx/aic79xx.h #define SCB_GET_CHANNEL(ahd, scb) \ scb 82 drivers/scsi/aic7xxx/aic79xx.h SCSIID_CHANNEL(ahd, (scb)->hscb->scsiid) scb 83 drivers/scsi/aic7xxx/aic79xx.h #define SCB_GET_LUN(scb) \ scb 84 drivers/scsi/aic7xxx/aic79xx.h ((scb)->hscb->lun) scb 85 drivers/scsi/aic7xxx/aic79xx.h #define SCB_GET_TARGET_OFFSET(ahd, scb) \ scb 86 drivers/scsi/aic7xxx/aic79xx.h SCB_GET_TARGET(ahd, scb) scb 87 drivers/scsi/aic7xxx/aic79xx.h #define SCB_GET_TARGET_MASK(ahd, scb) \ scb 88 drivers/scsi/aic7xxx/aic79xx.h (0x01 << (SCB_GET_TARGET_OFFSET(ahd, scb))) scb 90 drivers/scsi/aic7xxx/aic79xx.h #define SCB_IS_SILENT(scb) \ scb 92 drivers/scsi/aic7xxx/aic79xx.h && (((scb)->flags & SCB_SILENT) != 0)) scb 94 drivers/scsi/aic7xxx/aic79xx.h #define SCB_IS_SILENT(scb) \ scb 95 drivers/scsi/aic7xxx/aic79xx.h (((scb)->flags & SCB_SILENT) != 0) scb 109 drivers/scsi/aic7xxx/aic79xx.h #define SCB_GET_TAG(scb) \ scb 110 drivers/scsi/aic7xxx/aic79xx.h ahd_le16toh(scb->hscb->tag) scb 120 drivers/scsi/aic7xxx/aic79xx.h #define AHD_GET_SCB_COL_IDX(ahd, scb) \ scb 121 drivers/scsi/aic7xxx/aic79xx.h ((SCB_GET_LUN(scb) << 4) | SCB_GET_TARGET(ahd, scb)) scb 123 drivers/scsi/aic7xxx/aic79xx.h #define AHD_SET_SCB_COL_IDX(scb, col_idx) \ scb 125 drivers/scsi/aic7xxx/aic79xx.h (scb)->hscb->scsiid = ((col_idx) << TID_SHIFT) & TID; \ scb 126 drivers/scsi/aic7xxx/aic79xx.h (scb)->hscb->lun = ((col_idx) >> 4) & (AHD_NUM_LUNS_NONPKT-1); \ scb 595 drivers/scsi/aic7xxx/aic79xx.h SLIST_ENTRY(scb) sle; scb 596 drivers/scsi/aic7xxx/aic79xx.h LIST_ENTRY(scb) le; scb 597 drivers/scsi/aic7xxx/aic79xx.h TAILQ_ENTRY(scb) tqe; scb 600 drivers/scsi/aic7xxx/aic79xx.h SLIST_ENTRY(scb) sle; scb 601 drivers/scsi/aic7xxx/aic79xx.h LIST_ENTRY(scb) le; scb 602 drivers/scsi/aic7xxx/aic79xx.h TAILQ_ENTRY(scb) tqe; scb 606 drivers/scsi/aic7xxx/aic79xx.h struct scb *col_scb; scb 623 drivers/scsi/aic7xxx/aic79xx.h TAILQ_HEAD(scb_tailq, scb); scb 624 drivers/scsi/aic7xxx/aic79xx.h BSD_LIST_HEAD(scb_list, scb); scb 647 drivers/scsi/aic7xxx/aic79xx.h struct scb *scbindex[AHD_SCB_MAX]; scb 1064 drivers/scsi/aic7xxx/aic79xx.h BSD_LIST_HEAD(, scb) pending_scbs; scb 1340 drivers/scsi/aic7xxx/aic79xx.h struct scb *scb); scb 1360 drivers/scsi/aic7xxx/aic79xx.h struct scb *ahd_get_scb(struct ahd_softc *ahd, u_int col_idx); scb 1361 drivers/scsi/aic7xxx/aic79xx.h void ahd_free_scb(struct ahd_softc *ahd, struct scb *scb); scb 128 drivers/scsi/aic7xxx/aic79xx_core.c struct scb *scb); scb 131 drivers/scsi/aic7xxx/aic79xx_core.c struct scb *scb); scb 167 drivers/scsi/aic7xxx/aic79xx_core.c struct scb *scb); scb 180 drivers/scsi/aic7xxx/aic79xx_core.c struct scb *scb, u_int col_idx); scb 182 drivers/scsi/aic7xxx/aic79xx_core.c struct scb *scb); scb 185 drivers/scsi/aic7xxx/aic79xx_core.c struct scb *prev_scb, scb 186 drivers/scsi/aic7xxx/aic79xx_core.c struct scb *scb); scb 216 drivers/scsi/aic7xxx/aic79xx_core.c struct scb *scb); scb 218 drivers/scsi/aic7xxx/aic79xx_core.c struct scb *scb); scb 239 drivers/scsi/aic7xxx/aic79xx_core.c struct scb *scb); scb 246 drivers/scsi/aic7xxx/aic79xx_core.c struct scb *scb); scb 248 drivers/scsi/aic7xxx/aic79xx_core.c struct scb *scb); scb 257 drivers/scsi/aic7xxx/aic79xx_core.c static int ahd_match_scb(struct ahd_softc *ahd, struct scb *scb, scb 406 drivers/scsi/aic7xxx/aic79xx_core.c ahd_sg_setup(struct ahd_softc *ahd, struct scb *scb, scb 409 drivers/scsi/aic7xxx/aic79xx_core.c scb->sg_count++; scb 430 drivers/scsi/aic7xxx/aic79xx_core.c ahd_setup_scb_common(struct ahd_softc *ahd, struct scb *scb) scb 433 drivers/scsi/aic7xxx/aic79xx_core.c scb->crc_retry_count = 0; scb 434 drivers/scsi/aic7xxx/aic79xx_core.c if ((scb->flags & SCB_PACKETIZED) != 0) { scb 436 drivers/scsi/aic7xxx/aic79xx_core.c scb->hscb->task_attribute = scb->hscb->control & SCB_TAG_TYPE; scb 438 drivers/scsi/aic7xxx/aic79xx_core.c if (ahd_get_transfer_length(scb) & 0x01) scb 439 drivers/scsi/aic7xxx/aic79xx_core.c scb->hscb->task_attribute = SCB_XFERLEN_ODD; scb 441 drivers/scsi/aic7xxx/aic79xx_core.c scb->hscb->task_attribute = 0; scb 444 drivers/scsi/aic7xxx/aic79xx_core.c if (scb->hscb->cdb_len <= MAX_CDB_LEN_WITH_SENSE_ADDR scb 445 drivers/scsi/aic7xxx/aic79xx_core.c || (scb->hscb->cdb_len & SCB_CDB_LEN_PTR) != 0) scb 446 drivers/scsi/aic7xxx/aic79xx_core.c scb->hscb->shared_data.idata.cdb_plus_saddr.sense_addr = scb 447 drivers/scsi/aic7xxx/aic79xx_core.c ahd_htole32(scb->sense_busaddr); scb 451 drivers/scsi/aic7xxx/aic79xx_core.c ahd_setup_data_scb(struct ahd_softc *ahd, struct scb *scb) scb 459 drivers/scsi/aic7xxx/aic79xx_core.c sg = (struct ahd_dma64_seg *)scb->sg_list; scb 460 drivers/scsi/aic7xxx/aic79xx_core.c scb->hscb->dataptr = sg->addr; scb 461 drivers/scsi/aic7xxx/aic79xx_core.c scb->hscb->datacnt = sg->len; scb 466 drivers/scsi/aic7xxx/aic79xx_core.c sg = (struct ahd_dma_seg *)scb->sg_list; scb 467 drivers/scsi/aic7xxx/aic79xx_core.c dataptr_words = (uint32_t*)&scb->hscb->dataptr; scb 474 drivers/scsi/aic7xxx/aic79xx_core.c scb->hscb->dataptr |= ahd_htole64(high_addr << 8); scb 476 drivers/scsi/aic7xxx/aic79xx_core.c scb->hscb->datacnt = sg->len; scb 484 drivers/scsi/aic7xxx/aic79xx_core.c scb->hscb->sgptr = ahd_htole32(scb->sg_list_busaddr|SG_FULL_RESID); scb 488 drivers/scsi/aic7xxx/aic79xx_core.c ahd_setup_noxfer_scb(struct ahd_softc *ahd, struct scb *scb) scb 490 drivers/scsi/aic7xxx/aic79xx_core.c scb->hscb->sgptr = ahd_htole32(SG_LIST_NULL); scb 491 drivers/scsi/aic7xxx/aic79xx_core.c scb->hscb->dataptr = 0; scb 492 drivers/scsi/aic7xxx/aic79xx_core.c scb->hscb->datacnt = 0; scb 497 drivers/scsi/aic7xxx/aic79xx_core.c ahd_sg_bus_to_virt(struct ahd_softc *ahd, struct scb *scb, uint32_t sg_busaddr) scb 502 drivers/scsi/aic7xxx/aic79xx_core.c sg_offset = sg_busaddr - (scb->sg_list_busaddr - ahd_sg_size(ahd)); scb 503 drivers/scsi/aic7xxx/aic79xx_core.c return ((uint8_t *)scb->sg_list + sg_offset); scb 507 drivers/scsi/aic7xxx/aic79xx_core.c ahd_sg_virt_to_bus(struct ahd_softc *ahd, struct scb *scb, void *sg) scb 512 drivers/scsi/aic7xxx/aic79xx_core.c sg_offset = ((uint8_t *)sg - (uint8_t *)scb->sg_list) scb 515 drivers/scsi/aic7xxx/aic79xx_core.c return (scb->sg_list_busaddr + sg_offset); scb 519 drivers/scsi/aic7xxx/aic79xx_core.c ahd_sync_scb(struct ahd_softc *ahd, struct scb *scb, int op) scb 522 drivers/scsi/aic7xxx/aic79xx_core.c scb->hscb_map->dmamap, scb 523 drivers/scsi/aic7xxx/aic79xx_core.c /*offset*/(uint8_t*)scb->hscb - scb->hscb_map->vaddr, scb 524 drivers/scsi/aic7xxx/aic79xx_core.c /*len*/sizeof(*scb->hscb), op); scb 528 drivers/scsi/aic7xxx/aic79xx_core.c ahd_sync_sglist(struct ahd_softc *ahd, struct scb *scb, int op) scb 530 drivers/scsi/aic7xxx/aic79xx_core.c if (scb->sg_count == 0) scb 534 drivers/scsi/aic7xxx/aic79xx_core.c scb->sg_map->dmamap, scb 535 drivers/scsi/aic7xxx/aic79xx_core.c /*offset*/scb->sg_list_busaddr - ahd_sg_size(ahd), scb 536 drivers/scsi/aic7xxx/aic79xx_core.c /*len*/ahd_sg_size(ahd) * scb->sg_count, op); scb 540 drivers/scsi/aic7xxx/aic79xx_core.c ahd_sync_sense(struct ahd_softc *ahd, struct scb *scb, int op) scb 543 drivers/scsi/aic7xxx/aic79xx_core.c scb->sense_map->dmamap, scb 544 drivers/scsi/aic7xxx/aic79xx_core.c /*offset*/scb->sense_busaddr, scb 787 drivers/scsi/aic7xxx/aic79xx_core.c struct scb * scb 790 drivers/scsi/aic7xxx/aic79xx_core.c struct scb* scb; scb 794 drivers/scsi/aic7xxx/aic79xx_core.c scb = ahd->scb_data.scbindex[tag]; scb 795 drivers/scsi/aic7xxx/aic79xx_core.c if (scb != NULL) scb 796 drivers/scsi/aic7xxx/aic79xx_core.c ahd_sync_scb(ahd, scb, scb 798 drivers/scsi/aic7xxx/aic79xx_core.c return (scb); scb 802 drivers/scsi/aic7xxx/aic79xx_core.c ahd_swap_with_next_hscb(struct ahd_softc *ahd, struct scb *scb) scb 823 drivers/scsi/aic7xxx/aic79xx_core.c memcpy(q_hscb, scb->hscb, sizeof(*scb->hscb)); scb 825 drivers/scsi/aic7xxx/aic79xx_core.c q_hscb->next_hscb_busaddr = scb->hscb->hscb_busaddr; scb 828 drivers/scsi/aic7xxx/aic79xx_core.c ahd->next_queued_hscb = scb->hscb; scb 829 drivers/scsi/aic7xxx/aic79xx_core.c ahd->next_queued_hscb_map = scb->hscb_map; scb 830 drivers/scsi/aic7xxx/aic79xx_core.c scb->hscb = q_hscb; scb 831 drivers/scsi/aic7xxx/aic79xx_core.c scb->hscb_map = q_hscb_map; scb 834 drivers/scsi/aic7xxx/aic79xx_core.c ahd->scb_data.scbindex[SCB_GET_TAG(scb)] = scb; scb 841 drivers/scsi/aic7xxx/aic79xx_core.c ahd_queue_scb(struct ahd_softc *ahd, struct scb *scb) scb 843 drivers/scsi/aic7xxx/aic79xx_core.c ahd_swap_with_next_hscb(ahd, scb); scb 845 drivers/scsi/aic7xxx/aic79xx_core.c if (SCBID_IS_NULL(SCB_GET_TAG(scb))) scb 847 drivers/scsi/aic7xxx/aic79xx_core.c SCB_GET_TAG(scb)); scb 852 drivers/scsi/aic7xxx/aic79xx_core.c ahd->qinfifo[AHD_QIN_WRAP(ahd->qinfifonext)] = SCB_GET_TAG(scb); scb 855 drivers/scsi/aic7xxx/aic79xx_core.c if (scb->sg_count != 0) scb 856 drivers/scsi/aic7xxx/aic79xx_core.c ahd_setup_data_scb(ahd, scb); scb 858 drivers/scsi/aic7xxx/aic79xx_core.c ahd_setup_noxfer_scb(ahd, scb); scb 859 drivers/scsi/aic7xxx/aic79xx_core.c ahd_setup_scb_common(ahd, scb); scb 865 drivers/scsi/aic7xxx/aic79xx_core.c ahd_sync_scb(ahd, scb, BUS_DMASYNC_PREREAD|BUS_DMASYNC_PREWRITE); scb 871 drivers/scsi/aic7xxx/aic79xx_core.c host_dataptr = ahd_le64toh(scb->hscb->dataptr); scb 874 drivers/scsi/aic7xxx/aic79xx_core.c SCB_GET_TAG(scb), scb->hscb->scsiid, scb 875 drivers/scsi/aic7xxx/aic79xx_core.c ahd_le32toh(scb->hscb->hscb_busaddr), scb 878 drivers/scsi/aic7xxx/aic79xx_core.c ahd_le32toh(scb->hscb->datacnt)); scb 1092 drivers/scsi/aic7xxx/aic79xx_core.c ahd_update_residual(struct ahd_softc *ahd, struct scb *scb) scb 1096 drivers/scsi/aic7xxx/aic79xx_core.c sgptr = ahd_le32toh(scb->hscb->sgptr); scb 1098 drivers/scsi/aic7xxx/aic79xx_core.c ahd_calc_residual(ahd, scb); scb 1102 drivers/scsi/aic7xxx/aic79xx_core.c ahd_complete_scb(struct ahd_softc *ahd, struct scb *scb) scb 1106 drivers/scsi/aic7xxx/aic79xx_core.c sgptr = ahd_le32toh(scb->hscb->sgptr); scb 1108 drivers/scsi/aic7xxx/aic79xx_core.c ahd_handle_scb_status(ahd, scb); scb 1110 drivers/scsi/aic7xxx/aic79xx_core.c ahd_done(ahd, scb); scb 1189 drivers/scsi/aic7xxx/aic79xx_core.c struct scb *scb; scb 1208 drivers/scsi/aic7xxx/aic79xx_core.c scb = ahd_lookup_scb(ahd, scbid); scb 1209 drivers/scsi/aic7xxx/aic79xx_core.c if (scb == NULL) { scb 1226 drivers/scsi/aic7xxx/aic79xx_core.c if (ahd_scb_active_in_fifo(ahd, scb) == 0) scb 1229 drivers/scsi/aic7xxx/aic79xx_core.c ahd_run_data_fifo(ahd, scb); scb 1282 drivers/scsi/aic7xxx/aic79xx_core.c ahd_complete_scb(ahd, scb); scb 1332 drivers/scsi/aic7xxx/aic79xx_core.c scb = ahd_lookup_scb(ahd, scbid); scb 1333 drivers/scsi/aic7xxx/aic79xx_core.c if (scb == NULL) { scb 1338 drivers/scsi/aic7xxx/aic79xx_core.c hscb_ptr = (uint8_t *)scb->hscb; scb 1342 drivers/scsi/aic7xxx/aic79xx_core.c ahd_complete_scb(ahd, scb); scb 1353 drivers/scsi/aic7xxx/aic79xx_core.c scb = ahd_lookup_scb(ahd, scbid); scb 1354 drivers/scsi/aic7xxx/aic79xx_core.c if (scb == NULL) { scb 1360 drivers/scsi/aic7xxx/aic79xx_core.c ahd_complete_scb(ahd, scb); scb 1370 drivers/scsi/aic7xxx/aic79xx_core.c scb = ahd_lookup_scb(ahd, scbid); scb 1371 drivers/scsi/aic7xxx/aic79xx_core.c if (scb == NULL) { scb 1377 drivers/scsi/aic7xxx/aic79xx_core.c ahd_complete_scb(ahd, scb); scb 1395 drivers/scsi/aic7xxx/aic79xx_core.c ahd_scb_active_in_fifo(struct ahd_softc *ahd, struct scb *scb) scb 1404 drivers/scsi/aic7xxx/aic79xx_core.c if (ahd_get_scbptr(ahd) != SCB_GET_TAG(scb) scb 1424 drivers/scsi/aic7xxx/aic79xx_core.c ahd_run_data_fifo(struct ahd_softc *ahd, struct scb *scb) scb 1578 drivers/scsi/aic7xxx/aic79xx_core.c sg = ahd_sg_bus_to_virt(ahd, scb, sgptr); scb 1585 drivers/scsi/aic7xxx/aic79xx_core.c sg = ahd_sg_bus_to_virt(ahd, scb, sgptr); scb 1661 drivers/scsi/aic7xxx/aic79xx_core.c struct scb *scb; scb 1675 drivers/scsi/aic7xxx/aic79xx_core.c scb = ahd_lookup_scb(ahd, scb_index); scb 1676 drivers/scsi/aic7xxx/aic79xx_core.c if (scb == NULL) { scb 1683 drivers/scsi/aic7xxx/aic79xx_core.c ahd_handle_scb_status(ahd, scb); scb 1685 drivers/scsi/aic7xxx/aic79xx_core.c ahd_done(ahd, scb); scb 1727 drivers/scsi/aic7xxx/aic79xx_core.c ahd_dump_sglist(struct scb *scb) scb 1731 drivers/scsi/aic7xxx/aic79xx_core.c if (scb->sg_count > 0) { scb 1732 drivers/scsi/aic7xxx/aic79xx_core.c if ((scb->ahd_softc->flags & AHD_64BIT_ADDRESSING) != 0) { scb 1735 drivers/scsi/aic7xxx/aic79xx_core.c sg_list = (struct ahd_dma64_seg*)scb->sg_list; scb 1736 drivers/scsi/aic7xxx/aic79xx_core.c for (i = 0; i < scb->sg_count; i++) { scb 1753 drivers/scsi/aic7xxx/aic79xx_core.c sg_list = (struct ahd_dma_seg*)scb->sg_list; scb 1754 drivers/scsi/aic7xxx/aic79xx_core.c for (i = 0; i < scb->sg_count; i++) { scb 1803 drivers/scsi/aic7xxx/aic79xx_core.c struct scb *scb; scb 1809 drivers/scsi/aic7xxx/aic79xx_core.c scb = ahd_lookup_scb(ahd, scbid); scb 1810 drivers/scsi/aic7xxx/aic79xx_core.c if (scb == NULL) { scb 1818 drivers/scsi/aic7xxx/aic79xx_core.c ahd_outb(ahd, SAVED_SCSIID, scb->hscb->scsiid); scb 1819 drivers/scsi/aic7xxx/aic79xx_core.c ahd_outb(ahd, SAVED_LUN, scb->hscb->lun); scb 1853 drivers/scsi/aic7xxx/aic79xx_core.c struct scb *scb; scb 1857 drivers/scsi/aic7xxx/aic79xx_core.c scb = ahd_lookup_scb(ahd, scbid); scb 1858 drivers/scsi/aic7xxx/aic79xx_core.c if (scb != NULL) scb 1859 drivers/scsi/aic7xxx/aic79xx_core.c ahd_print_path(ahd, scb); scb 1869 drivers/scsi/aic7xxx/aic79xx_core.c struct scb *scb; scb 1873 drivers/scsi/aic7xxx/aic79xx_core.c scb = ahd_lookup_scb(ahd, scbid); scb 1874 drivers/scsi/aic7xxx/aic79xx_core.c if (scb == NULL) { scb 1879 drivers/scsi/aic7xxx/aic79xx_core.c ahd_outq(ahd, HADDR, scb->sense_busaddr); scb 1908 drivers/scsi/aic7xxx/aic79xx_core.c struct scb *scb; scb 1926 drivers/scsi/aic7xxx/aic79xx_core.c scb = ahd_lookup_scb(ahd, scbid); scb 1927 drivers/scsi/aic7xxx/aic79xx_core.c if (scb == NULL) { scb 1934 drivers/scsi/aic7xxx/aic79xx_core.c ahd_compile_devinfo(&devinfo, SCB_GET_OUR_ID(scb), scb 1935 drivers/scsi/aic7xxx/aic79xx_core.c SCB_GET_TARGET(ahd, scb), scb 1936 drivers/scsi/aic7xxx/aic79xx_core.c SCB_GET_LUN(scb), scb 1937 drivers/scsi/aic7xxx/aic79xx_core.c SCB_GET_CHANNEL(ahd, scb), scb 1958 drivers/scsi/aic7xxx/aic79xx_core.c scb->hscb->control &= ~(TAG_ENB|SCB_TAG_TYPE); scb 1959 drivers/scsi/aic7xxx/aic79xx_core.c scb->hscb->control |= MK_MESSAGE; scb 1960 drivers/scsi/aic7xxx/aic79xx_core.c ahd_outb(ahd, SCB_CONTROL, scb->hscb->control); scb 1962 drivers/scsi/aic7xxx/aic79xx_core.c ahd_outb(ahd, SAVED_SCSIID, scb->hscb->scsiid); scb 1970 drivers/scsi/aic7xxx/aic79xx_core.c scb->flags &= ~SCB_PACKETIZED; scb 1971 drivers/scsi/aic7xxx/aic79xx_core.c scb->flags |= SCB_ABORT|SCB_EXTERNAL_RESET; scb 1972 drivers/scsi/aic7xxx/aic79xx_core.c ahd_freeze_devq(ahd, scb); scb 1973 drivers/scsi/aic7xxx/aic79xx_core.c ahd_set_transaction_status(scb, CAM_REQUEUE_REQ); scb 1974 drivers/scsi/aic7xxx/aic79xx_core.c ahd_freeze_scb(scb); scb 1991 drivers/scsi/aic7xxx/aic79xx_core.c ahd_print_path(ahd, scb); scb 2003 drivers/scsi/aic7xxx/aic79xx_core.c struct scb *scb; scb 2013 drivers/scsi/aic7xxx/aic79xx_core.c scb = ahd_lookup_scb(ahd, scb_index); scb 2014 drivers/scsi/aic7xxx/aic79xx_core.c if (scb == NULL) { scb 2070 drivers/scsi/aic7xxx/aic79xx_core.c struct scb *scb; scb 2090 drivers/scsi/aic7xxx/aic79xx_core.c scb = ahd_lookup_scb(ahd, scb_index); scb 2095 drivers/scsi/aic7xxx/aic79xx_core.c scb); scb 2112 drivers/scsi/aic7xxx/aic79xx_core.c scb); scb 2206 drivers/scsi/aic7xxx/aic79xx_core.c struct scb *scb; scb 2213 drivers/scsi/aic7xxx/aic79xx_core.c scb = ahd_lookup_scb(ahd, scbindex); scb 2217 drivers/scsi/aic7xxx/aic79xx_core.c ahd_print_path(ahd, scb); scb 2220 drivers/scsi/aic7xxx/aic79xx_core.c SCB_GET_TAG(scb)); scb 2221 drivers/scsi/aic7xxx/aic79xx_core.c ahd_print_path(ahd, scb); scb 2226 drivers/scsi/aic7xxx/aic79xx_core.c ahd_get_transfer_length(scb), scb->sg_count); scb 2227 drivers/scsi/aic7xxx/aic79xx_core.c ahd_dump_sglist(scb); scb 2235 drivers/scsi/aic7xxx/aic79xx_core.c ahd_freeze_devq(ahd, scb); scb 2236 drivers/scsi/aic7xxx/aic79xx_core.c ahd_set_transaction_status(scb, CAM_DATA_RUN_ERR); scb 2237 drivers/scsi/aic7xxx/aic79xx_core.c ahd_freeze_scb(scb); scb 2243 drivers/scsi/aic7xxx/aic79xx_core.c struct scb *scb; scb 2251 drivers/scsi/aic7xxx/aic79xx_core.c scb = ahd_lookup_scb(ahd, scbid); scb 2252 drivers/scsi/aic7xxx/aic79xx_core.c if (scb != NULL scb 2253 drivers/scsi/aic7xxx/aic79xx_core.c && (scb->flags & SCB_RECOVERY_SCB) != 0) scb 2258 drivers/scsi/aic7xxx/aic79xx_core.c ahd_search_qinfifo(ahd, SCB_GET_TARGET(ahd, scb), scb 2259 drivers/scsi/aic7xxx/aic79xx_core.c SCB_GET_CHANNEL(ahd, scb), scb 2260 drivers/scsi/aic7xxx/aic79xx_core.c SCB_GET_LUN(scb), SCB_GET_TAG(scb), scb 2270 drivers/scsi/aic7xxx/aic79xx_core.c struct scb *scb; scb 2273 drivers/scsi/aic7xxx/aic79xx_core.c scb = ahd_lookup_scb(ahd, scbid); scb 2274 drivers/scsi/aic7xxx/aic79xx_core.c if (scb != NULL) { scb 2279 drivers/scsi/aic7xxx/aic79xx_core.c ahd_print_path(ahd, scb); scb 2281 drivers/scsi/aic7xxx/aic79xx_core.c scb->hscb->task_management); scb 2285 drivers/scsi/aic7xxx/aic79xx_core.c switch (scb->hscb->task_management) { scb 2287 drivers/scsi/aic7xxx/aic79xx_core.c tag = SCB_GET_TAG(scb); scb 2291 drivers/scsi/aic7xxx/aic79xx_core.c lun = scb->hscb->lun; scb 2293 drivers/scsi/aic7xxx/aic79xx_core.c ahd_abort_scbs(ahd, SCB_GET_TARGET(ahd, scb), scb 2298 drivers/scsi/aic7xxx/aic79xx_core.c lun = scb->hscb->lun; scb 2304 drivers/scsi/aic7xxx/aic79xx_core.c ahd_scb_devinfo(ahd, &devinfo, scb); scb 2324 drivers/scsi/aic7xxx/aic79xx_core.c struct scb *scb; scb 2331 drivers/scsi/aic7xxx/aic79xx_core.c scb = ahd_lookup_scb(ahd, scbid); scb 2332 drivers/scsi/aic7xxx/aic79xx_core.c if (scb != NULL) { scb 2337 drivers/scsi/aic7xxx/aic79xx_core.c ahd_print_path(ahd, scb); scb 2351 drivers/scsi/aic7xxx/aic79xx_core.c ahd_search_qinfifo(ahd, SCB_GET_TARGET(ahd, scb), scb 2352 drivers/scsi/aic7xxx/aic79xx_core.c SCB_GET_CHANNEL(ahd, scb), scb 2353 drivers/scsi/aic7xxx/aic79xx_core.c SCB_GET_LUN(scb), SCB_GET_TAG(scb), scb 2387 drivers/scsi/aic7xxx/aic79xx_core.c struct scb *scb; scb 2428 drivers/scsi/aic7xxx/aic79xx_core.c scb = ahd_lookup_scb(ahd, scbid); scb 2429 drivers/scsi/aic7xxx/aic79xx_core.c if (scb != NULL scb 2431 drivers/scsi/aic7xxx/aic79xx_core.c scb = NULL; scb 2492 drivers/scsi/aic7xxx/aic79xx_core.c scb = ahd_lookup_scb(ahd, scbid); scb 2493 drivers/scsi/aic7xxx/aic79xx_core.c if (scb == NULL) { scb 2502 drivers/scsi/aic7xxx/aic79xx_core.c ahd_print_path(ahd, scb); scb 2507 drivers/scsi/aic7xxx/aic79xx_core.c ahd_scb_devinfo(ahd, &devinfo, scb); scb 2508 drivers/scsi/aic7xxx/aic79xx_core.c ahd_set_transaction_status(scb, CAM_SEL_TIMEOUT); scb 2509 drivers/scsi/aic7xxx/aic79xx_core.c ahd_freeze_devq(ahd, scb); scb 2582 drivers/scsi/aic7xxx/aic79xx_core.c scb = ahd_lookup_scb(ahd, scbid); scb 2583 drivers/scsi/aic7xxx/aic79xx_core.c if (scb == NULL) { scb 2589 drivers/scsi/aic7xxx/aic79xx_core.c packetized = (scb->flags & SCB_PACKETIZED) != 0; scb 2669 drivers/scsi/aic7xxx/aic79xx_core.c struct scb *scb; scb 2680 drivers/scsi/aic7xxx/aic79xx_core.c scb = NULL; scb 2719 drivers/scsi/aic7xxx/aic79xx_core.c scb = ahd_lookup_scb(ahd, scbid); scb 2720 drivers/scsi/aic7xxx/aic79xx_core.c if (scb != NULL && SCB_IS_SILENT(scb)) scb 2815 drivers/scsi/aic7xxx/aic79xx_core.c if (scb == NULL) { scb 2846 drivers/scsi/aic7xxx/aic79xx_core.c if (scb != NULL && msg_out == MSG_INITIATOR_DET_ERR) scb 2847 drivers/scsi/aic7xxx/aic79xx_core.c scb->flags |= SCB_TRANSMISSION_ERROR; scb 2904 drivers/scsi/aic7xxx/aic79xx_core.c struct scb *scb; scb 2928 drivers/scsi/aic7xxx/aic79xx_core.c scb = ahd_lookup_scb(ahd, scbid); scb 2929 drivers/scsi/aic7xxx/aic79xx_core.c if (scb == NULL) scb 2970 drivers/scsi/aic7xxx/aic79xx_core.c if (scb->crc_retry_count < AHD_MAX_LQ_CRC_ERRORS) { scb 2971 drivers/scsi/aic7xxx/aic79xx_core.c if (SCB_IS_SILENT(scb) == FALSE) { scb 2972 drivers/scsi/aic7xxx/aic79xx_core.c ahd_print_path(ahd, scb); scb 2976 drivers/scsi/aic7xxx/aic79xx_core.c scb->crc_retry_count++; scb 2978 drivers/scsi/aic7xxx/aic79xx_core.c ahd_set_transaction_status(scb, CAM_UNCOR_PARITY); scb 2979 drivers/scsi/aic7xxx/aic79xx_core.c ahd_freeze_scb(scb); scb 2980 drivers/scsi/aic7xxx/aic79xx_core.c ahd_freeze_devq(ahd, scb); scb 3004 drivers/scsi/aic7xxx/aic79xx_core.c struct scb *scb; scb 3007 drivers/scsi/aic7xxx/aic79xx_core.c scb = ahd_lookup_scb(ahd, scbid); scb 3008 drivers/scsi/aic7xxx/aic79xx_core.c ahd_print_path(ahd, scb); scb 3011 drivers/scsi/aic7xxx/aic79xx_core.c ahd_abort_scbs(ahd, SCB_GET_TARGET(ahd, scb), 'A', scb 3012 drivers/scsi/aic7xxx/aic79xx_core.c SCB_GET_LUN(scb), SCB_GET_TAG(scb), scb 3031 drivers/scsi/aic7xxx/aic79xx_core.c struct scb *scb; scb 3056 drivers/scsi/aic7xxx/aic79xx_core.c scb = ahd_lookup_scb(ahd, scbid); scb 3057 drivers/scsi/aic7xxx/aic79xx_core.c if (scb != NULL scb 3059 drivers/scsi/aic7xxx/aic79xx_core.c scb = NULL; scb 3071 drivers/scsi/aic7xxx/aic79xx_core.c if (scb == NULL) { scb 3079 drivers/scsi/aic7xxx/aic79xx_core.c ahd_print_path(ahd, scb); scb 3081 drivers/scsi/aic7xxx/aic79xx_core.c SCB_GET_TAG(scb), scb 3085 drivers/scsi/aic7xxx/aic79xx_core.c tag = SCB_GET_TAG(scb); scb 3087 drivers/scsi/aic7xxx/aic79xx_core.c if ((scb->flags & SCB_EXTERNAL_RESET) != 0) { scb 3100 drivers/scsi/aic7xxx/aic79xx_core.c tag = SCB_GET_TAG(scb); scb 3101 drivers/scsi/aic7xxx/aic79xx_core.c saved_lun = scb->hscb->lun; scb 3116 drivers/scsi/aic7xxx/aic79xx_core.c if (scb != NULL scb 3117 drivers/scsi/aic7xxx/aic79xx_core.c && scb->io_ctx->ccb_h.func_code== XPT_RESET_DEV scb 3118 drivers/scsi/aic7xxx/aic79xx_core.c && ahd_match_scb(ahd, scb, target, 'A', scb 3121 drivers/scsi/aic7xxx/aic79xx_core.c ahd_set_transaction_status(scb, CAM_REQ_CMP); scb 3168 drivers/scsi/aic7xxx/aic79xx_core.c if (scb != NULL) { scb 3175 drivers/scsi/aic7xxx/aic79xx_core.c ahd_freeze_devq(ahd, scb); scb 3176 drivers/scsi/aic7xxx/aic79xx_core.c ahd_qinfifo_requeue_tail(ahd, scb); scb 3194 drivers/scsi/aic7xxx/aic79xx_core.c if (scb != NULL) { scb 3201 drivers/scsi/aic7xxx/aic79xx_core.c ahd_freeze_devq(ahd, scb); scb 3202 drivers/scsi/aic7xxx/aic79xx_core.c ahd_qinfifo_requeue_tail(ahd, scb); scb 3220 drivers/scsi/aic7xxx/aic79xx_core.c if (scb != NULL) { scb 3227 drivers/scsi/aic7xxx/aic79xx_core.c ahd_freeze_devq(ahd, scb); scb 3228 drivers/scsi/aic7xxx/aic79xx_core.c ahd_qinfifo_requeue_tail(ahd, scb); scb 3257 drivers/scsi/aic7xxx/aic79xx_core.c if (scb != NULL && printerror != 0 scb 3261 drivers/scsi/aic7xxx/aic79xx_core.c ahd_freeze_devq(ahd, scb); scb 3262 drivers/scsi/aic7xxx/aic79xx_core.c ahd_set_transaction_status(scb, CAM_REQUEUE_REQ); scb 3263 drivers/scsi/aic7xxx/aic79xx_core.c ahd_freeze_scb(scb); scb 3265 drivers/scsi/aic7xxx/aic79xx_core.c ahd_abort_scbs(ahd, SCB_GET_TARGET(ahd, scb), scb 3266 drivers/scsi/aic7xxx/aic79xx_core.c SCB_GET_CHANNEL(ahd, scb), scb 3267 drivers/scsi/aic7xxx/aic79xx_core.c SCB_GET_LUN(scb), SCB_LIST_NULL, scb 3274 drivers/scsi/aic7xxx/aic79xx_core.c ahd_done(ahd, scb); scb 3282 drivers/scsi/aic7xxx/aic79xx_core.c if (scb != NULL) { scb 3285 drivers/scsi/aic7xxx/aic79xx_core.c if ((scb->hscb->control & TAG_ENB) != 0) scb 3286 drivers/scsi/aic7xxx/aic79xx_core.c tag = SCB_GET_TAG(scb); scb 3289 drivers/scsi/aic7xxx/aic79xx_core.c ahd_print_path(ahd, scb); scb 3291 drivers/scsi/aic7xxx/aic79xx_core.c SCB_GET_LUN(scb), tag, scb 3318 drivers/scsi/aic7xxx/aic79xx_core.c struct scb *scb; scb 3327 drivers/scsi/aic7xxx/aic79xx_core.c scb = ahd_lookup_scb(ahd, scbid); scb 3341 drivers/scsi/aic7xxx/aic79xx_core.c scb = NULL; scb 3342 drivers/scsi/aic7xxx/aic79xx_core.c } else if (scb == NULL) { scb 3351 drivers/scsi/aic7xxx/aic79xx_core.c ahd_set_transaction_status(scb, CAM_SEQUENCE_FAIL); scb 3353 drivers/scsi/aic7xxx/aic79xx_core.c ahd_print_path(ahd, scb); scb 3364 drivers/scsi/aic7xxx/aic79xx_core.c ahd_print_path(ahd, scb); scb 3367 drivers/scsi/aic7xxx/aic79xx_core.c ahd_print_path(ahd, scb); scb 3394 drivers/scsi/aic7xxx/aic79xx_core.c if (scb == NULL) { scb 3401 drivers/scsi/aic7xxx/aic79xx_core.c ahd_print_path(ahd, scb); scb 3402 drivers/scsi/aic7xxx/aic79xx_core.c scb->flags |= SCB_ABORT; scb 3592 drivers/scsi/aic7xxx/aic79xx_core.c ahd_print_scb(struct scb *scb) scb 3597 drivers/scsi/aic7xxx/aic79xx_core.c hscb = scb->hscb; scb 3599 drivers/scsi/aic7xxx/aic79xx_core.c (void *)scb, scb 3612 drivers/scsi/aic7xxx/aic79xx_core.c SCB_GET_TAG(scb)); scb 3613 drivers/scsi/aic7xxx/aic79xx_core.c ahd_dump_sglist(scb); scb 4216 drivers/scsi/aic7xxx/aic79xx_core.c struct scb *pending_scb; scb 4373 drivers/scsi/aic7xxx/aic79xx_core.c struct scb *scb) scb 4378 drivers/scsi/aic7xxx/aic79xx_core.c our_id = SCSIID_OUR_ID(scb->hscb->scsiid); scb 4380 drivers/scsi/aic7xxx/aic79xx_core.c if ((scb->hscb->control & TARGET_SCB) != 0) scb 4382 drivers/scsi/aic7xxx/aic79xx_core.c ahd_compile_devinfo(devinfo, our_id, SCB_GET_TARGET(ahd, scb), scb 4383 drivers/scsi/aic7xxx/aic79xx_core.c SCB_GET_LUN(scb), SCB_GET_CHANNEL(ahd, scb), role); scb 4396 drivers/scsi/aic7xxx/aic79xx_core.c struct scb *scb) scb 4419 drivers/scsi/aic7xxx/aic79xx_core.c } else if (scb == NULL) { scb 4428 drivers/scsi/aic7xxx/aic79xx_core.c if ((scb->flags & SCB_DEVICE_RESET) == 0 scb 4429 drivers/scsi/aic7xxx/aic79xx_core.c && (scb->flags & SCB_PACKETIZED) == 0 scb 4433 drivers/scsi/aic7xxx/aic79xx_core.c identify_msg = MSG_IDENTIFYFLAG | SCB_GET_LUN(scb); scb 4434 drivers/scsi/aic7xxx/aic79xx_core.c if ((scb->hscb->control & DISCENB) != 0) scb 4439 drivers/scsi/aic7xxx/aic79xx_core.c if ((scb->hscb->control & TAG_ENB) != 0) { scb 4441 drivers/scsi/aic7xxx/aic79xx_core.c scb->hscb->control & (TAG_ENB|SCB_TAG_TYPE); scb 4442 drivers/scsi/aic7xxx/aic79xx_core.c ahd->msgout_buf[ahd->msgout_index++] = SCB_GET_TAG(scb); scb 4447 drivers/scsi/aic7xxx/aic79xx_core.c if (scb->flags & SCB_DEVICE_RESET) { scb 4450 drivers/scsi/aic7xxx/aic79xx_core.c ahd_print_path(ahd, scb); scb 4460 drivers/scsi/aic7xxx/aic79xx_core.c } else if ((scb->flags & SCB_ABORT) != 0) { scb 4462 drivers/scsi/aic7xxx/aic79xx_core.c if ((scb->hscb->control & TAG_ENB) != 0) { scb 4468 drivers/scsi/aic7xxx/aic79xx_core.c ahd_print_path(ahd, scb); scb 4470 drivers/scsi/aic7xxx/aic79xx_core.c (scb->hscb->control & TAG_ENB) != 0 ? " Tag" : ""); scb 4479 drivers/scsi/aic7xxx/aic79xx_core.c } else if ((scb->flags & (SCB_AUTO_NEGOTIATE|SCB_NEGOTIATE)) != 0) { scb 4492 drivers/scsi/aic7xxx/aic79xx_core.c printk("SCSIID = %x, target_mask = %x\n", scb->hscb->scsiid, scb 4495 drivers/scsi/aic7xxx/aic79xx_core.c "SCB flags = %x", SCB_GET_TAG(scb), scb->hscb->control, scb 4497 drivers/scsi/aic7xxx/aic79xx_core.c scb->flags); scb 4506 drivers/scsi/aic7xxx/aic79xx_core.c scb->hscb->control &= ~MK_MESSAGE; scb 5522 drivers/scsi/aic7xxx/aic79xx_core.c struct scb *scb; scb 5530 drivers/scsi/aic7xxx/aic79xx_core.c scb = ahd_lookup_scb(ahd, scb_index); scb 5610 drivers/scsi/aic7xxx/aic79xx_core.c } else if ((scb->hscb->control & MSG_SIMPLE_TASK) != 0) { scb 5614 drivers/scsi/aic7xxx/aic79xx_core.c tag_type = (scb->hscb->control & MSG_SIMPLE_TASK); scb 5620 drivers/scsi/aic7xxx/aic79xx_core.c ahd_set_tags(ahd, scb->io_ctx, devinfo, AHD_QUEUE_NONE); scb 5628 drivers/scsi/aic7xxx/aic79xx_core.c ahd_set_tags(ahd, scb->io_ctx, devinfo, AHD_QUEUE_BASIC); scb 5638 drivers/scsi/aic7xxx/aic79xx_core.c scb->hscb->control &= mask; scb 5639 drivers/scsi/aic7xxx/aic79xx_core.c ahd_set_transaction_tag(scb, /*enabled*/FALSE, scb 5643 drivers/scsi/aic7xxx/aic79xx_core.c ahd_busy_tcl(ahd, BUILD_TCL(scb->hscb->scsiid, devinfo->lun), scb 5644 drivers/scsi/aic7xxx/aic79xx_core.c SCB_GET_TAG(scb)); scb 5651 drivers/scsi/aic7xxx/aic79xx_core.c ahd_search_qinfifo(ahd, SCB_GET_TARGET(ahd, scb), scb 5652 drivers/scsi/aic7xxx/aic79xx_core.c SCB_GET_CHANNEL(ahd, scb), scb 5653 drivers/scsi/aic7xxx/aic79xx_core.c SCB_GET_LUN(scb), /*tag*/SCB_LIST_NULL, scb 5688 drivers/scsi/aic7xxx/aic79xx_core.c struct scb *scb; scb 5691 drivers/scsi/aic7xxx/aic79xx_core.c scb = ahd_lookup_scb(ahd, scb_index); scb 5697 drivers/scsi/aic7xxx/aic79xx_core.c || ahd_get_transfer_dir(scb) != CAM_DIR_IN) { scb 5745 drivers/scsi/aic7xxx/aic79xx_core.c sg = ahd_sg_bus_to_virt(ahd, scb, sgptr); scb 5753 drivers/scsi/aic7xxx/aic79xx_core.c if (sg != scb->sg_list scb 5772 drivers/scsi/aic7xxx/aic79xx_core.c sgptr = ahd_sg_virt_to_bus(ahd, scb, scb 5778 drivers/scsi/aic7xxx/aic79xx_core.c sg = ahd_sg_bus_to_virt(ahd, scb, sgptr); scb 5786 drivers/scsi/aic7xxx/aic79xx_core.c if (sg != scb->sg_list scb 5805 drivers/scsi/aic7xxx/aic79xx_core.c sgptr = ahd_sg_virt_to_bus(ahd, scb, scb 5837 drivers/scsi/aic7xxx/aic79xx_core.c struct scb *scb; scb 5849 drivers/scsi/aic7xxx/aic79xx_core.c scb = ahd_lookup_scb(ahd, scb_index); scb 5860 drivers/scsi/aic7xxx/aic79xx_core.c ahd_print_path(ahd, scb); scb 5884 drivers/scsi/aic7xxx/aic79xx_core.c sg = ahd_sg_bus_to_virt(ahd, scb, sgptr); scb 5896 drivers/scsi/aic7xxx/aic79xx_core.c sg = ahd_sg_bus_to_virt(ahd, scb, sgptr); scb 5982 drivers/scsi/aic7xxx/aic79xx_core.c struct scb *scb) scb 5993 drivers/scsi/aic7xxx/aic79xx_core.c if (scb != NULL && (scb->flags & SCB_AUTO_NEGOTIATE) != 0) scb 6112 drivers/scsi/aic7xxx/aic79xx_core.c ahd_name(ahd), (u_int)sizeof(struct scb), scb 6493 drivers/scsi/aic7xxx/aic79xx_core.c static struct scb * scb 6496 drivers/scsi/aic7xxx/aic79xx_core.c struct scb *scb; scb 6501 drivers/scsi/aic7xxx/aic79xx_core.c LIST_FOREACH(scb, &ahd->pending_scbs, pending_links) { scb 6502 drivers/scsi/aic7xxx/aic79xx_core.c if (SCB_GET_TAG(scb) == tag) scb 6503 drivers/scsi/aic7xxx/aic79xx_core.c return (scb); scb 6509 drivers/scsi/aic7xxx/aic79xx_core.c TAILQ_FOREACH(scb, &ahd->scb_data.free_scbs, links.tqe) { scb 6510 drivers/scsi/aic7xxx/aic79xx_core.c struct scb *list_scb; scb 6512 drivers/scsi/aic7xxx/aic79xx_core.c list_scb = scb; scb 6523 drivers/scsi/aic7xxx/aic79xx_core.c LIST_FOREACH(scb, &ahd->scb_data.any_dev_free_scb_list, links.le) { scb 6524 drivers/scsi/aic7xxx/aic79xx_core.c if (SCB_GET_TAG(scb) == tag) scb 6525 drivers/scsi/aic7xxx/aic79xx_core.c return (scb); scb 6650 drivers/scsi/aic7xxx/aic79xx_core.c ahd_add_col_list(struct ahd_softc *ahd, struct scb *scb, u_int col_idx) scb 6654 drivers/scsi/aic7xxx/aic79xx_core.c struct scb *first_scb; scb 6656 drivers/scsi/aic7xxx/aic79xx_core.c scb->flags |= SCB_ON_COL_LIST; scb 6657 drivers/scsi/aic7xxx/aic79xx_core.c AHD_SET_SCB_COL_IDX(scb, col_idx); scb 6662 drivers/scsi/aic7xxx/aic79xx_core.c LIST_INSERT_AFTER(first_scb, scb, collision_links); scb 6664 drivers/scsi/aic7xxx/aic79xx_core.c LIST_INSERT_HEAD(free_list, scb, collision_links); scb 6665 drivers/scsi/aic7xxx/aic79xx_core.c TAILQ_INSERT_TAIL(free_tailq, scb, links.tqe); scb 6670 drivers/scsi/aic7xxx/aic79xx_core.c ahd_rem_col_list(struct ahd_softc *ahd, struct scb *scb) scb 6674 drivers/scsi/aic7xxx/aic79xx_core.c struct scb *first_scb; scb 6677 drivers/scsi/aic7xxx/aic79xx_core.c scb->flags &= ~SCB_ON_COL_LIST; scb 6678 drivers/scsi/aic7xxx/aic79xx_core.c col_idx = AHD_GET_SCB_COL_IDX(ahd, scb); scb 6682 drivers/scsi/aic7xxx/aic79xx_core.c if (first_scb == scb) { scb 6683 drivers/scsi/aic7xxx/aic79xx_core.c struct scb *next_scb; scb 6690 drivers/scsi/aic7xxx/aic79xx_core.c next_scb = LIST_NEXT(scb, collision_links); scb 6692 drivers/scsi/aic7xxx/aic79xx_core.c TAILQ_INSERT_AFTER(free_tailq, scb, scb 6695 drivers/scsi/aic7xxx/aic79xx_core.c TAILQ_REMOVE(free_tailq, scb, links.tqe); scb 6697 drivers/scsi/aic7xxx/aic79xx_core.c LIST_REMOVE(scb, collision_links); scb 6703 drivers/scsi/aic7xxx/aic79xx_core.c struct scb * scb 6706 drivers/scsi/aic7xxx/aic79xx_core.c struct scb *scb; scb 6711 drivers/scsi/aic7xxx/aic79xx_core.c TAILQ_FOREACH(scb, &ahd->scb_data.free_scbs, links.tqe) { scb 6712 drivers/scsi/aic7xxx/aic79xx_core.c if (AHD_GET_SCB_COL_IDX(ahd, scb) != col_idx) { scb 6713 drivers/scsi/aic7xxx/aic79xx_core.c ahd_rem_col_list(ahd, scb); scb 6717 drivers/scsi/aic7xxx/aic79xx_core.c if ((scb = LIST_FIRST(&ahd->scb_data.any_dev_free_scb_list)) == NULL) { scb 6724 drivers/scsi/aic7xxx/aic79xx_core.c LIST_REMOVE(scb, links.le); scb 6726 drivers/scsi/aic7xxx/aic79xx_core.c && (scb->col_scb != NULL) scb 6727 drivers/scsi/aic7xxx/aic79xx_core.c && (scb->col_scb->flags & SCB_ACTIVE) == 0) { scb 6728 drivers/scsi/aic7xxx/aic79xx_core.c LIST_REMOVE(scb->col_scb, links.le); scb 6729 drivers/scsi/aic7xxx/aic79xx_core.c ahd_add_col_list(ahd, scb->col_scb, col_idx); scb 6732 drivers/scsi/aic7xxx/aic79xx_core.c scb->flags |= SCB_ACTIVE; scb 6733 drivers/scsi/aic7xxx/aic79xx_core.c return (scb); scb 6740 drivers/scsi/aic7xxx/aic79xx_core.c ahd_free_scb(struct ahd_softc *ahd, struct scb *scb) scb 6743 drivers/scsi/aic7xxx/aic79xx_core.c scb->flags = SCB_FLAG_NONE; scb 6744 drivers/scsi/aic7xxx/aic79xx_core.c scb->hscb->control = 0; scb 6745 drivers/scsi/aic7xxx/aic79xx_core.c ahd->scb_data.scbindex[SCB_GET_TAG(scb)] = NULL; scb 6747 drivers/scsi/aic7xxx/aic79xx_core.c if (scb->col_scb == NULL) { scb 6753 drivers/scsi/aic7xxx/aic79xx_core.c scb, links.le); scb 6754 drivers/scsi/aic7xxx/aic79xx_core.c } else if ((scb->col_scb->flags & SCB_ON_COL_LIST) != 0) { scb 6761 drivers/scsi/aic7xxx/aic79xx_core.c ahd_rem_col_list(ahd, scb->col_scb); scb 6763 drivers/scsi/aic7xxx/aic79xx_core.c scb, links.le); scb 6765 drivers/scsi/aic7xxx/aic79xx_core.c scb->col_scb, links.le); scb 6766 drivers/scsi/aic7xxx/aic79xx_core.c } else if ((scb->col_scb->flags scb 6768 drivers/scsi/aic7xxx/aic79xx_core.c && (scb->col_scb->hscb->control & TAG_ENB) != 0) { scb 6775 drivers/scsi/aic7xxx/aic79xx_core.c ahd_add_col_list(ahd, scb, scb 6776 drivers/scsi/aic7xxx/aic79xx_core.c AHD_GET_SCB_COL_IDX(ahd, scb->col_scb)); scb 6785 drivers/scsi/aic7xxx/aic79xx_core.c scb, links.le); scb 6788 drivers/scsi/aic7xxx/aic79xx_core.c ahd_platform_scb_free(ahd, scb); scb 6795 drivers/scsi/aic7xxx/aic79xx_core.c struct scb *next_scb; scb 7991 drivers/scsi/aic7xxx/aic79xx_core.c ahd_match_scb(struct ahd_softc *ahd, struct scb *scb, int target, scb 7994 drivers/scsi/aic7xxx/aic79xx_core.c int targ = SCB_GET_TARGET(ahd, scb); scb 7995 drivers/scsi/aic7xxx/aic79xx_core.c char chan = SCB_GET_CHANNEL(ahd, scb); scb 7996 drivers/scsi/aic7xxx/aic79xx_core.c int slun = SCB_GET_LUN(scb); scb 8008 drivers/scsi/aic7xxx/aic79xx_core.c group = XPT_FC_GROUP(scb->io_ctx->ccb_h.func_code); scb 8011 drivers/scsi/aic7xxx/aic79xx_core.c && ((tag == SCB_GET_TAG(scb)) scb 8015 drivers/scsi/aic7xxx/aic79xx_core.c && ((tag == scb->io_ctx->csio.tag_id) scb 8019 drivers/scsi/aic7xxx/aic79xx_core.c match = ((tag == SCB_GET_TAG(scb)) || (tag == SCB_LIST_NULL)); scb 8027 drivers/scsi/aic7xxx/aic79xx_core.c ahd_freeze_devq(struct ahd_softc *ahd, struct scb *scb) scb 8033 drivers/scsi/aic7xxx/aic79xx_core.c target = SCB_GET_TARGET(ahd, scb); scb 8034 drivers/scsi/aic7xxx/aic79xx_core.c lun = SCB_GET_LUN(scb); scb 8035 drivers/scsi/aic7xxx/aic79xx_core.c channel = SCB_GET_CHANNEL(ahd, scb); scb 8041 drivers/scsi/aic7xxx/aic79xx_core.c ahd_platform_freeze_devq(ahd, scb); scb 8045 drivers/scsi/aic7xxx/aic79xx_core.c ahd_qinfifo_requeue_tail(struct ahd_softc *ahd, struct scb *scb) scb 8047 drivers/scsi/aic7xxx/aic79xx_core.c struct scb *prev_scb; scb 8061 drivers/scsi/aic7xxx/aic79xx_core.c ahd_qinfifo_requeue(ahd, prev_scb, scb); scb 8067 drivers/scsi/aic7xxx/aic79xx_core.c ahd_qinfifo_requeue(struct ahd_softc *ahd, struct scb *prev_scb, scb 8068 drivers/scsi/aic7xxx/aic79xx_core.c struct scb *scb) scb 8073 drivers/scsi/aic7xxx/aic79xx_core.c busaddr = ahd_le32toh(scb->hscb->hscb_busaddr); scb 8076 drivers/scsi/aic7xxx/aic79xx_core.c prev_scb->hscb->next_hscb_busaddr = scb->hscb->hscb_busaddr; scb 8080 drivers/scsi/aic7xxx/aic79xx_core.c ahd->qinfifo[AHD_QIN_WRAP(ahd->qinfifonext)] = SCB_GET_TAG(scb); scb 8082 drivers/scsi/aic7xxx/aic79xx_core.c scb->hscb->next_hscb_busaddr = ahd->next_queued_hscb->hscb_busaddr; scb 8083 drivers/scsi/aic7xxx/aic79xx_core.c ahd_sync_scb(ahd, scb, BUS_DMASYNC_PREREAD|BUS_DMASYNC_PREWRITE); scb 8107 drivers/scsi/aic7xxx/aic79xx_core.c struct scb *scb; scb 8121 drivers/scsi/aic7xxx/aic79xx_core.c LIST_FOREACH(scb, &ahd->pending_scbs, pending_links) { scb 8130 drivers/scsi/aic7xxx/aic79xx_core.c ahd_done_with_status(struct ahd_softc *ahd, struct scb *scb, uint32_t status) scb 8135 drivers/scsi/aic7xxx/aic79xx_core.c ostat = ahd_get_transaction_status(scb); scb 8137 drivers/scsi/aic7xxx/aic79xx_core.c ahd_set_transaction_status(scb, status); scb 8138 drivers/scsi/aic7xxx/aic79xx_core.c cstat = ahd_get_transaction_status(scb); scb 8140 drivers/scsi/aic7xxx/aic79xx_core.c ahd_freeze_scb(scb); scb 8141 drivers/scsi/aic7xxx/aic79xx_core.c ahd_done(ahd, scb); scb 8149 drivers/scsi/aic7xxx/aic79xx_core.c struct scb *scb; scb 8150 drivers/scsi/aic7xxx/aic79xx_core.c struct scb *mk_msg_scb; scb 8151 drivers/scsi/aic7xxx/aic79xx_core.c struct scb *prev_scb; scb 8201 drivers/scsi/aic7xxx/aic79xx_core.c scb = ahd_lookup_scb(ahd, ahd->qinfifo[qinpos]); scb 8202 drivers/scsi/aic7xxx/aic79xx_core.c if (scb == NULL) { scb 8208 drivers/scsi/aic7xxx/aic79xx_core.c if (ahd_match_scb(ahd, scb, target, channel, lun, tag, role)) { scb 8215 drivers/scsi/aic7xxx/aic79xx_core.c if ((scb->flags & SCB_ACTIVE) == 0) scb 8217 drivers/scsi/aic7xxx/aic79xx_core.c ahd_done_with_status(ahd, scb, status); scb 8225 drivers/scsi/aic7xxx/aic79xx_core.c ahd_qinfifo_requeue(ahd, prev_scb, scb); scb 8226 drivers/scsi/aic7xxx/aic79xx_core.c prev_scb = scb; scb 8230 drivers/scsi/aic7xxx/aic79xx_core.c ahd_qinfifo_requeue(ahd, prev_scb, scb); scb 8231 drivers/scsi/aic7xxx/aic79xx_core.c prev_scb = scb; scb 8273 drivers/scsi/aic7xxx/aic79xx_core.c scb = ahd_lookup_scb(ahd, scbid); scb 8274 drivers/scsi/aic7xxx/aic79xx_core.c if (scb == NULL) { scb 8281 drivers/scsi/aic7xxx/aic79xx_core.c if (ahd_match_scb(ahd, scb, target, channel, CAM_LUN_WILDCARD, scb 8291 drivers/scsi/aic7xxx/aic79xx_core.c printk(" %d ( ", SCB_GET_TARGET(ahd, scb)); scb 8296 drivers/scsi/aic7xxx/aic79xx_core.c SCB_GET_TARGET(ahd, scb)); scb 8337 drivers/scsi/aic7xxx/aic79xx_core.c printk(" 0x%x", SCB_GET_TAG(scb)); scb 8346 drivers/scsi/aic7xxx/aic79xx_core.c && ahd_match_scb(ahd, scb, target, channel, CAM_LUN_WILDCARD, scb 8380 drivers/scsi/aic7xxx/aic79xx_core.c struct scb *scb; scb 8399 drivers/scsi/aic7xxx/aic79xx_core.c scb = ahd_lookup_scb(ahd, scbid); scb 8400 drivers/scsi/aic7xxx/aic79xx_core.c if (scb == NULL) { scb 8408 drivers/scsi/aic7xxx/aic79xx_core.c if (ahd_match_scb(ahd, scb, target, channel, scb 8416 drivers/scsi/aic7xxx/aic79xx_core.c if ((scb->flags & SCB_ACTIVE) == 0) scb 8418 drivers/scsi/aic7xxx/aic79xx_core.c ahd_done_with_status(ahd, scb, status); scb 8535 drivers/scsi/aic7xxx/aic79xx_core.c struct scb *scbp; scb 8536 drivers/scsi/aic7xxx/aic79xx_core.c struct scb *scbp_next; scb 8866 drivers/scsi/aic7xxx/aic79xx_core.c ahd_handle_scsi_status(struct ahd_softc *ahd, struct scb *scb) scb 8880 drivers/scsi/aic7xxx/aic79xx_core.c hscb = scb->hscb; scb 8890 drivers/scsi/aic7xxx/aic79xx_core.c ahd_freeze_devq(ahd, scb); scb 8891 drivers/scsi/aic7xxx/aic79xx_core.c ahd_freeze_scb(scb); scb 8899 drivers/scsi/aic7xxx/aic79xx_core.c if ((scb->flags & SCB_SENSE) != 0) { scb 8904 drivers/scsi/aic7xxx/aic79xx_core.c scb->flags &= ~SCB_SENSE; scb 8905 drivers/scsi/aic7xxx/aic79xx_core.c ahd_set_transaction_status(scb, CAM_AUTOSENSE_FAIL); scb 8906 drivers/scsi/aic7xxx/aic79xx_core.c ahd_done(ahd, scb); scb 8909 drivers/scsi/aic7xxx/aic79xx_core.c ahd_set_transaction_status(scb, CAM_SCSI_STATUS_ERROR); scb 8910 drivers/scsi/aic7xxx/aic79xx_core.c ahd_set_scsi_status(scb, hscb->shared_data.istatus.scsi_status); scb 8916 drivers/scsi/aic7xxx/aic79xx_core.c ahd_sync_sense(ahd, scb, BUS_DMASYNC_POSTREAD); scb 8917 drivers/scsi/aic7xxx/aic79xx_core.c siu = (struct scsi_status_iu_header *)scb->sense_data; scb 8918 drivers/scsi/aic7xxx/aic79xx_core.c ahd_set_scsi_status(scb, siu->status); scb 8921 drivers/scsi/aic7xxx/aic79xx_core.c ahd_print_path(ahd, scb); scb 8923 drivers/scsi/aic7xxx/aic79xx_core.c SCB_GET_TAG(scb), siu->status); scb 8931 drivers/scsi/aic7xxx/aic79xx_core.c ahd_print_path(ahd, scb); scb 8959 drivers/scsi/aic7xxx/aic79xx_core.c ahd_set_transaction_status(scb, scb 8963 drivers/scsi/aic7xxx/aic79xx_core.c scb->flags |= SCB_PKT_SENSE; scb 8969 drivers/scsi/aic7xxx/aic79xx_core.c ahd_done(ahd, scb); scb 8983 drivers/scsi/aic7xxx/aic79xx_core.c ahd_print_path(ahd, scb); scb 8985 drivers/scsi/aic7xxx/aic79xx_core.c SCB_GET_TAG(scb)); scb 8989 drivers/scsi/aic7xxx/aic79xx_core.c if (ahd_perform_autosense(scb) == 0) scb 8992 drivers/scsi/aic7xxx/aic79xx_core.c ahd_compile_devinfo(&devinfo, SCB_GET_OUR_ID(scb), scb 8993 drivers/scsi/aic7xxx/aic79xx_core.c SCB_GET_TARGET(ahd, scb), scb 8994 drivers/scsi/aic7xxx/aic79xx_core.c SCB_GET_LUN(scb), scb 8995 drivers/scsi/aic7xxx/aic79xx_core.c SCB_GET_CHANNEL(ahd, scb), scb 9003 drivers/scsi/aic7xxx/aic79xx_core.c sg = scb->sg_list; scb 9008 drivers/scsi/aic7xxx/aic79xx_core.c ahd_update_residual(ahd, scb); scb 9011 drivers/scsi/aic7xxx/aic79xx_core.c ahd_print_path(ahd, scb); scb 9015 drivers/scsi/aic7xxx/aic79xx_core.c scb->sg_count = 0; scb 9016 drivers/scsi/aic7xxx/aic79xx_core.c sg = ahd_sg_setup(ahd, scb, sg, ahd_get_sense_bufaddr(ahd, scb), scb 9017 drivers/scsi/aic7xxx/aic79xx_core.c ahd_get_sense_bufsize(ahd, scb), scb 9022 drivers/scsi/aic7xxx/aic79xx_core.c && SCB_GET_LUN(scb) < 8) scb 9023 drivers/scsi/aic7xxx/aic79xx_core.c sc->byte2 = SCB_GET_LUN(scb) << 5; scb 9026 drivers/scsi/aic7xxx/aic79xx_core.c sc->length = ahd_get_sense_bufsize(ahd, scb); scb 9046 drivers/scsi/aic7xxx/aic79xx_core.c if (ahd_get_residual(scb) == ahd_get_transfer_length(scb)) { scb 9053 drivers/scsi/aic7xxx/aic79xx_core.c scb->flags &= scb 9055 drivers/scsi/aic7xxx/aic79xx_core.c scb->flags |= SCB_AUTO_NEGOTIATE; scb 9058 drivers/scsi/aic7xxx/aic79xx_core.c ahd_setup_data_scb(ahd, scb); scb 9059 drivers/scsi/aic7xxx/aic79xx_core.c scb->flags |= SCB_SENSE; scb 9060 drivers/scsi/aic7xxx/aic79xx_core.c ahd_queue_scb(ahd, scb); scb 9068 drivers/scsi/aic7xxx/aic79xx_core.c ahd_done(ahd, scb); scb 9074 drivers/scsi/aic7xxx/aic79xx_core.c ahd_handle_scb_status(struct ahd_softc *ahd, struct scb *scb) scb 9076 drivers/scsi/aic7xxx/aic79xx_core.c if (scb->hscb->shared_data.istatus.scsi_status != 0) { scb 9077 drivers/scsi/aic7xxx/aic79xx_core.c ahd_handle_scsi_status(ahd, scb); scb 9079 drivers/scsi/aic7xxx/aic79xx_core.c ahd_calc_residual(ahd, scb); scb 9080 drivers/scsi/aic7xxx/aic79xx_core.c ahd_done(ahd, scb); scb 9088 drivers/scsi/aic7xxx/aic79xx_core.c ahd_calc_residual(struct ahd_softc *ahd, struct scb *scb) scb 9112 drivers/scsi/aic7xxx/aic79xx_core.c hscb = scb->hscb; scb 9133 drivers/scsi/aic7xxx/aic79xx_core.c resid = ahd_get_transfer_length(scb); scb 9138 drivers/scsi/aic7xxx/aic79xx_core.c ahd_print_path(ahd, scb); scb 9140 drivers/scsi/aic7xxx/aic79xx_core.c SCB_GET_TAG(scb)); scb 9141 drivers/scsi/aic7xxx/aic79xx_core.c ahd_freeze_devq(ahd, scb); scb 9142 drivers/scsi/aic7xxx/aic79xx_core.c ahd_set_transaction_status(scb, CAM_DATA_RUN_ERR); scb 9143 drivers/scsi/aic7xxx/aic79xx_core.c ahd_freeze_scb(scb); scb 9156 drivers/scsi/aic7xxx/aic79xx_core.c sg = ahd_sg_bus_to_virt(ahd, scb, resid_sgptr & SG_PTR_MASK); scb 9171 drivers/scsi/aic7xxx/aic79xx_core.c if ((scb->flags & SCB_SENSE) == 0) scb 9172 drivers/scsi/aic7xxx/aic79xx_core.c ahd_set_residual(scb, resid); scb 9174 drivers/scsi/aic7xxx/aic79xx_core.c ahd_set_sense_residual(scb, resid); scb 9178 drivers/scsi/aic7xxx/aic79xx_core.c ahd_print_path(ahd, scb); scb 9180 drivers/scsi/aic7xxx/aic79xx_core.c (scb->flags & SCB_SENSE) ? "Sense " : "", resid); scb 9679 drivers/scsi/aic7xxx/aic79xx_core.c struct scb *scb; scb 9762 drivers/scsi/aic7xxx/aic79xx_core.c LIST_FOREACH(scb, &ahd->pending_scbs, pending_links) { scb 9765 drivers/scsi/aic7xxx/aic79xx_core.c cur_col = printk("\n%3d FIFO_USE[0x%x] ", SCB_GET_TAG(scb), scb 9767 drivers/scsi/aic7xxx/aic79xx_core.c ahd_set_scbptr(ahd, SCB_GET_TAG(scb)); scb 9777 drivers/scsi/aic7xxx/aic79xx_core.c TAILQ_FOREACH(scb, &ahd->scb_data.free_scbs, links.tqe) { scb 9778 drivers/scsi/aic7xxx/aic79xx_core.c struct scb *list_scb; scb 9780 drivers/scsi/aic7xxx/aic79xx_core.c list_scb = scb; scb 9787 drivers/scsi/aic7xxx/aic79xx_core.c LIST_FOREACH(scb, &ahd->scb_data.any_dev_free_scb_list, links.le) { scb 9790 drivers/scsi/aic7xxx/aic79xx_core.c printk("%d ", SCB_GET_TAG(scb)); scb 9837 drivers/scsi/aic7xxx/aic79xx_core.c struct scb *fifo_scb; scb 10472 drivers/scsi/aic7xxx/aic79xx_core.c struct scb *scb; scb 10483 drivers/scsi/aic7xxx/aic79xx_core.c LIST_FOREACH(scb, &ahd->pending_scbs, pending_links) { scb 10486 drivers/scsi/aic7xxx/aic79xx_core.c ccbh = &scb->io_ctx->ccb_h; scb 99 drivers/scsi/aic7xxx/aic79xx_inline.h void *ahd_sg_setup(struct ahd_softc *ahd, struct scb *scb, scb 107 drivers/scsi/aic7xxx/aic79xx_inline.h struct scb *scb, int op); scb 138 drivers/scsi/aic7xxx/aic79xx_inline.h struct scb * scb 140 drivers/scsi/aic7xxx/aic79xx_inline.h void ahd_queue_scb(struct ahd_softc *ahd, struct scb *scb); scb 143 drivers/scsi/aic7xxx/aic79xx_inline.h struct scb *scb); scb 145 drivers/scsi/aic7xxx/aic79xx_inline.h struct scb *scb); scb 158 drivers/scsi/aic7xxx/aic79xx_inline.h ahd_get_sense_buf(struct ahd_softc *ahd, struct scb *scb) scb 160 drivers/scsi/aic7xxx/aic79xx_inline.h return (scb->sense_data); scb 164 drivers/scsi/aic7xxx/aic79xx_inline.h ahd_get_sense_bufaddr(struct ahd_softc *ahd, struct scb *scb) scb 166 drivers/scsi/aic7xxx/aic79xx_inline.h return (scb->sense_busaddr); scb 224 drivers/scsi/aic7xxx/aic79xx_osm.c ahd_print_path(struct ahd_softc *ahd, struct scb *scb) scb 228 drivers/scsi/aic7xxx/aic79xx_osm.c scb != NULL ? SCB_GET_CHANNEL(ahd, scb) : 'X', scb 229 drivers/scsi/aic7xxx/aic79xx_osm.c scb != NULL ? SCB_GET_TARGET(ahd, scb) : -1, scb 230 drivers/scsi/aic7xxx/aic79xx_osm.c scb != NULL ? SCB_GET_LUN(scb) : -1); scb 354 drivers/scsi/aic7xxx/aic79xx_osm.c struct scb *); scb 531 drivers/scsi/aic7xxx/aic79xx_osm.c static void ahd_linux_unmap_scb(struct ahd_softc*, struct scb*); scb 534 drivers/scsi/aic7xxx/aic79xx_osm.c ahd_linux_unmap_scb(struct ahd_softc *ahd, struct scb *scb) scb 538 drivers/scsi/aic7xxx/aic79xx_osm.c cmd = scb->io_ctx; scb 539 drivers/scsi/aic7xxx/aic79xx_osm.c ahd_sync_sglist(ahd, scb, BUS_DMASYNC_POSTWRITE); scb 785 drivers/scsi/aic7xxx/aic79xx_osm.c struct scb *reset_scb; scb 1393 drivers/scsi/aic7xxx/aic79xx_osm.c ahd_platform_freeze_devq(struct ahd_softc *ahd, struct scb *scb) scb 1395 drivers/scsi/aic7xxx/aic79xx_osm.c ahd_platform_abort_scbs(ahd, SCB_GET_TARGET(ahd, scb), scb 1396 drivers/scsi/aic7xxx/aic79xx_osm.c SCB_GET_CHANNEL(ahd, scb), scb 1397 drivers/scsi/aic7xxx/aic79xx_osm.c SCB_GET_LUN(scb), SCB_LIST_NULL, scb 1557 drivers/scsi/aic7xxx/aic79xx_osm.c struct scb *scb; scb 1584 drivers/scsi/aic7xxx/aic79xx_osm.c if ((scb = ahd_get_scb(ahd, col_idx)) == NULL) { scb 1591 drivers/scsi/aic7xxx/aic79xx_osm.c scb->io_ctx = cmd; scb 1592 drivers/scsi/aic7xxx/aic79xx_osm.c scb->platform_data->dev = dev; scb 1593 drivers/scsi/aic7xxx/aic79xx_osm.c hscb = scb->hscb; scb 1594 drivers/scsi/aic7xxx/aic79xx_osm.c cmd->host_scribble = (char *)scb; scb 1602 drivers/scsi/aic7xxx/aic79xx_osm.c scb->hscb->task_management = 0; scb 1603 drivers/scsi/aic7xxx/aic79xx_osm.c mask = SCB_GET_TARGET_MASK(ahd, scb); scb 1609 drivers/scsi/aic7xxx/aic79xx_osm.c scb->flags |= SCB_PACKETIZED; scb 1612 drivers/scsi/aic7xxx/aic79xx_osm.c scb->flags |= SCB_AUTO_NEGOTIATE; scb 1613 drivers/scsi/aic7xxx/aic79xx_osm.c scb->hscb->control |= MK_MESSAGE; scb 1629 drivers/scsi/aic7xxx/aic79xx_osm.c scb->platform_data->xfer_len = 0; scb 1630 drivers/scsi/aic7xxx/aic79xx_osm.c ahd_set_residual(scb, 0); scb 1631 drivers/scsi/aic7xxx/aic79xx_osm.c ahd_set_sense_residual(scb, 0); scb 1632 drivers/scsi/aic7xxx/aic79xx_osm.c scb->sg_count = 0; scb 1635 drivers/scsi/aic7xxx/aic79xx_osm.c void *sg = scb->sg_list; scb 1639 drivers/scsi/aic7xxx/aic79xx_osm.c scb->platform_data->xfer_len = 0; scb 1647 drivers/scsi/aic7xxx/aic79xx_osm.c scb->platform_data->xfer_len += len; scb 1648 drivers/scsi/aic7xxx/aic79xx_osm.c sg = ahd_sg_setup(ahd, scb, sg, addr, len, scb 1653 drivers/scsi/aic7xxx/aic79xx_osm.c LIST_INSERT_HEAD(&ahd->pending_scbs, scb, pending_links); scb 1660 drivers/scsi/aic7xxx/aic79xx_osm.c scb->flags |= SCB_ACTIVE; scb 1661 drivers/scsi/aic7xxx/aic79xx_osm.c ahd_queue_scb(ahd, scb); scb 1774 drivers/scsi/aic7xxx/aic79xx_osm.c ahd_done(struct ahd_softc *ahd, struct scb *scb) scb 1779 drivers/scsi/aic7xxx/aic79xx_osm.c if ((scb->flags & SCB_ACTIVE) == 0) { scb 1780 drivers/scsi/aic7xxx/aic79xx_osm.c printk("SCB %d done'd twice\n", SCB_GET_TAG(scb)); scb 1784 drivers/scsi/aic7xxx/aic79xx_osm.c LIST_REMOVE(scb, pending_links); scb 1785 drivers/scsi/aic7xxx/aic79xx_osm.c cmd = scb->io_ctx; scb 1786 drivers/scsi/aic7xxx/aic79xx_osm.c dev = scb->platform_data->dev; scb 1793 drivers/scsi/aic7xxx/aic79xx_osm.c ahd_linux_unmap_scb(ahd, scb); scb 1802 drivers/scsi/aic7xxx/aic79xx_osm.c if (ahd_get_transaction_status(scb) == CAM_REQ_INPROG) { scb 1806 drivers/scsi/aic7xxx/aic79xx_osm.c ahd_get_transfer_length(scb) - ahd_get_residual(scb); scb 1807 drivers/scsi/aic7xxx/aic79xx_osm.c if ((scb->flags & SCB_TRANSMISSION_ERROR) != 0) { scb 1810 drivers/scsi/aic7xxx/aic79xx_osm.c ahd_print_path(ahd, scb); scb 1814 drivers/scsi/aic7xxx/aic79xx_osm.c ahd_set_transaction_status(scb, CAM_UNCOR_PARITY); scb 1825 drivers/scsi/aic7xxx/aic79xx_osm.c } else if (amount_xferred < scb->io_ctx->underflow) { scb 1828 drivers/scsi/aic7xxx/aic79xx_osm.c ahd_print_path(ahd, scb); scb 1830 drivers/scsi/aic7xxx/aic79xx_osm.c for (i = 0; i < scb->io_ctx->cmd_len; i++) scb 1831 drivers/scsi/aic7xxx/aic79xx_osm.c printk(" 0x%x", scb->io_ctx->cmnd[i]); scb 1833 drivers/scsi/aic7xxx/aic79xx_osm.c ahd_print_path(ahd, scb); scb 1836 drivers/scsi/aic7xxx/aic79xx_osm.c ahd_get_residual(scb), scb 1837 drivers/scsi/aic7xxx/aic79xx_osm.c ahd_get_transfer_length(scb)); scb 1838 drivers/scsi/aic7xxx/aic79xx_osm.c ahd_set_transaction_status(scb, CAM_DATA_RUN_ERR); scb 1841 drivers/scsi/aic7xxx/aic79xx_osm.c ahd_set_transaction_status(scb, CAM_REQ_CMP); scb 1843 drivers/scsi/aic7xxx/aic79xx_osm.c } else if (ahd_get_transaction_status(scb) == CAM_SCSI_STATUS_ERROR) { scb 1844 drivers/scsi/aic7xxx/aic79xx_osm.c ahd_linux_handle_scsi_status(ahd, cmd->device, scb); scb 1848 drivers/scsi/aic7xxx/aic79xx_osm.c && ahd_get_transaction_status(scb) == CAM_REQ_CMP scb 1849 drivers/scsi/aic7xxx/aic79xx_osm.c && ahd_get_scsi_status(scb) != SCSI_STATUS_QUEUE_FULL) scb 1866 drivers/scsi/aic7xxx/aic79xx_osm.c if ((scb->flags & SCB_RECOVERY_SCB) != 0) { scb 1868 drivers/scsi/aic7xxx/aic79xx_osm.c if (ahd_get_transaction_status(scb) == CAM_BDR_SENT scb 1869 drivers/scsi/aic7xxx/aic79xx_osm.c || ahd_get_transaction_status(scb) == CAM_REQ_ABORTED) scb 1870 drivers/scsi/aic7xxx/aic79xx_osm.c ahd_set_transaction_status(scb, CAM_CMD_TIMEOUT); scb 1876 drivers/scsi/aic7xxx/aic79xx_osm.c ahd_free_scb(ahd, scb); scb 1882 drivers/scsi/aic7xxx/aic79xx_osm.c struct scsi_device *sdev, struct scb *scb) scb 1903 drivers/scsi/aic7xxx/aic79xx_osm.c switch (ahd_get_scsi_status(scb)) { scb 1915 drivers/scsi/aic7xxx/aic79xx_osm.c cmd = scb->io_ctx; scb 1916 drivers/scsi/aic7xxx/aic79xx_osm.c if ((scb->flags & (SCB_SENSE|SCB_PKT_SENSE)) != 0) { scb 1921 drivers/scsi/aic7xxx/aic79xx_osm.c if (scb->flags & SCB_SENSE) { scb 1923 drivers/scsi/aic7xxx/aic79xx_osm.c - ahd_get_sense_residual(scb), scb 1932 drivers/scsi/aic7xxx/aic79xx_osm.c scb->sense_data; scb 1941 drivers/scsi/aic7xxx/aic79xx_osm.c ahd_get_sense_buf(ahd, scb) scb 1980 drivers/scsi/aic7xxx/aic79xx_osm.c ahd_print_path(ahd, scb); scb 1999 drivers/scsi/aic7xxx/aic79xx_osm.c ahd_print_path(ahd, scb); scb 2007 drivers/scsi/aic7xxx/aic79xx_osm.c ahd_set_transaction_status(scb, CAM_REQUEUE_REQ); scb 2008 drivers/scsi/aic7xxx/aic79xx_osm.c ahd_set_scsi_status(scb, SCSI_STATUS_OK); scb 2022 drivers/scsi/aic7xxx/aic79xx_osm.c ahd_set_scsi_status(scb, SCSI_STATUS_BUSY); scb 2151 drivers/scsi/aic7xxx/aic79xx_osm.c struct scb *pending_scb; scb 2259 drivers/scsi/aic7xxx/aic79xx_osm.c struct scb *bus_scb; scb 501 drivers/scsi/aic7xxx/aic79xx_osm.h static inline void ahd_set_transaction_status(struct scb *, uint32_t); scb 503 drivers/scsi/aic7xxx/aic79xx_osm.h static inline void ahd_set_scsi_status(struct scb *, uint32_t); scb 505 drivers/scsi/aic7xxx/aic79xx_osm.h static inline uint32_t ahd_get_transaction_status(struct scb *); scb 507 drivers/scsi/aic7xxx/aic79xx_osm.h static inline uint32_t ahd_get_scsi_status(struct scb *); scb 508 drivers/scsi/aic7xxx/aic79xx_osm.h static inline void ahd_set_transaction_tag(struct scb *, int, u_int); scb 509 drivers/scsi/aic7xxx/aic79xx_osm.h static inline u_long ahd_get_transfer_length(struct scb *); scb 510 drivers/scsi/aic7xxx/aic79xx_osm.h static inline int ahd_get_transfer_dir(struct scb *); scb 511 drivers/scsi/aic7xxx/aic79xx_osm.h static inline void ahd_set_residual(struct scb *, u_long); scb 512 drivers/scsi/aic7xxx/aic79xx_osm.h static inline void ahd_set_sense_residual(struct scb *scb, u_long resid); scb 513 drivers/scsi/aic7xxx/aic79xx_osm.h static inline u_long ahd_get_residual(struct scb *); scb 514 drivers/scsi/aic7xxx/aic79xx_osm.h static inline u_long ahd_get_sense_residual(struct scb *); scb 515 drivers/scsi/aic7xxx/aic79xx_osm.h static inline int ahd_perform_autosense(struct scb *); scb 517 drivers/scsi/aic7xxx/aic79xx_osm.h struct scb *); scb 521 drivers/scsi/aic7xxx/aic79xx_osm.h struct scb *scb); scb 522 drivers/scsi/aic7xxx/aic79xx_osm.h static inline void ahd_freeze_scb(struct scb *scb); scb 532 drivers/scsi/aic7xxx/aic79xx_osm.h void ahd_set_transaction_status(struct scb *scb, uint32_t status) scb 534 drivers/scsi/aic7xxx/aic79xx_osm.h ahd_cmd_set_transaction_status(scb->io_ctx,status); scb 545 drivers/scsi/aic7xxx/aic79xx_osm.h void ahd_set_scsi_status(struct scb *scb, uint32_t status) scb 547 drivers/scsi/aic7xxx/aic79xx_osm.h ahd_cmd_set_scsi_status(scb->io_ctx, status); scb 557 drivers/scsi/aic7xxx/aic79xx_osm.h uint32_t ahd_get_transaction_status(struct scb *scb) scb 559 drivers/scsi/aic7xxx/aic79xx_osm.h return (ahd_cmd_get_transaction_status(scb->io_ctx)); scb 569 drivers/scsi/aic7xxx/aic79xx_osm.h uint32_t ahd_get_scsi_status(struct scb *scb) scb 571 drivers/scsi/aic7xxx/aic79xx_osm.h return (ahd_cmd_get_scsi_status(scb->io_ctx)); scb 575 drivers/scsi/aic7xxx/aic79xx_osm.h void ahd_set_transaction_tag(struct scb *scb, int enabled, u_int type) scb 584 drivers/scsi/aic7xxx/aic79xx_osm.h u_long ahd_get_transfer_length(struct scb *scb) scb 586 drivers/scsi/aic7xxx/aic79xx_osm.h return (scb->platform_data->xfer_len); scb 590 drivers/scsi/aic7xxx/aic79xx_osm.h int ahd_get_transfer_dir(struct scb *scb) scb 592 drivers/scsi/aic7xxx/aic79xx_osm.h return (scb->io_ctx->sc_data_direction); scb 596 drivers/scsi/aic7xxx/aic79xx_osm.h void ahd_set_residual(struct scb *scb, u_long resid) scb 598 drivers/scsi/aic7xxx/aic79xx_osm.h scsi_set_resid(scb->io_ctx, resid); scb 602 drivers/scsi/aic7xxx/aic79xx_osm.h void ahd_set_sense_residual(struct scb *scb, u_long resid) scb 604 drivers/scsi/aic7xxx/aic79xx_osm.h scb->platform_data->sense_resid = resid; scb 608 drivers/scsi/aic7xxx/aic79xx_osm.h u_long ahd_get_residual(struct scb *scb) scb 610 drivers/scsi/aic7xxx/aic79xx_osm.h return scsi_get_resid(scb->io_ctx); scb 614 drivers/scsi/aic7xxx/aic79xx_osm.h u_long ahd_get_sense_residual(struct scb *scb) scb 616 drivers/scsi/aic7xxx/aic79xx_osm.h return (scb->platform_data->sense_resid); scb 620 drivers/scsi/aic7xxx/aic79xx_osm.h int ahd_perform_autosense(struct scb *scb) scb 631 drivers/scsi/aic7xxx/aic79xx_osm.h ahd_get_sense_bufsize(struct ahd_softc *ahd, struct scb *scb) scb 644 drivers/scsi/aic7xxx/aic79xx_osm.h ahd_platform_scb_free(struct ahd_softc *ahd, struct scb *scb) scb 652 drivers/scsi/aic7xxx/aic79xx_osm.h void ahd_platform_freeze_devq(struct ahd_softc *ahd, struct scb *scb); scb 655 drivers/scsi/aic7xxx/aic79xx_osm.h ahd_freeze_scb(struct scb *scb) scb 657 drivers/scsi/aic7xxx/aic79xx_osm.h if ((scb->io_ctx->result & (CAM_DEV_QFRZN << 16)) == 0) { scb 658 drivers/scsi/aic7xxx/aic79xx_osm.h scb->io_ctx->result |= CAM_DEV_QFRZN << 16; scb 659 drivers/scsi/aic7xxx/aic79xx_osm.h scb->platform_data->dev->qfrozen++; scb 670 drivers/scsi/aic7xxx/aic79xx_osm.h void ahd_done(struct ahd_softc*, struct scb*); scb 673 drivers/scsi/aic7xxx/aic79xx_osm.h void ahd_print_path(struct ahd_softc *, struct scb *); scb 77 drivers/scsi/aic7xxx/aic7xxx.h #define SCB_IS_SCSIBUS_B(ahc, scb) \ scb 78 drivers/scsi/aic7xxx/aic7xxx.h (SCSIID_CHANNEL(ahc, (scb)->hscb->scsiid) == 'B') scb 79 drivers/scsi/aic7xxx/aic7xxx.h #define SCB_GET_OUR_ID(scb) \ scb 80 drivers/scsi/aic7xxx/aic7xxx.h SCSIID_OUR_ID((scb)->hscb->scsiid) scb 81 drivers/scsi/aic7xxx/aic7xxx.h #define SCB_GET_TARGET(ahc, scb) \ scb 82 drivers/scsi/aic7xxx/aic7xxx.h SCSIID_TARGET((ahc), (scb)->hscb->scsiid) scb 83 drivers/scsi/aic7xxx/aic7xxx.h #define SCB_GET_CHANNEL(ahc, scb) \ scb 84 drivers/scsi/aic7xxx/aic7xxx.h SCSIID_CHANNEL(ahc, (scb)->hscb->scsiid) scb 85 drivers/scsi/aic7xxx/aic7xxx.h #define SCB_GET_LUN(scb) \ scb 86 drivers/scsi/aic7xxx/aic7xxx.h ((scb)->hscb->lun & LID) scb 87 drivers/scsi/aic7xxx/aic7xxx.h #define SCB_GET_TARGET_OFFSET(ahc, scb) \ scb 88 drivers/scsi/aic7xxx/aic7xxx.h (SCB_GET_TARGET(ahc, scb) + (SCB_IS_SCSIBUS_B(ahc, scb) ? 8 : 0)) scb 89 drivers/scsi/aic7xxx/aic7xxx.h #define SCB_GET_TARGET_MASK(ahc, scb) \ scb 90 drivers/scsi/aic7xxx/aic7xxx.h (0x01 << (SCB_GET_TARGET_OFFSET(ahc, scb))) scb 92 drivers/scsi/aic7xxx/aic7xxx.h #define SCB_IS_SILENT(scb) \ scb 94 drivers/scsi/aic7xxx/aic7xxx.h && (((scb)->flags & SCB_SILENT) != 0)) scb 96 drivers/scsi/aic7xxx/aic7xxx.h #define SCB_IS_SILENT(scb) \ scb 97 drivers/scsi/aic7xxx/aic7xxx.h (((scb)->flags & SCB_SILENT) != 0) scb 564 drivers/scsi/aic7xxx/aic7xxx.h SLIST_ENTRY(scb) sle; scb 565 drivers/scsi/aic7xxx/aic7xxx.h TAILQ_ENTRY(scb) tqe; scb 567 drivers/scsi/aic7xxx/aic7xxx.h LIST_ENTRY(scb) pending_links; scb 579 drivers/scsi/aic7xxx/aic7xxx.h SLIST_HEAD(, scb) free_scbs; /* scb 583 drivers/scsi/aic7xxx/aic7xxx.h struct scb *scbindex[256]; /* scb 593 drivers/scsi/aic7xxx/aic7xxx.h struct scb *scbarray; /* Array of kernel SCBs */ scb 866 drivers/scsi/aic7xxx/aic7xxx.h TAILQ_HEAD(scb_tailq, scb); scb 908 drivers/scsi/aic7xxx/aic7xxx.h struct scb *next_queued_scb; scb 913 drivers/scsi/aic7xxx/aic7xxx.h BSD_LIST_HEAD(, scb) pending_scbs; scb 1150 drivers/scsi/aic7xxx/aic7xxx.h struct scb *scb); scb 1151 drivers/scsi/aic7xxx/aic7xxx.h int ahc_match_scb(struct ahc_softc *ahc, struct scb *scb, scb 154 drivers/scsi/aic7xxx/aic7xxx_core.c struct scb *scb); scb 158 drivers/scsi/aic7xxx/aic7xxx_core.c struct scb *scb); scb 195 drivers/scsi/aic7xxx/aic7xxx_core.c struct scb *scb); scb 203 drivers/scsi/aic7xxx/aic7xxx_core.c struct scb *prev_scb, scb 204 drivers/scsi/aic7xxx/aic7xxx_core.c struct scb *scb); scb 260 drivers/scsi/aic7xxx/aic7xxx_core.c static void ahc_freeze_devq(struct ahc_softc *ahc, struct scb *scb); scb 265 drivers/scsi/aic7xxx/aic7xxx_core.c struct scb *scb); scb 365 drivers/scsi/aic7xxx/aic7xxx_core.c ahc_sg_bus_to_virt(struct scb *scb, uint32_t sg_busaddr) scb 369 drivers/scsi/aic7xxx/aic7xxx_core.c sg_index = (sg_busaddr - scb->sg_list_phys)/sizeof(struct ahc_dma_seg); scb 373 drivers/scsi/aic7xxx/aic7xxx_core.c return (&scb->sg_list[sg_index]); scb 377 drivers/scsi/aic7xxx/aic7xxx_core.c ahc_sg_virt_to_bus(struct scb *scb, struct ahc_dma_seg *sg) scb 382 drivers/scsi/aic7xxx/aic7xxx_core.c sg_index = sg - &scb->sg_list[1]; scb 384 drivers/scsi/aic7xxx/aic7xxx_core.c return (scb->sg_list_phys + (sg_index * sizeof(*scb->sg_list))); scb 395 drivers/scsi/aic7xxx/aic7xxx_core.c ahc_sync_scb(struct ahc_softc *ahc, struct scb *scb, int op) scb 399 drivers/scsi/aic7xxx/aic7xxx_core.c /*offset*/(scb->hscb - ahc->hscbs) * sizeof(*scb->hscb), scb 400 drivers/scsi/aic7xxx/aic7xxx_core.c /*len*/sizeof(*scb->hscb), op); scb 404 drivers/scsi/aic7xxx/aic7xxx_core.c ahc_sync_sglist(struct ahc_softc *ahc, struct scb *scb, int op) scb 406 drivers/scsi/aic7xxx/aic7xxx_core.c if (scb->sg_count == 0) scb 409 drivers/scsi/aic7xxx/aic7xxx_core.c ahc_dmamap_sync(ahc, ahc->scb_data->sg_dmat, scb->sg_map->sg_dmamap, scb 410 drivers/scsi/aic7xxx/aic7xxx_core.c /*offset*/(scb->sg_list - scb->sg_map->sg_vaddr) scb 412 drivers/scsi/aic7xxx/aic7xxx_core.c /*len*/sizeof(struct ahc_dma_seg) * scb->sg_count, op); scb 429 drivers/scsi/aic7xxx/aic7xxx_core.c ahc_update_residual(struct ahc_softc *ahc, struct scb *scb) scb 433 drivers/scsi/aic7xxx/aic7xxx_core.c sgptr = ahc_le32toh(scb->hscb->sgptr); scb 435 drivers/scsi/aic7xxx/aic7xxx_core.c ahc_calc_residual(ahc, scb); scb 519 drivers/scsi/aic7xxx/aic7xxx_core.c struct scb * scb 522 drivers/scsi/aic7xxx/aic7xxx_core.c struct scb *scb; scb 524 drivers/scsi/aic7xxx/aic7xxx_core.c if ((scb = SLIST_FIRST(&ahc->scb_data->free_scbs)) == NULL) { scb 526 drivers/scsi/aic7xxx/aic7xxx_core.c scb = SLIST_FIRST(&ahc->scb_data->free_scbs); scb 527 drivers/scsi/aic7xxx/aic7xxx_core.c if (scb == NULL) scb 531 drivers/scsi/aic7xxx/aic7xxx_core.c return (scb); scb 538 drivers/scsi/aic7xxx/aic7xxx_core.c ahc_free_scb(struct ahc_softc *ahc, struct scb *scb) scb 542 drivers/scsi/aic7xxx/aic7xxx_core.c hscb = scb->hscb; scb 545 drivers/scsi/aic7xxx/aic7xxx_core.c scb->flags = SCB_FREE; scb 548 drivers/scsi/aic7xxx/aic7xxx_core.c SLIST_INSERT_HEAD(&ahc->scb_data->free_scbs, scb, links.sle); scb 551 drivers/scsi/aic7xxx/aic7xxx_core.c ahc_platform_scb_free(ahc, scb); scb 554 drivers/scsi/aic7xxx/aic7xxx_core.c struct scb * scb 557 drivers/scsi/aic7xxx/aic7xxx_core.c struct scb* scb; scb 559 drivers/scsi/aic7xxx/aic7xxx_core.c scb = ahc->scb_data->scbindex[tag]; scb 560 drivers/scsi/aic7xxx/aic7xxx_core.c if (scb != NULL) scb 561 drivers/scsi/aic7xxx/aic7xxx_core.c ahc_sync_scb(ahc, scb, scb 563 drivers/scsi/aic7xxx/aic7xxx_core.c return (scb); scb 567 drivers/scsi/aic7xxx/aic7xxx_core.c ahc_swap_with_next_hscb(struct ahc_softc *ahc, struct scb *scb) scb 586 drivers/scsi/aic7xxx/aic7xxx_core.c memcpy(q_hscb, scb->hscb, sizeof(*scb->hscb)); scb 587 drivers/scsi/aic7xxx/aic7xxx_core.c if ((scb->flags & SCB_CDB32_PTR) != 0) { scb 593 drivers/scsi/aic7xxx/aic7xxx_core.c q_hscb->next = scb->hscb->tag; scb 596 drivers/scsi/aic7xxx/aic7xxx_core.c ahc->next_queued_scb->hscb = scb->hscb; scb 597 drivers/scsi/aic7xxx/aic7xxx_core.c scb->hscb = q_hscb; scb 600 drivers/scsi/aic7xxx/aic7xxx_core.c ahc->scb_data->scbindex[scb->hscb->tag] = scb; scb 607 drivers/scsi/aic7xxx/aic7xxx_core.c ahc_queue_scb(struct ahc_softc *ahc, struct scb *scb) scb 609 drivers/scsi/aic7xxx/aic7xxx_core.c ahc_swap_with_next_hscb(ahc, scb); scb 611 drivers/scsi/aic7xxx/aic7xxx_core.c if (scb->hscb->tag == SCB_LIST_NULL scb 612 drivers/scsi/aic7xxx/aic7xxx_core.c || scb->hscb->next == SCB_LIST_NULL) scb 614 drivers/scsi/aic7xxx/aic7xxx_core.c scb->hscb->tag, scb->hscb->next); scb 619 drivers/scsi/aic7xxx/aic7xxx_core.c scb->hscb->lun &= LID; scb 620 drivers/scsi/aic7xxx/aic7xxx_core.c if (ahc_get_transfer_length(scb) & 0x1) scb 621 drivers/scsi/aic7xxx/aic7xxx_core.c scb->hscb->lun |= SCB_XFERLEN_ODD; scb 626 drivers/scsi/aic7xxx/aic7xxx_core.c ahc->qinfifo[ahc->qinfifonext++] = scb->hscb->tag; scb 632 drivers/scsi/aic7xxx/aic7xxx_core.c ahc_sync_scb(ahc, scb, BUS_DMASYNC_PREREAD|BUS_DMASYNC_PREWRITE); scb 647 drivers/scsi/aic7xxx/aic7xxx_core.c ahc_get_sense_buf(struct ahc_softc *ahc, struct scb *scb) scb 651 drivers/scsi/aic7xxx/aic7xxx_core.c offset = scb - ahc->scb_data->scbarray; scb 656 drivers/scsi/aic7xxx/aic7xxx_core.c ahc_get_sense_bufaddr(struct ahc_softc *ahc, struct scb *scb) scb 660 drivers/scsi/aic7xxx/aic7xxx_core.c offset = scb - ahc->scb_data->scbarray; scb 878 drivers/scsi/aic7xxx/aic7xxx_core.c struct scb *scb; scb 904 drivers/scsi/aic7xxx/aic7xxx_core.c scb = ahc_lookup_scb(ahc, scb_index); scb 905 drivers/scsi/aic7xxx/aic7xxx_core.c if (scb == NULL) { scb 917 drivers/scsi/aic7xxx/aic7xxx_core.c ahc_update_residual(ahc, scb); scb 918 drivers/scsi/aic7xxx/aic7xxx_core.c ahc_done(ahc, scb); scb 934 drivers/scsi/aic7xxx/aic7xxx_core.c struct scb *scb; scb 939 drivers/scsi/aic7xxx/aic7xxx_core.c if ((scb = TAILQ_FIRST(queue)) != NULL scb 940 drivers/scsi/aic7xxx/aic7xxx_core.c && (scb->flags & SCB_ACTIVE) == 0) { scb 941 drivers/scsi/aic7xxx/aic7xxx_core.c scb->flags |= SCB_ACTIVE; scb 942 drivers/scsi/aic7xxx/aic7xxx_core.c ahc_queue_scb(ahc, scb); scb 979 drivers/scsi/aic7xxx/aic7xxx_core.c struct scb *scb; scb 1014 drivers/scsi/aic7xxx/aic7xxx_core.c scb = ahc_lookup_scb(ahc, scb_index); scb 1015 drivers/scsi/aic7xxx/aic7xxx_core.c if (scb == NULL) { scb 1025 drivers/scsi/aic7xxx/aic7xxx_core.c hscb = scb->hscb; scb 1028 drivers/scsi/aic7xxx/aic7xxx_core.c if ((scb->flags & SCB_SENSE) != 0) { scb 1034 drivers/scsi/aic7xxx/aic7xxx_core.c scb->flags &= ~SCB_SENSE; scb 1035 drivers/scsi/aic7xxx/aic7xxx_core.c ahc_set_transaction_status(scb, CAM_AUTOSENSE_FAIL); scb 1038 drivers/scsi/aic7xxx/aic7xxx_core.c ahc_set_transaction_status(scb, CAM_SCSI_STATUS_ERROR); scb 1040 drivers/scsi/aic7xxx/aic7xxx_core.c ahc_freeze_devq(ahc, scb); scb 1041 drivers/scsi/aic7xxx/aic7xxx_core.c ahc_freeze_scb(scb); scb 1042 drivers/scsi/aic7xxx/aic7xxx_core.c ahc_set_scsi_status(scb, hscb->shared_data.status.scsi_status); scb 1058 drivers/scsi/aic7xxx/aic7xxx_core.c ahc_print_path(ahc, scb); scb 1060 drivers/scsi/aic7xxx/aic7xxx_core.c scb->hscb->tag); scb 1064 drivers/scsi/aic7xxx/aic7xxx_core.c if (ahc_perform_autosense(scb) == 0) scb 1073 drivers/scsi/aic7xxx/aic7xxx_core.c sg = scb->sg_list; scb 1078 drivers/scsi/aic7xxx/aic7xxx_core.c ahc_update_residual(ahc, scb); scb 1081 drivers/scsi/aic7xxx/aic7xxx_core.c ahc_print_path(ahc, scb); scb 1085 drivers/scsi/aic7xxx/aic7xxx_core.c sg->addr = ahc_get_sense_bufaddr(ahc, scb); scb 1086 drivers/scsi/aic7xxx/aic7xxx_core.c sg->len = ahc_get_sense_bufsize(ahc, scb); scb 1096 drivers/scsi/aic7xxx/aic7xxx_core.c && SCB_GET_LUN(scb) < 8) scb 1097 drivers/scsi/aic7xxx/aic7xxx_core.c sc->byte2 = SCB_GET_LUN(scb) << 5; scb 1120 drivers/scsi/aic7xxx/aic7xxx_core.c if (ahc_get_residual(scb) scb 1121 drivers/scsi/aic7xxx/aic7xxx_core.c == ahc_get_transfer_length(scb)) { scb 1128 drivers/scsi/aic7xxx/aic7xxx_core.c scb->flags &= ~SCB_NEGOTIATE; scb 1129 drivers/scsi/aic7xxx/aic7xxx_core.c scb->flags |= SCB_AUTO_NEGOTIATE; scb 1134 drivers/scsi/aic7xxx/aic7xxx_core.c hscb->sgptr = scb->sg_list_phys | SG_FULL_RESID; scb 1136 drivers/scsi/aic7xxx/aic7xxx_core.c scb->sg_count = 1; scb 1137 drivers/scsi/aic7xxx/aic7xxx_core.c scb->flags |= SCB_SENSE; scb 1138 drivers/scsi/aic7xxx/aic7xxx_core.c ahc_qinfifo_requeue_tail(ahc, scb); scb 1144 drivers/scsi/aic7xxx/aic7xxx_core.c ahc_scb_timer_reset(scb, 5 * 1000000); scb 1246 drivers/scsi/aic7xxx/aic7xxx_core.c struct scb *scb; scb 1266 drivers/scsi/aic7xxx/aic7xxx_core.c scb = ahc_lookup_scb(ahc, scb_index); scb 1269 drivers/scsi/aic7xxx/aic7xxx_core.c if (scb == NULL) scb 1276 drivers/scsi/aic7xxx/aic7xxx_core.c scb); scb 1293 drivers/scsi/aic7xxx/aic7xxx_core.c scb); scb 1351 drivers/scsi/aic7xxx/aic7xxx_core.c struct scb *scb; scb 1358 drivers/scsi/aic7xxx/aic7xxx_core.c scb = ahc_lookup_scb(ahc, scb_index); scb 1359 drivers/scsi/aic7xxx/aic7xxx_core.c if (scb != NULL) scb 1360 drivers/scsi/aic7xxx/aic7xxx_core.c ahc_set_transaction_status(scb, scb 1385 drivers/scsi/aic7xxx/aic7xxx_core.c scb = ahc_lookup_scb(ahc, scbindex); scb 1390 drivers/scsi/aic7xxx/aic7xxx_core.c ahc_print_path(ahc, scb); scb 1394 drivers/scsi/aic7xxx/aic7xxx_core.c scb->hscb->tag); scb 1395 drivers/scsi/aic7xxx/aic7xxx_core.c ahc_print_path(ahc, scb); scb 1398 drivers/scsi/aic7xxx/aic7xxx_core.c ahc_get_transfer_length(scb), scb->sg_count); scb 1399 drivers/scsi/aic7xxx/aic7xxx_core.c if (scb->sg_count > 0) { scb 1400 drivers/scsi/aic7xxx/aic7xxx_core.c for (i = 0; i < scb->sg_count; i++) { scb 1404 drivers/scsi/aic7xxx/aic7xxx_core.c (ahc_le32toh(scb->sg_list[i].len) >> 24 scb 1406 drivers/scsi/aic7xxx/aic7xxx_core.c ahc_le32toh(scb->sg_list[i].addr), scb 1407 drivers/scsi/aic7xxx/aic7xxx_core.c ahc_le32toh(scb->sg_list[i].len) scb 1415 drivers/scsi/aic7xxx/aic7xxx_core.c ahc_freeze_devq(ahc, scb); scb 1416 drivers/scsi/aic7xxx/aic7xxx_core.c if ((scb->flags & SCB_SENSE) == 0) { scb 1417 drivers/scsi/aic7xxx/aic7xxx_core.c ahc_set_transaction_status(scb, CAM_DATA_RUN_ERR); scb 1419 drivers/scsi/aic7xxx/aic7xxx_core.c scb->flags &= ~SCB_SENSE; scb 1420 drivers/scsi/aic7xxx/aic7xxx_core.c ahc_set_transaction_status(scb, CAM_AUTOSENSE_FAIL); scb 1422 drivers/scsi/aic7xxx/aic7xxx_core.c ahc_freeze_scb(scb); scb 1453 drivers/scsi/aic7xxx/aic7xxx_core.c scb = ahc_lookup_scb(ahc, scbindex); scb 1454 drivers/scsi/aic7xxx/aic7xxx_core.c if (scb != NULL scb 1455 drivers/scsi/aic7xxx/aic7xxx_core.c && (scb->flags & SCB_RECOVERY_SCB) != 0) scb 1460 drivers/scsi/aic7xxx/aic7xxx_core.c ahc_search_qinfifo(ahc, SCB_GET_TARGET(ahc, scb), scb 1461 drivers/scsi/aic7xxx/aic7xxx_core.c SCB_GET_CHANNEL(ahc, scb), scb 1462 drivers/scsi/aic7xxx/aic7xxx_core.c SCB_GET_LUN(scb), scb->hscb->tag, scb 1533 drivers/scsi/aic7xxx/aic7xxx_core.c struct scb *scb; scb 1569 drivers/scsi/aic7xxx/aic7xxx_core.c scb = ahc_lookup_scb(ahc, scb_index); scb 1570 drivers/scsi/aic7xxx/aic7xxx_core.c if (scb != NULL scb 1572 drivers/scsi/aic7xxx/aic7xxx_core.c scb = NULL; scb 1648 drivers/scsi/aic7xxx/aic7xxx_core.c if (scb != NULL) { scb 1649 drivers/scsi/aic7xxx/aic7xxx_core.c if (SCB_IS_SILENT(scb)) scb 1652 drivers/scsi/aic7xxx/aic7xxx_core.c ahc_print_path(ahc, scb); scb 1653 drivers/scsi/aic7xxx/aic7xxx_core.c scb->flags |= SCB_TRANSMISSION_ERROR; scb 1740 drivers/scsi/aic7xxx/aic7xxx_core.c scb = ahc_lookup_scb(ahc, scb_index); scb 1741 drivers/scsi/aic7xxx/aic7xxx_core.c if (scb == NULL) { scb 1750 drivers/scsi/aic7xxx/aic7xxx_core.c ahc_print_path(ahc, scb); scb 1755 drivers/scsi/aic7xxx/aic7xxx_core.c ahc_scb_devinfo(ahc, &devinfo, scb); scb 1756 drivers/scsi/aic7xxx/aic7xxx_core.c ahc_set_transaction_status(scb, CAM_SEL_TIMEOUT); scb 1757 drivers/scsi/aic7xxx/aic7xxx_core.c ahc_freeze_devq(ahc, scb); scb 1825 drivers/scsi/aic7xxx/aic7xxx_core.c tag = scb->hscb->tag; scb 1826 drivers/scsi/aic7xxx/aic7xxx_core.c ahc_print_path(ahc, scb); scb 1828 drivers/scsi/aic7xxx/aic7xxx_core.c scb->hscb->tag, tag == SCB_LIST_NULL ? scb 1843 drivers/scsi/aic7xxx/aic7xxx_core.c if (scb != NULL scb 1844 drivers/scsi/aic7xxx/aic7xxx_core.c && scb->io_ctx->ccb_h.func_code== XPT_RESET_DEV scb 1845 drivers/scsi/aic7xxx/aic7xxx_core.c && ahc_match_scb(ahc, scb, target, channel, scb 1849 drivers/scsi/aic7xxx/aic7xxx_core.c ahc_set_transaction_status(scb, CAM_REQ_CMP); scb 1880 drivers/scsi/aic7xxx/aic7xxx_core.c ahc_qinfifo_requeue_tail(ahc, scb); scb 1892 drivers/scsi/aic7xxx/aic7xxx_core.c ahc_qinfifo_requeue_tail(ahc, scb); scb 1906 drivers/scsi/aic7xxx/aic7xxx_core.c ahc_qinfifo_requeue_tail(ahc, scb); scb 1913 drivers/scsi/aic7xxx/aic7xxx_core.c if (scb != NULL) { scb 1916 drivers/scsi/aic7xxx/aic7xxx_core.c if ((scb->hscb->control & TAG_ENB) != 0) scb 1917 drivers/scsi/aic7xxx/aic7xxx_core.c tag = scb->hscb->tag; scb 1920 drivers/scsi/aic7xxx/aic7xxx_core.c ahc_print_path(ahc, scb); scb 1922 drivers/scsi/aic7xxx/aic7xxx_core.c SCB_GET_LUN(scb), tag, scb 2094 drivers/scsi/aic7xxx/aic7xxx_core.c ahc_print_scb(struct scb *scb) scb 2098 drivers/scsi/aic7xxx/aic7xxx_core.c struct hardware_scb *hscb = scb->hscb; scb 2101 drivers/scsi/aic7xxx/aic7xxx_core.c (void *)scb, scb 2114 drivers/scsi/aic7xxx/aic7xxx_core.c if (scb->sg_count > 0) { scb 2115 drivers/scsi/aic7xxx/aic7xxx_core.c for (i = 0; i < scb->sg_count; i++) { scb 2118 drivers/scsi/aic7xxx/aic7xxx_core.c (ahc_le32toh(scb->sg_list[i].len) >> 24 scb 2120 drivers/scsi/aic7xxx/aic7xxx_core.c ahc_le32toh(scb->sg_list[i].addr), scb 2121 drivers/scsi/aic7xxx/aic7xxx_core.c ahc_le32toh(scb->sg_list[i].len)); scb 2687 drivers/scsi/aic7xxx/aic7xxx_core.c struct scb *pending_scb; scb 2836 drivers/scsi/aic7xxx/aic7xxx_core.c struct scb *scb) scb 2841 drivers/scsi/aic7xxx/aic7xxx_core.c our_id = SCSIID_OUR_ID(scb->hscb->scsiid); scb 2843 drivers/scsi/aic7xxx/aic7xxx_core.c if ((scb->flags & SCB_TARGET_SCB) != 0) scb 2845 drivers/scsi/aic7xxx/aic7xxx_core.c ahc_compile_devinfo(devinfo, our_id, SCB_GET_TARGET(ahc, scb), scb 2846 drivers/scsi/aic7xxx/aic7xxx_core.c SCB_GET_LUN(scb), SCB_GET_CHANNEL(ahc, scb), role); scb 2870 drivers/scsi/aic7xxx/aic7xxx_core.c struct scb *scb) scb 2880 drivers/scsi/aic7xxx/aic7xxx_core.c if ((scb->flags & SCB_DEVICE_RESET) == 0 scb 2884 drivers/scsi/aic7xxx/aic7xxx_core.c identify_msg = MSG_IDENTIFYFLAG | SCB_GET_LUN(scb); scb 2885 drivers/scsi/aic7xxx/aic7xxx_core.c if ((scb->hscb->control & DISCENB) != 0) scb 2890 drivers/scsi/aic7xxx/aic7xxx_core.c if ((scb->hscb->control & TAG_ENB) != 0) { scb 2892 drivers/scsi/aic7xxx/aic7xxx_core.c scb->hscb->control & (TAG_ENB|SCB_TAG_TYPE); scb 2893 drivers/scsi/aic7xxx/aic7xxx_core.c ahc->msgout_buf[ahc->msgout_index++] = scb->hscb->tag; scb 2898 drivers/scsi/aic7xxx/aic7xxx_core.c if (scb->flags & SCB_DEVICE_RESET) { scb 2901 drivers/scsi/aic7xxx/aic7xxx_core.c ahc_print_path(ahc, scb); scb 2911 drivers/scsi/aic7xxx/aic7xxx_core.c } else if ((scb->flags & SCB_ABORT) != 0) { scb 2912 drivers/scsi/aic7xxx/aic7xxx_core.c if ((scb->hscb->control & TAG_ENB) != 0) scb 2917 drivers/scsi/aic7xxx/aic7xxx_core.c ahc_print_path(ahc, scb); scb 2919 drivers/scsi/aic7xxx/aic7xxx_core.c (scb->hscb->control & TAG_ENB) != 0 ? " Tag" : ""); scb 2928 drivers/scsi/aic7xxx/aic7xxx_core.c } else if ((scb->flags & (SCB_AUTO_NEGOTIATE|SCB_NEGOTIATE)) != 0) { scb 2933 drivers/scsi/aic7xxx/aic7xxx_core.c printk("SCSIID = %x, target_mask = %x\n", scb->hscb->scsiid, scb 2936 drivers/scsi/aic7xxx/aic7xxx_core.c "SCB flags = %x", scb->hscb->tag, scb->hscb->control, scb 2937 drivers/scsi/aic7xxx/aic7xxx_core.c ahc_inb(ahc, MSG_OUT), scb->flags); scb 2945 drivers/scsi/aic7xxx/aic7xxx_core.c scb->hscb->control &= ~MK_MESSAGE; scb 3134 drivers/scsi/aic7xxx/aic7xxx_core.c struct scb *scb; scb 3143 drivers/scsi/aic7xxx/aic7xxx_core.c scb = ahc_lookup_scb(ahc, scbid); scb 3157 drivers/scsi/aic7xxx/aic7xxx_core.c scb = NULL; scb 3158 drivers/scsi/aic7xxx/aic7xxx_core.c } else if (scb == NULL) { scb 3167 drivers/scsi/aic7xxx/aic7xxx_core.c ahc_set_transaction_status(scb, CAM_SEQUENCE_FAIL); scb 3169 drivers/scsi/aic7xxx/aic7xxx_core.c ahc_print_path(ahc, scb); scb 3179 drivers/scsi/aic7xxx/aic7xxx_core.c ahc_print_path(ahc, scb); scb 3182 drivers/scsi/aic7xxx/aic7xxx_core.c ahc_print_path(ahc, scb); scb 3209 drivers/scsi/aic7xxx/aic7xxx_core.c if (scb == NULL) { scb 3216 drivers/scsi/aic7xxx/aic7xxx_core.c ahc_print_path(ahc, scb); scb 3217 drivers/scsi/aic7xxx/aic7xxx_core.c scb->flags |= SCB_ABORT; scb 4007 drivers/scsi/aic7xxx/aic7xxx_core.c struct scb *scb; scb 4015 drivers/scsi/aic7xxx/aic7xxx_core.c scb = ahc_lookup_scb(ahc, scb_index); scb 4076 drivers/scsi/aic7xxx/aic7xxx_core.c } else if ((scb->hscb->control & MSG_SIMPLE_TASK) != 0) { scb 4080 drivers/scsi/aic7xxx/aic7xxx_core.c tag_type = (scb->hscb->control & MSG_SIMPLE_TASK); scb 4086 drivers/scsi/aic7xxx/aic7xxx_core.c ahc_set_tags(ahc, scb->io_ctx, devinfo, AHC_QUEUE_NONE); scb 4094 drivers/scsi/aic7xxx/aic7xxx_core.c ahc_set_tags(ahc, scb->io_ctx, devinfo, AHC_QUEUE_BASIC); scb 4104 drivers/scsi/aic7xxx/aic7xxx_core.c scb->hscb->control &= mask; scb 4105 drivers/scsi/aic7xxx/aic7xxx_core.c ahc_set_transaction_tag(scb, /*enabled*/FALSE, scb 4119 drivers/scsi/aic7xxx/aic7xxx_core.c TAILQ_INSERT_HEAD(untagged_q, scb, links.tqe); scb 4120 drivers/scsi/aic7xxx/aic7xxx_core.c scb->flags |= SCB_UNTAGGEDQ; scb 4122 drivers/scsi/aic7xxx/aic7xxx_core.c ahc_busy_tcl(ahc, BUILD_TCL(scb->hscb->scsiid, devinfo->lun), scb 4123 drivers/scsi/aic7xxx/aic7xxx_core.c scb->hscb->tag); scb 4130 drivers/scsi/aic7xxx/aic7xxx_core.c ahc_search_qinfifo(ahc, SCB_GET_TARGET(ahc, scb), scb 4131 drivers/scsi/aic7xxx/aic7xxx_core.c SCB_GET_CHANNEL(ahc, scb), scb 4132 drivers/scsi/aic7xxx/aic7xxx_core.c SCB_GET_LUN(scb), /*tag*/SCB_LIST_NULL, scb 4153 drivers/scsi/aic7xxx/aic7xxx_core.c struct scb *scb; scb 4156 drivers/scsi/aic7xxx/aic7xxx_core.c scb = ahc_lookup_scb(ahc, scb_index); scb 4162 drivers/scsi/aic7xxx/aic7xxx_core.c || ahc_get_transfer_dir(scb) != CAM_DIR_IN) { scb 4211 drivers/scsi/aic7xxx/aic7xxx_core.c sg = ahc_sg_bus_to_virt(scb, sgptr); scb 4219 drivers/scsi/aic7xxx/aic7xxx_core.c if (sg != scb->sg_list scb 4237 drivers/scsi/aic7xxx/aic7xxx_core.c sgptr = ahc_sg_virt_to_bus(scb, sg); scb 4261 drivers/scsi/aic7xxx/aic7xxx_core.c struct scb *scb; scb 4269 drivers/scsi/aic7xxx/aic7xxx_core.c scb = ahc_lookup_scb(ahc, scb_index); scb 4276 drivers/scsi/aic7xxx/aic7xxx_core.c sg = ahc_sg_bus_to_virt(scb, sgptr); scb 4371 drivers/scsi/aic7xxx/aic7xxx_core.c struct scb *scb) scb 4382 drivers/scsi/aic7xxx/aic7xxx_core.c if (scb != NULL && (scb->flags & SCB_AUTO_NEGOTIATE) != 0) scb 4769 drivers/scsi/aic7xxx/aic7xxx_core.c scb_data->scbarray = kcalloc(AHC_SCB_MAX_ALLOC, sizeof(struct scb), scb 4961 drivers/scsi/aic7xxx/aic7xxx_core.c struct scb *next_scb; scb 5407 drivers/scsi/aic7xxx/aic7xxx_core.c (u_int)sizeof(struct scb), scb 5722 drivers/scsi/aic7xxx/aic7xxx_core.c ahc_match_scb(struct ahc_softc *ahc, struct scb *scb, int target, scb 5725 drivers/scsi/aic7xxx/aic7xxx_core.c int targ = SCB_GET_TARGET(ahc, scb); scb 5726 drivers/scsi/aic7xxx/aic7xxx_core.c char chan = SCB_GET_CHANNEL(ahc, scb); scb 5727 drivers/scsi/aic7xxx/aic7xxx_core.c int slun = SCB_GET_LUN(scb); scb 5739 drivers/scsi/aic7xxx/aic7xxx_core.c group = XPT_FC_GROUP(scb->io_ctx->ccb_h.func_code); scb 5742 drivers/scsi/aic7xxx/aic7xxx_core.c && ((tag == scb->hscb->tag) scb 5746 drivers/scsi/aic7xxx/aic7xxx_core.c && ((tag == scb->io_ctx->csio.tag_id) scb 5750 drivers/scsi/aic7xxx/aic7xxx_core.c match = ((tag == scb->hscb->tag) || (tag == SCB_LIST_NULL)); scb 5758 drivers/scsi/aic7xxx/aic7xxx_core.c ahc_freeze_devq(struct ahc_softc *ahc, struct scb *scb) scb 5764 drivers/scsi/aic7xxx/aic7xxx_core.c target = SCB_GET_TARGET(ahc, scb); scb 5765 drivers/scsi/aic7xxx/aic7xxx_core.c lun = SCB_GET_LUN(scb); scb 5766 drivers/scsi/aic7xxx/aic7xxx_core.c channel = SCB_GET_CHANNEL(ahc, scb); scb 5772 drivers/scsi/aic7xxx/aic7xxx_core.c ahc_platform_freeze_devq(ahc, scb); scb 5776 drivers/scsi/aic7xxx/aic7xxx_core.c ahc_qinfifo_requeue_tail(struct ahc_softc *ahc, struct scb *scb) scb 5778 drivers/scsi/aic7xxx/aic7xxx_core.c struct scb *prev_scb; scb 5789 drivers/scsi/aic7xxx/aic7xxx_core.c ahc_qinfifo_requeue(ahc, prev_scb, scb); scb 5798 drivers/scsi/aic7xxx/aic7xxx_core.c ahc_qinfifo_requeue(struct ahc_softc *ahc, struct scb *prev_scb, scb 5799 drivers/scsi/aic7xxx/aic7xxx_core.c struct scb *scb) scb 5802 drivers/scsi/aic7xxx/aic7xxx_core.c ahc_outb(ahc, NEXT_QUEUED_SCB, scb->hscb->tag); scb 5804 drivers/scsi/aic7xxx/aic7xxx_core.c prev_scb->hscb->next = scb->hscb->tag; scb 5808 drivers/scsi/aic7xxx/aic7xxx_core.c ahc->qinfifo[ahc->qinfifonext++] = scb->hscb->tag; scb 5809 drivers/scsi/aic7xxx/aic7xxx_core.c scb->hscb->next = ahc->next_queued_scb->hscb->tag; scb 5810 drivers/scsi/aic7xxx/aic7xxx_core.c ahc_sync_scb(ahc, scb, BUS_DMASYNC_PREREAD|BUS_DMASYNC_PREWRITE); scb 5833 drivers/scsi/aic7xxx/aic7xxx_core.c struct scb *scb; scb 5834 drivers/scsi/aic7xxx/aic7xxx_core.c struct scb *prev_scb; scb 5871 drivers/scsi/aic7xxx/aic7xxx_core.c scb = ahc_lookup_scb(ahc, ahc->qinfifo[qinpos]); scb 5872 drivers/scsi/aic7xxx/aic7xxx_core.c if (scb == NULL) { scb 5878 drivers/scsi/aic7xxx/aic7xxx_core.c if (ahc_match_scb(ahc, scb, target, channel, lun, tag, role)) { scb 5889 drivers/scsi/aic7xxx/aic7xxx_core.c ostat = ahc_get_transaction_status(scb); scb 5891 drivers/scsi/aic7xxx/aic7xxx_core.c ahc_set_transaction_status(scb, status); scb 5892 drivers/scsi/aic7xxx/aic7xxx_core.c cstat = ahc_get_transaction_status(scb); scb 5894 drivers/scsi/aic7xxx/aic7xxx_core.c ahc_freeze_scb(scb); scb 5895 drivers/scsi/aic7xxx/aic7xxx_core.c if ((scb->flags & SCB_ACTIVE) == 0) scb 5897 drivers/scsi/aic7xxx/aic7xxx_core.c ahc_done(ahc, scb); scb 5904 drivers/scsi/aic7xxx/aic7xxx_core.c ahc_qinfifo_requeue(ahc, prev_scb, scb); scb 5905 drivers/scsi/aic7xxx/aic7xxx_core.c prev_scb = scb; scb 5909 drivers/scsi/aic7xxx/aic7xxx_core.c ahc_qinfifo_requeue(ahc, prev_scb, scb); scb 5910 drivers/scsi/aic7xxx/aic7xxx_core.c prev_scb = scb; scb 5936 drivers/scsi/aic7xxx/aic7xxx_core.c scb = ahc_lookup_scb(ahc, ahc->qinfifo[qinstart]); scb 5938 drivers/scsi/aic7xxx/aic7xxx_core.c if (scb == NULL) { scb 5949 drivers/scsi/aic7xxx/aic7xxx_core.c next = scb->hscb->next; scb 5950 drivers/scsi/aic7xxx/aic7xxx_core.c ahc->scb_data->scbindex[scb->hscb->tag] = NULL; scb 5951 drivers/scsi/aic7xxx/aic7xxx_core.c ahc_swap_with_next_hscb(ahc, scb); scb 5952 drivers/scsi/aic7xxx/aic7xxx_core.c scb->hscb->next = next; scb 5953 drivers/scsi/aic7xxx/aic7xxx_core.c ahc->qinfifo[qinstart] = scb->hscb->tag; scb 5956 drivers/scsi/aic7xxx/aic7xxx_core.c ahc_outb(ahc, NEXT_QUEUED_SCB, scb->hscb->tag); scb 5960 drivers/scsi/aic7xxx/aic7xxx_core.c scb = ahc_lookup_scb(ahc, ahc->qinfifo[qintail]); scb 5961 drivers/scsi/aic7xxx/aic7xxx_core.c scb->hscb->next = ahc->next_queued_scb->hscb->tag; scb 5983 drivers/scsi/aic7xxx/aic7xxx_core.c scb = ahc_lookup_scb(ahc, scb_index); scb 5984 drivers/scsi/aic7xxx/aic7xxx_core.c if (scb == NULL) { scb 5989 drivers/scsi/aic7xxx/aic7xxx_core.c if (ahc_match_scb(ahc, scb, target, channel, scb 6001 drivers/scsi/aic7xxx/aic7xxx_core.c ostat = ahc_get_transaction_status(scb); scb 6003 drivers/scsi/aic7xxx/aic7xxx_core.c ahc_set_transaction_status(scb, scb 6005 drivers/scsi/aic7xxx/aic7xxx_core.c cstat = ahc_get_transaction_status(scb); scb 6007 drivers/scsi/aic7xxx/aic7xxx_core.c ahc_freeze_scb(scb); scb 6008 drivers/scsi/aic7xxx/aic7xxx_core.c if ((scb->flags & SCB_ACTIVE) == 0) scb 6010 drivers/scsi/aic7xxx/aic7xxx_core.c ahc_done(ahc, scb); scb 6042 drivers/scsi/aic7xxx/aic7xxx_core.c struct scb *scb; scb 6073 drivers/scsi/aic7xxx/aic7xxx_core.c struct scb *next_scb; scb 6079 drivers/scsi/aic7xxx/aic7xxx_core.c scb = next_scb; scb 6080 drivers/scsi/aic7xxx/aic7xxx_core.c next_scb = TAILQ_NEXT(scb, links.tqe); scb 6091 drivers/scsi/aic7xxx/aic7xxx_core.c if ((scb->flags & SCB_ACTIVE) != 0) scb 6094 drivers/scsi/aic7xxx/aic7xxx_core.c if (ahc_match_scb(ahc, scb, target, channel, lun, scb 6096 drivers/scsi/aic7xxx/aic7xxx_core.c || (ctx != NULL && ctx != scb->io_ctx)) scb 6109 drivers/scsi/aic7xxx/aic7xxx_core.c ostat = ahc_get_transaction_status(scb); scb 6111 drivers/scsi/aic7xxx/aic7xxx_core.c ahc_set_transaction_status(scb, status); scb 6112 drivers/scsi/aic7xxx/aic7xxx_core.c cstat = ahc_get_transaction_status(scb); scb 6114 drivers/scsi/aic7xxx/aic7xxx_core.c ahc_freeze_scb(scb); scb 6115 drivers/scsi/aic7xxx/aic7xxx_core.c if ((scb->flags & SCB_ACTIVE) == 0) scb 6117 drivers/scsi/aic7xxx/aic7xxx_core.c ahc_done(ahc, scb); scb 6121 drivers/scsi/aic7xxx/aic7xxx_core.c scb->flags &= ~SCB_UNTAGGEDQ; scb 6122 drivers/scsi/aic7xxx/aic7xxx_core.c TAILQ_REMOVE(untagged_q, scb, links.tqe); scb 6140 drivers/scsi/aic7xxx/aic7xxx_core.c struct scb *scbp; scb 6302 drivers/scsi/aic7xxx/aic7xxx_core.c struct scb *scbp; scb 6303 drivers/scsi/aic7xxx/aic7xxx_core.c struct scb *scbp_next; scb 6621 drivers/scsi/aic7xxx/aic7xxx_core.c ahc_calc_residual(struct ahc_softc *ahc, struct scb *scb) scb 6645 drivers/scsi/aic7xxx/aic7xxx_core.c hscb = scb->hscb; scb 6660 drivers/scsi/aic7xxx/aic7xxx_core.c resid = ahc_get_transfer_length(scb); scb 6674 drivers/scsi/aic7xxx/aic7xxx_core.c sg = ahc_sg_bus_to_virt(scb, resid_sgptr & SG_PTR_MASK); scb 6689 drivers/scsi/aic7xxx/aic7xxx_core.c if ((scb->flags & SCB_SENSE) == 0) scb 6690 drivers/scsi/aic7xxx/aic7xxx_core.c ahc_set_residual(scb, resid); scb 6692 drivers/scsi/aic7xxx/aic7xxx_core.c ahc_set_sense_residual(scb, resid); scb 6696 drivers/scsi/aic7xxx/aic7xxx_core.c ahc_print_path(ahc, scb); scb 6698 drivers/scsi/aic7xxx/aic7xxx_core.c (scb->flags & SCB_SENSE) ? "Sense " : "", resid); scb 7137 drivers/scsi/aic7xxx/aic7xxx_core.c struct scb *scb; scb 7268 drivers/scsi/aic7xxx/aic7xxx_core.c LIST_FOREACH(scb, &ahc->pending_scbs, pending_links) { scb 7271 drivers/scsi/aic7xxx/aic7xxx_core.c cur_col = printk("\n%3d ", scb->hscb->tag); scb 7272 drivers/scsi/aic7xxx/aic7xxx_core.c ahc_scb_control_print(scb->hscb->control, &cur_col, 60); scb 7273 drivers/scsi/aic7xxx/aic7xxx_core.c ahc_scb_scsiid_print(scb->hscb->scsiid, &cur_col, 60); scb 7274 drivers/scsi/aic7xxx/aic7xxx_core.c ahc_scb_lun_print(scb->hscb->lun, &cur_col, 60); scb 7276 drivers/scsi/aic7xxx/aic7xxx_core.c ahc_outb(ahc, SCBPTR, scb->hscb->tag); scb 7288 drivers/scsi/aic7xxx/aic7xxx_core.c SLIST_FOREACH(scb, &ahc->scb_data->free_scbs, links.sle) { scb 7291 drivers/scsi/aic7xxx/aic7xxx_core.c printk("%d ", scb->hscb->tag); scb 7302 drivers/scsi/aic7xxx/aic7xxx_core.c TAILQ_FOREACH(scb, untagged_q, links.tqe) { scb 7305 drivers/scsi/aic7xxx/aic7xxx_core.c printk("%d ", scb->hscb->tag); scb 7617 drivers/scsi/aic7xxx/aic7xxx_core.c struct scb *scb; scb 7628 drivers/scsi/aic7xxx/aic7xxx_core.c LIST_FOREACH(scb, &ahc->pending_scbs, pending_links) { scb 7631 drivers/scsi/aic7xxx/aic7xxx_core.c ccbh = &scb->io_ctx->ccb_h; scb 55 drivers/scsi/aic7xxx/aic7xxx_inline.h struct scb *scb, int op); scb 84 drivers/scsi/aic7xxx/aic7xxx_inline.h struct scb* scb 86 drivers/scsi/aic7xxx/aic7xxx_inline.h void ahc_free_scb(struct ahc_softc *ahc, struct scb *scb); scb 87 drivers/scsi/aic7xxx/aic7xxx_inline.h struct scb * scb 89 drivers/scsi/aic7xxx/aic7xxx_inline.h void ahc_queue_scb(struct ahc_softc *ahc, struct scb *scb); scb 92 drivers/scsi/aic7xxx/aic7xxx_inline.h struct scb *scb); scb 253 drivers/scsi/aic7xxx/aic7xxx_osm.c ahc_print_path(struct ahc_softc *ahc, struct scb *scb) scb 257 drivers/scsi/aic7xxx/aic7xxx_osm.c scb != NULL ? SCB_GET_CHANNEL(ahc, scb) : 'X', scb 258 drivers/scsi/aic7xxx/aic7xxx_osm.c scb != NULL ? SCB_GET_TARGET(ahc, scb) : -1, scb 259 drivers/scsi/aic7xxx/aic7xxx_osm.c scb != NULL ? SCB_GET_LUN(scb) : -1); scb 363 drivers/scsi/aic7xxx/aic7xxx_osm.c struct scb *); scb 452 drivers/scsi/aic7xxx/aic7xxx_osm.c static void ahc_linux_unmap_scb(struct ahc_softc*, struct scb*); scb 454 drivers/scsi/aic7xxx/aic7xxx_osm.c static int ahc_linux_map_seg(struct ahc_softc *ahc, struct scb *scb, scb 459 drivers/scsi/aic7xxx/aic7xxx_osm.c ahc_linux_unmap_scb(struct ahc_softc *ahc, struct scb *scb) scb 463 drivers/scsi/aic7xxx/aic7xxx_osm.c cmd = scb->io_ctx; scb 464 drivers/scsi/aic7xxx/aic7xxx_osm.c ahc_sync_sglist(ahc, scb, BUS_DMASYNC_POSTWRITE); scb 470 drivers/scsi/aic7xxx/aic7xxx_osm.c ahc_linux_map_seg(struct ahc_softc *ahc, struct scb *scb, scb 475 drivers/scsi/aic7xxx/aic7xxx_osm.c if ((scb->sg_count + 1) > AHC_NSEG) scb 481 drivers/scsi/aic7xxx/aic7xxx_osm.c scb->platform_data->xfer_len += len; scb 1261 drivers/scsi/aic7xxx/aic7xxx_osm.c ahc_platform_freeze_devq(struct ahc_softc *ahc, struct scb *scb) scb 1263 drivers/scsi/aic7xxx/aic7xxx_osm.c ahc_platform_abort_scbs(ahc, SCB_GET_TARGET(ahc, scb), scb 1264 drivers/scsi/aic7xxx/aic7xxx_osm.c SCB_GET_CHANNEL(ahc, scb), scb 1265 drivers/scsi/aic7xxx/aic7xxx_osm.c SCB_GET_LUN(scb), SCB_LIST_NULL, scb 1422 drivers/scsi/aic7xxx/aic7xxx_osm.c struct scb *scb; scb 1462 drivers/scsi/aic7xxx/aic7xxx_osm.c scb = ahc_get_scb(ahc); scb 1463 drivers/scsi/aic7xxx/aic7xxx_osm.c if (!scb) { scb 1468 drivers/scsi/aic7xxx/aic7xxx_osm.c scb->io_ctx = cmd; scb 1469 drivers/scsi/aic7xxx/aic7xxx_osm.c scb->platform_data->dev = dev; scb 1470 drivers/scsi/aic7xxx/aic7xxx_osm.c hscb = scb->hscb; scb 1471 drivers/scsi/aic7xxx/aic7xxx_osm.c cmd->host_scribble = (char *)scb; scb 1479 drivers/scsi/aic7xxx/aic7xxx_osm.c mask = SCB_GET_TARGET_MASK(ahc, scb); scb 1480 drivers/scsi/aic7xxx/aic7xxx_osm.c tinfo = ahc_fetch_transinfo(ahc, SCB_GET_CHANNEL(ahc, scb), scb 1481 drivers/scsi/aic7xxx/aic7xxx_osm.c SCB_GET_OUR_ID(scb), scb 1482 drivers/scsi/aic7xxx/aic7xxx_osm.c SCB_GET_TARGET(ahc, scb), &tstate); scb 1492 drivers/scsi/aic7xxx/aic7xxx_osm.c scb->flags |= SCB_AUTO_NEGOTIATE; scb 1493 drivers/scsi/aic7xxx/aic7xxx_osm.c scb->hscb->control |= MK_MESSAGE; scb 1511 drivers/scsi/aic7xxx/aic7xxx_osm.c scb->flags |= SCB_CDB32_PTR; scb 1514 drivers/scsi/aic7xxx/aic7xxx_osm.c scb->platform_data->xfer_len = 0; scb 1515 drivers/scsi/aic7xxx/aic7xxx_osm.c ahc_set_residual(scb, 0); scb 1516 drivers/scsi/aic7xxx/aic7xxx_osm.c ahc_set_sense_residual(scb, 0); scb 1517 drivers/scsi/aic7xxx/aic7xxx_osm.c scb->sg_count = 0; scb 1525 drivers/scsi/aic7xxx/aic7xxx_osm.c sg = scb->sg_list; scb 1537 drivers/scsi/aic7xxx/aic7xxx_osm.c consumed = ahc_linux_map_seg(ahc, scb, scb 1540 drivers/scsi/aic7xxx/aic7xxx_osm.c scb->sg_count += consumed; scb 1548 drivers/scsi/aic7xxx/aic7xxx_osm.c scb->hscb->sgptr = scb 1549 drivers/scsi/aic7xxx/aic7xxx_osm.c ahc_htole32(scb->sg_list_phys | SG_FULL_RESID); scb 1555 drivers/scsi/aic7xxx/aic7xxx_osm.c scb->hscb->dataptr = scb->sg_list->addr; scb 1556 drivers/scsi/aic7xxx/aic7xxx_osm.c scb->hscb->datacnt = scb->sg_list->len; scb 1558 drivers/scsi/aic7xxx/aic7xxx_osm.c scb->hscb->sgptr = ahc_htole32(SG_LIST_NULL); scb 1559 drivers/scsi/aic7xxx/aic7xxx_osm.c scb->hscb->dataptr = 0; scb 1560 drivers/scsi/aic7xxx/aic7xxx_osm.c scb->hscb->datacnt = 0; scb 1561 drivers/scsi/aic7xxx/aic7xxx_osm.c scb->sg_count = 0; scb 1564 drivers/scsi/aic7xxx/aic7xxx_osm.c LIST_INSERT_HEAD(&ahc->pending_scbs, scb, pending_links); scb 1571 drivers/scsi/aic7xxx/aic7xxx_osm.c scb->flags |= SCB_ACTIVE; scb 1573 drivers/scsi/aic7xxx/aic7xxx_osm.c TAILQ_INSERT_TAIL(untagged_q, scb, links.tqe); scb 1574 drivers/scsi/aic7xxx/aic7xxx_osm.c scb->flags |= SCB_UNTAGGEDQ; scb 1576 drivers/scsi/aic7xxx/aic7xxx_osm.c ahc_queue_scb(ahc, scb); scb 1690 drivers/scsi/aic7xxx/aic7xxx_osm.c ahc_done(struct ahc_softc *ahc, struct scb *scb) scb 1695 drivers/scsi/aic7xxx/aic7xxx_osm.c LIST_REMOVE(scb, pending_links); scb 1696 drivers/scsi/aic7xxx/aic7xxx_osm.c if ((scb->flags & SCB_UNTAGGEDQ) != 0) { scb 1700 drivers/scsi/aic7xxx/aic7xxx_osm.c target_offset = SCB_GET_TARGET_OFFSET(ahc, scb); scb 1702 drivers/scsi/aic7xxx/aic7xxx_osm.c TAILQ_REMOVE(untagged_q, scb, links.tqe); scb 1704 drivers/scsi/aic7xxx/aic7xxx_osm.c } else if ((scb->flags & SCB_ACTIVE) == 0) { scb 1710 drivers/scsi/aic7xxx/aic7xxx_osm.c printk("SCB %d done'd twice\n", scb->hscb->tag); scb 1714 drivers/scsi/aic7xxx/aic7xxx_osm.c cmd = scb->io_ctx; scb 1715 drivers/scsi/aic7xxx/aic7xxx_osm.c dev = scb->platform_data->dev; scb 1722 drivers/scsi/aic7xxx/aic7xxx_osm.c ahc_linux_unmap_scb(ahc, scb); scb 1731 drivers/scsi/aic7xxx/aic7xxx_osm.c if (ahc_get_transaction_status(scb) == CAM_REQ_INPROG) { scb 1735 drivers/scsi/aic7xxx/aic7xxx_osm.c ahc_get_transfer_length(scb) - ahc_get_residual(scb); scb 1736 drivers/scsi/aic7xxx/aic7xxx_osm.c if ((scb->flags & SCB_TRANSMISSION_ERROR) != 0) { scb 1739 drivers/scsi/aic7xxx/aic7xxx_osm.c ahc_print_path(ahc, scb); scb 1743 drivers/scsi/aic7xxx/aic7xxx_osm.c ahc_set_transaction_status(scb, CAM_UNCOR_PARITY); scb 1754 drivers/scsi/aic7xxx/aic7xxx_osm.c } else if (amount_xferred < scb->io_ctx->underflow) { scb 1757 drivers/scsi/aic7xxx/aic7xxx_osm.c ahc_print_path(ahc, scb); scb 1759 drivers/scsi/aic7xxx/aic7xxx_osm.c for (i = 0; i < scb->io_ctx->cmd_len; i++) scb 1760 drivers/scsi/aic7xxx/aic7xxx_osm.c printk(" 0x%x", scb->io_ctx->cmnd[i]); scb 1762 drivers/scsi/aic7xxx/aic7xxx_osm.c ahc_print_path(ahc, scb); scb 1765 drivers/scsi/aic7xxx/aic7xxx_osm.c ahc_get_residual(scb), scb 1766 drivers/scsi/aic7xxx/aic7xxx_osm.c ahc_get_transfer_length(scb)); scb 1767 drivers/scsi/aic7xxx/aic7xxx_osm.c ahc_set_transaction_status(scb, CAM_DATA_RUN_ERR); scb 1770 drivers/scsi/aic7xxx/aic7xxx_osm.c ahc_set_transaction_status(scb, CAM_REQ_CMP); scb 1772 drivers/scsi/aic7xxx/aic7xxx_osm.c } else if (ahc_get_transaction_status(scb) == CAM_SCSI_STATUS_ERROR) { scb 1773 drivers/scsi/aic7xxx/aic7xxx_osm.c ahc_linux_handle_scsi_status(ahc, cmd->device, scb); scb 1777 drivers/scsi/aic7xxx/aic7xxx_osm.c && ahc_get_transaction_status(scb) == CAM_REQ_CMP scb 1778 drivers/scsi/aic7xxx/aic7xxx_osm.c && ahc_get_scsi_status(scb) != SCSI_STATUS_QUEUE_FULL) scb 1795 drivers/scsi/aic7xxx/aic7xxx_osm.c if ((scb->flags & SCB_RECOVERY_SCB) != 0) { scb 1797 drivers/scsi/aic7xxx/aic7xxx_osm.c if (ahc_get_transaction_status(scb) == CAM_BDR_SENT scb 1798 drivers/scsi/aic7xxx/aic7xxx_osm.c || ahc_get_transaction_status(scb) == CAM_REQ_ABORTED) scb 1799 drivers/scsi/aic7xxx/aic7xxx_osm.c ahc_set_transaction_status(scb, CAM_CMD_TIMEOUT); scb 1805 drivers/scsi/aic7xxx/aic7xxx_osm.c ahc_free_scb(ahc, scb); scb 1811 drivers/scsi/aic7xxx/aic7xxx_osm.c struct scsi_device *sdev, struct scb *scb) scb 1832 drivers/scsi/aic7xxx/aic7xxx_osm.c switch (ahc_get_scsi_status(scb)) { scb 1844 drivers/scsi/aic7xxx/aic7xxx_osm.c cmd = scb->io_ctx; scb 1845 drivers/scsi/aic7xxx/aic7xxx_osm.c if (scb->flags & SCB_SENSE) { scb 1849 drivers/scsi/aic7xxx/aic7xxx_osm.c - ahc_get_sense_residual(scb), scb 1852 drivers/scsi/aic7xxx/aic7xxx_osm.c ahc_get_sense_buf(ahc, scb), sense_size); scb 1909 drivers/scsi/aic7xxx/aic7xxx_osm.c ahc_print_path(ahc, scb); scb 1917 drivers/scsi/aic7xxx/aic7xxx_osm.c ahc_set_transaction_status(scb, CAM_REQUEUE_REQ); scb 1918 drivers/scsi/aic7xxx/aic7xxx_osm.c ahc_set_scsi_status(scb, SCSI_STATUS_OK); scb 1929 drivers/scsi/aic7xxx/aic7xxx_osm.c ahc_set_scsi_status(scb, SCSI_STATUS_BUSY); scb 2054 drivers/scsi/aic7xxx/aic7xxx_osm.c struct scb *pending_scb; scb 2190 drivers/scsi/aic7xxx/aic7xxx_osm.c struct scb *bus_scb; scb 229 drivers/scsi/aic7xxx/aic7xxx_osm.h ahc_scb_timer_reset(struct scb *scb, u_int usec) scb 519 drivers/scsi/aic7xxx/aic7xxx_osm.h static inline void ahc_set_transaction_status(struct scb *, uint32_t); scb 521 drivers/scsi/aic7xxx/aic7xxx_osm.h static inline void ahc_set_scsi_status(struct scb *, uint32_t); scb 523 drivers/scsi/aic7xxx/aic7xxx_osm.h static inline uint32_t ahc_get_transaction_status(struct scb *); scb 525 drivers/scsi/aic7xxx/aic7xxx_osm.h static inline uint32_t ahc_get_scsi_status(struct scb *); scb 526 drivers/scsi/aic7xxx/aic7xxx_osm.h static inline void ahc_set_transaction_tag(struct scb *, int, u_int); scb 527 drivers/scsi/aic7xxx/aic7xxx_osm.h static inline u_long ahc_get_transfer_length(struct scb *); scb 528 drivers/scsi/aic7xxx/aic7xxx_osm.h static inline int ahc_get_transfer_dir(struct scb *); scb 529 drivers/scsi/aic7xxx/aic7xxx_osm.h static inline void ahc_set_residual(struct scb *, u_long); scb 530 drivers/scsi/aic7xxx/aic7xxx_osm.h static inline void ahc_set_sense_residual(struct scb *scb, u_long resid); scb 531 drivers/scsi/aic7xxx/aic7xxx_osm.h static inline u_long ahc_get_residual(struct scb *); scb 532 drivers/scsi/aic7xxx/aic7xxx_osm.h static inline u_long ahc_get_sense_residual(struct scb *); scb 533 drivers/scsi/aic7xxx/aic7xxx_osm.h static inline int ahc_perform_autosense(struct scb *); scb 535 drivers/scsi/aic7xxx/aic7xxx_osm.h struct scb *); scb 539 drivers/scsi/aic7xxx/aic7xxx_osm.h struct scb *scb); scb 540 drivers/scsi/aic7xxx/aic7xxx_osm.h static inline void ahc_freeze_scb(struct scb *scb); scb 550 drivers/scsi/aic7xxx/aic7xxx_osm.h void ahc_set_transaction_status(struct scb *scb, uint32_t status) scb 552 drivers/scsi/aic7xxx/aic7xxx_osm.h ahc_cmd_set_transaction_status(scb->io_ctx,status); scb 563 drivers/scsi/aic7xxx/aic7xxx_osm.h void ahc_set_scsi_status(struct scb *scb, uint32_t status) scb 565 drivers/scsi/aic7xxx/aic7xxx_osm.h ahc_cmd_set_scsi_status(scb->io_ctx, status); scb 575 drivers/scsi/aic7xxx/aic7xxx_osm.h uint32_t ahc_get_transaction_status(struct scb *scb) scb 577 drivers/scsi/aic7xxx/aic7xxx_osm.h return (ahc_cmd_get_transaction_status(scb->io_ctx)); scb 587 drivers/scsi/aic7xxx/aic7xxx_osm.h uint32_t ahc_get_scsi_status(struct scb *scb) scb 589 drivers/scsi/aic7xxx/aic7xxx_osm.h return (ahc_cmd_get_scsi_status(scb->io_ctx)); scb 593 drivers/scsi/aic7xxx/aic7xxx_osm.h void ahc_set_transaction_tag(struct scb *scb, int enabled, u_int type) scb 602 drivers/scsi/aic7xxx/aic7xxx_osm.h u_long ahc_get_transfer_length(struct scb *scb) scb 604 drivers/scsi/aic7xxx/aic7xxx_osm.h return (scb->platform_data->xfer_len); scb 608 drivers/scsi/aic7xxx/aic7xxx_osm.h int ahc_get_transfer_dir(struct scb *scb) scb 610 drivers/scsi/aic7xxx/aic7xxx_osm.h return (scb->io_ctx->sc_data_direction); scb 614 drivers/scsi/aic7xxx/aic7xxx_osm.h void ahc_set_residual(struct scb *scb, u_long resid) scb 616 drivers/scsi/aic7xxx/aic7xxx_osm.h scsi_set_resid(scb->io_ctx, resid); scb 620 drivers/scsi/aic7xxx/aic7xxx_osm.h void ahc_set_sense_residual(struct scb *scb, u_long resid) scb 622 drivers/scsi/aic7xxx/aic7xxx_osm.h scb->platform_data->sense_resid = resid; scb 626 drivers/scsi/aic7xxx/aic7xxx_osm.h u_long ahc_get_residual(struct scb *scb) scb 628 drivers/scsi/aic7xxx/aic7xxx_osm.h return scsi_get_resid(scb->io_ctx); scb 632 drivers/scsi/aic7xxx/aic7xxx_osm.h u_long ahc_get_sense_residual(struct scb *scb) scb 634 drivers/scsi/aic7xxx/aic7xxx_osm.h return (scb->platform_data->sense_resid); scb 638 drivers/scsi/aic7xxx/aic7xxx_osm.h int ahc_perform_autosense(struct scb *scb) scb 649 drivers/scsi/aic7xxx/aic7xxx_osm.h ahc_get_sense_bufsize(struct ahc_softc *ahc, struct scb *scb) scb 662 drivers/scsi/aic7xxx/aic7xxx_osm.h ahc_platform_scb_free(struct ahc_softc *ahc, struct scb *scb) scb 668 drivers/scsi/aic7xxx/aic7xxx_osm.h void ahc_platform_freeze_devq(struct ahc_softc *ahc, struct scb *scb); scb 671 drivers/scsi/aic7xxx/aic7xxx_osm.h ahc_freeze_scb(struct scb *scb) scb 673 drivers/scsi/aic7xxx/aic7xxx_osm.h if ((scb->io_ctx->result & (CAM_DEV_QFRZN << 16)) == 0) { scb 674 drivers/scsi/aic7xxx/aic7xxx_osm.h scb->io_ctx->result |= CAM_DEV_QFRZN << 16; scb 675 drivers/scsi/aic7xxx/aic7xxx_osm.h scb->platform_data->dev->qfrozen++; scb 687 drivers/scsi/aic7xxx/aic7xxx_osm.h void ahc_done(struct ahc_softc*, struct scb*); scb 690 drivers/scsi/aic7xxx/aic7xxx_osm.h void ahc_print_path(struct ahc_softc *, struct scb *); scb 248 drivers/scsi/aic7xxx/aicasm/aicasm_gram.y | scb scb 249 drivers/scsi/aic7xxx/aicasm/aicasm_gram.y | program scb scb 838 drivers/scsi/aic7xxx/aicasm/aicasm_gram.y scb: scb 920 drivers/scsi/aic94xx/aic94xx_dump.c le64_to_cpu(ascb->scb->header.next_scb), scb 921 drivers/scsi/aic94xx/aic94xx_dump.c le16_to_cpu(ascb->scb->header.index), scb 922 drivers/scsi/aic94xx/aic94xx_dump.c ascb->scb->header.opcode); scb 222 drivers/scsi/aic94xx/aic94xx_hwi.c seq->next_scb.size = sizeof(struct scb); scb 328 drivers/scsi/aic94xx/aic94xx_hwi.c escb->scb->header.opcode = EMPTY_SCB; scb 346 drivers/scsi/aic94xx/aic94xx_hwi.c struct empty_scb *escb = &ascb->scb->escb; scb 734 drivers/scsi/aic94xx/aic94xx_hwi.c } else if (ascb->scb->header.opcode == EMPTY_SCB) { scb 1041 drivers/scsi/aic94xx/aic94xx_hwi.c ascb->dma_scb.size = sizeof(struct scb); scb 1057 drivers/scsi/aic94xx/aic94xx_hwi.c ascb->scb->header.index = cpu_to_le16((u16)ascb->tc_index); scb 1103 drivers/scsi/aic94xx/aic94xx_hwi.c last->scb->header.next_scb = scb 1138 drivers/scsi/aic94xx/aic94xx_hwi.c memcpy(seq->next_scb.vaddr, ascb->scb, sizeof(*ascb->scb)); scb 1140 drivers/scsi/aic94xx/aic94xx_hwi.c ascb->scb = ascb->dma_scb.vaddr; scb 1142 drivers/scsi/aic94xx/aic94xx_hwi.c last->scb->header.next_scb = scb 116 drivers/scsi/aic94xx/aic94xx_hwi.h struct scb *scb; /* equals dma_scb->vaddr */ scb 274 drivers/scsi/aic94xx/aic94xx_hwi.h ascb->scb = ascb->dma_scb.vaddr; scb 519 drivers/scsi/aic94xx/aic94xx_init.c sizeof(struct scb), scb 865 drivers/scsi/aic94xx/aic94xx_init.c WARN_ON(ascb->scb->header.opcode != CONTROL_PHY); scb 688 drivers/scsi/aic94xx/aic94xx_sas.h #define ASD_SCB_SIZE sizeof(struct scb) scb 367 drivers/scsi/aic94xx/aic94xx_scb.c struct empty_scb *escb = &ascb->scb->escb; scb 419 drivers/scsi/aic94xx/aic94xx_scb.c le64_to_cpu(ascb->scb->header.next_scb), scb 420 drivers/scsi/aic94xx/aic94xx_scb.c le16_to_cpu(ascb->scb->header.index), scb 421 drivers/scsi/aic94xx/aic94xx_scb.c ascb->scb->header.opcode); scb 453 drivers/scsi/aic94xx/aic94xx_scb.c a->scb->header.opcode); scb 585 drivers/scsi/aic94xx/aic94xx_scb.c le64_to_cpu(ascb->scb->header.next_scb), scb 586 drivers/scsi/aic94xx/aic94xx_scb.c le16_to_cpu(ascb->scb->header.index), scb 587 drivers/scsi/aic94xx/aic94xx_scb.c ascb->scb->header.opcode); scb 628 drivers/scsi/aic94xx/aic94xx_scb.c struct scb *scb = ascb->scb; scb 629 drivers/scsi/aic94xx/aic94xx_scb.c struct control_phy *control_phy = &scb->control_phy; scb 765 drivers/scsi/aic94xx/aic94xx_scb.c struct scb *scb = ascb->scb; scb 766 drivers/scsi/aic94xx/aic94xx_scb.c struct control_phy *control_phy = &scb->control_phy; scb 768 drivers/scsi/aic94xx/aic94xx_scb.c scb->header.opcode = CONTROL_PHY; scb 816 drivers/scsi/aic94xx/aic94xx_scb.c struct initiate_link_adm *link_adm = &ascb->scb->link_adm; scb 832 drivers/scsi/aic94xx/aic94xx_scb.c struct scb *scb = ascb->scb; scb 833 drivers/scsi/aic94xx/aic94xx_scb.c struct initiate_link_adm *link_adm = &scb->link_adm; scb 835 drivers/scsi/aic94xx/aic94xx_scb.c scb->header.opcode = INITIATE_LINK_ADM_TASK; scb 865 drivers/scsi/aic94xx/aic94xx_scb.c ASD_DPRINTK("scb:0x%x timed out\n", ascb->scb->header.opcode); scb 126 drivers/scsi/aic94xx/aic94xx_task.c le64_to_cpu(ascb->scb->ssp_task.sg_element[0].bus_addr); scb 350 drivers/scsi/aic94xx/aic94xx_task.c struct scb *scb; scb 354 drivers/scsi/aic94xx/aic94xx_task.c scb = ascb->scb; scb 357 drivers/scsi/aic94xx/aic94xx_task.c scb->header.opcode = CONTROL_ATA_DEV; scb 359 drivers/scsi/aic94xx/aic94xx_task.c scb->header.opcode = INITIATE_ATAPI_TASK; scb 361 drivers/scsi/aic94xx/aic94xx_task.c scb->header.opcode = INITIATE_ATA_TASK; scb 363 drivers/scsi/aic94xx/aic94xx_task.c scb->ata_task.proto_conn_rate = (1 << 5); /* STP */ scb 365 drivers/scsi/aic94xx/aic94xx_task.c scb->ata_task.proto_conn_rate |= dev->linkrate; scb 367 drivers/scsi/aic94xx/aic94xx_task.c scb->ata_task.total_xfer_len = cpu_to_le32(task->total_xfer_len); scb 368 drivers/scsi/aic94xx/aic94xx_task.c scb->ata_task.fis = task->ata_task.fis; scb 370 drivers/scsi/aic94xx/aic94xx_task.c scb->ata_task.fis.flags |= 0x80; /* C=1: update ATA cmd reg */ scb 371 drivers/scsi/aic94xx/aic94xx_task.c scb->ata_task.fis.flags &= 0xF0; /* PM_PORT field shall be 0 */ scb 373 drivers/scsi/aic94xx/aic94xx_task.c memcpy(scb->ata_task.atapi_packet, task->ata_task.atapi_packet, scb 375 drivers/scsi/aic94xx/aic94xx_task.c scb->ata_task.sister_scb = cpu_to_le16(0xFFFF); scb 376 drivers/scsi/aic94xx/aic94xx_task.c scb->ata_task.conn_handle = cpu_to_le16( scb 387 drivers/scsi/aic94xx/aic94xx_task.c scb->ata_task.ata_flags = flags; scb 389 drivers/scsi/aic94xx/aic94xx_task.c scb->ata_task.retry_count = task->ata_task.retry_count; scb 396 drivers/scsi/aic94xx/aic94xx_task.c scb->ata_task.flags = flags; scb 401 drivers/scsi/aic94xx/aic94xx_task.c res = asd_map_scatterlist(task, scb->ata_task.sg_element, scb 419 drivers/scsi/aic94xx/aic94xx_task.c struct scb *scb; scb 426 drivers/scsi/aic94xx/aic94xx_task.c scb = ascb->scb; scb 428 drivers/scsi/aic94xx/aic94xx_task.c scb->header.opcode = INITIATE_SMP_TASK; scb 430 drivers/scsi/aic94xx/aic94xx_task.c scb->smp_task.proto_conn_rate = dev->linkrate; scb 432 drivers/scsi/aic94xx/aic94xx_task.c scb->smp_task.smp_req.bus_addr = scb 434 drivers/scsi/aic94xx/aic94xx_task.c scb->smp_task.smp_req.size = scb 437 drivers/scsi/aic94xx/aic94xx_task.c scb->smp_task.smp_resp.bus_addr = scb 439 drivers/scsi/aic94xx/aic94xx_task.c scb->smp_task.smp_resp.size = scb 442 drivers/scsi/aic94xx/aic94xx_task.c scb->smp_task.sister_scb = cpu_to_le16(0xFFFF); scb 443 drivers/scsi/aic94xx/aic94xx_task.c scb->smp_task.conn_handle = cpu_to_le16((u16) scb 468 drivers/scsi/aic94xx/aic94xx_task.c struct scb *scb; scb 471 drivers/scsi/aic94xx/aic94xx_task.c scb = ascb->scb; scb 473 drivers/scsi/aic94xx/aic94xx_task.c scb->header.opcode = INITIATE_SSP_TASK; scb 475 drivers/scsi/aic94xx/aic94xx_task.c scb->ssp_task.proto_conn_rate = (1 << 4); /* SSP */ scb 476 drivers/scsi/aic94xx/aic94xx_task.c scb->ssp_task.proto_conn_rate |= dev->linkrate; scb 477 drivers/scsi/aic94xx/aic94xx_task.c scb->ssp_task.total_xfer_len = cpu_to_le32(task->total_xfer_len); scb 478 drivers/scsi/aic94xx/aic94xx_task.c scb->ssp_task.ssp_frame.frame_type = SSP_DATA; scb 479 drivers/scsi/aic94xx/aic94xx_task.c memcpy(scb->ssp_task.ssp_frame.hashed_dest_addr, dev->hashed_sas_addr, scb 481 drivers/scsi/aic94xx/aic94xx_task.c memcpy(scb->ssp_task.ssp_frame.hashed_src_addr, scb 483 drivers/scsi/aic94xx/aic94xx_task.c scb->ssp_task.ssp_frame.tptt = cpu_to_be16(0xFFFF); scb 485 drivers/scsi/aic94xx/aic94xx_task.c memcpy(scb->ssp_task.ssp_cmd.lun, task->ssp_task.LUN, 8); scb 487 drivers/scsi/aic94xx/aic94xx_task.c scb->ssp_task.ssp_cmd.efb_prio_attr |= EFB_MASK; scb 488 drivers/scsi/aic94xx/aic94xx_task.c scb->ssp_task.ssp_cmd.efb_prio_attr |= (task->ssp_task.task_prio << 3); scb 489 drivers/scsi/aic94xx/aic94xx_task.c scb->ssp_task.ssp_cmd.efb_prio_attr |= (task->ssp_task.task_attr & 7); scb 490 drivers/scsi/aic94xx/aic94xx_task.c memcpy(scb->ssp_task.ssp_cmd.cdb, task->ssp_task.cmd->cmnd, scb 493 drivers/scsi/aic94xx/aic94xx_task.c scb->ssp_task.sister_scb = cpu_to_le16(0xFFFF); scb 494 drivers/scsi/aic94xx/aic94xx_task.c scb->ssp_task.conn_handle = cpu_to_le16( scb 496 drivers/scsi/aic94xx/aic94xx_task.c scb->ssp_task.data_dir = data_dir_flags[task->data_dir]; scb 497 drivers/scsi/aic94xx/aic94xx_task.c scb->ssp_task.retry_count = scb->ssp_task.retry_count; scb 501 drivers/scsi/aic94xx/aic94xx_task.c res = asd_map_scatterlist(task, scb->ssp_task.sg_element, gfp_flags); scb 83 drivers/scsi/aic94xx/aic94xx_tmf.c struct scb *scb; \ scb 96 drivers/scsi/aic94xx/aic94xx_tmf.c scb = ascb->scb; \ scb 97 drivers/scsi/aic94xx/aic94xx_tmf.c scb->header.opcode = CLEAR_NEXUS scb 120 drivers/scsi/aic94xx/aic94xx_tmf.c scb->clear_nexus.nexus = NEXUS_ADAPTER; scb 129 drivers/scsi/aic94xx/aic94xx_tmf.c scb->clear_nexus.nexus = NEXUS_PORT; scb 130 drivers/scsi/aic94xx/aic94xx_tmf.c scb->clear_nexus.conn_mask = port->phy_mask; scb 146 drivers/scsi/aic94xx/aic94xx_tmf.c scb->clear_nexus.nexus = NEXUS_I_T; scb 149 drivers/scsi/aic94xx/aic94xx_tmf.c scb->clear_nexus.flags = EXEC_Q | SUSPEND_TX; scb 152 drivers/scsi/aic94xx/aic94xx_tmf.c scb->clear_nexus.flags = SEND_Q | NOTINQ; scb 155 drivers/scsi/aic94xx/aic94xx_tmf.c scb->clear_nexus.flags = RESUME_TX; scb 157 drivers/scsi/aic94xx/aic94xx_tmf.c scb->clear_nexus.conn_handle = cpu_to_le16((u16)(unsigned long) scb 206 drivers/scsi/aic94xx/aic94xx_tmf.c scb->clear_nexus.nexus = NEXUS_I_T_L; scb 207 drivers/scsi/aic94xx/aic94xx_tmf.c scb->clear_nexus.flags = SEND_Q | EXEC_Q | NOTINQ; scb 208 drivers/scsi/aic94xx/aic94xx_tmf.c memcpy(scb->clear_nexus.ssp_task.lun, lun, 8); scb 209 drivers/scsi/aic94xx/aic94xx_tmf.c scb->clear_nexus.conn_handle = cpu_to_le16((u16)(unsigned long) scb 220 drivers/scsi/aic94xx/aic94xx_tmf.c scb->clear_nexus.nexus = NEXUS_TAG; scb 221 drivers/scsi/aic94xx/aic94xx_tmf.c memcpy(scb->clear_nexus.ssp_task.lun, task->ssp_task.LUN, 8); scb 222 drivers/scsi/aic94xx/aic94xx_tmf.c scb->clear_nexus.ssp_task.tag = tascb->tag; scb 224 drivers/scsi/aic94xx/aic94xx_tmf.c scb->clear_nexus.conn_handle = cpu_to_le16((u16)(unsigned long) scb 235 drivers/scsi/aic94xx/aic94xx_tmf.c scb->clear_nexus.nexus = NEXUS_TRANS_CX; scb 237 drivers/scsi/aic94xx/aic94xx_tmf.c scb->clear_nexus.conn_handle = cpu_to_le16((u16)(unsigned long) scb 239 drivers/scsi/aic94xx/aic94xx_tmf.c scb->clear_nexus.index = cpu_to_le16(tascb->tc_index); scb 393 drivers/scsi/aic94xx/aic94xx_tmf.c struct scb *scb; scb 416 drivers/scsi/aic94xx/aic94xx_tmf.c scb = ascb->scb; scb 417 drivers/scsi/aic94xx/aic94xx_tmf.c scb->header.opcode = SCB_ABORT_TASK; scb 422 drivers/scsi/aic94xx/aic94xx_tmf.c scb->abort_task.proto_conn_rate = (1 << 5); /* STP */ scb 425 drivers/scsi/aic94xx/aic94xx_tmf.c scb->abort_task.proto_conn_rate = (1 << 4); /* SSP */ scb 426 drivers/scsi/aic94xx/aic94xx_tmf.c scb->abort_task.proto_conn_rate |= task->dev->linkrate; scb 435 drivers/scsi/aic94xx/aic94xx_tmf.c scb->abort_task.ssp_frame.frame_type = SSP_TASK; scb 436 drivers/scsi/aic94xx/aic94xx_tmf.c memcpy(scb->abort_task.ssp_frame.hashed_dest_addr, scb 438 drivers/scsi/aic94xx/aic94xx_tmf.c memcpy(scb->abort_task.ssp_frame.hashed_src_addr, scb 441 drivers/scsi/aic94xx/aic94xx_tmf.c scb->abort_task.ssp_frame.tptt = cpu_to_be16(0xFFFF); scb 443 drivers/scsi/aic94xx/aic94xx_tmf.c memcpy(scb->abort_task.ssp_task.lun, task->ssp_task.LUN, 8); scb 444 drivers/scsi/aic94xx/aic94xx_tmf.c scb->abort_task.ssp_task.tmf = TMF_ABORT_TASK; scb 445 drivers/scsi/aic94xx/aic94xx_tmf.c scb->abort_task.ssp_task.tag = cpu_to_be16(0xFFFF); scb 448 drivers/scsi/aic94xx/aic94xx_tmf.c scb->abort_task.sister_scb = cpu_to_le16(0xFFFF); scb 449 drivers/scsi/aic94xx/aic94xx_tmf.c scb->abort_task.conn_handle = cpu_to_le16( scb 451 drivers/scsi/aic94xx/aic94xx_tmf.c scb->abort_task.retry_count = 1; scb 452 drivers/scsi/aic94xx/aic94xx_tmf.c scb->abort_task.index = cpu_to_le16((u16)tascb->tc_index); scb 453 drivers/scsi/aic94xx/aic94xx_tmf.c scb->abort_task.itnl_to = cpu_to_le16(ITNL_TIMEOUT_CONST); scb 562 drivers/scsi/aic94xx/aic94xx_tmf.c struct scb *scb; scb 575 drivers/scsi/aic94xx/aic94xx_tmf.c scb = ascb->scb; scb 578 drivers/scsi/aic94xx/aic94xx_tmf.c scb->header.opcode = QUERY_SSP_TASK; scb 580 drivers/scsi/aic94xx/aic94xx_tmf.c scb->header.opcode = INITIATE_SSP_TMF; scb 582 drivers/scsi/aic94xx/aic94xx_tmf.c scb->ssp_tmf.proto_conn_rate = (1 << 4); /* SSP */ scb 583 drivers/scsi/aic94xx/aic94xx_tmf.c scb->ssp_tmf.proto_conn_rate |= dev->linkrate; scb 585 drivers/scsi/aic94xx/aic94xx_tmf.c scb->ssp_tmf.ssp_frame.frame_type = SSP_TASK; scb 586 drivers/scsi/aic94xx/aic94xx_tmf.c memcpy(scb->ssp_tmf.ssp_frame.hashed_dest_addr, scb 588 drivers/scsi/aic94xx/aic94xx_tmf.c memcpy(scb->ssp_tmf.ssp_frame.hashed_src_addr, scb 590 drivers/scsi/aic94xx/aic94xx_tmf.c scb->ssp_tmf.ssp_frame.tptt = cpu_to_be16(0xFFFF); scb 592 drivers/scsi/aic94xx/aic94xx_tmf.c memcpy(scb->ssp_tmf.ssp_task.lun, lun, 8); scb 593 drivers/scsi/aic94xx/aic94xx_tmf.c scb->ssp_tmf.ssp_task.tmf = tmf; scb 595 drivers/scsi/aic94xx/aic94xx_tmf.c scb->ssp_tmf.sister_scb = cpu_to_le16(0xFFFF); scb 596 drivers/scsi/aic94xx/aic94xx_tmf.c scb->ssp_tmf.conn_handle= cpu_to_le16((u16)(unsigned long) scb 598 drivers/scsi/aic94xx/aic94xx_tmf.c scb->ssp_tmf.retry_count = 1; scb 599 drivers/scsi/aic94xx/aic94xx_tmf.c scb->ssp_tmf.itnl_to = cpu_to_le16(ITNL_TIMEOUT_CONST); scb 601 drivers/scsi/aic94xx/aic94xx_tmf.c scb->ssp_tmf.index = cpu_to_le16(index); scb 324 drivers/scsi/dpt_i2o.c u8 scb[16]; scb 359 drivers/scsi/dpt_i2o.c memset(scb, 0, sizeof(scb)); scb 361 drivers/scsi/dpt_i2o.c scb[0] = INQUIRY; scb 362 drivers/scsi/dpt_i2o.c scb[1] = 0; scb 363 drivers/scsi/dpt_i2o.c scb[2] = 0; scb 364 drivers/scsi/dpt_i2o.c scb[3] = 0; scb 365 drivers/scsi/dpt_i2o.c scb[4] = 36; scb 366 drivers/scsi/dpt_i2o.c scb[5] = 0; scb 369 drivers/scsi/dpt_i2o.c memcpy(mptr, scb, sizeof(scb)); scb 147 drivers/scsi/initio.c static void initio_select_atn(struct initio_host * host, struct scsi_ctrl_blk * scb); scb 148 drivers/scsi/initio.c static void initio_select_atn3(struct initio_host * host, struct scsi_ctrl_blk * scb); scb 149 drivers/scsi/initio.c static void initio_select_atn_stop(struct initio_host * host, struct scsi_ctrl_blk * scb); scb 658 drivers/scsi/initio.c struct scsi_ctrl_blk *scb; scb 662 drivers/scsi/initio.c if ((scb = host->first_avail) != NULL) { scb 664 drivers/scsi/initio.c printk("find scb at %p\n", scb); scb 666 drivers/scsi/initio.c if ((host->first_avail = scb->next) == NULL) scb 668 drivers/scsi/initio.c scb->next = NULL; scb 669 drivers/scsi/initio.c scb->status = SCB_RENT; scb 672 drivers/scsi/initio.c return scb; scb 765 drivers/scsi/initio.c static void initio_unlink_pend_scb(struct initio_host * host, struct scsi_ctrl_blk * scb) scb 770 drivers/scsi/initio.c printk("unlink pend SCB %p; ", scb); scb 775 drivers/scsi/initio.c if (scb == tmp) { /* Unlink this SCB */ scb 835 drivers/scsi/initio.c static void initio_unlink_busy_scb(struct initio_host * host, struct scsi_ctrl_blk * scb) scb 840 drivers/scsi/initio.c printk("unlink busy SCB %p; ", scb); scb 845 drivers/scsi/initio.c if (scb == tmp) { /* Unlink this SCB */ scb 1005 drivers/scsi/initio.c struct scsi_ctrl_blk *scb; scb 1009 drivers/scsi/initio.c if ((scb = host->active) != NULL) { scb 1010 drivers/scsi/initio.c initio_unlink_busy_scb(host, scb); scb 1011 drivers/scsi/initio.c scb->hastat = HOST_BAD_PHAS; scb 1012 drivers/scsi/initio.c scb->tastat = 0; scb 1013 drivers/scsi/initio.c initio_append_done_scb(host, scb); scb 1022 drivers/scsi/initio.c static void initio_exec_scb(struct initio_host * host, struct scsi_ctrl_blk * scb) scb 1026 drivers/scsi/initio.c scb->mode = 0; scb 1028 drivers/scsi/initio.c scb->sgidx = 0; scb 1029 drivers/scsi/initio.c scb->sgmax = scb->sglen; scb 1033 drivers/scsi/initio.c initio_append_pend_scb(host, scb); /* Append this SCB to Pending queue */ scb 1073 drivers/scsi/initio.c struct scsi_ctrl_blk *scb; scb 1079 drivers/scsi/initio.c while ((scb = initio_find_done_scb(host)) != NULL) { /* find done entry */ scb 1080 drivers/scsi/initio.c if (scb->tastat == INI_QUEUE_FULL) { scb 1081 drivers/scsi/initio.c host->max_tags[scb->target] = scb 1082 drivers/scsi/initio.c host->act_tags[scb->target] - 1; scb 1083 drivers/scsi/initio.c scb->tastat = 0; scb 1084 drivers/scsi/initio.c initio_append_pend_scb(host, scb); scb 1087 drivers/scsi/initio.c if (!(scb->mode & SCM_RSENS)) { /* not in auto req. sense mode */ scb 1088 drivers/scsi/initio.c if (scb->tastat == 2) { scb 1092 drivers/scsi/initio.c if (scb->flags & SCF_SENSE) { scb 1094 drivers/scsi/initio.c len = scb->senselen; scb 1097 drivers/scsi/initio.c scb->buflen = scb->senselen; scb 1098 drivers/scsi/initio.c scb->bufptr = scb->senseptr; scb 1099 drivers/scsi/initio.c scb->flags &= ~(SCF_SG | SCF_DIR); /* for xfer_data_in */ scb 1102 drivers/scsi/initio.c scb->mode = SCM_RSENS; scb 1103 drivers/scsi/initio.c scb->ident &= 0xBF; /* Disable Disconnect */ scb 1104 drivers/scsi/initio.c scb->tagmsg = 0; scb 1105 drivers/scsi/initio.c scb->tastat = 0; scb 1106 drivers/scsi/initio.c scb->cdblen = 6; scb 1107 drivers/scsi/initio.c scb->cdb[0] = SCSICMD_RequestSense; scb 1108 drivers/scsi/initio.c scb->cdb[1] = 0; scb 1109 drivers/scsi/initio.c scb->cdb[2] = 0; scb 1110 drivers/scsi/initio.c scb->cdb[3] = 0; scb 1111 drivers/scsi/initio.c scb->cdb[4] = len; scb 1112 drivers/scsi/initio.c scb->cdb[5] = 0; scb 1113 drivers/scsi/initio.c initio_push_pend_scb(host, scb); scb 1119 drivers/scsi/initio.c if (scb->tastat == 2) { /* check contition status again after sending scb 1121 drivers/scsi/initio.c scb->hastat = HOST_BAD_PHAS; scb 1123 drivers/scsi/initio.c scb->tastat = 2; scb 1125 drivers/scsi/initio.c scb->flags |= SCF_DONE; scb 1126 drivers/scsi/initio.c if (scb->flags & SCF_POST) { scb 1128 drivers/scsi/initio.c (*scb->post) ((u8 *) host, (u8 *) scb); scb 1145 drivers/scsi/initio.c struct scsi_ctrl_blk *scb; scb 1171 drivers/scsi/initio.c if ((scb = host->active) != NULL) scb 1179 drivers/scsi/initio.c if ((scb = initio_find_first_pend_scb(host)) == NULL) scb 1183 drivers/scsi/initio.c outb((host->scsi_id << 4) | (scb->target & 0x0F), scb 1185 drivers/scsi/initio.c if (scb->opcode == ExecSCSI) { scb 1186 drivers/scsi/initio.c active_tc = &host->targets[scb->target]; scb 1188 drivers/scsi/initio.c if (scb->tagmsg) scb 1195 drivers/scsi/initio.c initio_select_atn_stop(host, scb); scb 1198 drivers/scsi/initio.c initio_select_atn_stop(host, scb); scb 1200 drivers/scsi/initio.c if (scb->tagmsg) scb 1201 drivers/scsi/initio.c initio_select_atn3(host, scb); scb 1203 drivers/scsi/initio.c initio_select_atn(host, scb); scb 1206 drivers/scsi/initio.c if (scb->flags & SCF_POLL) { scb 1212 drivers/scsi/initio.c } else if (scb->opcode == BusDevRst) { scb 1213 drivers/scsi/initio.c initio_select_atn_stop(host, scb); scb 1214 drivers/scsi/initio.c scb->next_state = 8; scb 1215 drivers/scsi/initio.c if (scb->flags & SCF_POLL) { scb 1221 drivers/scsi/initio.c } else if (scb->opcode == AbortCmd) { scb 1222 drivers/scsi/initio.c if (initio_abort_srb(host, scb->srb) != 0) { scb 1223 drivers/scsi/initio.c initio_unlink_pend_scb(host, scb); scb 1224 drivers/scsi/initio.c initio_release_scb(host, scb); scb 1226 drivers/scsi/initio.c scb->opcode = BusDevRst; scb 1227 drivers/scsi/initio.c initio_select_atn_stop(host, scb); scb 1228 drivers/scsi/initio.c scb->next_state = 8; scb 1231 drivers/scsi/initio.c initio_unlink_pend_scb(host, scb); scb 1232 drivers/scsi/initio.c scb->hastat = 0x16; /* bad command */ scb 1233 drivers/scsi/initio.c initio_append_done_scb(host, scb); scb 1296 drivers/scsi/initio.c struct scsi_ctrl_blk *scb = host->active; scb 1303 drivers/scsi/initio.c initio_unlink_pend_scb(host, scb); scb 1304 drivers/scsi/initio.c initio_append_busy_scb(host, scb); scb 1310 drivers/scsi/initio.c outb(scb->ident, host->addr + TUL_SFifo); scb 1312 drivers/scsi/initio.c if (scb->tagmsg) { scb 1313 drivers/scsi/initio.c outb(scb->tagmsg, host->addr + TUL_SFifo); scb 1314 drivers/scsi/initio.c outb(scb->tagid, host->addr + TUL_SFifo); scb 1351 drivers/scsi/initio.c struct scsi_ctrl_blk *scb = host->active; scb 1357 drivers/scsi/initio.c initio_unlink_pend_scb(host, scb); scb 1358 drivers/scsi/initio.c initio_append_busy_scb(host, scb); scb 1380 drivers/scsi/initio.c struct scsi_ctrl_blk *scb = host->active; scb 1390 drivers/scsi/initio.c for (i = 0; i < (int) scb->cdblen; i++) scb 1391 drivers/scsi/initio.c outb(scb->cdb[i], host->addr + TUL_SFifo); scb 1400 drivers/scsi/initio.c scb->next_state = 3; scb 1447 drivers/scsi/initio.c struct scsi_ctrl_blk *scb = host->active; scb 1452 drivers/scsi/initio.c if ((scb->flags & SCF_DIR) == SCF_NO_XF) { scb 1456 drivers/scsi/initio.c if (scb->buflen == 0) scb 1462 drivers/scsi/initio.c if ((scb->flags & SCF_DIR) != 0) /* if direction bit set then report data underrun */ scb 1463 drivers/scsi/initio.c scb->hastat = HOST_DO_DU; scb 1469 drivers/scsi/initio.c scb->next_state = 0x4; scb 1476 drivers/scsi/initio.c scb->buflen = 0; scb 1477 drivers/scsi/initio.c scb->hastat = HOST_DO_DU; scb 1511 drivers/scsi/initio.c struct scsi_ctrl_blk *scb = host->active; scb 1524 drivers/scsi/initio.c scb->hastat = HOST_DO_DU; scb 1557 drivers/scsi/initio.c scb->buflen = 0; scb 1561 drivers/scsi/initio.c xcnt = (long) scb->buflen - cnt; /* xcnt== bytes already xferred */ scb 1562 drivers/scsi/initio.c scb->buflen = (u32) cnt; /* cnt == bytes left to be xferred */ scb 1563 drivers/scsi/initio.c if (scb->flags & SCF_SG) { scb 1567 drivers/scsi/initio.c sgp = &scb->sglist[scb->sgidx]; scb 1568 drivers/scsi/initio.c for (i = scb->sgidx; i < scb->sgmax; sgp++, i++) { scb 1574 drivers/scsi/initio.c scb->bufptr += ((u32) (i - scb->sgidx) << 3); scb 1576 drivers/scsi/initio.c scb->sglen = (u8) (scb->sgmax - i); scb 1578 drivers/scsi/initio.c scb->sgidx = (u16) i; scb 1586 drivers/scsi/initio.c scb->bufptr += (u32) xcnt; scb 1600 drivers/scsi/initio.c struct scsi_ctrl_blk *scb = host->active; scb 1613 drivers/scsi/initio.c scb->next_state = 6; scb 1675 drivers/scsi/initio.c struct scsi_ctrl_blk *scb = host->active; scb 1677 drivers/scsi/initio.c if ((scb->flags & SCF_DIR) == SCF_DOUT) scb 1680 drivers/scsi/initio.c outl(scb->buflen, host->addr + TUL_SCnt0); scb 1683 drivers/scsi/initio.c if (scb->flags & SCF_SG) { /* S/G xfer */ scb 1684 drivers/scsi/initio.c outl(((u32) scb->sglen) << 3, host->addr + TUL_XCntH); scb 1685 drivers/scsi/initio.c outl(scb->bufptr, host->addr + TUL_XAddH); scb 1688 drivers/scsi/initio.c outl(scb->buflen, host->addr + TUL_XCntH); scb 1689 drivers/scsi/initio.c outl(scb->bufptr, host->addr + TUL_XAddH); scb 1692 drivers/scsi/initio.c scb->next_state = 0x5; scb 1707 drivers/scsi/initio.c struct scsi_ctrl_blk *scb = host->active; scb 1709 drivers/scsi/initio.c if ((scb->flags & SCF_DIR) == SCF_DIN) scb 1712 drivers/scsi/initio.c outl(scb->buflen, host->addr + TUL_SCnt0); scb 1715 drivers/scsi/initio.c if (scb->flags & SCF_SG) { /* S/G xfer */ scb 1716 drivers/scsi/initio.c outl(((u32) scb->sglen) << 3, host->addr + TUL_XCntH); scb 1717 drivers/scsi/initio.c outl(scb->bufptr, host->addr + TUL_XAddH); scb 1720 drivers/scsi/initio.c outl(scb->buflen, host->addr + TUL_XCntH); scb 1721 drivers/scsi/initio.c outl(scb->bufptr, host->addr + TUL_XAddH); scb 1725 drivers/scsi/initio.c scb->next_state = 0x5; scb 1731 drivers/scsi/initio.c struct scsi_ctrl_blk *scb = host->active; scb 1734 drivers/scsi/initio.c if ((scb->flags & SCF_DIR) != SCF_NO_DCHK) scb 1735 drivers/scsi/initio.c scb->hastat = HOST_DO_DU; /* over run */ scb 1755 drivers/scsi/initio.c struct scsi_ctrl_blk *scb = host->active; scb 1758 drivers/scsi/initio.c if ((scb->flags & SCF_DIR) != SCF_NO_DCHK) scb 1759 drivers/scsi/initio.c scb->hastat = HOST_DO_DU; /* over run */ scb 1780 drivers/scsi/initio.c struct scsi_ctrl_blk *scb = host->active; scb 1788 drivers/scsi/initio.c scb->tastat = inb(host->addr + TUL_SFifo); scb 1811 drivers/scsi/initio.c if ((scb->tastat & 0x18) == 0x10) /* No link support */ scb 1819 drivers/scsi/initio.c if ((scb->tastat & 0x18) == 0x10) scb 1830 drivers/scsi/initio.c struct scsi_ctrl_blk *scb = host->active; scb 1832 drivers/scsi/initio.c if (scb != NULL) { scb 1833 drivers/scsi/initio.c if (scb->status & SCB_SELECT) { /* selection timeout */ scb 1834 drivers/scsi/initio.c initio_unlink_pend_scb(host, scb); scb 1835 drivers/scsi/initio.c scb->hastat = HOST_SEL_TOUT; scb 1836 drivers/scsi/initio.c initio_append_done_scb(host, scb); scb 1838 drivers/scsi/initio.c initio_unlink_busy_scb(host, scb); scb 1839 drivers/scsi/initio.c scb->hastat = HOST_BUS_FREE; scb 1840 drivers/scsi/initio.c initio_append_done_scb(host, scb); scb 1864 drivers/scsi/initio.c struct scsi_ctrl_blk *scb; scb 1876 drivers/scsi/initio.c while ((scb = initio_pop_busy_scb(host)) != NULL) { scb 1877 drivers/scsi/initio.c scb->hastat = HOST_BAD_PHAS; scb 1878 drivers/scsi/initio.c initio_append_done_scb(host, scb); scb 1900 drivers/scsi/initio.c struct scsi_ctrl_blk *scb; scb 1905 drivers/scsi/initio.c if ((scb = host->active) != NULL) { scb 1907 drivers/scsi/initio.c if (scb->status & SCB_SELECT) /* if waiting for selection complete */ scb 1908 drivers/scsi/initio.c scb->status &= ~SCB_SELECT; scb 1947 drivers/scsi/initio.c scb = host->scb + tag; scb 1948 drivers/scsi/initio.c if (scb->target != tar || scb->lun != lun) { scb 1951 drivers/scsi/initio.c if (scb->status != SCB_BUSY) { /* 03/24/95 */ scb 1954 drivers/scsi/initio.c host->active = scb; scb 1959 drivers/scsi/initio.c if ((scb = initio_find_busy_scb(host, tar | (lun << 8))) == NULL) { scb 1962 drivers/scsi/initio.c host->active = scb; scb 1981 drivers/scsi/initio.c struct scsi_ctrl_blk *scb; scb 1986 drivers/scsi/initio.c while ((scb = initio_pop_busy_scb(host)) != NULL) { scb 1987 drivers/scsi/initio.c scb->hastat = HOST_BAD_PHAS; scb 1988 drivers/scsi/initio.c initio_append_done_scb(host, scb); scb 2279 drivers/scsi/initio.c struct scsi_ctrl_blk *scb; scb 2287 drivers/scsi/initio.c while ((scb = initio_pop_busy_scb(host)) != NULL) { scb 2288 drivers/scsi/initio.c scb->hastat = HOST_BAD_PHAS; scb 2289 drivers/scsi/initio.c initio_append_done_scb(host, scb); scb 2305 drivers/scsi/initio.c static void initio_select_atn_stop(struct initio_host * host, struct scsi_ctrl_blk * scb) scb 2307 drivers/scsi/initio.c scb->status |= SCB_SELECT; scb 2308 drivers/scsi/initio.c scb->next_state = 0x1; scb 2309 drivers/scsi/initio.c host->active = scb; scb 2310 drivers/scsi/initio.c host->active_tc = &host->targets[scb->target]; scb 2315 drivers/scsi/initio.c static void initio_select_atn(struct initio_host * host, struct scsi_ctrl_blk * scb) scb 2319 drivers/scsi/initio.c scb->status |= SCB_SELECT; scb 2320 drivers/scsi/initio.c scb->next_state = 0x2; scb 2322 drivers/scsi/initio.c outb(scb->ident, host->addr + TUL_SFifo); scb 2323 drivers/scsi/initio.c for (i = 0; i < (int) scb->cdblen; i++) scb 2324 drivers/scsi/initio.c outb(scb->cdb[i], host->addr + TUL_SFifo); scb 2325 drivers/scsi/initio.c host->active_tc = &host->targets[scb->target]; scb 2326 drivers/scsi/initio.c host->active = scb; scb 2330 drivers/scsi/initio.c static void initio_select_atn3(struct initio_host * host, struct scsi_ctrl_blk * scb) scb 2334 drivers/scsi/initio.c scb->status |= SCB_SELECT; scb 2335 drivers/scsi/initio.c scb->next_state = 0x2; scb 2337 drivers/scsi/initio.c outb(scb->ident, host->addr + TUL_SFifo); scb 2338 drivers/scsi/initio.c outb(scb->tagmsg, host->addr + TUL_SFifo); scb 2339 drivers/scsi/initio.c outb(scb->tagid, host->addr + TUL_SFifo); scb 2340 drivers/scsi/initio.c for (i = 0; i < scb->cdblen; i++) scb 2341 drivers/scsi/initio.c outb(scb->cdb[i], host->addr + TUL_SFifo); scb 2342 drivers/scsi/initio.c host->active_tc = &host->targets[scb->target]; scb 2343 drivers/scsi/initio.c host->active = scb; scb 2356 drivers/scsi/initio.c struct scsi_ctrl_blk *scb = host->active; scb 2364 drivers/scsi/initio.c initio_unlink_pend_scb(host, scb); scb 2365 drivers/scsi/initio.c initio_release_scb(host, scb); scb 2368 drivers/scsi/initio.c tar = scb->target; /* target */ scb 2815 drivers/scsi/initio.c struct scsi_ctrl_blk *scb, *tmp, *prev = NULL /* silence gcc */; scb 2857 drivers/scsi/initio.c if ((scb = kzalloc(i, GFP_DMA)) != NULL) scb 2861 drivers/scsi/initio.c if (!scb) { scb 2872 drivers/scsi/initio.c host->scb = scb; scb 2873 drivers/scsi/initio.c host->next_pending = scb; scb 2874 drivers/scsi/initio.c host->next_avail = scb; scb 2875 drivers/scsi/initio.c for (i = 0, tmp = scb; i < num_scb; i++, tmp++) { scb 2883 drivers/scsi/initio.c host->first_avail = scb; scb 2918 drivers/scsi/initio.c kfree(host->scb); scb 520 drivers/scsi/initio.h struct scsi_ctrl_blk *scb; /* 20 */ scb 209 drivers/scsi/ips.c #define IPS_DMA_DIR(scb) ((!scb->scsi_cmd || ips_is_passthru(scb->scsi_cmd) || \ scb 210 drivers/scsi/ips.c DMA_NONE == scb->scsi_cmd->sc_data_direction) ? \ scb 212 drivers/scsi/ips.c scb->scsi_cmd->sc_data_direction) scb 644 drivers/scsi/ips.c ips_scb_t *scb; scb 667 drivers/scsi/ips.c scb = &ha->scbs[ha->max_cmds - 1]; scb 669 drivers/scsi/ips.c ips_init_scb(ha, scb); scb 671 drivers/scsi/ips.c scb->timeout = ips_cmd_timeout; scb 672 drivers/scsi/ips.c scb->cdb[0] = IPS_CMD_FLUSH; scb 674 drivers/scsi/ips.c scb->cmd.flush_cache.op_code = IPS_CMD_FLUSH; scb 675 drivers/scsi/ips.c scb->cmd.flush_cache.command_id = IPS_COMMAND_ID(ha, scb); scb 676 drivers/scsi/ips.c scb->cmd.flush_cache.state = IPS_NORM_STATE; scb 677 drivers/scsi/ips.c scb->cmd.flush_cache.reserved = 0; scb 678 drivers/scsi/ips.c scb->cmd.flush_cache.reserved2 = 0; scb 679 drivers/scsi/ips.c scb->cmd.flush_cache.reserved3 = 0; scb 680 drivers/scsi/ips.c scb->cmd.flush_cache.reserved4 = 0; scb 685 drivers/scsi/ips.c if (ips_send_wait(ha, scb, ips_cmd_timeout, IPS_INTR_ON) == IPS_FAILURE) scb 718 drivers/scsi/ips.c ips_scb_t *scb; scb 736 drivers/scsi/ips.c scb = &ha->scbs[ha->max_cmds - 1]; scb 738 drivers/scsi/ips.c ips_init_scb(ha, scb); scb 740 drivers/scsi/ips.c scb->timeout = ips_cmd_timeout; scb 741 drivers/scsi/ips.c scb->cdb[0] = IPS_CMD_FLUSH; scb 743 drivers/scsi/ips.c scb->cmd.flush_cache.op_code = IPS_CMD_FLUSH; scb 744 drivers/scsi/ips.c scb->cmd.flush_cache.command_id = IPS_COMMAND_ID(ha, scb); scb 745 drivers/scsi/ips.c scb->cmd.flush_cache.state = IPS_NORM_STATE; scb 746 drivers/scsi/ips.c scb->cmd.flush_cache.reserved = 0; scb 747 drivers/scsi/ips.c scb->cmd.flush_cache.reserved2 = 0; scb 748 drivers/scsi/ips.c scb->cmd.flush_cache.reserved3 = 0; scb 749 drivers/scsi/ips.c scb->cmd.flush_cache.reserved4 = 0; scb 754 drivers/scsi/ips.c if (ips_send_wait(ha, scb, ips_cmd_timeout, IPS_INTR_ON) == scb 837 drivers/scsi/ips.c ips_scb_t *scb; scb 891 drivers/scsi/ips.c scb = &ha->scbs[ha->max_cmds - 1]; scb 893 drivers/scsi/ips.c ips_init_scb(ha, scb); scb 895 drivers/scsi/ips.c scb->timeout = ips_cmd_timeout; scb 896 drivers/scsi/ips.c scb->cdb[0] = IPS_CMD_FLUSH; scb 898 drivers/scsi/ips.c scb->cmd.flush_cache.op_code = IPS_CMD_FLUSH; scb 899 drivers/scsi/ips.c scb->cmd.flush_cache.command_id = IPS_COMMAND_ID(ha, scb); scb 900 drivers/scsi/ips.c scb->cmd.flush_cache.state = IPS_NORM_STATE; scb 901 drivers/scsi/ips.c scb->cmd.flush_cache.reserved = 0; scb 902 drivers/scsi/ips.c scb->cmd.flush_cache.reserved2 = 0; scb 903 drivers/scsi/ips.c scb->cmd.flush_cache.reserved3 = 0; scb 904 drivers/scsi/ips.c scb->cmd.flush_cache.reserved4 = 0; scb 907 drivers/scsi/ips.c ret = ips_send_wait(ha, scb, ips_cmd_timeout, IPS_INTR_IORL); scb 937 drivers/scsi/ips.c while ((scb = ips_removeq_scb_head(&ha->scb_activelist))) { scb 938 drivers/scsi/ips.c scb->scsi_cmd->result = DID_ERROR << 16; scb 939 drivers/scsi/ips.c scb->scsi_cmd->scsi_done(scb->scsi_cmd); scb 940 drivers/scsi/ips.c ips_freescb(ha, scb); scb 966 drivers/scsi/ips.c while ((scb = ips_removeq_scb_head(&ha->scb_activelist))) { scb 967 drivers/scsi/ips.c scb->scsi_cmd->result = DID_ERROR << 16; scb 968 drivers/scsi/ips.c scb->scsi_cmd->scsi_done(scb->scsi_cmd); scb 969 drivers/scsi/ips.c ips_freescb(ha, scb); scb 995 drivers/scsi/ips.c while ((scb = ips_removeq_scb_head(&ha->scb_activelist))) { scb 996 drivers/scsi/ips.c scb->scsi_cmd->result = DID_RESET << 16; scb 997 drivers/scsi/ips.c scb->scsi_cmd->scsi_done(scb->scsi_cmd); scb 998 drivers/scsi/ips.c ips_freescb(ha, scb); scb 1268 drivers/scsi/ips.c ips_scb_t *scb; scb 1306 drivers/scsi/ips.c scb = (ips_scb_t *) sp->scb_addr; scb 1312 drivers/scsi/ips.c (*scb->callback) (ha, scb); scb 1332 drivers/scsi/ips.c ips_scb_t *scb; scb 1376 drivers/scsi/ips.c scb = (ips_scb_t *) sp->scb_addr; scb 1382 drivers/scsi/ips.c (*scb->callback) (ha, scb); scb 1557 drivers/scsi/ips.c ips_make_passthru(ips_ha_t *ha, struct scsi_cmnd *SC, ips_scb_t *scb, int intr) scb 1627 drivers/scsi/ips.c ret = ips_flash_copperhead(ha, pt, scb); scb 1632 drivers/scsi/ips.c if (ips_usrcmd(ha, pt, scb)) scb 1651 drivers/scsi/ips.c ips_flash_copperhead(ips_ha_t * ha, ips_passthru_t * pt, ips_scb_t * scb) scb 1658 drivers/scsi/ips.c if (ips_usrcmd(ha, pt, scb)) scb 1665 drivers/scsi/ips.c scb->scsi_cmd->result = DID_OK << 16; scb 1671 drivers/scsi/ips.c return ips_flash_bios(ha, pt, scb); scb 1709 drivers/scsi/ips.c return ips_flash_bios(ha, pt, scb); scb 1711 drivers/scsi/ips.c return ips_flash_firmware(ha, pt, scb); scb 1722 drivers/scsi/ips.c ips_flash_bios(ips_ha_t * ha, ips_passthru_t * pt, ips_scb_t * scb) scb 1787 drivers/scsi/ips.c ips_scb_t * scb, int indx, unsigned int e_len) scb 1792 drivers/scsi/ips.c if ((scb->data_len + e_len) > ha->max_xfer) { scb 1793 drivers/scsi/ips.c e_len = ha->max_xfer - scb->data_len; scb 1794 drivers/scsi/ips.c scb->breakup = indx; scb 1795 drivers/scsi/ips.c ++scb->sg_break; scb 1798 drivers/scsi/ips.c scb->breakup = 0; scb 1799 drivers/scsi/ips.c scb->sg_break = 0; scb 1802 drivers/scsi/ips.c scb->sg_list.enh_list[indx].address_lo = scb 1804 drivers/scsi/ips.c scb->sg_list.enh_list[indx].address_hi = scb 1806 drivers/scsi/ips.c scb->sg_list.enh_list[indx].length = cpu_to_le32(e_len); scb 1808 drivers/scsi/ips.c scb->sg_list.std_list[indx].address = scb 1810 drivers/scsi/ips.c scb->sg_list.std_list[indx].length = cpu_to_le32(e_len); scb 1813 drivers/scsi/ips.c ++scb->sg_len; scb 1814 drivers/scsi/ips.c scb->data_len += e_len; scb 1824 drivers/scsi/ips.c ips_flash_firmware(ips_ha_t * ha, ips_passthru_t * pt, ips_scb_t * scb) scb 1841 drivers/scsi/ips.c sg_list.list = scb->sg_list.list; scb 1842 drivers/scsi/ips.c cmd_busaddr = scb->scb_busaddr; scb 1844 drivers/scsi/ips.c memcpy(&scb->cmd, &pt->CoppCP.cmd, sizeof (IPS_IOCTL_CMD)); scb 1846 drivers/scsi/ips.c scb->sg_list.list = sg_list.list; scb 1847 drivers/scsi/ips.c scb->scb_busaddr = cmd_busaddr; scb 1848 drivers/scsi/ips.c scb->bus = scb->scsi_cmd->device->channel; scb 1849 drivers/scsi/ips.c scb->target_id = scb->scsi_cmd->device->id; scb 1850 drivers/scsi/ips.c scb->lun = scb->scsi_cmd->device->lun; scb 1851 drivers/scsi/ips.c scb->sg_len = 0; scb 1852 drivers/scsi/ips.c scb->data_len = 0; scb 1853 drivers/scsi/ips.c scb->flags = 0; scb 1854 drivers/scsi/ips.c scb->op_code = 0; scb 1855 drivers/scsi/ips.c scb->callback = ipsintr_done; scb 1856 drivers/scsi/ips.c scb->timeout = ips_cmd_timeout; scb 1858 drivers/scsi/ips.c scb->data_len = ha->flash_datasize; scb 1859 drivers/scsi/ips.c scb->data_busaddr = scb 1860 drivers/scsi/ips.c dma_map_single(&ha->pcidev->dev, ha->flash_data, scb->data_len, scb 1861 drivers/scsi/ips.c IPS_DMA_DIR(scb)); scb 1862 drivers/scsi/ips.c scb->flags |= IPS_SCB_MAP_SINGLE; scb 1863 drivers/scsi/ips.c scb->cmd.flashfw.command_id = IPS_COMMAND_ID(ha, scb); scb 1864 drivers/scsi/ips.c scb->cmd.flashfw.buffer_addr = cpu_to_le32(scb->data_busaddr); scb 1866 drivers/scsi/ips.c scb->timeout = pt->TimeOut; scb 1867 drivers/scsi/ips.c scb->scsi_cmd->result = DID_OK << 16; scb 1897 drivers/scsi/ips.c ips_usrcmd(ips_ha_t * ha, ips_passthru_t * pt, ips_scb_t * scb) scb 1904 drivers/scsi/ips.c if ((!scb) || (!pt) || (!ha)) scb 1908 drivers/scsi/ips.c sg_list.list = scb->sg_list.list; scb 1909 drivers/scsi/ips.c cmd_busaddr = scb->scb_busaddr; scb 1911 drivers/scsi/ips.c memcpy(&scb->cmd, &pt->CoppCP.cmd, sizeof (IPS_IOCTL_CMD)); scb 1912 drivers/scsi/ips.c memcpy(&scb->dcdb, &pt->CoppCP.dcdb, sizeof (IPS_DCDB_TABLE)); scb 1915 drivers/scsi/ips.c scb->sg_list.list = sg_list.list; scb 1916 drivers/scsi/ips.c scb->scb_busaddr = cmd_busaddr; scb 1917 drivers/scsi/ips.c scb->bus = scb->scsi_cmd->device->channel; scb 1918 drivers/scsi/ips.c scb->target_id = scb->scsi_cmd->device->id; scb 1919 drivers/scsi/ips.c scb->lun = scb->scsi_cmd->device->lun; scb 1920 drivers/scsi/ips.c scb->sg_len = 0; scb 1921 drivers/scsi/ips.c scb->data_len = 0; scb 1922 drivers/scsi/ips.c scb->flags = 0; scb 1923 drivers/scsi/ips.c scb->op_code = 0; scb 1924 drivers/scsi/ips.c scb->callback = ipsintr_done; scb 1925 drivers/scsi/ips.c scb->timeout = ips_cmd_timeout; scb 1926 drivers/scsi/ips.c scb->cmd.basic_io.command_id = IPS_COMMAND_ID(ha, scb); scb 1929 drivers/scsi/ips.c if ((scb->cmd.basic_io.op_code == IPS_CMD_READ_SG) || scb 1930 drivers/scsi/ips.c (scb->cmd.basic_io.op_code == IPS_CMD_WRITE_SG) || scb 1931 drivers/scsi/ips.c (scb->cmd.basic_io.op_code == IPS_CMD_DCDB_SG)) scb 1935 drivers/scsi/ips.c scb->data_len = pt->CmdBSize; scb 1936 drivers/scsi/ips.c scb->data_busaddr = ha->ioctl_busaddr + sizeof (ips_passthru_t); scb 1938 drivers/scsi/ips.c scb->data_busaddr = 0L; scb 1941 drivers/scsi/ips.c if (scb->cmd.dcdb.op_code == IPS_CMD_DCDB) scb 1942 drivers/scsi/ips.c scb->cmd.dcdb.dcdb_address = cpu_to_le32(scb->scb_busaddr + scb 1943 drivers/scsi/ips.c (unsigned long) &scb-> scb 1945 drivers/scsi/ips.c (unsigned long) scb); scb 1948 drivers/scsi/ips.c if (scb->cmd.dcdb.op_code == IPS_CMD_DCDB) scb 1949 drivers/scsi/ips.c scb->dcdb.buffer_pointer = scb 1950 drivers/scsi/ips.c cpu_to_le32(scb->data_busaddr); scb 1952 drivers/scsi/ips.c scb->cmd.basic_io.sg_addr = scb 1953 drivers/scsi/ips.c cpu_to_le32(scb->data_busaddr); scb 1958 drivers/scsi/ips.c scb->timeout = pt->TimeOut; scb 1961 drivers/scsi/ips.c scb->dcdb.cmd_attribute |= IPS_TIMEOUT10; scb 1963 drivers/scsi/ips.c scb->dcdb.cmd_attribute |= IPS_TIMEOUT60; scb 1965 drivers/scsi/ips.c scb->dcdb.cmd_attribute |= IPS_TIMEOUT20M; scb 1969 drivers/scsi/ips.c scb->scsi_cmd->result = DID_OK << 16; scb 1985 drivers/scsi/ips.c ips_cleanup_passthru(ips_ha_t * ha, ips_scb_t * scb) scb 1991 drivers/scsi/ips.c if ((!scb) || (!scb->scsi_cmd) || (!scsi_sglist(scb->scsi_cmd))) { scb 2000 drivers/scsi/ips.c if (scb->cmd.dcdb.op_code == IPS_CMD_DCDB) /* Copy DCDB Back to Caller's Area */ scb 2001 drivers/scsi/ips.c memcpy(&pt->CoppCP.dcdb, &scb->dcdb, sizeof (IPS_DCDB_TABLE)); scb 2003 drivers/scsi/ips.c pt->BasicStatus = scb->basic_status; scb 2004 drivers/scsi/ips.c pt->ExtendedStatus = scb->extended_status; scb 2008 drivers/scsi/ips.c (scb->cmd.flashfw.op_code == IPS_CMD_DOWNLOAD || scb 2009 drivers/scsi/ips.c scb->cmd.flashfw.op_code == IPS_CMD_RW_BIOSFW)) scb 2012 drivers/scsi/ips.c ips_scmd_buf_write(scb->scsi_cmd, ha->ioctl_data, ha->ioctl_datasize); scb 2230 drivers/scsi/ips.c ips_scb_t *scb; scb 2329 drivers/scsi/ips.c scb = &ha->scbs[ha->max_cmds - 1]; scb 2331 drivers/scsi/ips.c ips_init_scb(ha, scb); scb 2333 drivers/scsi/ips.c scb->timeout = ips_cmd_timeout; scb 2334 drivers/scsi/ips.c scb->cdb[0] = IPS_CMD_RW_BIOSFW; scb 2336 drivers/scsi/ips.c scb->cmd.flashfw.op_code = IPS_CMD_RW_BIOSFW; scb 2337 drivers/scsi/ips.c scb->cmd.flashfw.command_id = IPS_COMMAND_ID(ha, scb); scb 2338 drivers/scsi/ips.c scb->cmd.flashfw.type = 1; scb 2339 drivers/scsi/ips.c scb->cmd.flashfw.direction = 0; scb 2340 drivers/scsi/ips.c scb->cmd.flashfw.count = cpu_to_le32(0x800); scb 2341 drivers/scsi/ips.c scb->cmd.flashfw.total_packets = 1; scb 2342 drivers/scsi/ips.c scb->cmd.flashfw.packet_num = 0; scb 2343 drivers/scsi/ips.c scb->data_len = 0x1000; scb 2344 drivers/scsi/ips.c scb->cmd.flashfw.buffer_addr = ha->ioctl_busaddr; scb 2348 drivers/scsi/ips.c ips_send_wait(ha, scb, ips_cmd_timeout, scb 2351 drivers/scsi/ips.c || ((scb->basic_status & IPS_GSC_STATUS_MASK) > 1)) { scb 2524 drivers/scsi/ips.c ips_scb_t *scb; scb 2560 drivers/scsi/ips.c (ha->copp_waitlist.head) && (scb = ips_getscb(ha))) { scb 2566 drivers/scsi/ips.c scb->scsi_cmd = item->scsi_cmd; scb 2569 drivers/scsi/ips.c ret = ips_make_passthru(ha, scb->scsi_cmd, scb, intr); scb 2575 drivers/scsi/ips.c if (scb->scsi_cmd) { scb 2576 drivers/scsi/ips.c scb->scsi_cmd->result = DID_ERROR << 16; scb 2577 drivers/scsi/ips.c scb->scsi_cmd->scsi_done(scb->scsi_cmd); scb 2580 drivers/scsi/ips.c ips_freescb(ha, scb); scb 2583 drivers/scsi/ips.c if (scb->scsi_cmd) { scb 2584 drivers/scsi/ips.c scb->scsi_cmd->result = DID_OK << 16; scb 2585 drivers/scsi/ips.c scb->scsi_cmd->scsi_done(scb->scsi_cmd); scb 2588 drivers/scsi/ips.c ips_freescb(ha, scb); scb 2599 drivers/scsi/ips.c ret = ips_send_cmd(ha, scb); scb 2602 drivers/scsi/ips.c ips_putq_scb_head(&ha->scb_activelist, scb); scb 2608 drivers/scsi/ips.c if (scb->scsi_cmd) { scb 2609 drivers/scsi/ips.c scb->scsi_cmd->result = DID_ERROR << 16; scb 2612 drivers/scsi/ips.c ips_freescb(ha, scb); scb 2615 drivers/scsi/ips.c ips_freescb(ha, scb); scb 2628 drivers/scsi/ips.c while ((p) && (scb = ips_getscb(ha))) { scb 2633 drivers/scsi/ips.c ips_freescb(ha, scb); scb 2647 drivers/scsi/ips.c scb->target_id = SC->device->id; scb 2648 drivers/scsi/ips.c scb->lun = SC->device->lun; scb 2649 drivers/scsi/ips.c scb->bus = SC->device->channel; scb 2650 drivers/scsi/ips.c scb->scsi_cmd = SC; scb 2651 drivers/scsi/ips.c scb->breakup = 0; scb 2652 drivers/scsi/ips.c scb->data_len = 0; scb 2653 drivers/scsi/ips.c scb->callback = ipsintr_done; scb 2654 drivers/scsi/ips.c scb->timeout = ips_cmd_timeout; scb 2655 drivers/scsi/ips.c memset(&scb->cmd, 0, 16); scb 2658 drivers/scsi/ips.c memcpy(scb->cdb, SC->cmnd, SC->cmd_len); scb 2660 drivers/scsi/ips.c scb->sg_count = scsi_dma_map(SC); scb 2661 drivers/scsi/ips.c BUG_ON(scb->sg_count < 0); scb 2662 drivers/scsi/ips.c if (scb->sg_count) { scb 2666 drivers/scsi/ips.c scb->flags |= IPS_SCB_MAP_SG; scb 2668 drivers/scsi/ips.c scsi_for_each_sg(SC, sg, scb->sg_count, i) { scb 2670 drivers/scsi/ips.c (ha, sg_dma_address(sg), scb, i, scb 2674 drivers/scsi/ips.c scb->dcdb.transfer_length = scb->data_len; scb 2676 drivers/scsi/ips.c scb->data_busaddr = 0L; scb 2677 drivers/scsi/ips.c scb->sg_len = 0; scb 2678 drivers/scsi/ips.c scb->data_len = 0; scb 2679 drivers/scsi/ips.c scb->dcdb.transfer_length = 0; scb 2682 drivers/scsi/ips.c scb->dcdb.cmd_attribute = scb 2683 drivers/scsi/ips.c ips_command_direction[scb->scsi_cmd->cmnd[0]]; scb 2687 drivers/scsi/ips.c if ((scb->scsi_cmd->cmnd[0] == WRITE_BUFFER) && scb 2688 drivers/scsi/ips.c (scb->data_len == 0)) scb 2689 drivers/scsi/ips.c scb->dcdb.cmd_attribute = 0; scb 2691 drivers/scsi/ips.c if (!(scb->dcdb.cmd_attribute & 0x3)) scb 2692 drivers/scsi/ips.c scb->dcdb.transfer_length = 0; scb 2694 drivers/scsi/ips.c if (scb->data_len >= IPS_MAX_XFER) { scb 2695 drivers/scsi/ips.c scb->dcdb.cmd_attribute |= IPS_TRANSFER64K; scb 2696 drivers/scsi/ips.c scb->dcdb.transfer_length = 0; scb 2701 drivers/scsi/ips.c ret = ips_send_cmd(ha, scb); scb 2705 drivers/scsi/ips.c ips_putq_scb_head(&ha->scb_activelist, scb); scb 2708 drivers/scsi/ips.c if (scb->scsi_cmd) { scb 2709 drivers/scsi/ips.c scb->scsi_cmd->result = DID_ERROR << 16; scb 2710 drivers/scsi/ips.c scb->scsi_cmd->scsi_done(scb->scsi_cmd); scb 2713 drivers/scsi/ips.c if (scb->bus) scb 2714 drivers/scsi/ips.c ha->dcdb_active[scb->bus - 1] &= scb 2715 drivers/scsi/ips.c ~(1 << scb->target_id); scb 2717 drivers/scsi/ips.c ips_freescb(ha, scb); scb 2720 drivers/scsi/ips.c if (scb->scsi_cmd) scb 2721 drivers/scsi/ips.c scb->scsi_cmd->scsi_done(scb->scsi_cmd); scb 2723 drivers/scsi/ips.c if (scb->bus) scb 2724 drivers/scsi/ips.c ha->dcdb_active[scb->bus - 1] &= scb 2725 drivers/scsi/ips.c ~(1 << scb->target_id); scb 2727 drivers/scsi/ips.c ips_freescb(ha, scb); scb 3084 drivers/scsi/ips.c ipsintr_blocking(ips_ha_t * ha, ips_scb_t * scb) scb 3088 drivers/scsi/ips.c ips_freescb(ha, scb); scb 3089 drivers/scsi/ips.c if ((ha->waitflag == TRUE) && (ha->cmd_in_progress == scb->cdb[0])) { scb 3106 drivers/scsi/ips.c ipsintr_done(ips_ha_t * ha, ips_scb_t * scb) scb 3110 drivers/scsi/ips.c if (!scb) { scb 3117 drivers/scsi/ips.c if (scb->scsi_cmd == NULL) { scb 3125 drivers/scsi/ips.c ips_done(ha, scb); scb 3138 drivers/scsi/ips.c ips_done(ips_ha_t * ha, ips_scb_t * scb) scb 3144 drivers/scsi/ips.c if (!scb) scb 3147 drivers/scsi/ips.c if ((scb->scsi_cmd) && (ips_is_passthru(scb->scsi_cmd))) { scb 3148 drivers/scsi/ips.c ips_cleanup_passthru(ha, scb); scb 3156 drivers/scsi/ips.c if ((scb->breakup) || (scb->sg_break)) { scb 3161 drivers/scsi/ips.c scb->data_len = 0; scb 3163 drivers/scsi/ips.c sg = scsi_sglist(scb->scsi_cmd); scb 3166 drivers/scsi/ips.c sg_dma_index = scb->breakup; scb 3167 drivers/scsi/ips.c for (i = 0; i < scb->breakup; i++) scb 3173 drivers/scsi/ips.c scb, ips_sg_index++, scb 3176 drivers/scsi/ips.c for (; sg_dma_index < scsi_sg_count(scb->scsi_cmd); scb 3181 drivers/scsi/ips.c scb, ips_sg_index++, scb 3186 drivers/scsi/ips.c scb->dcdb.transfer_length = scb->data_len; scb 3187 drivers/scsi/ips.c scb->dcdb.cmd_attribute |= scb 3188 drivers/scsi/ips.c ips_command_direction[scb->scsi_cmd->cmnd[0]]; scb 3190 drivers/scsi/ips.c if (!(scb->dcdb.cmd_attribute & 0x3)) scb 3191 drivers/scsi/ips.c scb->dcdb.transfer_length = 0; scb 3193 drivers/scsi/ips.c if (scb->data_len >= IPS_MAX_XFER) { scb 3194 drivers/scsi/ips.c scb->dcdb.cmd_attribute |= IPS_TRANSFER64K; scb 3195 drivers/scsi/ips.c scb->dcdb.transfer_length = 0; scb 3198 drivers/scsi/ips.c ret = ips_send_cmd(ha, scb); scb 3202 drivers/scsi/ips.c if (scb->scsi_cmd) { scb 3203 drivers/scsi/ips.c scb->scsi_cmd->result = DID_ERROR << 16; scb 3204 drivers/scsi/ips.c scb->scsi_cmd->scsi_done(scb->scsi_cmd); scb 3207 drivers/scsi/ips.c ips_freescb(ha, scb); scb 3210 drivers/scsi/ips.c if (scb->scsi_cmd) { scb 3211 drivers/scsi/ips.c scb->scsi_cmd->result = DID_ERROR << 16; scb 3212 drivers/scsi/ips.c scb->scsi_cmd->scsi_done(scb->scsi_cmd); scb 3215 drivers/scsi/ips.c ips_freescb(ha, scb); scb 3225 drivers/scsi/ips.c if (scb->bus) { scb 3226 drivers/scsi/ips.c ha->dcdb_active[scb->bus - 1] &= ~(1 << scb->target_id); scb 3229 drivers/scsi/ips.c scb->scsi_cmd->scsi_done(scb->scsi_cmd); scb 3231 drivers/scsi/ips.c ips_freescb(ha, scb); scb 3244 drivers/scsi/ips.c ips_map_status(ips_ha_t * ha, ips_scb_t * scb, ips_stat_t * sp) scb 3254 drivers/scsi/ips.c if (scb->bus) { scb 3258 drivers/scsi/ips.c scb->scsi_cmd->device->channel, scb 3259 drivers/scsi/ips.c scb->scsi_cmd->device->id, scb->scsi_cmd->device->lun, scb 3260 drivers/scsi/ips.c scb->basic_status, scb->extended_status, scb 3261 drivers/scsi/ips.c scb->extended_status == scb 3262 drivers/scsi/ips.c IPS_ERR_CKCOND ? scb->dcdb.sense_info[2] & 0xf : 0, scb 3263 drivers/scsi/ips.c scb->extended_status == scb 3264 drivers/scsi/ips.c IPS_ERR_CKCOND ? scb->dcdb.sense_info[12] : 0, scb 3265 drivers/scsi/ips.c scb->extended_status == scb 3266 drivers/scsi/ips.c IPS_ERR_CKCOND ? scb->dcdb.sense_info[13] : 0); scb 3273 drivers/scsi/ips.c switch (scb->basic_status & IPS_GSC_STATUS_MASK) { scb 3286 drivers/scsi/ips.c switch (scb->extended_status) { scb 3288 drivers/scsi/ips.c if (scb->bus) scb 3294 drivers/scsi/ips.c if ((scb->cmd.dcdb.op_code == IPS_CMD_EXTENDED_DCDB) || scb 3295 drivers/scsi/ips.c (scb->cmd.dcdb.op_code == scb 3297 drivers/scsi/ips.c tapeDCDB = (IPS_DCDB_TABLE_TAPE *) & scb->dcdb; scb 3301 drivers/scsi/ips.c (uint32_t) scb->dcdb.transfer_length; scb 3304 drivers/scsi/ips.c if ((scb->bus) && (transfer_len < scb->data_len)) { scb 3309 drivers/scsi/ips.c if (scb->scsi_cmd->cmnd[0] == INQUIRY) { scb 3310 drivers/scsi/ips.c ips_scmd_buf_read(scb->scsi_cmd, scb 3324 drivers/scsi/ips.c if (scb->bus) scb 3335 drivers/scsi/ips.c if (scb->bus) { scb 3336 drivers/scsi/ips.c if ((scb->cmd.dcdb.op_code == scb 3338 drivers/scsi/ips.c || (scb->cmd.dcdb.op_code == scb 3341 drivers/scsi/ips.c (IPS_DCDB_TABLE_TAPE *) & scb->dcdb; scb 3342 drivers/scsi/ips.c memcpy(scb->scsi_cmd->sense_buffer, scb 3346 drivers/scsi/ips.c memcpy(scb->scsi_cmd->sense_buffer, scb 3347 drivers/scsi/ips.c scb->dcdb.sense_info, scb 3364 drivers/scsi/ips.c scb->scsi_cmd->result = device_error | (errcode << 16); scb 3381 drivers/scsi/ips.c ips_send_wait(ips_ha_t * ha, ips_scb_t * scb, int timeout, int intr) scb 3389 drivers/scsi/ips.c ha->cmd_in_progress = scb->cdb[0]; scb 3391 drivers/scsi/ips.c scb->callback = ipsintr_blocking; scb 3392 drivers/scsi/ips.c ret = ips_send_cmd(ha, scb); scb 3447 drivers/scsi/ips.c ips_send_cmd(ips_ha_t * ha, ips_scb_t * scb) scb 3459 drivers/scsi/ips.c if (!scb->scsi_cmd) { scb 3462 drivers/scsi/ips.c if (scb->bus > 0) { scb 3466 drivers/scsi/ips.c (ha->cmd_in_progress == scb->cdb[0])) { scb 3472 drivers/scsi/ips.c } else if ((scb->bus == 0) && (!ips_is_passthru(scb->scsi_cmd))) { scb 3476 drivers/scsi/ips.c switch (scb->scsi_cmd->cmnd[0]) { scb 3482 drivers/scsi/ips.c scb->scsi_cmd->result = DID_ERROR << 16; scb 3486 drivers/scsi/ips.c scb->scsi_cmd->result = DID_OK << 16; scb 3491 drivers/scsi/ips.c if (scb->target_id == IPS_ADAPTER_ID) { scb 3496 drivers/scsi/ips.c if (scb->scsi_cmd->cmnd[0] == TEST_UNIT_READY) scb 3497 drivers/scsi/ips.c scb->scsi_cmd->result = DID_OK << 16; scb 3499 drivers/scsi/ips.c if (scb->scsi_cmd->cmnd[0] == INQUIRY) { scb 3525 drivers/scsi/ips.c ips_scmd_buf_write(scb->scsi_cmd, scb 3529 drivers/scsi/ips.c scb->scsi_cmd->result = DID_OK << 16; scb 3532 drivers/scsi/ips.c scb->cmd.logical_info.op_code = IPS_CMD_GET_LD_INFO; scb 3533 drivers/scsi/ips.c scb->cmd.logical_info.command_id = IPS_COMMAND_ID(ha, scb); scb 3534 drivers/scsi/ips.c scb->cmd.logical_info.reserved = 0; scb 3535 drivers/scsi/ips.c scb->cmd.logical_info.reserved2 = 0; scb 3536 drivers/scsi/ips.c scb->data_len = sizeof (IPS_LD_INFO); scb 3537 drivers/scsi/ips.c scb->data_busaddr = ha->logical_drive_info_dma_addr; scb 3538 drivers/scsi/ips.c scb->flags = 0; scb 3539 drivers/scsi/ips.c scb->cmd.logical_info.buffer_addr = scb->data_busaddr; scb 3546 drivers/scsi/ips.c ips_reqsen(ha, scb); scb 3547 drivers/scsi/ips.c scb->scsi_cmd->result = DID_OK << 16; scb 3552 drivers/scsi/ips.c if (!scb->sg_len) { scb 3553 drivers/scsi/ips.c scb->cmd.basic_io.op_code = scb 3554 drivers/scsi/ips.c (scb->scsi_cmd->cmnd[0] == scb 3556 drivers/scsi/ips.c scb->cmd.basic_io.enhanced_sg = 0; scb 3557 drivers/scsi/ips.c scb->cmd.basic_io.sg_addr = scb 3558 drivers/scsi/ips.c cpu_to_le32(scb->data_busaddr); scb 3560 drivers/scsi/ips.c scb->cmd.basic_io.op_code = scb 3561 drivers/scsi/ips.c (scb->scsi_cmd->cmnd[0] == scb 3564 drivers/scsi/ips.c scb->cmd.basic_io.enhanced_sg = scb 3566 drivers/scsi/ips.c scb->cmd.basic_io.sg_addr = scb 3567 drivers/scsi/ips.c cpu_to_le32(scb->sg_busaddr); scb 3570 drivers/scsi/ips.c scb->cmd.basic_io.segment_4G = 0; scb 3571 drivers/scsi/ips.c scb->cmd.basic_io.command_id = IPS_COMMAND_ID(ha, scb); scb 3572 drivers/scsi/ips.c scb->cmd.basic_io.log_drv = scb->target_id; scb 3573 drivers/scsi/ips.c scb->cmd.basic_io.sg_count = scb->sg_len; scb 3575 drivers/scsi/ips.c if (scb->cmd.basic_io.lba) scb 3576 drivers/scsi/ips.c le32_add_cpu(&scb->cmd.basic_io.lba, scb 3577 drivers/scsi/ips.c le16_to_cpu(scb->cmd.basic_io. scb 3580 drivers/scsi/ips.c scb->cmd.basic_io.lba = scb 3581 drivers/scsi/ips.c (((scb->scsi_cmd-> scb 3582 drivers/scsi/ips.c cmnd[1] & 0x1f) << 16) | (scb->scsi_cmd-> scb 3584 drivers/scsi/ips.c (scb->scsi_cmd->cmnd[3])); scb 3586 drivers/scsi/ips.c scb->cmd.basic_io.sector_count = scb 3587 drivers/scsi/ips.c cpu_to_le16(scb->data_len / IPS_BLKSIZE); scb 3589 drivers/scsi/ips.c if (le16_to_cpu(scb->cmd.basic_io.sector_count) == 0) scb 3590 drivers/scsi/ips.c scb->cmd.basic_io.sector_count = scb 3598 drivers/scsi/ips.c if (!scb->sg_len) { scb 3599 drivers/scsi/ips.c scb->cmd.basic_io.op_code = scb 3600 drivers/scsi/ips.c (scb->scsi_cmd->cmnd[0] == scb 3602 drivers/scsi/ips.c scb->cmd.basic_io.enhanced_sg = 0; scb 3603 drivers/scsi/ips.c scb->cmd.basic_io.sg_addr = scb 3604 drivers/scsi/ips.c cpu_to_le32(scb->data_busaddr); scb 3606 drivers/scsi/ips.c scb->cmd.basic_io.op_code = scb 3607 drivers/scsi/ips.c (scb->scsi_cmd->cmnd[0] == scb 3610 drivers/scsi/ips.c scb->cmd.basic_io.enhanced_sg = scb 3612 drivers/scsi/ips.c scb->cmd.basic_io.sg_addr = scb 3613 drivers/scsi/ips.c cpu_to_le32(scb->sg_busaddr); scb 3616 drivers/scsi/ips.c scb->cmd.basic_io.segment_4G = 0; scb 3617 drivers/scsi/ips.c scb->cmd.basic_io.command_id = IPS_COMMAND_ID(ha, scb); scb 3618 drivers/scsi/ips.c scb->cmd.basic_io.log_drv = scb->target_id; scb 3619 drivers/scsi/ips.c scb->cmd.basic_io.sg_count = scb->sg_len; scb 3621 drivers/scsi/ips.c if (scb->cmd.basic_io.lba) scb 3622 drivers/scsi/ips.c le32_add_cpu(&scb->cmd.basic_io.lba, scb 3623 drivers/scsi/ips.c le16_to_cpu(scb->cmd.basic_io. scb 3626 drivers/scsi/ips.c scb->cmd.basic_io.lba = scb 3627 drivers/scsi/ips.c ((scb->scsi_cmd->cmnd[2] << 24) | (scb-> scb 3631 drivers/scsi/ips.c (scb->scsi_cmd->cmnd[4] << 8) | scb-> scb 3634 drivers/scsi/ips.c scb->cmd.basic_io.sector_count = scb 3635 drivers/scsi/ips.c cpu_to_le16(scb->data_len / IPS_BLKSIZE); scb 3637 drivers/scsi/ips.c if (cpu_to_le16(scb->cmd.basic_io.sector_count) == 0) { scb 3643 drivers/scsi/ips.c scb->scsi_cmd->result = DID_OK << 16; scb 3651 drivers/scsi/ips.c scb->scsi_cmd->result = DID_OK << 16; scb 3655 drivers/scsi/ips.c scb->cmd.basic_io.op_code = IPS_CMD_ENQUIRY; scb 3656 drivers/scsi/ips.c scb->cmd.basic_io.command_id = IPS_COMMAND_ID(ha, scb); scb 3657 drivers/scsi/ips.c scb->cmd.basic_io.segment_4G = 0; scb 3658 drivers/scsi/ips.c scb->cmd.basic_io.enhanced_sg = 0; scb 3659 drivers/scsi/ips.c scb->data_len = sizeof (*ha->enq); scb 3660 drivers/scsi/ips.c scb->cmd.basic_io.sg_addr = ha->enq_busaddr; scb 3665 drivers/scsi/ips.c scb->cmd.logical_info.op_code = IPS_CMD_GET_LD_INFO; scb 3666 drivers/scsi/ips.c scb->cmd.logical_info.command_id = IPS_COMMAND_ID(ha, scb); scb 3667 drivers/scsi/ips.c scb->cmd.logical_info.reserved = 0; scb 3668 drivers/scsi/ips.c scb->cmd.logical_info.reserved2 = 0; scb 3669 drivers/scsi/ips.c scb->cmd.logical_info.reserved3 = 0; scb 3670 drivers/scsi/ips.c scb->data_len = sizeof (IPS_LD_INFO); scb 3671 drivers/scsi/ips.c scb->data_busaddr = ha->logical_drive_info_dma_addr; scb 3672 drivers/scsi/ips.c scb->flags = 0; scb 3673 drivers/scsi/ips.c scb->cmd.logical_info.buffer_addr = scb->data_busaddr; scb 3685 drivers/scsi/ips.c scb->scsi_cmd->result = DID_OK << 16; scb 3692 drivers/scsi/ips.c sp = (char *) scb->scsi_cmd->sense_buffer; scb 3701 drivers/scsi/ips.c scb->scsi_cmd->result = device_error | (DID_OK << 16); scb 3710 drivers/scsi/ips.c if (scb->bus > 0) { scb 3714 drivers/scsi/ips.c if (ha->conf->dev[scb->bus - 1][scb->target_id].ucState == 0) { scb 3715 drivers/scsi/ips.c scb->scsi_cmd->result = DID_NO_CONNECT << 16; scb 3719 drivers/scsi/ips.c ha->dcdb_active[scb->bus - 1] |= (1 << scb->target_id); scb 3720 drivers/scsi/ips.c scb->cmd.dcdb.command_id = IPS_COMMAND_ID(ha, scb); scb 3721 drivers/scsi/ips.c scb->cmd.dcdb.dcdb_address = cpu_to_le32(scb->scb_busaddr + scb 3722 drivers/scsi/ips.c (unsigned long) &scb-> scb 3724 drivers/scsi/ips.c (unsigned long) scb); scb 3725 drivers/scsi/ips.c scb->cmd.dcdb.reserved = 0; scb 3726 drivers/scsi/ips.c scb->cmd.dcdb.reserved2 = 0; scb 3727 drivers/scsi/ips.c scb->cmd.dcdb.reserved3 = 0; scb 3728 drivers/scsi/ips.c scb->cmd.dcdb.segment_4G = 0; scb 3729 drivers/scsi/ips.c scb->cmd.dcdb.enhanced_sg = 0; scb 3731 drivers/scsi/ips.c TimeOut = scb->scsi_cmd->request->timeout; scb 3734 drivers/scsi/ips.c if (!scb->sg_len) { scb 3735 drivers/scsi/ips.c scb->cmd.dcdb.op_code = IPS_CMD_EXTENDED_DCDB; scb 3737 drivers/scsi/ips.c scb->cmd.dcdb.op_code = scb 3739 drivers/scsi/ips.c scb->cmd.dcdb.enhanced_sg = scb 3743 drivers/scsi/ips.c tapeDCDB = (IPS_DCDB_TABLE_TAPE *) & scb->dcdb; /* Use Same Data Area as Old DCDB Struct */ scb 3745 drivers/scsi/ips.c ((scb->bus - 1) << 4) | scb->target_id; scb 3758 drivers/scsi/ips.c tapeDCDB->cdb_length = scb->scsi_cmd->cmd_len; scb 3760 drivers/scsi/ips.c tapeDCDB->transfer_length = scb->data_len; scb 3761 drivers/scsi/ips.c if (scb->cmd.dcdb.op_code == IPS_CMD_EXTENDED_DCDB_SG) scb 3763 drivers/scsi/ips.c cpu_to_le32(scb->sg_busaddr); scb 3766 drivers/scsi/ips.c cpu_to_le32(scb->data_busaddr); scb 3767 drivers/scsi/ips.c tapeDCDB->sg_count = scb->sg_len; scb 3771 drivers/scsi/ips.c memcpy(tapeDCDB->scsi_cdb, scb->scsi_cmd->cmnd, scb 3772 drivers/scsi/ips.c scb->scsi_cmd->cmd_len); scb 3774 drivers/scsi/ips.c if (!scb->sg_len) { scb 3775 drivers/scsi/ips.c scb->cmd.dcdb.op_code = IPS_CMD_DCDB; scb 3777 drivers/scsi/ips.c scb->cmd.dcdb.op_code = IPS_CMD_DCDB_SG; scb 3778 drivers/scsi/ips.c scb->cmd.dcdb.enhanced_sg = scb 3782 drivers/scsi/ips.c scb->dcdb.device_address = scb 3783 drivers/scsi/ips.c ((scb->bus - 1) << 4) | scb->target_id; scb 3784 drivers/scsi/ips.c scb->dcdb.cmd_attribute |= IPS_DISCONNECT_ALLOWED; scb 3788 drivers/scsi/ips.c scb->dcdb.cmd_attribute |= IPS_TIMEOUT10; /* TimeOut is 10 Seconds */ scb 3790 drivers/scsi/ips.c scb->dcdb.cmd_attribute |= IPS_TIMEOUT60; /* TimeOut is 60 Seconds */ scb 3792 drivers/scsi/ips.c scb->dcdb.cmd_attribute |= IPS_TIMEOUT20M; /* TimeOut is 20 Minutes */ scb 3795 drivers/scsi/ips.c scb->dcdb.transfer_length = scb->data_len; scb 3796 drivers/scsi/ips.c if (scb->dcdb.cmd_attribute & IPS_TRANSFER64K) scb 3797 drivers/scsi/ips.c scb->dcdb.transfer_length = 0; scb 3798 drivers/scsi/ips.c if (scb->cmd.dcdb.op_code == IPS_CMD_DCDB_SG) scb 3799 drivers/scsi/ips.c scb->dcdb.buffer_pointer = scb 3800 drivers/scsi/ips.c cpu_to_le32(scb->sg_busaddr); scb 3802 drivers/scsi/ips.c scb->dcdb.buffer_pointer = scb 3803 drivers/scsi/ips.c cpu_to_le32(scb->data_busaddr); scb 3804 drivers/scsi/ips.c scb->dcdb.cdb_length = scb->scsi_cmd->cmd_len; scb 3805 drivers/scsi/ips.c scb->dcdb.sense_length = sizeof (scb->dcdb.sense_info); scb 3806 drivers/scsi/ips.c scb->dcdb.sg_count = scb->sg_len; scb 3807 drivers/scsi/ips.c scb->dcdb.reserved = 0; scb 3808 drivers/scsi/ips.c memcpy(scb->dcdb.scsi_cdb, scb->scsi_cmd->cmnd, scb 3809 drivers/scsi/ips.c scb->scsi_cmd->cmd_len); scb 3810 drivers/scsi/ips.c scb->dcdb.scsi_status = 0; scb 3811 drivers/scsi/ips.c scb->dcdb.reserved2[0] = 0; scb 3812 drivers/scsi/ips.c scb->dcdb.reserved2[1] = 0; scb 3813 drivers/scsi/ips.c scb->dcdb.reserved2[2] = 0; scb 3817 drivers/scsi/ips.c return ((*ha->func.issue) (ha, scb)); scb 3832 drivers/scsi/ips.c ips_scb_t *scb; scb 3841 drivers/scsi/ips.c scb = &ha->scbs[pstatus->fields.command_id]; scb 3842 drivers/scsi/ips.c scb->basic_status = basic_status = scb 3844 drivers/scsi/ips.c scb->extended_status = ext_status = pstatus->fields.extended_status; scb 3848 drivers/scsi/ips.c sp->scb_addr = (void *) scb; scb 3851 drivers/scsi/ips.c ips_removeq_scb(&ha->scb_activelist, scb); scb 3853 drivers/scsi/ips.c if (!scb->scsi_cmd) scb 3860 drivers/scsi/ips.c scb->cdb[0], scb 3861 drivers/scsi/ips.c scb->cmd.basic_io.command_id, scb 3862 drivers/scsi/ips.c scb->bus, scb->target_id, scb->lun); scb 3864 drivers/scsi/ips.c if ((scb->scsi_cmd) && (ips_is_passthru(scb->scsi_cmd))) scb 3873 drivers/scsi/ips.c if (scb->bus == 0) { scb 3879 drivers/scsi/ips.c scb->cmd.basic_io.op_code, scb 3883 drivers/scsi/ips.c switch (scb->scsi_cmd->cmnd[0]) { scb 3896 drivers/scsi/ips.c if (!ips_online(ha, scb)) { scb 3902 drivers/scsi/ips.c if (ips_online(ha, scb)) { scb 3903 drivers/scsi/ips.c ips_inquiry(ha, scb); scb 3910 drivers/scsi/ips.c ips_reqsen(ha, scb); scb 3922 drivers/scsi/ips.c if (!ips_online(ha, scb) scb 3923 drivers/scsi/ips.c || !ips_msense(ha, scb)) { scb 3929 drivers/scsi/ips.c if (ips_online(ha, scb)) scb 3930 drivers/scsi/ips.c ips_rdcap(ha, scb); scb 3955 drivers/scsi/ips.c scb->scsi_cmd->result = errcode << 16; scb 3958 drivers/scsi/ips.c if (scb->scsi_cmd->cmnd[0] == INQUIRY) { scb 3959 drivers/scsi/ips.c ips_scmd_buf_read(scb->scsi_cmd, scb 3962 drivers/scsi/ips.c scb->scsi_cmd->result = DID_TIME_OUT << 16; scb 3966 drivers/scsi/ips.c if (scb->bus == 0) { scb 3970 drivers/scsi/ips.c scb->cmd.basic_io.op_code, basic_status, scb 3974 drivers/scsi/ips.c ips_map_status(ha, scb, sp); scb 3988 drivers/scsi/ips.c ips_online(ips_ha_t * ha, ips_scb_t * scb) scb 3992 drivers/scsi/ips.c if (scb->target_id >= IPS_MAX_LD) scb 3995 drivers/scsi/ips.c if ((scb->basic_status & IPS_GSC_STATUS_MASK) > 1) { scb 4000 drivers/scsi/ips.c if (ha->logical_drive_info->drive_info[scb->target_id].state != scb 4002 drivers/scsi/ips.c && ha->logical_drive_info->drive_info[scb->target_id].state != scb 4004 drivers/scsi/ips.c && ha->logical_drive_info->drive_info[scb->target_id].state != scb 4006 drivers/scsi/ips.c && ha->logical_drive_info->drive_info[scb->target_id].state != scb 4023 drivers/scsi/ips.c ips_inquiry(ips_ha_t * ha, ips_scb_t * scb) scb 4043 drivers/scsi/ips.c ips_scmd_buf_write(scb->scsi_cmd, &inquiry, sizeof (inquiry)); scb 4058 drivers/scsi/ips.c ips_rdcap(ips_ha_t * ha, ips_scb_t * scb) scb 4064 drivers/scsi/ips.c if (scsi_bufflen(scb->scsi_cmd) < 8) scb 4070 drivers/scsi/ips.c drive_info[scb->target_id].sector_count) - 1); scb 4073 drivers/scsi/ips.c ips_scmd_buf_write(scb->scsi_cmd, &cap, sizeof (cap)); scb 4088 drivers/scsi/ips.c ips_msense(ips_ha_t * ha, ips_scb_t * scb) scb 4097 drivers/scsi/ips.c if (le32_to_cpu(ha->enq->ulDriveSize[scb->target_id]) > 0x400000 && scb 4107 drivers/scsi/ips.c (le32_to_cpu(ha->enq->ulDriveSize[scb->target_id]) - scb 4114 drivers/scsi/ips.c switch (scb->scsi_cmd->cmnd[2] & 0x3f) { scb 4164 drivers/scsi/ips.c ips_scmd_buf_write(scb->scsi_cmd, &mdata, sizeof (mdata)); scb 4179 drivers/scsi/ips.c ips_reqsen(ips_ha_t * ha, ips_scb_t * scb) scb 4193 drivers/scsi/ips.c ips_scmd_buf_write(scb->scsi_cmd, &reqsen, sizeof (reqsen)); scb 4364 drivers/scsi/ips.c ips_init_scb(ips_ha_t * ha, ips_scb_t * scb) scb 4370 drivers/scsi/ips.c if (scb == NULL) scb 4373 drivers/scsi/ips.c sg_list.list = scb->sg_list.list; scb 4374 drivers/scsi/ips.c cmd_busaddr = scb->scb_busaddr; scb 4375 drivers/scsi/ips.c sg_busaddr = scb->sg_busaddr; scb 4377 drivers/scsi/ips.c memset(scb, 0, sizeof (ips_scb_t)); scb 4387 drivers/scsi/ips.c scb->scb_busaddr = cmd_busaddr; scb 4388 drivers/scsi/ips.c scb->sg_busaddr = sg_busaddr; scb 4389 drivers/scsi/ips.c scb->sg_list.list = sg_list.list; scb 4392 drivers/scsi/ips.c scb->cmd.basic_io.cccr = cpu_to_le32((uint32_t) IPS_BIT_ILE); scb 4393 drivers/scsi/ips.c scb->cmd.basic_io.ccsar = cpu_to_le32(ha->adapt->hw_status_start scb 4411 drivers/scsi/ips.c ips_scb_t *scb; scb 4415 drivers/scsi/ips.c if ((scb = ha->scb_freelist) == NULL) { scb 4420 drivers/scsi/ips.c ha->scb_freelist = scb->q_next; scb 4421 drivers/scsi/ips.c scb->flags = 0; scb 4422 drivers/scsi/ips.c scb->q_next = NULL; scb 4424 drivers/scsi/ips.c ips_init_scb(ha, scb); scb 4426 drivers/scsi/ips.c return (scb); scb 4441 drivers/scsi/ips.c ips_freescb(ips_ha_t * ha, ips_scb_t * scb) scb 4445 drivers/scsi/ips.c if (scb->flags & IPS_SCB_MAP_SG) scb 4446 drivers/scsi/ips.c scsi_dma_unmap(scb->scsi_cmd); scb 4447 drivers/scsi/ips.c else if (scb->flags & IPS_SCB_MAP_SINGLE) scb 4448 drivers/scsi/ips.c dma_unmap_single(&ha->pcidev->dev, scb->data_busaddr, scb 4449 drivers/scsi/ips.c scb->data_len, IPS_DMA_DIR(scb)); scb 4452 drivers/scsi/ips.c if (IPS_COMMAND_ID(ha, scb) < (ha->max_cmds - 1)) { scb 4453 drivers/scsi/ips.c scb->q_next = ha->scb_freelist; scb 4454 drivers/scsi/ips.c ha->scb_freelist = scb; scb 4554 drivers/scsi/ips.c ips_scb_t *scb; scb 4561 drivers/scsi/ips.c scb = dma_alloc_coherent(&ha->pcidev->dev, sizeof(ips_scb_t), scb 4563 drivers/scsi/ips.c if (scb) { scb 4564 drivers/scsi/ips.c memset(scb, 0, sizeof(ips_scb_t)); scb 4565 drivers/scsi/ips.c ips_init_scb(ha, scb); scb 4566 drivers/scsi/ips.c scb->scb_busaddr = command_dma; scb 4568 drivers/scsi/ips.c scb->timeout = ips_cmd_timeout; scb 4569 drivers/scsi/ips.c scb->cdb[0] = IPS_CMD_FLUSH; scb 4571 drivers/scsi/ips.c scb->cmd.flush_cache.op_code = IPS_CMD_FLUSH; scb 4572 drivers/scsi/ips.c scb->cmd.flush_cache.command_id = IPS_MAX_CMDS; /* Use an ID that would otherwise not exist */ scb 4573 drivers/scsi/ips.c scb->cmd.flush_cache.state = IPS_NORM_STATE; scb 4574 drivers/scsi/ips.c scb->cmd.flush_cache.reserved = 0; scb 4575 drivers/scsi/ips.c scb->cmd.flush_cache.reserved2 = 0; scb 4576 drivers/scsi/ips.c scb->cmd.flush_cache.reserved3 = 0; scb 4577 drivers/scsi/ips.c scb->cmd.flush_cache.reserved4 = 0; scb 4579 drivers/scsi/ips.c ret = ips_send_cmd(ha, scb); /* Send the Flush Command */ scb 4597 drivers/scsi/ips.c dma_free_coherent(&ha->pcidev->dev, sizeof(ips_scb_t), scb, command_dma); scb 5272 drivers/scsi/ips.c ips_issue_copperhead(ips_ha_t * ha, ips_scb_t * scb) scb 5279 drivers/scsi/ips.c if (scb->scsi_cmd) { scb 5283 drivers/scsi/ips.c scb->cdb[0], scb 5284 drivers/scsi/ips.c scb->cmd.basic_io.command_id, scb 5285 drivers/scsi/ips.c scb->bus, scb->target_id, scb->lun); scb 5288 drivers/scsi/ips.c ips_name, ha->host_num, scb->cmd.basic_io.command_id); scb 5310 drivers/scsi/ips.c outl(scb->scb_busaddr, ha->io_addr + IPS_REG_CCSAR); scb 5326 drivers/scsi/ips.c ips_issue_copperhead_memio(ips_ha_t * ha, ips_scb_t * scb) scb 5333 drivers/scsi/ips.c if (scb->scsi_cmd) { scb 5337 drivers/scsi/ips.c scb->cdb[0], scb 5338 drivers/scsi/ips.c scb->cmd.basic_io.command_id, scb 5339 drivers/scsi/ips.c scb->bus, scb->target_id, scb->lun); scb 5342 drivers/scsi/ips.c ips_name, ha->host_num, scb->cmd.basic_io.command_id); scb 5363 drivers/scsi/ips.c writel(scb->scb_busaddr, ha->mem_ptr + IPS_REG_CCSAR); scb 5379 drivers/scsi/ips.c ips_issue_i2o(ips_ha_t * ha, ips_scb_t * scb) scb 5384 drivers/scsi/ips.c if (scb->scsi_cmd) { scb 5388 drivers/scsi/ips.c scb->cdb[0], scb 5389 drivers/scsi/ips.c scb->cmd.basic_io.command_id, scb 5390 drivers/scsi/ips.c scb->bus, scb->target_id, scb->lun); scb 5393 drivers/scsi/ips.c ips_name, ha->host_num, scb->cmd.basic_io.command_id); scb 5396 drivers/scsi/ips.c outl(scb->scb_busaddr, ha->io_addr + IPS_REG_I2O_INMSGQ); scb 5411 drivers/scsi/ips.c ips_issue_i2o_memio(ips_ha_t * ha, ips_scb_t * scb) scb 5416 drivers/scsi/ips.c if (scb->scsi_cmd) { scb 5420 drivers/scsi/ips.c scb->cdb[0], scb 5421 drivers/scsi/ips.c scb->cmd.basic_io.command_id, scb 5422 drivers/scsi/ips.c scb->bus, scb->target_id, scb->lun); scb 5425 drivers/scsi/ips.c ips_name, ha->host_num, scb->cmd.basic_io.command_id); scb 5428 drivers/scsi/ips.c writel(scb->scb_busaddr, ha->mem_ptr + IPS_REG_I2O_INMSGQ); scb 5658 drivers/scsi/ips.c ips_scb_t *scb; scb 5663 drivers/scsi/ips.c scb = &ha->scbs[ha->max_cmds - 1]; scb 5665 drivers/scsi/ips.c ips_init_scb(ha, scb); scb 5667 drivers/scsi/ips.c scb->timeout = ips_cmd_timeout; scb 5668 drivers/scsi/ips.c scb->cdb[0] = IPS_CMD_ENQUIRY; scb 5670 drivers/scsi/ips.c scb->cmd.basic_io.op_code = IPS_CMD_ENQUIRY; scb 5671 drivers/scsi/ips.c scb->cmd.basic_io.command_id = IPS_COMMAND_ID(ha, scb); scb 5672 drivers/scsi/ips.c scb->cmd.basic_io.sg_count = 0; scb 5673 drivers/scsi/ips.c scb->cmd.basic_io.lba = 0; scb 5674 drivers/scsi/ips.c scb->cmd.basic_io.sector_count = 0; scb 5675 drivers/scsi/ips.c scb->cmd.basic_io.log_drv = 0; scb 5676 drivers/scsi/ips.c scb->data_len = sizeof (*ha->enq); scb 5677 drivers/scsi/ips.c scb->cmd.basic_io.sg_addr = ha->enq_busaddr; scb 5681 drivers/scsi/ips.c ips_send_wait(ha, scb, ips_cmd_timeout, intr)) == IPS_FAILURE) scb 5683 drivers/scsi/ips.c || ((scb->basic_status & IPS_GSC_STATUS_MASK) > 1)) scb 5701 drivers/scsi/ips.c ips_scb_t *scb; scb 5706 drivers/scsi/ips.c scb = &ha->scbs[ha->max_cmds - 1]; scb 5708 drivers/scsi/ips.c ips_init_scb(ha, scb); scb 5710 drivers/scsi/ips.c scb->timeout = ips_cmd_timeout; scb 5711 drivers/scsi/ips.c scb->cdb[0] = IPS_CMD_GET_SUBSYS; scb 5713 drivers/scsi/ips.c scb->cmd.basic_io.op_code = IPS_CMD_GET_SUBSYS; scb 5714 drivers/scsi/ips.c scb->cmd.basic_io.command_id = IPS_COMMAND_ID(ha, scb); scb 5715 drivers/scsi/ips.c scb->cmd.basic_io.sg_count = 0; scb 5716 drivers/scsi/ips.c scb->cmd.basic_io.lba = 0; scb 5717 drivers/scsi/ips.c scb->cmd.basic_io.sector_count = 0; scb 5718 drivers/scsi/ips.c scb->cmd.basic_io.log_drv = 0; scb 5719 drivers/scsi/ips.c scb->data_len = sizeof (*ha->subsys); scb 5720 drivers/scsi/ips.c scb->cmd.basic_io.sg_addr = ha->ioctl_busaddr; scb 5724 drivers/scsi/ips.c ips_send_wait(ha, scb, ips_cmd_timeout, intr)) == IPS_FAILURE) scb 5726 drivers/scsi/ips.c || ((scb->basic_status & IPS_GSC_STATUS_MASK) > 1)) scb 5745 drivers/scsi/ips.c ips_scb_t *scb; scb 5755 drivers/scsi/ips.c scb = &ha->scbs[ha->max_cmds - 1]; scb 5757 drivers/scsi/ips.c ips_init_scb(ha, scb); scb 5759 drivers/scsi/ips.c scb->timeout = ips_cmd_timeout; scb 5760 drivers/scsi/ips.c scb->cdb[0] = IPS_CMD_READ_CONF; scb 5762 drivers/scsi/ips.c scb->cmd.basic_io.op_code = IPS_CMD_READ_CONF; scb 5763 drivers/scsi/ips.c scb->cmd.basic_io.command_id = IPS_COMMAND_ID(ha, scb); scb 5764 drivers/scsi/ips.c scb->data_len = sizeof (*ha->conf); scb 5765 drivers/scsi/ips.c scb->cmd.basic_io.sg_addr = ha->ioctl_busaddr; scb 5769 drivers/scsi/ips.c ips_send_wait(ha, scb, ips_cmd_timeout, intr)) == IPS_FAILURE) scb 5771 drivers/scsi/ips.c || ((scb->basic_status & IPS_GSC_STATUS_MASK) > 1)) { scb 5780 drivers/scsi/ips.c if ((scb->basic_status & IPS_GSC_STATUS_MASK) == scb 5803 drivers/scsi/ips.c ips_scb_t *scb; scb 5808 drivers/scsi/ips.c scb = &ha->scbs[ha->max_cmds - 1]; scb 5810 drivers/scsi/ips.c ips_init_scb(ha, scb); scb 5812 drivers/scsi/ips.c scb->timeout = ips_cmd_timeout; scb 5813 drivers/scsi/ips.c scb->cdb[0] = IPS_CMD_RW_NVRAM_PAGE; scb 5815 drivers/scsi/ips.c scb->cmd.nvram.op_code = IPS_CMD_RW_NVRAM_PAGE; scb 5816 drivers/scsi/ips.c scb->cmd.nvram.command_id = IPS_COMMAND_ID(ha, scb); scb 5817 drivers/scsi/ips.c scb->cmd.nvram.page = 5; scb 5818 drivers/scsi/ips.c scb->cmd.nvram.write = write; scb 5819 drivers/scsi/ips.c scb->cmd.nvram.reserved = 0; scb 5820 drivers/scsi/ips.c scb->cmd.nvram.reserved2 = 0; scb 5821 drivers/scsi/ips.c scb->data_len = sizeof (*ha->nvram); scb 5822 drivers/scsi/ips.c scb->cmd.nvram.buffer_addr = ha->ioctl_busaddr; scb 5828 drivers/scsi/ips.c ips_send_wait(ha, scb, ips_cmd_timeout, intr)) == IPS_FAILURE) scb 5830 drivers/scsi/ips.c || ((scb->basic_status & IPS_GSC_STATUS_MASK) > 1)) { scb 5853 drivers/scsi/ips.c ips_scb_t *scb; scb 5858 drivers/scsi/ips.c scb = &ha->scbs[ha->max_cmds - 1]; scb 5860 drivers/scsi/ips.c ips_init_scb(ha, scb); scb 5862 drivers/scsi/ips.c scb->timeout = ips_reset_timeout; scb 5863 drivers/scsi/ips.c scb->cdb[0] = IPS_CMD_CONFIG_SYNC; scb 5865 drivers/scsi/ips.c scb->cmd.config_sync.op_code = IPS_CMD_CONFIG_SYNC; scb 5866 drivers/scsi/ips.c scb->cmd.config_sync.command_id = IPS_COMMAND_ID(ha, scb); scb 5867 drivers/scsi/ips.c scb->cmd.config_sync.channel = 0; scb 5868 drivers/scsi/ips.c scb->cmd.config_sync.source_target = IPS_POCL; scb 5869 drivers/scsi/ips.c scb->cmd.config_sync.reserved = 0; scb 5870 drivers/scsi/ips.c scb->cmd.config_sync.reserved2 = 0; scb 5871 drivers/scsi/ips.c scb->cmd.config_sync.reserved3 = 0; scb 5875 drivers/scsi/ips.c ips_send_wait(ha, scb, ips_reset_timeout, intr)) == IPS_FAILURE) scb 5877 drivers/scsi/ips.c || ((scb->basic_status & IPS_GSC_STATUS_MASK) > 1)) scb 5881 drivers/scsi/ips.c ips_init_scb(ha, scb); scb 5883 drivers/scsi/ips.c scb->cdb[0] = IPS_CMD_ERROR_TABLE; scb 5884 drivers/scsi/ips.c scb->timeout = ips_reset_timeout; scb 5886 drivers/scsi/ips.c scb->cmd.unlock_stripe.op_code = IPS_CMD_ERROR_TABLE; scb 5887 drivers/scsi/ips.c scb->cmd.unlock_stripe.command_id = IPS_COMMAND_ID(ha, scb); scb 5888 drivers/scsi/ips.c scb->cmd.unlock_stripe.log_drv = 0; scb 5889 drivers/scsi/ips.c scb->cmd.unlock_stripe.control = IPS_CSL; scb 5890 drivers/scsi/ips.c scb->cmd.unlock_stripe.reserved = 0; scb 5891 drivers/scsi/ips.c scb->cmd.unlock_stripe.reserved2 = 0; scb 5892 drivers/scsi/ips.c scb->cmd.unlock_stripe.reserved3 = 0; scb 5896 drivers/scsi/ips.c ips_send_wait(ha, scb, ips_cmd_timeout, intr)) == IPS_FAILURE) scb 5898 drivers/scsi/ips.c || ((scb->basic_status & IPS_GSC_STATUS_MASK) > 1)) scb 5916 drivers/scsi/ips.c ips_scb_t *scb; scb 5920 drivers/scsi/ips.c scb = &ha->scbs[ha->max_cmds - 1]; scb 5922 drivers/scsi/ips.c ips_init_scb(ha, scb); scb 5924 drivers/scsi/ips.c scb->timeout = ips_cmd_timeout; scb 5925 drivers/scsi/ips.c scb->cdb[0] = IPS_CMD_FFDC; scb 5926 drivers/scsi/ips.c scb->cmd.ffdc.op_code = IPS_CMD_FFDC; scb 5927 drivers/scsi/ips.c scb->cmd.ffdc.command_id = IPS_COMMAND_ID(ha, scb); scb 5928 drivers/scsi/ips.c scb->cmd.ffdc.reset_count = ha->reset_count; scb 5929 drivers/scsi/ips.c scb->cmd.ffdc.reset_type = 0x80; scb 5932 drivers/scsi/ips.c ips_fix_ffdc_time(ha, scb, ha->last_ffdc); scb 5935 drivers/scsi/ips.c ips_send_wait(ha, scb, ips_cmd_timeout, intr); scb 5950 drivers/scsi/ips.c ips_scb_t *scb; scb 5956 drivers/scsi/ips.c scb = &ha->scbs[ha->max_cmds - 1]; scb 5958 drivers/scsi/ips.c ips_init_scb(ha, scb); scb 5960 drivers/scsi/ips.c scb->timeout = ips_cmd_timeout; scb 5961 drivers/scsi/ips.c scb->cdb[0] = IPS_CMD_FFDC; scb 5962 drivers/scsi/ips.c scb->cmd.ffdc.op_code = IPS_CMD_FFDC; scb 5963 drivers/scsi/ips.c scb->cmd.ffdc.command_id = IPS_COMMAND_ID(ha, scb); scb 5964 drivers/scsi/ips.c scb->cmd.ffdc.reset_count = 0; scb 5965 drivers/scsi/ips.c scb->cmd.ffdc.reset_type = 0; scb 5968 drivers/scsi/ips.c ips_fix_ffdc_time(ha, scb, ha->last_ffdc); scb 5971 drivers/scsi/ips.c ips_send_wait(ha, scb, ips_cmd_timeout, IPS_FFDC); scb 5983 drivers/scsi/ips.c ips_fix_ffdc_time(ips_ha_t * ha, ips_scb_t * scb, time64_t current_time) scb 5991 drivers/scsi/ips.c scb->cmd.ffdc.hour = tm.tm_hour; scb 5992 drivers/scsi/ips.c scb->cmd.ffdc.minute = tm.tm_min; scb 5993 drivers/scsi/ips.c scb->cmd.ffdc.second = tm.tm_sec; scb 5994 drivers/scsi/ips.c scb->cmd.ffdc.yearH = (tm.tm_year + 1900) / 100; scb 5995 drivers/scsi/ips.c scb->cmd.ffdc.yearL = tm.tm_year % 100; scb 5996 drivers/scsi/ips.c scb->cmd.ffdc.month = tm.tm_mon + 1; scb 5997 drivers/scsi/ips.c scb->cmd.ffdc.day = tm.tm_mday; scb 61 drivers/scsi/ips.h #define IPS_COMMAND_ID(ha, scb) (int) (scb - ha->scbs) scb 372 drivers/scsi/megaraid.c scb_t *scb; scb 391 drivers/scsi/megaraid.c scb = mega_build_cmd(adapter, scmd, &busy); scb 392 drivers/scsi/megaraid.c if (!scb) scb 395 drivers/scsi/megaraid.c scb->state |= SCB_PENDQ; scb 396 drivers/scsi/megaraid.c list_add_tail(&scb->list, &adapter->pending_list); scb 426 drivers/scsi/megaraid.c scb_t *scb; scb 431 drivers/scsi/megaraid.c scb = list_entry(head->next, scb_t, list); scb 435 drivers/scsi/megaraid.c scb->state = SCB_ACTIVE; scb 436 drivers/scsi/megaraid.c scb->cmd = cmd; scb 437 drivers/scsi/megaraid.c scb->dma_type = MEGA_DMA_TYPE_NONE; scb 439 drivers/scsi/megaraid.c return scb; scb 522 drivers/scsi/megaraid.c scb_t *scb; scb 640 drivers/scsi/megaraid.c if(!(scb = mega_allocate_scb(adapter, cmd))) { scb 645 drivers/scsi/megaraid.c scb->raw_mbox[0] = MEGA_CLUSTER_CMD; scb 646 drivers/scsi/megaraid.c scb->raw_mbox[2] = MEGA_RESERVATION_STATUS; scb 647 drivers/scsi/megaraid.c scb->raw_mbox[3] = ldrv_num; scb 649 drivers/scsi/megaraid.c scb->dma_direction = PCI_DMA_NONE; scb 651 drivers/scsi/megaraid.c return scb; scb 688 drivers/scsi/megaraid.c if(!(scb = mega_allocate_scb(adapter, cmd))) { scb 692 drivers/scsi/megaraid.c pthru = scb->pthru; scb 694 drivers/scsi/megaraid.c mbox = (mbox_t *)scb->raw_mbox; scb 695 drivers/scsi/megaraid.c memset(mbox, 0, sizeof(scb->raw_mbox)); scb 713 drivers/scsi/megaraid.c scb->dma_direction = PCI_DMA_FROMDEVICE; scb 715 drivers/scsi/megaraid.c pthru->numsgelements = mega_build_sglist(adapter, scb, scb 718 drivers/scsi/megaraid.c mbox->m_out.xferaddr = scb->pthru_dma_addr; scb 720 drivers/scsi/megaraid.c return scb; scb 730 drivers/scsi/megaraid.c if(!(scb = mega_allocate_scb(adapter, cmd))) { scb 734 drivers/scsi/megaraid.c mbox = (mbox_t *)scb->raw_mbox; scb 736 drivers/scsi/megaraid.c memset(mbox, 0, sizeof(scb->raw_mbox)); scb 843 drivers/scsi/megaraid.c scb->dma_direction = PCI_DMA_FROMDEVICE; scb 846 drivers/scsi/megaraid.c scb->dma_direction = PCI_DMA_TODEVICE; scb 850 drivers/scsi/megaraid.c mbox->m_out.numsgelements = mega_build_sglist(adapter, scb, scb 853 drivers/scsi/megaraid.c return scb; scb 870 drivers/scsi/megaraid.c if(!(scb = mega_allocate_scb(adapter, cmd))) { scb 875 drivers/scsi/megaraid.c scb->raw_mbox[0] = MEGA_CLUSTER_CMD; scb 876 drivers/scsi/megaraid.c scb->raw_mbox[2] = ( *cmd->cmnd == RESERVE ) ? scb 879 drivers/scsi/megaraid.c scb->raw_mbox[3] = ldrv_num; scb 881 drivers/scsi/megaraid.c scb->dma_direction = PCI_DMA_NONE; scb 883 drivers/scsi/megaraid.c return scb; scb 898 drivers/scsi/megaraid.c if(!(scb = mega_allocate_scb(adapter, cmd))) { scb 903 drivers/scsi/megaraid.c mbox = (mbox_t *)scb->raw_mbox; scb 904 drivers/scsi/megaraid.c memset(mbox, 0, sizeof(scb->raw_mbox)); scb 908 drivers/scsi/megaraid.c epthru = mega_prepare_extpassthru(adapter, scb, cmd, scb 913 drivers/scsi/megaraid.c mbox->m_out.xferaddr = scb->epthru_dma_addr; scb 918 drivers/scsi/megaraid.c pthru = mega_prepare_passthru(adapter, scb, cmd, scb 929 drivers/scsi/megaraid.c mbox->m_out.xferaddr = scb->pthru_dma_addr; scb 932 drivers/scsi/megaraid.c return scb; scb 949 drivers/scsi/megaraid.c mega_prepare_passthru(adapter_t *adapter, scb_t *scb, struct scsi_cmnd *cmd, scb 954 drivers/scsi/megaraid.c pthru = scb->pthru; scb 975 drivers/scsi/megaraid.c scb->dma_direction = PCI_DMA_BIDIRECTIONAL; scb 993 drivers/scsi/megaraid.c pthru->numsgelements = mega_build_sglist(adapter, scb, scb 1013 drivers/scsi/megaraid.c mega_prepare_extpassthru(adapter_t *adapter, scb_t *scb, scb 1019 drivers/scsi/megaraid.c epthru = scb->epthru; scb 1039 drivers/scsi/megaraid.c scb->dma_direction = PCI_DMA_BIDIRECTIONAL; scb 1056 drivers/scsi/megaraid.c epthru->numsgelements = mega_build_sglist(adapter, scb, scb 1067 drivers/scsi/megaraid.c scb_t *scb; scb 1073 drivers/scsi/megaraid.c scb = list_entry(pos, scb_t, list); scb 1075 drivers/scsi/megaraid.c if( !(scb->state & SCB_ISSUED) ) { scb 1077 drivers/scsi/megaraid.c if( issue_scb(adapter, scb) != 0 ) scb 1096 drivers/scsi/megaraid.c issue_scb(adapter_t *adapter, scb_t *scb) scb 1112 drivers/scsi/megaraid.c memcpy((char *)&mbox->m_out, (char *)scb->raw_mbox, scb 1115 drivers/scsi/megaraid.c mbox->m_out.cmdid = scb->idx; /* Set cmdid */ scb 1141 drivers/scsi/megaraid.c scb->state |= SCB_ISSUED; scb 1420 drivers/scsi/megaraid.c scb_t *scb; scb 1441 drivers/scsi/megaraid.c scb = &adapter->int_scb; scb 1443 drivers/scsi/megaraid.c list_del_init(&scb->list); scb 1444 drivers/scsi/megaraid.c scb->state = SCB_FREE; scb 1449 drivers/scsi/megaraid.c scb = &adapter->scb_list[cmdid]; scb 1454 drivers/scsi/megaraid.c if( !(scb->state & SCB_ISSUED) || scb->cmd == NULL ) { scb 1457 drivers/scsi/megaraid.c cmdid, scb->state, scb->cmd); scb 1465 drivers/scsi/megaraid.c if( scb->state & SCB_ABORT ) { scb 1469 drivers/scsi/megaraid.c scb->idx); scb 1471 drivers/scsi/megaraid.c scb->cmd->result = (DID_ABORT << 16); scb 1473 drivers/scsi/megaraid.c list_add_tail(SCSI_LIST(scb->cmd), scb 1476 drivers/scsi/megaraid.c mega_free_scb(adapter, scb); scb 1484 drivers/scsi/megaraid.c if( scb->state & SCB_RESET ) { scb 1488 drivers/scsi/megaraid.c scb->idx); scb 1490 drivers/scsi/megaraid.c scb->cmd->result = (DID_RESET << 16); scb 1492 drivers/scsi/megaraid.c list_add_tail(SCSI_LIST(scb->cmd), scb 1495 drivers/scsi/megaraid.c mega_free_scb (adapter, scb); scb 1500 drivers/scsi/megaraid.c cmd = scb->cmd; scb 1501 drivers/scsi/megaraid.c pthru = scb->pthru; scb 1502 drivers/scsi/megaraid.c epthru = scb->epthru; scb 1503 drivers/scsi/megaraid.c mbox = (mbox_t *)scb->raw_mbox; scb 1635 drivers/scsi/megaraid.c mega_free_scb(adapter, scb); scb 1671 drivers/scsi/megaraid.c mega_free_scb(adapter_t *adapter, scb_t *scb) scb 1673 drivers/scsi/megaraid.c switch( scb->dma_type ) { scb 1679 drivers/scsi/megaraid.c scsi_dma_unmap(scb->cmd); scb 1688 drivers/scsi/megaraid.c list_del_init(&scb->list); scb 1691 drivers/scsi/megaraid.c scb->state = SCB_FREE; scb 1692 drivers/scsi/megaraid.c scb->cmd = NULL; scb 1694 drivers/scsi/megaraid.c list_add(&scb->list, &adapter->free_list); scb 1718 drivers/scsi/megaraid.c mega_build_sglist(adapter_t *adapter, scb_t *scb, u32 *buf, u32 *len) scb 1725 drivers/scsi/megaraid.c cmd = scb->cmd; scb 1734 drivers/scsi/megaraid.c scb->dma_type = MEGA_SGLIST; scb 1742 drivers/scsi/megaraid.c scb->dma_h_bulkdata = sg_dma_address(sg); scb 1743 drivers/scsi/megaraid.c *buf = (u32)scb->dma_h_bulkdata; scb 1750 drivers/scsi/megaraid.c scb->sgl64[idx].address = sg_dma_address(sg); scb 1751 drivers/scsi/megaraid.c *len += scb->sgl64[idx].length = sg_dma_len(sg); scb 1753 drivers/scsi/megaraid.c scb->sgl[idx].address = sg_dma_address(sg); scb 1754 drivers/scsi/megaraid.c *len += scb->sgl[idx].length = sg_dma_len(sg); scb 1759 drivers/scsi/megaraid.c *buf = scb->sgl_dma_addr; scb 1809 drivers/scsi/megaraid.c scb_t *scb; scb 1814 drivers/scsi/megaraid.c scb = &adapter->scb_list[i]; scb 1816 drivers/scsi/megaraid.c if( scb->sgl64 ) { scb 1819 drivers/scsi/megaraid.c scb->sgl64, scb 1820 drivers/scsi/megaraid.c scb->sgl_dma_addr); scb 1822 drivers/scsi/megaraid.c scb->sgl64 = NULL; scb 1825 drivers/scsi/megaraid.c if( scb->pthru ) { scb 1827 drivers/scsi/megaraid.c scb->pthru, scb->pthru_dma_addr); scb 1829 drivers/scsi/megaraid.c scb->pthru = NULL; scb 1832 drivers/scsi/megaraid.c if( scb->epthru ) { scb 1835 drivers/scsi/megaraid.c scb->epthru, scb->epthru_dma_addr); scb 1837 drivers/scsi/megaraid.c scb->epthru = NULL; scb 1935 drivers/scsi/megaraid.c scb_t *scb; scb 1947 drivers/scsi/megaraid.c scb = list_entry(pos, scb_t, list); scb 1949 drivers/scsi/megaraid.c if (scb->cmd == cmd) { /* Found command */ scb 1951 drivers/scsi/megaraid.c scb->state |= aor; scb 1959 drivers/scsi/megaraid.c if( scb->state & SCB_ISSUED ) { scb 1964 drivers/scsi/megaraid.c scb->idx); scb 1977 drivers/scsi/megaraid.c scb->idx); scb 1979 drivers/scsi/megaraid.c mega_free_scb(adapter, scb); scb 2875 drivers/scsi/megaraid.c scb_t *scb; scb 2880 drivers/scsi/megaraid.c scb = &adapter->scb_list[i]; scb 2882 drivers/scsi/megaraid.c scb->sgl64 = NULL; scb 2883 drivers/scsi/megaraid.c scb->sgl = NULL; scb 2884 drivers/scsi/megaraid.c scb->pthru = NULL; scb 2885 drivers/scsi/megaraid.c scb->epthru = NULL; scb 2890 drivers/scsi/megaraid.c scb = &adapter->scb_list[i]; scb 2892 drivers/scsi/megaraid.c scb->idx = i; scb 2894 drivers/scsi/megaraid.c scb->sgl64 = pci_alloc_consistent(adapter->dev, scb 2896 drivers/scsi/megaraid.c &scb->sgl_dma_addr); scb 2898 drivers/scsi/megaraid.c scb->sgl = (mega_sglist *)scb->sgl64; scb 2900 drivers/scsi/megaraid.c if( !scb->sgl ) { scb 2906 drivers/scsi/megaraid.c scb->pthru = pci_alloc_consistent(adapter->dev, scb 2908 drivers/scsi/megaraid.c &scb->pthru_dma_addr); scb 2910 drivers/scsi/megaraid.c if( !scb->pthru ) { scb 2916 drivers/scsi/megaraid.c scb->epthru = pci_alloc_consistent(adapter->dev, scb 2918 drivers/scsi/megaraid.c &scb->epthru_dma_addr); scb 2920 drivers/scsi/megaraid.c if( !scb->epthru ) { scb 2928 drivers/scsi/megaraid.c scb->dma_type = MEGA_DMA_TYPE_NONE; scb 2935 drivers/scsi/megaraid.c scb->state = SCB_FREE; scb 2936 drivers/scsi/megaraid.c scb->cmd = NULL; scb 2937 drivers/scsi/megaraid.c list_add(&scb->list, &adapter->free_list); scb 3798 drivers/scsi/megaraid.c scb_t *scb; scb 3826 drivers/scsi/megaraid.c scb = list_entry(pos, scb_t, list); scb 3827 drivers/scsi/megaraid.c if (scb->pthru->logdrv < 0x80 ) scb 3828 drivers/scsi/megaraid.c scb->pthru->logdrv += 0x80; scb 4082 drivers/scsi/megaraid.c scb_t *scb; scb 4092 drivers/scsi/megaraid.c scb = &adapter->int_scb; scb 4093 drivers/scsi/megaraid.c memset(scb, 0, sizeof(scb_t)); scb 4095 drivers/scsi/megaraid.c scb->idx = CMDID_INT_CMDS; scb 4096 drivers/scsi/megaraid.c scb->state |= SCB_ACTIVE | SCB_PENDQ; scb 4098 drivers/scsi/megaraid.c memcpy(scb->raw_mbox, mc, sizeof(megacmd_t)); scb 4104 drivers/scsi/megaraid.c scb->pthru = pthru; scb 4107 drivers/scsi/megaraid.c list_add_tail(&scb->list, &adapter->pending_list); scb 960 drivers/scsi/megaraid.h static int mega_build_sglist (adapter_t *adapter, scb_t *scb, scb 951 drivers/scsi/megaraid/megaraid_mbox.c scb_t *scb; scb 1039 drivers/scsi/megaraid/megaraid_mbox.c scb = adapter->kscb_list + i; scb 1066 drivers/scsi/megaraid/megaraid_mbox.c scb->ccb = (caddr_t)ccb; scb 1067 drivers/scsi/megaraid/megaraid_mbox.c scb->gp = 0; scb 1069 drivers/scsi/megaraid/megaraid_mbox.c scb->sno = i; // command index scb 1071 drivers/scsi/megaraid/megaraid_mbox.c scb->scp = NULL; scb 1072 drivers/scsi/megaraid/megaraid_mbox.c scb->state = SCB_FREE; scb 1073 drivers/scsi/megaraid/megaraid_mbox.c scb->dma_direction = DMA_NONE; scb 1074 drivers/scsi/megaraid/megaraid_mbox.c scb->dma_type = MRAID_DMA_NONE; scb 1075 drivers/scsi/megaraid/megaraid_mbox.c scb->dev_channel = -1; scb 1076 drivers/scsi/megaraid/megaraid_mbox.c scb->dev_target = -1; scb 1079 drivers/scsi/megaraid/megaraid_mbox.c list_add_tail(&scb->list, &adapter->kscb_pool); scb 1275 drivers/scsi/megaraid/megaraid_mbox.c scb_t *scb = NULL; scb 1286 drivers/scsi/megaraid/megaraid_mbox.c scb = list_entry(head->next, scb_t, list); scb 1287 drivers/scsi/megaraid/megaraid_mbox.c list_del_init(&scb->list); scb 1291 drivers/scsi/megaraid/megaraid_mbox.c scb->state = SCB_ACTIVE; scb 1292 drivers/scsi/megaraid/megaraid_mbox.c scb->scp = scp; scb 1293 drivers/scsi/megaraid/megaraid_mbox.c scb->dma_type = MRAID_DMA_NONE; scb 1295 drivers/scsi/megaraid/megaraid_mbox.c return scb; scb 1310 drivers/scsi/megaraid/megaraid_mbox.c megaraid_dealloc_scb(adapter_t *adapter, scb_t *scb) scb 1315 drivers/scsi/megaraid/megaraid_mbox.c scb->state = SCB_FREE; scb 1316 drivers/scsi/megaraid/megaraid_mbox.c scb->scp = NULL; scb 1319 drivers/scsi/megaraid/megaraid_mbox.c list_add(&scb->list, &adapter->kscb_pool); scb 1335 drivers/scsi/megaraid/megaraid_mbox.c megaraid_mbox_mksgl(adapter_t *adapter, scb_t *scb) scb 1344 drivers/scsi/megaraid/megaraid_mbox.c scp = scb->scp; scb 1345 drivers/scsi/megaraid/megaraid_mbox.c ccb = (mbox_ccb_t *)scb->ccb; scb 1354 drivers/scsi/megaraid/megaraid_mbox.c scb->dma_type = MRAID_DMA_WSG; scb 1374 drivers/scsi/megaraid/megaraid_mbox.c mbox_post_cmd(adapter_t *adapter, scb_t *scb) scb 1384 drivers/scsi/megaraid/megaraid_mbox.c ccb = (mbox_ccb_t *)scb->ccb; scb 1412 drivers/scsi/megaraid/megaraid_mbox.c mbox->cmdid = scb->sno; scb 1440 drivers/scsi/megaraid/megaraid_mbox.c scb_t *scb; scb 1456 drivers/scsi/megaraid/megaraid_mbox.c scb = megaraid_mbox_build_cmd(adapter, scp, &if_busy); scb 1457 drivers/scsi/megaraid/megaraid_mbox.c if (!scb) { // command already completed scb 1462 drivers/scsi/megaraid/megaraid_mbox.c megaraid_mbox_runpendq(adapter, scb); scb 1490 drivers/scsi/megaraid/megaraid_mbox.c scb_t *scb; scb 1517 drivers/scsi/megaraid/megaraid_mbox.c if (!(scb = megaraid_alloc_scb(adapter, scp))) { scb 1523 drivers/scsi/megaraid/megaraid_mbox.c scb->dma_direction = scp->sc_data_direction; scb 1524 drivers/scsi/megaraid/megaraid_mbox.c scb->dev_channel = 0xFF; scb 1525 drivers/scsi/megaraid/megaraid_mbox.c scb->dev_target = target; scb 1526 drivers/scsi/megaraid/megaraid_mbox.c ccb = (mbox_ccb_t *)scb->ccb; scb 1536 drivers/scsi/megaraid/megaraid_mbox.c return scb; scb 1602 drivers/scsi/megaraid/megaraid_mbox.c if (!(scb = megaraid_alloc_scb(adapter, scp))) { scb 1608 drivers/scsi/megaraid/megaraid_mbox.c ccb = (mbox_ccb_t *)scb->ccb; scb 1609 drivers/scsi/megaraid/megaraid_mbox.c scb->dev_channel = 0xFF; scb 1610 drivers/scsi/megaraid/megaraid_mbox.c scb->dev_target = target; scb 1624 drivers/scsi/megaraid/megaraid_mbox.c scb->dma_direction = scp->sc_data_direction; scb 1629 drivers/scsi/megaraid/megaraid_mbox.c scb); scb 1635 drivers/scsi/megaraid/megaraid_mbox.c return scb; scb 1647 drivers/scsi/megaraid/megaraid_mbox.c if (!(scb = megaraid_alloc_scb(adapter, scp))) { scb 1652 drivers/scsi/megaraid/megaraid_mbox.c ccb = (mbox_ccb_t *)scb->ccb; scb 1653 drivers/scsi/megaraid/megaraid_mbox.c scb->dev_channel = 0xFF; scb 1654 drivers/scsi/megaraid/megaraid_mbox.c scb->dev_target = target; scb 1713 drivers/scsi/megaraid/megaraid_mbox.c megaraid_dealloc_scb(adapter, scb); scb 1719 drivers/scsi/megaraid/megaraid_mbox.c scb->dma_direction = scp->sc_data_direction; scb 1724 drivers/scsi/megaraid/megaraid_mbox.c scb); scb 1728 drivers/scsi/megaraid/megaraid_mbox.c return scb; scb 1743 drivers/scsi/megaraid/megaraid_mbox.c if (!(scb = megaraid_alloc_scb(adapter, scp))) { scb 1749 drivers/scsi/megaraid/megaraid_mbox.c ccb = (mbox_ccb_t *)scb->ccb; scb 1750 drivers/scsi/megaraid/megaraid_mbox.c scb->dev_channel = 0xFF; scb 1751 drivers/scsi/megaraid/megaraid_mbox.c scb->dev_target = target; scb 1757 drivers/scsi/megaraid/megaraid_mbox.c scb->dma_direction = scp->sc_data_direction; scb 1759 drivers/scsi/megaraid/megaraid_mbox.c return scb; scb 1811 drivers/scsi/megaraid/megaraid_mbox.c if (!(scb = megaraid_alloc_scb(adapter, scp))) { scb 1817 drivers/scsi/megaraid/megaraid_mbox.c ccb = (mbox_ccb_t *)scb->ccb; scb 1818 drivers/scsi/megaraid/megaraid_mbox.c scb->dev_channel = channel; scb 1819 drivers/scsi/megaraid/megaraid_mbox.c scb->dev_target = target; scb 1820 drivers/scsi/megaraid/megaraid_mbox.c scb->dma_direction = scp->sc_data_direction; scb 1828 drivers/scsi/megaraid/megaraid_mbox.c megaraid_mbox_prepare_epthru(adapter, scb, scp); scb 1837 drivers/scsi/megaraid/megaraid_mbox.c megaraid_mbox_prepare_pthru(adapter, scb, scp); scb 1843 drivers/scsi/megaraid/megaraid_mbox.c return scb; scb 1866 drivers/scsi/megaraid/megaraid_mbox.c scb_t *scb; scb 1886 drivers/scsi/megaraid/megaraid_mbox.c scb = list_entry(adapter->pend_list.next, scb_t, list); scb 1892 drivers/scsi/megaraid/megaraid_mbox.c list_del_init(&scb->list); scb 1900 drivers/scsi/megaraid/megaraid_mbox.c scb->state = SCB_ISSUED; scb 1902 drivers/scsi/megaraid/megaraid_mbox.c if (mbox_post_cmd(adapter, scb) != 0) { scb 1906 drivers/scsi/megaraid/megaraid_mbox.c scb->state = SCB_PENDQ; scb 1908 drivers/scsi/megaraid/megaraid_mbox.c list_add(&scb->list, &adapter->pend_list); scb 1935 drivers/scsi/megaraid/megaraid_mbox.c megaraid_mbox_prepare_pthru(adapter_t *adapter, scb_t *scb, scb 1943 drivers/scsi/megaraid/megaraid_mbox.c ccb = (mbox_ccb_t *)scb->ccb; scb 1945 drivers/scsi/megaraid/megaraid_mbox.c channel = scb->dev_channel; scb 1946 drivers/scsi/megaraid/megaraid_mbox.c target = scb->dev_target; scb 1963 drivers/scsi/megaraid/megaraid_mbox.c pthru->numsge = megaraid_mbox_mksgl(adapter, scb); scb 1984 drivers/scsi/megaraid/megaraid_mbox.c megaraid_mbox_prepare_epthru(adapter_t *adapter, scb_t *scb, scb 1992 drivers/scsi/megaraid/megaraid_mbox.c ccb = (mbox_ccb_t *)scb->ccb; scb 1994 drivers/scsi/megaraid/megaraid_mbox.c channel = scb->dev_channel; scb 1995 drivers/scsi/megaraid/megaraid_mbox.c target = scb->dev_target; scb 2012 drivers/scsi/megaraid/megaraid_mbox.c epthru->numsge = megaraid_mbox_mksgl(adapter, scb); scb 2037 drivers/scsi/megaraid/megaraid_mbox.c scb_t *scb; scb 2101 drivers/scsi/megaraid/megaraid_mbox.c scb = adapter->uscb_list + (completed[i] - scb 2106 drivers/scsi/megaraid/megaraid_mbox.c scb = adapter->kscb_list + completed[i]; scb 2109 drivers/scsi/megaraid/megaraid_mbox.c scb->status = mbox->status; scb 2110 drivers/scsi/megaraid/megaraid_mbox.c list_add_tail(&scb->list, &clist); scb 2177 drivers/scsi/megaraid/megaraid_mbox.c scb_t *scb; scb 2207 drivers/scsi/megaraid/megaraid_mbox.c list_for_each_entry_safe(scb, tmp, &clist, list) { scb 2209 drivers/scsi/megaraid/megaraid_mbox.c status = scb->status; scb 2210 drivers/scsi/megaraid/megaraid_mbox.c scp = scb->scp; scb 2211 drivers/scsi/megaraid/megaraid_mbox.c ccb = (mbox_ccb_t *)scb->ccb; scb 2217 drivers/scsi/megaraid/megaraid_mbox.c if (scb->state != SCB_ISSUED) { scb 2220 drivers/scsi/megaraid/megaraid_mbox.c scb->sno, scb->state, scp)); scb 2226 drivers/scsi/megaraid/megaraid_mbox.c if (scb->sno >= MBOX_MAX_SCSI_CMDS) { scb 2227 drivers/scsi/megaraid/megaraid_mbox.c scb->state = SCB_FREE; scb 2228 drivers/scsi/megaraid/megaraid_mbox.c scb->status = status; scb 2231 drivers/scsi/megaraid/megaraid_mbox.c list_del_init(&scb->list); scb 2233 drivers/scsi/megaraid/megaraid_mbox.c kioc = (uioc_t *)scb->gp; scb 2236 drivers/scsi/megaraid/megaraid_mbox.c megaraid_mbox_mm_done(adapter, scb); scb 2242 drivers/scsi/megaraid/megaraid_mbox.c if (scb->state & SCB_ABORT) { scb 2245 drivers/scsi/megaraid/megaraid_mbox.c scb->sno)); scb 2258 drivers/scsi/megaraid/megaraid_mbox.c && IS_RAID_CH(raid_dev, scb->dev_channel)) { scb 2271 drivers/scsi/megaraid/megaraid_mbox.c pdev_index = (scb->dev_channel * 16) + scb 2272 drivers/scsi/megaraid/megaraid_mbox.c scb->dev_target; scb 2357 drivers/scsi/megaraid/megaraid_mbox.c megaraid_mbox_display_scb(adapter, scb); scb 2363 drivers/scsi/megaraid/megaraid_mbox.c list_del_init(&scb->list); scb 2366 drivers/scsi/megaraid/megaraid_mbox.c megaraid_dealloc_scb(adapter, scb); scb 2388 drivers/scsi/megaraid/megaraid_mbox.c scb_t *scb; scb 2414 drivers/scsi/megaraid/megaraid_mbox.c scb = NULL; scb 2416 drivers/scsi/megaraid/megaraid_mbox.c list_for_each_entry_safe(scb, tmp, &adapter->completed_list, list) { scb 2418 drivers/scsi/megaraid/megaraid_mbox.c if (scb->scp == scp) { // Found command scb 2420 drivers/scsi/megaraid/megaraid_mbox.c list_del_init(&scb->list); // from completed list scb 2424 drivers/scsi/megaraid/megaraid_mbox.c scb->sno, scb->dev_channel, scb->dev_target)); scb 2429 drivers/scsi/megaraid/megaraid_mbox.c megaraid_dealloc_scb(adapter, scb); scb 2444 drivers/scsi/megaraid/megaraid_mbox.c list_for_each_entry_safe(scb, tmp, &adapter->pend_list, list) { scb 2446 drivers/scsi/megaraid/megaraid_mbox.c if (scb->scp == scp) { // Found command scb 2448 drivers/scsi/megaraid/megaraid_mbox.c list_del_init(&scb->list); // from pending list scb 2450 drivers/scsi/megaraid/megaraid_mbox.c ASSERT(!(scb->state & SCB_ISSUED)); scb 2454 drivers/scsi/megaraid/megaraid_mbox.c scb->dev_channel, scb->dev_target)); scb 2459 drivers/scsi/megaraid/megaraid_mbox.c megaraid_dealloc_scb(adapter, scb); scb 2477 drivers/scsi/megaraid/megaraid_mbox.c scb = adapter->kscb_list + i; scb 2479 drivers/scsi/megaraid/megaraid_mbox.c if (scb->scp == scp) { scb 2483 drivers/scsi/megaraid/megaraid_mbox.c if (!(scb->state & SCB_ISSUED)) { scb 2486 drivers/scsi/megaraid/megaraid_mbox.c scb->sno, scb->dev_channel, scb->dev_target)); scb 2492 drivers/scsi/megaraid/megaraid_mbox.c scb->sno, scb->dev_channel, scb->dev_target)); scb 2525 drivers/scsi/megaraid/megaraid_mbox.c scb_t *scb; scb 2551 drivers/scsi/megaraid/megaraid_mbox.c list_for_each_entry_safe(scb, tmp, &adapter->pend_list, list) { scb 2552 drivers/scsi/megaraid/megaraid_mbox.c list_del_init(&scb->list); // from pending list scb 2554 drivers/scsi/megaraid/megaraid_mbox.c if (scb->sno >= MBOX_MAX_SCSI_CMDS) { scb 2557 drivers/scsi/megaraid/megaraid_mbox.c scb->sno, scb->dev_channel, scb->dev_target)); scb 2559 drivers/scsi/megaraid/megaraid_mbox.c scb->status = -1; scb 2561 drivers/scsi/megaraid/megaraid_mbox.c kioc = (uioc_t *)scb->gp; scb 2564 drivers/scsi/megaraid/megaraid_mbox.c megaraid_mbox_mm_done(adapter, scb); scb 2566 drivers/scsi/megaraid/megaraid_mbox.c if (scb->scp == scp) { // Found command scb 2569 drivers/scsi/megaraid/megaraid_mbox.c scb->sno, scb->dev_channel, scb->dev_target)); scb 2573 drivers/scsi/megaraid/megaraid_mbox.c scb->sno, scb->dev_channel, scb->dev_target)); scb 2576 drivers/scsi/megaraid/megaraid_mbox.c scb->scp->result = (DID_RESET << 16); scb 2577 drivers/scsi/megaraid/megaraid_mbox.c scb->scp->scsi_done(scb->scp); scb 2579 drivers/scsi/megaraid/megaraid_mbox.c megaraid_dealloc_scb(adapter, scb); scb 3313 drivers/scsi/megaraid/megaraid_mbox.c megaraid_mbox_display_scb(adapter_t *adapter, scb_t *scb) scb 3322 drivers/scsi/megaraid/megaraid_mbox.c ccb = (mbox_ccb_t *)scb->ccb; scb 3323 drivers/scsi/megaraid/megaraid_mbox.c scp = scb->scp; scb 3329 drivers/scsi/megaraid/megaraid_mbox.c "megaraid mailbox: status:%#x cmd:%#x id:%#x ", scb->status, scb 3330 drivers/scsi/megaraid/megaraid_mbox.c mbox->cmd, scb->sno)); scb 3407 drivers/scsi/megaraid/megaraid_mbox.c scb_t *scb; scb 3437 drivers/scsi/megaraid/megaraid_mbox.c scb = adapter->uscb_list + i; scb 3440 drivers/scsi/megaraid/megaraid_mbox.c scb->ccb = (caddr_t)ccb; scb 3445 drivers/scsi/megaraid/megaraid_mbox.c scb->gp = 0; scb 3449 drivers/scsi/megaraid/megaraid_mbox.c scb->sno = i + MBOX_MAX_SCSI_CMDS; scb 3451 drivers/scsi/megaraid/megaraid_mbox.c scb->scp = NULL; scb 3452 drivers/scsi/megaraid/megaraid_mbox.c scb->state = SCB_FREE; scb 3453 drivers/scsi/megaraid/megaraid_mbox.c scb->dma_direction = DMA_NONE; scb 3454 drivers/scsi/megaraid/megaraid_mbox.c scb->dma_type = MRAID_DMA_NONE; scb 3455 drivers/scsi/megaraid/megaraid_mbox.c scb->dev_channel = -1; scb 3456 drivers/scsi/megaraid/megaraid_mbox.c scb->dev_target = -1; scb 3459 drivers/scsi/megaraid/megaraid_mbox.c list_add_tail(&scb->list, &adapter->uscb_pool); scb 3567 drivers/scsi/megaraid/megaraid_mbox.c scb_t *scb; scb 3584 drivers/scsi/megaraid/megaraid_mbox.c scb = list_entry(head->next, scb_t, list); scb 3585 drivers/scsi/megaraid/megaraid_mbox.c list_del_init(&scb->list); scb 3589 drivers/scsi/megaraid/megaraid_mbox.c scb->state = SCB_ACTIVE; scb 3590 drivers/scsi/megaraid/megaraid_mbox.c scb->dma_type = MRAID_DMA_NONE; scb 3591 drivers/scsi/megaraid/megaraid_mbox.c scb->dma_direction = DMA_NONE; scb 3593 drivers/scsi/megaraid/megaraid_mbox.c ccb = (mbox_ccb_t *)scb->ccb; scb 3599 drivers/scsi/megaraid/megaraid_mbox.c scb->gp = (unsigned long)kioc; scb 3613 drivers/scsi/megaraid/megaraid_mbox.c scb->status = -1; scb 3615 drivers/scsi/megaraid/megaraid_mbox.c megaraid_mbox_mm_done(adapter, scb); scb 3620 drivers/scsi/megaraid/megaraid_mbox.c INIT_LIST_HEAD(&scb->list); scb 3622 drivers/scsi/megaraid/megaraid_mbox.c scb->state = SCB_ISSUED; scb 3623 drivers/scsi/megaraid/megaraid_mbox.c if (mbox_post_cmd(adapter, scb) != 0) { scb 3630 drivers/scsi/megaraid/megaraid_mbox.c scb->status = -1; scb 3632 drivers/scsi/megaraid/megaraid_mbox.c megaraid_mbox_mm_done(adapter, scb); scb 3641 drivers/scsi/megaraid/megaraid_mbox.c megaraid_mbox_runpendq(adapter, scb); scb 3686 drivers/scsi/megaraid/megaraid_mbox.c megaraid_mbox_mm_done(adapter_t *adapter, scb_t *scb) scb 3693 drivers/scsi/megaraid/megaraid_mbox.c kioc = (uioc_t *)scb->gp; scb 3695 drivers/scsi/megaraid/megaraid_mbox.c mbox64->mbox32.status = scb->status; scb 3700 drivers/scsi/megaraid/megaraid_mbox.c scb->state = SCB_FREE; scb 3701 drivers/scsi/megaraid/megaraid_mbox.c scb->scp = NULL; scb 3705 drivers/scsi/megaraid/megaraid_mbox.c list_add(&scb->list, &adapter->uscb_pool); scb 189 drivers/scsi/wd719x.c static void wd719x_finish_cmd(struct wd719x_scb *scb, int result) scb 191 drivers/scsi/wd719x.c struct scsi_cmnd *cmd = scb->cmd; scb 194 drivers/scsi/wd719x.c list_del(&scb->list); scb 196 drivers/scsi/wd719x.c dma_unmap_single(&wd->pdev->dev, scb->phys, scb 211 drivers/scsi/wd719x.c struct wd719x_scb *scb = scsi_cmd_priv(cmd); scb 214 drivers/scsi/wd719x.c scb->cmd = cmd; scb 216 drivers/scsi/wd719x.c scb->CDB_tag = 0; /* Tagged queueing not supported yet */ scb 217 drivers/scsi/wd719x.c scb->devid = cmd->device->id; scb 218 drivers/scsi/wd719x.c scb->lun = cmd->device->lun; scb 221 drivers/scsi/wd719x.c memcpy(scb->CDB, cmd->cmnd, cmd->cmd_len); scb 224 drivers/scsi/wd719x.c scb->phys = dma_map_single(&wd->pdev->dev, scb, sizeof(*scb), scb 227 drivers/scsi/wd719x.c if (dma_mapping_error(&wd->pdev->dev, scb->phys)) scb 231 drivers/scsi/wd719x.c scb->sense_buf_length = SCSI_SENSE_BUFFERSIZE; scb 236 drivers/scsi/wd719x.c scb->sense_buf = cpu_to_le32(cmd->SCp.dma_handle); scb 239 drivers/scsi/wd719x.c scb->SCB_options |= WD719X_SCB_FLAGS_AUTO_REQUEST_SENSE; scb 243 drivers/scsi/wd719x.c scb->SCB_options |= WD719X_SCB_FLAGS_CHECK_DIRECTION scb 246 drivers/scsi/wd719x.c scb->SCB_options |= WD719X_SCB_FLAGS_CHECK_DIRECTION; scb 257 drivers/scsi/wd719x.c scb->data_length = cpu_to_le32(count_sg * scb 259 drivers/scsi/wd719x.c scb->data_p = cpu_to_le32(scb->phys + scb 263 drivers/scsi/wd719x.c scb->sg_list[i].ptr = cpu_to_le32(sg_dma_address(sg)); scb 264 drivers/scsi/wd719x.c scb->sg_list[i].length = cpu_to_le32(sg_dma_len(sg)); scb 266 drivers/scsi/wd719x.c scb->SCB_options |= WD719X_SCB_FLAGS_DO_SCATTER_GATHER; scb 268 drivers/scsi/wd719x.c scb->data_length = 0; scb 269 drivers/scsi/wd719x.c scb->data_p = 0; scb 280 drivers/scsi/wd719x.c list_add(&scb->list, &wd->active_scbs); scb 283 drivers/scsi/wd719x.c wd719x_writel(wd, WD719X_AMR_SCB_IN, scb->phys); scb 294 drivers/scsi/wd719x.c dma_unmap_single(&wd->pdev->dev, scb->phys, sizeof(*scb), scb 467 drivers/scsi/wd719x.c struct wd719x_scb *scb = scsi_cmd_priv(cmd); scb 476 drivers/scsi/wd719x.c cmd->device->lun, cmd->tag, scb->phys, 0); scb 477 drivers/scsi/wd719x.c wd719x_finish_cmd(scb, DID_ABORT); scb 490 drivers/scsi/wd719x.c struct wd719x_scb *scb, *tmp; scb 499 drivers/scsi/wd719x.c list_for_each_entry_safe(scb, tmp, &wd->active_scbs, list) { scb 501 drivers/scsi/wd719x.c scb->cmd->device->id == device) scb 502 drivers/scsi/wd719x.c wd719x_finish_cmd(scb, DID_RESET); scb 524 drivers/scsi/wd719x.c struct wd719x_scb *scb, *tmp; scb 537 drivers/scsi/wd719x.c list_for_each_entry_safe(scb, tmp, &wd->active_scbs, list) scb 538 drivers/scsi/wd719x.c wd719x_finish_cmd(scb, DID_RESET); scb 563 drivers/scsi/wd719x.c struct wd719x_scb *scb) scb 631 drivers/scsi/wd719x.c scb->cmd->device->id); scb 653 drivers/scsi/wd719x.c wd719x_finish_cmd(scb, result); scb 685 drivers/scsi/wd719x.c struct wd719x_scb *scb; scb 686 drivers/scsi/wd719x.c list_for_each_entry(scb, &wd->active_scbs, list) scb 687 drivers/scsi/wd719x.c if (SCB_out == scb->phys) scb 689 drivers/scsi/wd719x.c if (SCB_out == scb->phys) scb 690 drivers/scsi/wd719x.c wd719x_interrupt_SCB(wd, regs, scb); scb 644 fs/afs/dir.c struct afs_status_cb *scb; scb 713 fs/afs/dir.c scb = &cookie->statuses[i]; scb 723 fs/afs/dir.c scb->cb_break = afs_calc_vnode_cb_break(vnode); scb 775 fs/afs/dir.c scb = &cookie->statuses[0]; scb 779 fs/afs/dir.c scb, scb 795 fs/afs/dir.c scb = &cookie->statuses[0]; scb 796 fs/afs/dir.c if (scb->status.abort_code != 0) scb 797 fs/afs/dir.c inode = ERR_PTR(afs_abort_to_error(scb->status.abort_code)); scb 800 fs/afs/dir.c struct afs_status_cb *scb = &cookie->statuses[i]; scb 802 fs/afs/dir.c if (!scb->have_status && !scb->have_error) scb 812 fs/afs/dir.c scb->cb_break, NULL, scb); scb 816 fs/afs/dir.c if (scb->status.abort_code != 0) scb 820 fs/afs/dir.c ti = afs_iget(dir->i_sb, key, &iget_data, scb, cbi, dvnode); scb 825 fs/afs/dir.c scb); scb 1261 fs/afs/dir.c struct afs_status_cb *scb) scb 1265 fs/afs/dir.c (void *)(unsigned long)scb->status.data_version; scb 1274 fs/afs/dir.c struct afs_status_cb *scb; scb 1287 fs/afs/dir.c scb = kcalloc(2, sizeof(struct afs_status_cb), GFP_KERNEL); scb 1288 fs/afs/dir.c if (!scb) scb 1305 fs/afs/dir.c &scb[0], &iget_data.fid, &scb[1]); scb 1310 fs/afs/dir.c &data_version, &scb[0]); scb 1311 fs/afs/dir.c afs_update_dentry_version(&fc, dentry, &scb[0]); scb 1312 fs/afs/dir.c afs_vnode_new_inode(&fc, dentry, &iget_data, &scb[1]); scb 1330 fs/afs/dir.c kfree(scb); scb 1337 fs/afs/dir.c kfree(scb); scb 1364 fs/afs/dir.c struct afs_status_cb *scb; scb 1374 fs/afs/dir.c scb = kzalloc(sizeof(struct afs_status_cb), GFP_KERNEL); scb 1375 fs/afs/dir.c if (!scb) scb 1404 fs/afs/dir.c afs_fs_remove(&fc, vnode, dentry->d_name.name, true, scb); scb 1408 fs/afs/dir.c &data_version, scb); scb 1409 fs/afs/dir.c afs_update_dentry_version(&fc, dentry, scb); scb 1427 fs/afs/dir.c kfree(scb); scb 1482 fs/afs/dir.c struct afs_status_cb *scb; scb 1496 fs/afs/dir.c scb = kcalloc(2, sizeof(struct afs_status_cb), GFP_KERNEL); scb 1497 fs/afs/dir.c if (!scb) scb 1538 fs/afs/dir.c &scb[0], &scb[1]); scb 1545 fs/afs/dir.c afs_fs_remove(&fc, vnode, dentry->d_name.name, false, &scb[0]); scb 1549 fs/afs/dir.c &data_version, &scb[0]); scb 1551 fs/afs/dir.c &data_version_2, &scb[1]); scb 1552 fs/afs/dir.c afs_update_dentry_version(&fc, dentry, &scb[0]); scb 1554 fs/afs/dir.c if (ret == 0 && !(scb[1].have_status || scb[1].have_error)) scb 1573 fs/afs/dir.c kfree(scb); scb 1587 fs/afs/dir.c struct afs_status_cb *scb; scb 1609 fs/afs/dir.c scb = kcalloc(2, sizeof(struct afs_status_cb), GFP_KERNEL); scb 1610 fs/afs/dir.c if (!scb) scb 1621 fs/afs/dir.c &scb[0], &iget_data.fid, &scb[1]); scb 1626 fs/afs/dir.c &data_version, &scb[0]); scb 1627 fs/afs/dir.c afs_update_dentry_version(&fc, dentry, &scb[0]); scb 1628 fs/afs/dir.c afs_vnode_new_inode(&fc, dentry, &iget_data, &scb[1]); scb 1643 fs/afs/dir.c kfree(scb); scb 1649 fs/afs/dir.c kfree(scb); scb 1665 fs/afs/dir.c struct afs_status_cb *scb; scb 1682 fs/afs/dir.c scb = kcalloc(2, sizeof(struct afs_status_cb), GFP_KERNEL); scb 1683 fs/afs/dir.c if (!scb) scb 1705 fs/afs/dir.c &scb[0], &scb[1]); scb 1709 fs/afs/dir.c &data_version, &scb[0]); scb 1711 fs/afs/dir.c NULL, &scb[1]); scb 1713 fs/afs/dir.c afs_update_dentry_version(&fc, dentry, &scb[0]); scb 1732 fs/afs/dir.c kfree(scb); scb 1739 fs/afs/dir.c kfree(scb); scb 1754 fs/afs/dir.c struct afs_status_cb *scb; scb 1773 fs/afs/dir.c scb = kcalloc(2, sizeof(struct afs_status_cb), GFP_KERNEL); scb 1774 fs/afs/dir.c if (!scb) scb 1791 fs/afs/dir.c &scb[0], &iget_data.fid, &scb[1]); scb 1796 fs/afs/dir.c &data_version, &scb[0]); scb 1797 fs/afs/dir.c afs_update_dentry_version(&fc, dentry, &scb[0]); scb 1798 fs/afs/dir.c afs_vnode_new_inode(&fc, dentry, &iget_data, &scb[1]); scb 1814 fs/afs/dir.c kfree(scb); scb 1821 fs/afs/dir.c kfree(scb); scb 1836 fs/afs/dir.c struct afs_status_cb *scb; scb 1864 fs/afs/dir.c scb = kcalloc(2, sizeof(struct afs_status_cb), GFP_KERNEL); scb 1865 fs/afs/dir.c if (!scb) scb 1938 fs/afs/dir.c &scb[0], &scb[1]); scb 1942 fs/afs/dir.c &orig_data_version, &scb[0]); scb 1945 fs/afs/dir.c &new_data_version, &scb[1]); scb 1990 fs/afs/dir.c afs_update_dentry_version(&fc, old_dentry, &scb[1]); scb 1991 fs/afs/dir.c afs_update_dentry_version(&fc, new_dentry, &scb[1]); scb 2007 fs/afs/dir.c kfree(scb); scb 23 fs/afs/dir_silly.c struct afs_status_cb *scb; scb 29 fs/afs/dir_silly.c scb = kzalloc(sizeof(struct afs_status_cb), GFP_KERNEL); scb 30 fs/afs/dir_silly.c if (!scb) scb 41 fs/afs/dir_silly.c scb, scb); scb 45 fs/afs/dir_silly.c &dir_data_version, scb); scb 69 fs/afs/dir_silly.c kfree(scb); scb 149 fs/afs/dir_silly.c struct afs_status_cb *scb; scb 154 fs/afs/dir_silly.c scb = kcalloc(2, sizeof(struct afs_status_cb), GFP_KERNEL); scb 155 fs/afs/dir_silly.c if (!scb) scb 168 fs/afs/dir_silly.c &scb[0], &scb[1]); scb 175 fs/afs/dir_silly.c afs_fs_remove(&fc, vnode, dentry->d_name.name, false, &scb[0]); scb 179 fs/afs/dir_silly.c &dir_data_version, &scb[0]); scb 198 fs/afs/dir_silly.c kfree(scb); scb 229 fs/afs/file.c struct afs_status_cb *scb; scb 239 fs/afs/file.c scb = kzalloc(sizeof(struct afs_status_cb), GFP_KERNEL); scb 240 fs/afs/file.c if (!scb) scb 249 fs/afs/file.c afs_fs_fetch_data(&fc, scb, desc); scb 254 fs/afs/file.c &data_version, scb); scb 264 fs/afs/file.c kfree(scb); scb 181 fs/afs/flock.c struct afs_status_cb *scb; scb 192 fs/afs/flock.c scb = kzalloc(sizeof(struct afs_status_cb), GFP_KERNEL); scb 193 fs/afs/flock.c if (!scb) scb 200 fs/afs/flock.c afs_fs_set_lock(&fc, type, scb); scb 204 fs/afs/flock.c afs_vnode_commit_status(&fc, vnode, fc.cb_break, NULL, scb); scb 208 fs/afs/flock.c kfree(scb); scb 218 fs/afs/flock.c struct afs_status_cb *scb; scb 229 fs/afs/flock.c scb = kzalloc(sizeof(struct afs_status_cb), GFP_KERNEL); scb 230 fs/afs/flock.c if (!scb) scb 237 fs/afs/flock.c afs_fs_extend_lock(&fc, scb); scb 241 fs/afs/flock.c afs_vnode_commit_status(&fc, vnode, fc.cb_break, NULL, scb); scb 245 fs/afs/flock.c kfree(scb); scb 255 fs/afs/flock.c struct afs_status_cb *scb; scb 266 fs/afs/flock.c scb = kzalloc(sizeof(struct afs_status_cb), GFP_KERNEL); scb 267 fs/afs/flock.c if (!scb) scb 274 fs/afs/flock.c afs_fs_release_lock(&fc, scb); scb 278 fs/afs/flock.c afs_vnode_commit_status(&fc, vnode, fc.cb_break, NULL, scb); scb 282 fs/afs/flock.c kfree(scb); scb 61 fs/afs/fsclient.c struct afs_status_cb *scb) scb 64 fs/afs/fsclient.c struct afs_file_status *status = &scb->status; scb 81 fs/afs/fsclient.c scb->have_error = true; scb 91 fs/afs/fsclient.c scb->have_error = true; scb 127 fs/afs/fsclient.c scb->have_status = true; scb 147 fs/afs/fsclient.c struct afs_status_cb *scb) scb 149 fs/afs/fsclient.c struct afs_callback *cb = &scb->callback; scb 155 fs/afs/fsclient.c scb->have_cb = true; scb 280 fs/afs/fsclient.c int afs_fs_fetch_file_status(struct afs_fs_cursor *fc, struct afs_status_cb *scb, scb 289 fs/afs/fsclient.c return yfs_fs_fetch_file_status(fc, scb, volsync); scb 302 fs/afs/fsclient.c call->out_scb = scb; scb 481 fs/afs/fsclient.c struct afs_status_cb *scb, scb 496 fs/afs/fsclient.c call->out_scb = scb; scb 523 fs/afs/fsclient.c struct afs_status_cb *scb, scb 532 fs/afs/fsclient.c return yfs_fs_fetch_data(fc, scb, req); scb 537 fs/afs/fsclient.c return afs_fs_fetch_data64(fc, scb, req); scb 546 fs/afs/fsclient.c call->out_scb = scb; scb 1142 fs/afs/fsclient.c struct afs_status_cb *scb) scb 1165 fs/afs/fsclient.c call->out_scb = scb; scb 1200 fs/afs/fsclient.c struct afs_status_cb *scb) scb 1209 fs/afs/fsclient.c return yfs_fs_store_data(fc, mapping, first, last, offset, to, scb); scb 1230 fs/afs/fsclient.c size, pos, i_size, scb); scb 1245 fs/afs/fsclient.c call->out_scb = scb; scb 1326 fs/afs/fsclient.c struct afs_status_cb *scb) scb 1345 fs/afs/fsclient.c call->out_scb = scb; scb 1375 fs/afs/fsclient.c struct afs_status_cb *scb) scb 1387 fs/afs/fsclient.c return afs_fs_setattr_size64(fc, attr, scb); scb 1396 fs/afs/fsclient.c call->out_scb = scb; scb 1423 fs/afs/fsclient.c struct afs_status_cb *scb) scb 1431 fs/afs/fsclient.c return yfs_fs_setattr(fc, attr, scb); scb 1434 fs/afs/fsclient.c return afs_fs_setattr_size(fc, attr, scb); scb 1446 fs/afs/fsclient.c call->out_scb = scb; scb 1697 fs/afs/fsclient.c struct afs_status_cb *scb) scb 1705 fs/afs/fsclient.c return yfs_fs_set_lock(fc, type, scb); scb 1715 fs/afs/fsclient.c call->out_scb = scb; scb 1735 fs/afs/fsclient.c int afs_fs_extend_lock(struct afs_fs_cursor *fc, struct afs_status_cb *scb) scb 1743 fs/afs/fsclient.c return yfs_fs_extend_lock(fc, scb); scb 1753 fs/afs/fsclient.c call->out_scb = scb; scb 1772 fs/afs/fsclient.c int afs_fs_release_lock(struct afs_fs_cursor *fc, struct afs_status_cb *scb) scb 1780 fs/afs/fsclient.c return yfs_fs_release_lock(fc, scb); scb 1790 fs/afs/fsclient.c call->out_scb = scb; scb 1985 fs/afs/fsclient.c struct afs_status_cb *scb, scb 1992 fs/afs/fsclient.c return yfs_fs_fetch_status(fc, net, fid, scb, volsync); scb 2005 fs/afs/fsclient.c call->out_scb = scb; scb 2027 fs/afs/fsclient.c struct afs_status_cb *scb; scb 2066 fs/afs/fsclient.c scb = &call->out_scb[call->count]; scb 2067 fs/afs/fsclient.c ret = xdr_decode_AFSFetchStatus(&bp, call, scb); scb 2106 fs/afs/fsclient.c scb = &call->out_scb[call->count]; scb 2107 fs/afs/fsclient.c xdr_decode_AFSCallBack(&bp, call, scb); scb 2283 fs/afs/fsclient.c struct afs_status_cb *scb) scb 2301 fs/afs/fsclient.c call->out_scb = scb; scb 2354 fs/afs/fsclient.c struct afs_status_cb *scb) scb 2374 fs/afs/fsclient.c call->out_scb = scb; scb 74 fs/afs/inode.c struct afs_status_cb *scb) scb 77 fs/afs/inode.c struct afs_file_status *status = &scb->status; scb 142 fs/afs/inode.c if (!scb->have_cb) { scb 147 fs/afs/inode.c vnode->cb_expires_at = scb->callback.expires_at; scb 167 fs/afs/inode.c struct afs_status_cb *scb, scb 170 fs/afs/inode.c struct afs_file_status *status = &scb->status; scb 249 fs/afs/inode.c struct afs_status_cb *scb, scb 253 fs/afs/inode.c struct afs_callback *cb = &scb->callback; scb 275 fs/afs/inode.c struct afs_status_cb *scb) scb 282 fs/afs/inode.c if (scb->have_error) { scb 283 fs/afs/inode.c if (scb->status.abort_code == VNOVNODE) { scb 289 fs/afs/inode.c if (scb->have_status) scb 290 fs/afs/inode.c afs_apply_status(fc, vnode, scb, expected_version); scb 291 fs/afs/inode.c if (scb->have_cb) scb 292 fs/afs/inode.c afs_apply_callback(fc, vnode, scb, cb_break); scb 297 fs/afs/inode.c if (fc->ac.error == 0 && scb->have_status) scb 298 fs/afs/inode.c afs_cache_permit(vnode, fc->key, cb_break, scb); scb 307 fs/afs/inode.c struct afs_status_cb *scb; scb 316 fs/afs/inode.c scb = kzalloc(sizeof(struct afs_status_cb), GFP_KERNEL); scb 317 fs/afs/inode.c if (!scb) scb 326 fs/afs/inode.c afs_fs_fetch_file_status(&fc, scb, NULL); scb 333 fs/afs/inode.c NULL, scb); scb 336 fs/afs/inode.c afs_cache_permit(vnode, key, fc.cb_break, scb); scb 339 fs/afs/inode.c &data_version, scb); scb 346 fs/afs/inode.c *_caller_access = scb->status.caller_access; scb 347 fs/afs/inode.c kfree(scb); scb 507 fs/afs/inode.c struct afs_status_cb *scb, scb 540 fs/afs/inode.c if (!scb) { scb 547 fs/afs/inode.c scb); scb 818 fs/afs/inode.c struct afs_status_cb *scb; scb 833 fs/afs/inode.c scb = kzalloc(sizeof(struct afs_status_cb), GFP_KERNEL); scb 834 fs/afs/inode.c if (!scb) scb 860 fs/afs/inode.c afs_fs_setattr(&fc, attr, scb); scb 865 fs/afs/inode.c &data_version, scb); scb 873 fs/afs/inode.c kfree(scb); scb 144 fs/afs/security.c unsigned int cb_break, struct afs_status_cb *scb) scb 147 fs/afs/security.c afs_access_t caller_access = scb->status.caller_access; scb 360 fs/afs/write.c struct afs_status_cb *scb; scb 372 fs/afs/write.c scb = kzalloc(sizeof(struct afs_status_cb), GFP_NOFS); scb 373 fs/afs/write.c if (!scb) scb 394 fs/afs/write.c kfree(scb); scb 410 fs/afs/write.c afs_fs_store_data(&fc, mapping, first, last, offset, to, scb); scb 415 fs/afs/write.c &data_version, scb); scb 442 fs/afs/write.c kfree(scb); scb 46 fs/afs/xattr.c struct afs_status_cb *scb; scb 52 fs/afs/xattr.c scb = kzalloc(sizeof(struct afs_status_cb), GFP_NOFS); scb 53 fs/afs/xattr.c if (!scb) scb 68 fs/afs/xattr.c acl = afs_fs_fetch_acl(&fc, scb); scb 73 fs/afs/xattr.c &data_version, scb); scb 90 fs/afs/xattr.c kfree(scb); scb 104 fs/afs/xattr.c struct afs_status_cb *scb; scb 113 fs/afs/xattr.c scb = kzalloc(sizeof(struct afs_status_cb), GFP_NOFS); scb 114 fs/afs/xattr.c if (!scb) scb 136 fs/afs/xattr.c afs_fs_store_acl(&fc, acl, scb); scb 141 fs/afs/xattr.c &data_version, scb); scb 149 fs/afs/xattr.c kfree(scb); scb 169 fs/afs/xattr.c struct afs_status_cb *scb; scb 196 fs/afs/xattr.c scb = kzalloc(sizeof(struct afs_status_cb), GFP_NOFS); scb 197 fs/afs/xattr.c if (!scb) scb 212 fs/afs/xattr.c yfs_fs_fetch_opaque_acl(&fc, yacl, scb); scb 217 fs/afs/xattr.c &data_version, scb); scb 258 fs/afs/xattr.c kfree(scb); scb 274 fs/afs/xattr.c struct afs_status_cb *scb; scb 284 fs/afs/xattr.c scb = kzalloc(sizeof(struct afs_status_cb), GFP_NOFS); scb 285 fs/afs/xattr.c if (!scb) scb 307 fs/afs/xattr.c yfs_fs_store_opaque_acl2(&fc, acl, scb); scb 312 fs/afs/xattr.c &data_version, scb); scb 320 fs/afs/xattr.c kfree(scb); scb 184 fs/afs/yfsclient.c struct afs_status_cb *scb) scb 187 fs/afs/yfsclient.c struct afs_file_status *status = &scb->status; scb 195 fs/afs/yfsclient.c scb->have_error = true; scb 223 fs/afs/yfsclient.c scb->have_status = true; scb 241 fs/afs/yfsclient.c struct afs_status_cb *scb) scb 244 fs/afs/yfsclient.c struct afs_callback *cb = &scb->callback; scb 250 fs/afs/yfsclient.c scb->have_cb = true; scb 397 fs/afs/yfsclient.c int yfs_fs_fetch_file_status(struct afs_fs_cursor *fc, struct afs_status_cb *scb, scb 420 fs/afs/yfsclient.c call->out_scb = scb; scb 587 fs/afs/yfsclient.c int yfs_fs_fetch_data(struct afs_fs_cursor *fc, struct afs_status_cb *scb, scb 610 fs/afs/yfsclient.c call->out_scb = scb; scb 1250 fs/afs/yfsclient.c struct afs_status_cb *scb) scb 1293 fs/afs/yfsclient.c call->out_scb = scb; scb 1335 fs/afs/yfsclient.c struct afs_status_cb *scb) scb 1356 fs/afs/yfsclient.c call->out_scb = scb; scb 1381 fs/afs/yfsclient.c struct afs_status_cb *scb) scb 1389 fs/afs/yfsclient.c return yfs_fs_setattr_size(fc, attr, scb); scb 1404 fs/afs/yfsclient.c call->out_scb = scb; scb 1637 fs/afs/yfsclient.c struct afs_status_cb *scb) scb 1657 fs/afs/yfsclient.c call->out_scb = scb; scb 1677 fs/afs/yfsclient.c int yfs_fs_extend_lock(struct afs_fs_cursor *fc, struct afs_status_cb *scb) scb 1696 fs/afs/yfsclient.c call->out_scb = scb; scb 1715 fs/afs/yfsclient.c int yfs_fs_release_lock(struct afs_fs_cursor *fc, struct afs_status_cb *scb) scb 1734 fs/afs/yfsclient.c call->out_scb = scb; scb 1766 fs/afs/yfsclient.c struct afs_status_cb *scb, scb 1787 fs/afs/yfsclient.c call->out_scb = scb; scb 1809 fs/afs/yfsclient.c struct afs_status_cb *scb; scb 1848 fs/afs/yfsclient.c scb = &call->out_scb[call->count]; scb 1849 fs/afs/yfsclient.c ret = xdr_decode_YFSFetchStatus(&bp, call, scb); scb 1888 fs/afs/yfsclient.c scb = &call->out_scb[call->count]; scb 1889 fs/afs/yfsclient.c xdr_decode_YFSCallBack(&bp, call, scb); scb 2111 fs/afs/yfsclient.c struct afs_status_cb *scb) scb 2134 fs/afs/yfsclient.c call->out_scb = scb; scb 2164 fs/afs/yfsclient.c struct afs_status_cb *scb) scb 2188 fs/afs/yfsclient.c call->out_scb = scb; scb 136 net/bluetooth/cmtp/capi.c struct cmtp_scb *scb = (void *) skb->cb; scb 140 net/bluetooth/cmtp/capi.c scb->id = -1; scb 141 net/bluetooth/cmtp/capi.c scb->data = (CAPIMSG_COMMAND(skb->data) == CAPI_DATA_B3); scb 224 net/bluetooth/cmtp/core.c struct cmtp_scb *scb = (void *) skb->cb; scb 235 net/bluetooth/cmtp/core.c if (scb->id < 0) { scb 236 net/bluetooth/cmtp/core.c scb->id = cmtp_alloc_block_id(session); scb 237 net/bluetooth/cmtp/core.c if (scb->id < 0) { scb 246 net/bluetooth/cmtp/core.c | ((scb->id << 2) & 0x3c) scb 252 net/bluetooth/cmtp/core.c | ((scb->id << 2) & 0x3c) scb 264 net/bluetooth/cmtp/core.c cmtp_free_block_id(session, scb->id); scb 265 net/bluetooth/cmtp/core.c if (scb->data) { scb 3092 net/ipv4/tcp_input.c struct tcp_skb_cb *scb = TCP_SKB_CB(skb); scb 3093 net/ipv4/tcp_input.c const u32 start_seq = scb->seq; scb 3094 net/ipv4/tcp_input.c u8 sacked = scb->sacked; scb 3100 net/ipv4/tcp_input.c if (after(scb->end_seq, tp->snd_una)) { scb 3102 net/ipv4/tcp_input.c !after(tp->snd_una, scb->seq)) scb 3126 net/ipv4/tcp_input.c if (!after(scb->end_seq, tp->high_seq)) scb 3135 net/ipv4/tcp_input.c tcp_rack_advance(tp, sacked, scb->end_seq, scb 3152 net/ipv4/tcp_input.c if (likely(!(scb->tcp_flags & TCPHDR_SYN))) { scb 82 net/ipv4/tcp_rate.c struct tcp_skb_cb *scb = TCP_SKB_CB(skb); scb 84 net/ipv4/tcp_rate.c if (!scb->tx.delivered_mstamp) scb 88 net/ipv4/tcp_rate.c after(scb->tx.delivered, rs->prior_delivered)) { scb 89 net/ipv4/tcp_rate.c rs->prior_delivered = scb->tx.delivered; scb 90 net/ipv4/tcp_rate.c rs->prior_mstamp = scb->tx.delivered_mstamp; scb 91 net/ipv4/tcp_rate.c rs->is_app_limited = scb->tx.is_app_limited; scb 92 net/ipv4/tcp_rate.c rs->is_retrans = scb->sacked & TCPCB_RETRANS; scb 98 net/ipv4/tcp_rate.c scb->tx.first_tx_mstamp); scb 105 net/ipv4/tcp_rate.c if (scb->sacked & TCPCB_SACKED_ACKED) scb 106 net/ipv4/tcp_rate.c scb->tx.delivered_mstamp = 0; scb 86 net/ipv4/tcp_recovery.c struct tcp_skb_cb *scb = TCP_SKB_CB(skb); scb 90 net/ipv4/tcp_recovery.c if ((scb->sacked & TCPCB_LOST) && scb 91 net/ipv4/tcp_recovery.c !(scb->sacked & TCPCB_SACKED_RETRANS)) scb 96 net/ipv4/tcp_recovery.c tp->rack.end_seq, scb->end_seq)) scb 107 sound/pci/cs46xx/cs46xx_lib.h void cs46xx_dsp_proc_free_scb_desc (struct dsp_scb_descriptor * scb); scb 109 sound/pci/cs46xx/cs46xx_lib.h struct dsp_scb_descriptor * scb); scb 111 sound/pci/cs46xx/cs46xx_lib.h #define cs46xx_dsp_proc_free_scb_desc(scb) scb 112 sound/pci/cs46xx/cs46xx_lib.h #define cs46xx_dsp_proc_register_scb_desc(chip, scb) scb 128 sound/pci/cs46xx/cs46xx_lib.h struct dsp_scb_descriptor * scb); scb 1861 sound/pci/cs46xx/dsp_spos.c struct dsp_scb_descriptor * scb; scb 1866 sound/pci/cs46xx/dsp_spos.c scb = ins->master_mix_scb->sub_list_ptr; scb 1867 sound/pci/cs46xx/dsp_spos.c while (scb != ins->the_null_scb) { scb 1868 sound/pci/cs46xx/dsp_spos.c cs46xx_dsp_scb_set_volume (chip,scb,left,right); scb 1869 sound/pci/cs46xx/dsp_spos.c scb = scb->next_scb_ptr; scb 1873 sound/pci/cs46xx/dsp_spos.c scb = ins->rear_mix_scb->sub_list_ptr; scb 1874 sound/pci/cs46xx/dsp_spos.c while (scb != ins->the_null_scb) { scb 1875 sound/pci/cs46xx/dsp_spos.c cs46xx_dsp_scb_set_volume (chip,scb,left,right); scb 1876 sound/pci/cs46xx/dsp_spos.c scb = scb->next_scb_ptr; scb 193 sound/pci/cs46xx/dsp_spos.h struct dsp_scb_descriptor * scb) scb 197 sound/pci/cs46xx/dsp_spos.h (scb->address + SCBsubListPtr) << 2, scb 198 sound/pci/cs46xx/dsp_spos.h (scb->sub_list_ptr->address << 0x10) | scb 199 sound/pci/cs46xx/dsp_spos.h (scb->next_scb_ptr->address)); scb 200 sound/pci/cs46xx/dsp_spos.h scb->updated = 1; scb 204 sound/pci/cs46xx/dsp_spos.h struct dsp_scb_descriptor * scb, scb 209 sound/pci/cs46xx/dsp_spos.h snd_cs46xx_poke(chip, (scb->address + SCBVolumeCtrl) << 2, val); scb 210 sound/pci/cs46xx/dsp_spos.h snd_cs46xx_poke(chip, (scb->address + SCBVolumeCtrl + 1) << 2, val); scb 211 sound/pci/cs46xx/dsp_spos.h scb->volume_set = 1; scb 212 sound/pci/cs46xx/dsp_spos.h scb->volume[0] = left; scb 213 sound/pci/cs46xx/dsp_spos.h scb->volume[1] = right; scb 61 sound/pci/cs46xx/dsp_spos_scb_lib.c struct dsp_scb_descriptor * scb = scb_info->scb_desc; scb 67 sound/pci/cs46xx/dsp_spos_scb_lib.c snd_iprintf(buffer,"%04x %s:\n",scb->address,scb->scb_name); scb 74 sound/pci/cs46xx/dsp_spos_scb_lib.c snd_iprintf(buffer,"%08x ",readl(dst + (scb->address + j) * sizeof(u32))); scb 79 sound/pci/cs46xx/dsp_spos_scb_lib.c if (scb->parent_scb_ptr != NULL) { scb 81 sound/pci/cs46xx/dsp_spos_scb_lib.c scb->parent_scb_ptr->scb_name, scb 82 sound/pci/cs46xx/dsp_spos_scb_lib.c scb->parent_scb_ptr->address); scb 86 sound/pci/cs46xx/dsp_spos_scb_lib.c scb->sub_list_ptr->scb_name, scb 87 sound/pci/cs46xx/dsp_spos_scb_lib.c scb->sub_list_ptr->address, scb 88 sound/pci/cs46xx/dsp_spos_scb_lib.c scb->next_scb_ptr->scb_name, scb 89 sound/pci/cs46xx/dsp_spos_scb_lib.c scb->next_scb_ptr->address, scb 90 sound/pci/cs46xx/dsp_spos_scb_lib.c scb->task_entry->symbol_name, scb 91 sound/pci/cs46xx/dsp_spos_scb_lib.c scb->task_entry->address); scb 93 sound/pci/cs46xx/dsp_spos_scb_lib.c snd_iprintf(buffer,"index [%d] ref_count [%d]\n",scb->index,scb->ref_count); scb 98 sound/pci/cs46xx/dsp_spos_scb_lib.c static void _dsp_unlink_scb (struct snd_cs46xx *chip, struct dsp_scb_descriptor * scb) scb 102 sound/pci/cs46xx/dsp_spos_scb_lib.c if ( scb->parent_scb_ptr ) { scb 104 sound/pci/cs46xx/dsp_spos_scb_lib.c if (snd_BUG_ON(scb->parent_scb_ptr->sub_list_ptr != scb && scb 105 sound/pci/cs46xx/dsp_spos_scb_lib.c scb->parent_scb_ptr->next_scb_ptr != scb)) scb 108 sound/pci/cs46xx/dsp_spos_scb_lib.c if (scb->parent_scb_ptr->sub_list_ptr == scb) { scb 110 sound/pci/cs46xx/dsp_spos_scb_lib.c if (scb->next_scb_ptr == ins->the_null_scb) { scb 112 sound/pci/cs46xx/dsp_spos_scb_lib.c scb->parent_scb_ptr->sub_list_ptr = scb->sub_list_ptr; scb 114 sound/pci/cs46xx/dsp_spos_scb_lib.c if (scb->sub_list_ptr != ins->the_null_scb) { scb 115 sound/pci/cs46xx/dsp_spos_scb_lib.c scb->sub_list_ptr->parent_scb_ptr = scb->parent_scb_ptr; scb 117 sound/pci/cs46xx/dsp_spos_scb_lib.c scb->sub_list_ptr = ins->the_null_scb; scb 120 sound/pci/cs46xx/dsp_spos_scb_lib.c scb->parent_scb_ptr->sub_list_ptr = scb->next_scb_ptr; scb 122 sound/pci/cs46xx/dsp_spos_scb_lib.c if (scb->next_scb_ptr != ins->the_null_scb) { scb 124 sound/pci/cs46xx/dsp_spos_scb_lib.c scb->next_scb_ptr->parent_scb_ptr = scb->parent_scb_ptr; scb 126 sound/pci/cs46xx/dsp_spos_scb_lib.c scb->next_scb_ptr = ins->the_null_scb; scb 129 sound/pci/cs46xx/dsp_spos_scb_lib.c scb->parent_scb_ptr->next_scb_ptr = scb->next_scb_ptr; scb 131 sound/pci/cs46xx/dsp_spos_scb_lib.c if (scb->next_scb_ptr != ins->the_null_scb) { scb 133 sound/pci/cs46xx/dsp_spos_scb_lib.c scb->next_scb_ptr->parent_scb_ptr = scb->parent_scb_ptr; scb 135 sound/pci/cs46xx/dsp_spos_scb_lib.c scb->next_scb_ptr = ins->the_null_scb; scb 139 sound/pci/cs46xx/dsp_spos_scb_lib.c cs46xx_dsp_spos_update_scb(chip,scb->parent_scb_ptr); scb 142 sound/pci/cs46xx/dsp_spos_scb_lib.c cs46xx_dsp_spos_update_scb(chip,scb); scb 144 sound/pci/cs46xx/dsp_spos_scb_lib.c scb->parent_scb_ptr = NULL; scb 160 sound/pci/cs46xx/dsp_spos_scb_lib.c void cs46xx_dsp_remove_scb (struct snd_cs46xx *chip, struct dsp_scb_descriptor * scb) scb 166 sound/pci/cs46xx/dsp_spos_scb_lib.c if (snd_BUG_ON(scb->index < 0 || scb 167 sound/pci/cs46xx/dsp_spos_scb_lib.c scb->index >= ins->nscb || scb 168 sound/pci/cs46xx/dsp_spos_scb_lib.c (ins->scbs + scb->index) != scb)) scb 174 sound/pci/cs46xx/dsp_spos_scb_lib.c if (snd_BUG_ON(scb->sub_list_ptr != ins->the_null_scb || scb 175 sound/pci/cs46xx/dsp_spos_scb_lib.c scb->next_scb_ptr != ins->the_null_scb)) scb 180 sound/pci/cs46xx/dsp_spos_scb_lib.c _dsp_unlink_scb (chip,scb); scb 183 sound/pci/cs46xx/dsp_spos_scb_lib.c cs46xx_dsp_proc_free_scb_desc(scb); scb 184 sound/pci/cs46xx/dsp_spos_scb_lib.c if (snd_BUG_ON(!scb->scb_symbol)) scb 186 sound/pci/cs46xx/dsp_spos_scb_lib.c remove_symbol (chip,scb->scb_symbol); scb 188 sound/pci/cs46xx/dsp_spos_scb_lib.c ins->scbs[scb->index].deleted = 1; scb 190 sound/pci/cs46xx/dsp_spos_scb_lib.c kfree(ins->scbs[scb->index].data); scb 191 sound/pci/cs46xx/dsp_spos_scb_lib.c ins->scbs[scb->index].data = NULL; scb 194 sound/pci/cs46xx/dsp_spos_scb_lib.c if (scb->index < ins->scb_highest_frag_index) scb 195 sound/pci/cs46xx/dsp_spos_scb_lib.c ins->scb_highest_frag_index = scb->index; scb 197 sound/pci/cs46xx/dsp_spos_scb_lib.c if (scb->index == ins->nscb - 1) { scb 207 sound/pci/cs46xx/dsp_spos_scb_lib.c for(i = scb->index + 1;i < ins->nscb; ++i) { scb 215 sound/pci/cs46xx/dsp_spos_scb_lib.c void cs46xx_dsp_proc_free_scb_desc (struct dsp_scb_descriptor * scb) scb 217 sound/pci/cs46xx/dsp_spos_scb_lib.c if (scb->proc_info) { scb 218 sound/pci/cs46xx/dsp_spos_scb_lib.c struct proc_scb_info * scb_info = scb->proc_info->private_data; scb 223 sound/pci/cs46xx/dsp_spos_scb_lib.c scb->scb_name); scb 225 sound/pci/cs46xx/dsp_spos_scb_lib.c snd_info_free_entry(scb->proc_info); scb 226 sound/pci/cs46xx/dsp_spos_scb_lib.c scb->proc_info = NULL; scb 233 sound/pci/cs46xx/dsp_spos_scb_lib.c struct dsp_scb_descriptor * scb) scb 241 sound/pci/cs46xx/dsp_spos_scb_lib.c scb->proc_info == NULL) { scb 243 sound/pci/cs46xx/dsp_spos_scb_lib.c entry = snd_info_create_card_entry(ins->snd_card, scb->scb_name, scb 254 sound/pci/cs46xx/dsp_spos_scb_lib.c scb_info->scb_desc = scb; scb 259 sound/pci/cs46xx/dsp_spos_scb_lib.c scb->proc_info = entry; scb 271 sound/pci/cs46xx/dsp_spos_scb_lib.c struct dsp_scb_descriptor * scb; scb 287 sound/pci/cs46xx/dsp_spos_scb_lib.c scb = cs46xx_dsp_create_scb(chip,name,scb_data,dest); scb 290 sound/pci/cs46xx/dsp_spos_scb_lib.c scb->sub_list_ptr = ins->the_null_scb; scb 291 sound/pci/cs46xx/dsp_spos_scb_lib.c scb->next_scb_ptr = ins->the_null_scb; scb 293 sound/pci/cs46xx/dsp_spos_scb_lib.c scb->parent_scb_ptr = parent_scb; scb 294 sound/pci/cs46xx/dsp_spos_scb_lib.c scb->task_entry = task_entry; scb 298 sound/pci/cs46xx/dsp_spos_scb_lib.c if (scb->parent_scb_ptr) { scb 302 sound/pci/cs46xx/dsp_spos_scb_lib.c scb->parent_scb_ptr->scb_name); scb 305 sound/pci/cs46xx/dsp_spos_scb_lib.c scb->parent_scb_ptr->next_scb_ptr->scb_name); scb 308 sound/pci/cs46xx/dsp_spos_scb_lib.c scb->parent_scb_ptr->sub_list_ptr->scb_name); scb 312 sound/pci/cs46xx/dsp_spos_scb_lib.c if (snd_BUG_ON(scb->parent_scb_ptr->next_scb_ptr != scb 316 sound/pci/cs46xx/dsp_spos_scb_lib.c scb->parent_scb_ptr->next_scb_ptr = scb; scb 319 sound/pci/cs46xx/dsp_spos_scb_lib.c if (snd_BUG_ON(scb->parent_scb_ptr->sub_list_ptr != scb 323 sound/pci/cs46xx/dsp_spos_scb_lib.c scb->parent_scb_ptr->sub_list_ptr = scb; scb 331 sound/pci/cs46xx/dsp_spos_scb_lib.c cs46xx_dsp_spos_update_scb(chip,scb->parent_scb_ptr); scb 337 sound/pci/cs46xx/dsp_spos_scb_lib.c cs46xx_dsp_proc_register_scb_desc (chip,scb); scb 339 sound/pci/cs46xx/dsp_spos_scb_lib.c return scb; scb 366 sound/pci/cs46xx/dsp_spos_scb_lib.c struct dsp_scb_descriptor * scb; scb 389 sound/pci/cs46xx/dsp_spos_scb_lib.c scb = cs46xx_dsp_create_generic_scb(chip,"TimingMasterSCBInst",(u32 *)&timing_master_scb, scb 393 sound/pci/cs46xx/dsp_spos_scb_lib.c return scb; scb 403 sound/pci/cs46xx/dsp_spos_scb_lib.c struct dsp_scb_descriptor * scb; scb 428 sound/pci/cs46xx/dsp_spos_scb_lib.c scb = cs46xx_dsp_create_generic_scb(chip,codec_name,(u32 *)&codec_out_scb, scb 432 sound/pci/cs46xx/dsp_spos_scb_lib.c return scb; scb 442 sound/pci/cs46xx/dsp_spos_scb_lib.c struct dsp_scb_descriptor * scb; scb 473 sound/pci/cs46xx/dsp_spos_scb_lib.c scb = cs46xx_dsp_create_generic_scb(chip,codec_name,(u32 *)&codec_input_scb, scb 476 sound/pci/cs46xx/dsp_spos_scb_lib.c return scb; scb 488 sound/pci/cs46xx/dsp_spos_scb_lib.c struct dsp_scb_descriptor * scb; scb 575 sound/pci/cs46xx/dsp_spos_scb_lib.c scb = _dsp_create_generic_scb(chip,scb_name,(u32 *)&pcm_reader_scb, scb 579 sound/pci/cs46xx/dsp_spos_scb_lib.c return scb; scb 595 sound/pci/cs46xx/dsp_spos_scb_lib.c struct dsp_scb_descriptor * scb; scb 674 sound/pci/cs46xx/dsp_spos_scb_lib.c scb = cs46xx_dsp_create_generic_scb(chip,scb_name,(u32 *)&src_task_scb, scb 678 sound/pci/cs46xx/dsp_spos_scb_lib.c scb = _dsp_create_generic_scb(chip,scb_name,(u32 *)&src_task_scb, scb 686 sound/pci/cs46xx/dsp_spos_scb_lib.c return scb; scb 695 sound/pci/cs46xx/dsp_spos_scb_lib.c struct dsp_scb_descriptor * scb; scb 732 sound/pci/cs46xx/dsp_spos_scb_lib.c scb = cs46xx_dsp_create_generic_scb(chip,scb_name,(u32 *)&filter_scb, scb 736 sound/pci/cs46xx/dsp_spos_scb_lib.c return scb; scb 746 sound/pci/cs46xx/dsp_spos_scb_lib.c struct dsp_scb_descriptor * scb; scb 773 sound/pci/cs46xx/dsp_spos_scb_lib.c scb = cs46xx_dsp_create_generic_scb(chip,scb_name,(u32 *)&master_mix_scb, scb 776 sound/pci/cs46xx/dsp_spos_scb_lib.c return scb; scb 786 sound/pci/cs46xx/dsp_spos_scb_lib.c struct dsp_scb_descriptor * scb; scb 825 sound/pci/cs46xx/dsp_spos_scb_lib.c scb = cs46xx_dsp_create_generic_scb(chip,scb_name,(u32 *)&mix2_ostream_scb, scb 830 sound/pci/cs46xx/dsp_spos_scb_lib.c return scb; scb 843 sound/pci/cs46xx/dsp_spos_scb_lib.c struct dsp_scb_descriptor * scb; scb 870 sound/pci/cs46xx/dsp_spos_scb_lib.c scb = cs46xx_dsp_create_generic_scb(chip,scb_name,(u32 *)&vari_decimate_scb, scb 874 sound/pci/cs46xx/dsp_spos_scb_lib.c return scb; scb 885 sound/pci/cs46xx/dsp_spos_scb_lib.c struct dsp_scb_descriptor * scb; scb 914 sound/pci/cs46xx/dsp_spos_scb_lib.c scb = cs46xx_dsp_create_generic_scb(chip,scb_name,(u32 *)&pcm_serial_input_scb, scb 917 sound/pci/cs46xx/dsp_spos_scb_lib.c return scb; scb 929 sound/pci/cs46xx/dsp_spos_scb_lib.c struct dsp_scb_descriptor * scb; scb 960 sound/pci/cs46xx/dsp_spos_scb_lib.c scb = cs46xx_dsp_create_generic_scb(chip,scb_name,(u32 *)&asynch_fg_tx_scb, scb 964 sound/pci/cs46xx/dsp_spos_scb_lib.c return scb; scb 976 sound/pci/cs46xx/dsp_spos_scb_lib.c struct dsp_scb_descriptor * scb; scb 1009 sound/pci/cs46xx/dsp_spos_scb_lib.c scb = cs46xx_dsp_create_generic_scb(chip,scb_name,(u32 *)&asynch_fg_rx_scb, scb 1013 sound/pci/cs46xx/dsp_spos_scb_lib.c return scb; scb 1026 sound/pci/cs46xx/dsp_spos_scb_lib.c struct dsp_scb_descriptor * scb; scb 1052 sound/pci/cs46xx/dsp_spos_scb_lib.c scb = cs46xx_dsp_create_generic_scb(chip,scb_name,(u32 *)&output_snoop_scb, scb 1055 sound/pci/cs46xx/dsp_spos_scb_lib.c return scb; scb 1065 sound/pci/cs46xx/dsp_spos_scb_lib.c struct dsp_scb_descriptor * scb; scb 1089 sound/pci/cs46xx/dsp_spos_scb_lib.c scb = cs46xx_dsp_create_generic_scb(chip,scb_name,(u32 *)&spio_write_scb, scb 1093 sound/pci/cs46xx/dsp_spos_scb_lib.c return scb; scb 1103 sound/pci/cs46xx/dsp_spos_scb_lib.c struct dsp_scb_descriptor * scb; scb 1125 sound/pci/cs46xx/dsp_spos_scb_lib.c scb = cs46xx_dsp_create_generic_scb(chip,scb_name,(u32 *)&magic_snoop_scb, scb 1129 sound/pci/cs46xx/dsp_spos_scb_lib.c return scb; scb 1136 sound/pci/cs46xx/dsp_spos_scb_lib.c struct dsp_scb_descriptor * scb = from; scb 1138 sound/pci/cs46xx/dsp_spos_scb_lib.c while (scb->next_scb_ptr != ins->the_null_scb) { scb 1139 sound/pci/cs46xx/dsp_spos_scb_lib.c if (snd_BUG_ON(!scb->next_scb_ptr)) scb 1142 sound/pci/cs46xx/dsp_spos_scb_lib.c scb = scb->next_scb_ptr; scb 1145 sound/pci/cs46xx/dsp_spos_scb_lib.c return scb;