esp 118 arch/h8300/kernel/traps.c void show_stack(struct task_struct *task, unsigned long *esp) esp 123 arch/h8300/kernel/traps.c if (esp == NULL) esp 124 arch/h8300/kernel/traps.c esp = (unsigned long *) &esp; esp 126 arch/h8300/kernel/traps.c stack = esp; esp 140 arch/h8300/kernel/traps.c stack = esp; esp 49 arch/openrisc/kernel/traps.c void show_stack(struct task_struct *task, unsigned long *esp) esp 51 arch/openrisc/kernel/traps.c if (esp == NULL) esp 52 arch/openrisc/kernel/traps.c esp = (unsigned long *)&esp; esp 55 arch/openrisc/kernel/traps.c unwind_stack(NULL, esp, print_trace); esp 69 arch/openrisc/kernel/traps.c unsigned long esp; esp 71 arch/openrisc/kernel/traps.c esp = (unsigned long)(regs->sp); esp 106 arch/openrisc/kernel/traps.c show_stack(NULL, (unsigned long *)esp); esp 43 arch/um/kernel/exec.c void start_thread(struct pt_regs *regs, unsigned long eip, unsigned long esp) esp 46 arch/um/kernel/exec.c PT_REGS_SP(regs) = esp; esp 49 arch/x86/include/asm/frame.h mov %esp, %ebp esp 32 arch/x86/include/asm/inst.h .ifc \r32,%esp esp 42 arch/x86/include/asm/user32.h __u32 eflags, esp; esp 524 arch/x86/include/asm/xen/hypercall.h unsigned long ss, unsigned long esp) esp 528 arch/x86/include/asm/xen/hypercall.h mcl->args[1] = esp; esp 64 arch/x86/include/asm/xen/interface_32.h uint32_t esp; esp 34 arch/x86/include/uapi/asm/ptrace.h long esp; esp 308 arch/x86/include/uapi/asm/sigcontext.h __u32 esp; esp 82 arch/x86/include/uapi/asm/vm86.h long esp; esp 886 arch/x86/kernel/ptrace.c R32(esp, sp); esp 960 arch/x86/kernel/ptrace.c R32(esp, sp); esp 135 arch/x86/kernel/vm86_32.c put_user_ex(regs->pt.sp, &user->regs.esp); esp 300 arch/x86/kernel/vm86_32.c get_user_ex(vm86regs.pt.sp, &user_vm86->regs.esp); esp 3173 arch/x86/kvm/emulate.c tss->esp = reg_read(ctxt, VCPU_REGS_RSP); esp 3202 arch/x86/kvm/emulate.c *reg_write(ctxt, VCPU_REGS_RSP) = tss->esp; esp 20 arch/x86/kvm/tss.h u32 esp; esp 320 arch/x86/xen/smp_pv.c ctxt->user_regs.esp = (unsigned long)task_pt_regs(idle); esp 263 drivers/infiniband/core/uverbs.h struct ib_uverbs_flow_spec_esp esp; esp 2819 drivers/infiniband/core/uverbs_cmd.c ib_spec->esp.size = sizeof(struct ib_flow_spec_esp); esp 2820 drivers/infiniband/core/uverbs_cmd.c memcpy(&ib_spec->esp.val, kern_spec_val, actual_filter_sz); esp 2821 drivers/infiniband/core/uverbs_cmd.c memcpy(&ib_spec->esp.mask, kern_spec_mask, actual_filter_sz); esp 2853 drivers/infiniband/hw/mlx5/main.c if (ib_spec->esp.mask.seq) esp 2857 drivers/infiniband/hw/mlx5/main.c ntohl(ib_spec->esp.mask.spi)); esp 2859 drivers/infiniband/hw/mlx5/main.c ntohl(ib_spec->esp.val.spi)); esp 339 drivers/net/ethernet/mellanox/mlx5/core/fpga/ipsec.c if (MLX5_GET(ipsec_extended_cap, fdev->ipsec->caps, esp)) esp 1327 drivers/net/hyperv/hyperv_net.h u8 esp; esp 27 drivers/scsi/am53c974.c shost_printk(KERN_DEBUG, esp->host, f, ##a); \ esp 92 drivers/scsi/am53c974.c struct esp *esp; esp 96 drivers/scsi/am53c974.c static void pci_esp_dma_drain(struct esp *esp); esp 98 drivers/scsi/am53c974.c static inline struct pci_esp_priv *pci_esp_get_priv(struct esp *esp) esp 100 drivers/scsi/am53c974.c return dev_get_drvdata(esp->dev); esp 103 drivers/scsi/am53c974.c static void pci_esp_write8(struct esp *esp, u8 val, unsigned long reg) esp 105 drivers/scsi/am53c974.c iowrite8(val, esp->regs + (reg * 4UL)); esp 108 drivers/scsi/am53c974.c static u8 pci_esp_read8(struct esp *esp, unsigned long reg) esp 110 drivers/scsi/am53c974.c return ioread8(esp->regs + (reg * 4UL)); esp 113 drivers/scsi/am53c974.c static void pci_esp_write32(struct esp *esp, u32 val, unsigned long reg) esp 115 drivers/scsi/am53c974.c return iowrite32(val, esp->regs + (reg * 4UL)); esp 118 drivers/scsi/am53c974.c static int pci_esp_irq_pending(struct esp *esp) esp 120 drivers/scsi/am53c974.c struct pci_esp_priv *pep = pci_esp_get_priv(esp); esp 122 drivers/scsi/am53c974.c pep->dma_status = pci_esp_read8(esp, ESP_DMA_STATUS); esp 134 drivers/scsi/am53c974.c static void pci_esp_reset_dma(struct esp *esp) esp 139 drivers/scsi/am53c974.c static void pci_esp_dma_drain(struct esp *esp) esp 145 drivers/scsi/am53c974.c if ((esp->sreg & ESP_STAT_PMASK) == ESP_DOP || esp 146 drivers/scsi/am53c974.c (esp->sreg & ESP_STAT_PMASK) == ESP_DIP) esp 151 drivers/scsi/am53c974.c resid = pci_esp_read8(esp, ESP_FFLAGS) & ESP_FF_FBYTES; esp 165 drivers/scsi/am53c974.c pci_esp_write8(esp, ESP_DMA_CMD_DIR | ESP_DMA_CMD_BLAST, ESP_DMA_CMD); esp 166 drivers/scsi/am53c974.c while (pci_esp_read8(esp, ESP_DMA_STATUS) & ESP_DMA_STAT_BCMPLT) { esp 171 drivers/scsi/am53c974.c pci_esp_write8(esp, ESP_DMA_CMD_DIR | ESP_DMA_CMD_IDLE, ESP_DMA_CMD); esp 175 drivers/scsi/am53c974.c struct esp_cmd_entry *ent = esp->active_cmd; esp 181 drivers/scsi/am53c974.c static void pci_esp_dma_invalidate(struct esp *esp) esp 183 drivers/scsi/am53c974.c struct pci_esp_priv *pep = pci_esp_get_priv(esp); esp 187 drivers/scsi/am53c974.c pci_esp_write8(esp, ESP_DMA_CMD_IDLE, ESP_DMA_CMD); esp 191 drivers/scsi/am53c974.c static int pci_esp_dma_error(struct esp *esp) esp 193 drivers/scsi/am53c974.c struct pci_esp_priv *pep = pci_esp_get_priv(esp); esp 196 drivers/scsi/am53c974.c u8 dma_cmd = pci_esp_read8(esp, ESP_DMA_CMD); esp 199 drivers/scsi/am53c974.c pci_esp_write8(esp, ESP_DMA_CMD_ABORT, ESP_DMA_CMD); esp 204 drivers/scsi/am53c974.c pci_esp_write8(esp, ESP_DMA_CMD_IDLE, ESP_DMA_CMD); esp 205 drivers/scsi/am53c974.c pep->dma_status = pci_esp_read8(esp, ESP_DMA_CMD); esp 211 drivers/scsi/am53c974.c static void pci_esp_send_dma_cmd(struct esp *esp, u32 addr, u32 esp_count, esp 214 drivers/scsi/am53c974.c struct pci_esp_priv *pep = pci_esp_get_priv(esp); esp 225 drivers/scsi/am53c974.c pci_esp_write8(esp, ESP_DMA_CMD_IDLE | val, ESP_DMA_CMD); esp 227 drivers/scsi/am53c974.c pci_esp_write8(esp, (esp_count >> 0) & 0xff, ESP_TCLOW); esp 228 drivers/scsi/am53c974.c pci_esp_write8(esp, (esp_count >> 8) & 0xff, ESP_TCMED); esp 229 drivers/scsi/am53c974.c if (esp->config2 & ESP_CONFIG2_FENAB) esp 230 drivers/scsi/am53c974.c pci_esp_write8(esp, (esp_count >> 16) & 0xff, ESP_TCHI); esp 232 drivers/scsi/am53c974.c pci_esp_write32(esp, esp_count, ESP_DMA_STC); esp 233 drivers/scsi/am53c974.c pci_esp_write32(esp, addr, ESP_DMA_SPA); esp 238 drivers/scsi/am53c974.c scsi_esp_cmd(esp, cmd); esp 240 drivers/scsi/am53c974.c pci_esp_write8(esp, ESP_DMA_CMD_START | val, ESP_DMA_CMD); esp 243 drivers/scsi/am53c974.c static u32 pci_esp_dma_length_limit(struct esp *esp, u32 dma_addr, u32 dma_len) esp 252 drivers/scsi/am53c974.c if (esp->config2 & ESP_CONFIG2_FENAB) esp 347 drivers/scsi/am53c974.c static void dc390_check_eeprom(struct esp *esp) esp 349 drivers/scsi/am53c974.c struct pci_dev *pdev = to_pci_dev(esp->dev); esp 365 drivers/scsi/am53c974.c esp->scsi_id = EEbuf[DC390_EE_ADAPT_SCSI_ID]; esp 366 drivers/scsi/am53c974.c esp->num_tags = 2 << EEbuf[DC390_EE_TAG_CMD_NUM]; esp 368 drivers/scsi/am53c974.c esp->config4 |= ESP_CONFIG4_RADE | ESP_CONFIG4_RAE; esp 377 drivers/scsi/am53c974.c struct esp *esp; esp 391 drivers/scsi/am53c974.c shost = scsi_host_alloc(hostt, sizeof(struct esp)); esp 407 drivers/scsi/am53c974.c esp = shost_priv(shost); esp 408 drivers/scsi/am53c974.c esp->host = shost; esp 409 drivers/scsi/am53c974.c esp->dev = &pdev->dev; esp 410 drivers/scsi/am53c974.c esp->ops = &pci_esp_ops; esp 416 drivers/scsi/am53c974.c esp->flags |= ESP_FLAG_USE_FIFO; esp 421 drivers/scsi/am53c974.c esp->config2 |= ESP_CONFIG2_FENAB; esp 423 drivers/scsi/am53c974.c pep->esp = esp; esp 431 drivers/scsi/am53c974.c esp->regs = pci_iomap(pdev, 0, pci_resource_len(pdev, 0)); esp 432 drivers/scsi/am53c974.c if (!esp->regs) { esp 437 drivers/scsi/am53c974.c esp->dma_regs = esp->regs; esp 441 drivers/scsi/am53c974.c esp->command_block = dma_alloc_coherent(&pdev->dev, 16, esp 442 drivers/scsi/am53c974.c &esp->command_block_dma, GFP_KERNEL); esp 443 drivers/scsi/am53c974.c if (!esp->command_block) { esp 453 drivers/scsi/am53c974.c DRV_MODULE_NAME, esp); esp 459 drivers/scsi/am53c974.c esp->scsi_id = 7; esp 460 drivers/scsi/am53c974.c dc390_check_eeprom(esp); esp 462 drivers/scsi/am53c974.c shost->this_id = esp->scsi_id; esp 468 drivers/scsi/am53c974.c esp->scsi_id_mask = (1 << esp->scsi_id); esp 470 drivers/scsi/am53c974.c esp->cfreq = 40000000; esp 472 drivers/scsi/am53c974.c err = scsi_esp_register(esp); esp 479 drivers/scsi/am53c974.c free_irq(pdev->irq, esp); esp 482 drivers/scsi/am53c974.c dma_free_coherent(&pdev->dev, 16, esp->command_block, esp 483 drivers/scsi/am53c974.c esp->command_block_dma); esp 485 drivers/scsi/am53c974.c pci_iounmap(pdev, esp->regs); esp 501 drivers/scsi/am53c974.c struct esp *esp = pep->esp; esp 503 drivers/scsi/am53c974.c scsi_esp_unregister(esp); esp 504 drivers/scsi/am53c974.c free_irq(pdev->irq, esp); esp 506 drivers/scsi/am53c974.c dma_free_coherent(&pdev->dev, 16, esp->command_block, esp 507 drivers/scsi/am53c974.c esp->command_block_dma); esp 508 drivers/scsi/am53c974.c pci_iounmap(pdev, esp->regs); esp 513 drivers/scsi/am53c974.c scsi_host_put(esp->host); esp 58 drivers/scsi/esp_scsi.c shost_printk(KERN_DEBUG, esp->host, f, ## a); \ esp 63 drivers/scsi/esp_scsi.c shost_printk(KERN_DEBUG, esp->host, f, ## a); \ esp 68 drivers/scsi/esp_scsi.c shost_printk(KERN_DEBUG, esp->host, f, ## a); \ esp 73 drivers/scsi/esp_scsi.c shost_printk(KERN_DEBUG, esp->host, f, ## a); \ esp 78 drivers/scsi/esp_scsi.c shost_printk(KERN_DEBUG, esp->host, f, ## a); \ esp 83 drivers/scsi/esp_scsi.c shost_printk(KERN_DEBUG, esp->host, f, ## a); \ esp 88 drivers/scsi/esp_scsi.c shost_printk(KERN_DEBUG, esp->host, f, ## a); \ esp 93 drivers/scsi/esp_scsi.c shost_printk(KERN_DEBUG, esp->host, f, ## a); \ esp 98 drivers/scsi/esp_scsi.c shost_printk(KERN_DEBUG, esp->host, f, ## a); \ esp 103 drivers/scsi/esp_scsi.c shost_printk(KERN_DEBUG, esp->host, f, ## a); \ esp 108 drivers/scsi/esp_scsi.c shost_printk(KERN_DEBUG, esp->host, f, ## a); \ esp 113 drivers/scsi/esp_scsi.c shost_printk(KERN_DEBUG, esp->host, f, ## a); \ esp 116 drivers/scsi/esp_scsi.c #define esp_read8(REG) esp->ops->esp_read8(esp, REG) esp 117 drivers/scsi/esp_scsi.c #define esp_write8(VAL,REG) esp->ops->esp_write8(esp, VAL, REG) esp 119 drivers/scsi/esp_scsi.c static void esp_log_fill_regs(struct esp *esp, esp 122 drivers/scsi/esp_scsi.c p->sreg = esp->sreg; esp 123 drivers/scsi/esp_scsi.c p->seqreg = esp->seqreg; esp 124 drivers/scsi/esp_scsi.c p->sreg2 = esp->sreg2; esp 125 drivers/scsi/esp_scsi.c p->ireg = esp->ireg; esp 126 drivers/scsi/esp_scsi.c p->select_state = esp->select_state; esp 127 drivers/scsi/esp_scsi.c p->event = esp->event; esp 130 drivers/scsi/esp_scsi.c void scsi_esp_cmd(struct esp *esp, u8 val) esp 133 drivers/scsi/esp_scsi.c int idx = esp->esp_event_cur; esp 135 drivers/scsi/esp_scsi.c p = &esp->esp_event_log[idx]; esp 138 drivers/scsi/esp_scsi.c esp_log_fill_regs(esp, p); esp 140 drivers/scsi/esp_scsi.c esp->esp_event_cur = (idx + 1) & (ESP_EVENT_LOG_SZ - 1); esp 147 drivers/scsi/esp_scsi.c static void esp_send_dma_cmd(struct esp *esp, int len, int max_len, int cmd) esp 149 drivers/scsi/esp_scsi.c if (esp->flags & ESP_FLAG_USE_FIFO) { esp 152 drivers/scsi/esp_scsi.c scsi_esp_cmd(esp, ESP_CMD_FLUSH); esp 154 drivers/scsi/esp_scsi.c esp_write8(esp->command_block[i], ESP_FDATA); esp 155 drivers/scsi/esp_scsi.c scsi_esp_cmd(esp, cmd); esp 157 drivers/scsi/esp_scsi.c if (esp->rev == FASHME) esp 158 drivers/scsi/esp_scsi.c scsi_esp_cmd(esp, ESP_CMD_FLUSH); esp 160 drivers/scsi/esp_scsi.c esp->ops->send_dma_cmd(esp, esp->command_block_dma, esp 165 drivers/scsi/esp_scsi.c static void esp_event(struct esp *esp, u8 val) esp 168 drivers/scsi/esp_scsi.c int idx = esp->esp_event_cur; esp 170 drivers/scsi/esp_scsi.c p = &esp->esp_event_log[idx]; esp 173 drivers/scsi/esp_scsi.c esp_log_fill_regs(esp, p); esp 175 drivers/scsi/esp_scsi.c esp->esp_event_cur = (idx + 1) & (ESP_EVENT_LOG_SZ - 1); esp 177 drivers/scsi/esp_scsi.c esp->event = val; esp 180 drivers/scsi/esp_scsi.c static void esp_dump_cmd_log(struct esp *esp) esp 182 drivers/scsi/esp_scsi.c int idx = esp->esp_event_cur; esp 185 drivers/scsi/esp_scsi.c shost_printk(KERN_INFO, esp->host, "Dumping command log\n"); esp 187 drivers/scsi/esp_scsi.c struct esp_event_ent *p = &esp->esp_event_log[idx]; esp 189 drivers/scsi/esp_scsi.c shost_printk(KERN_INFO, esp->host, esp 201 drivers/scsi/esp_scsi.c static void esp_flush_fifo(struct esp *esp) esp 203 drivers/scsi/esp_scsi.c scsi_esp_cmd(esp, ESP_CMD_FLUSH); esp 204 drivers/scsi/esp_scsi.c if (esp->rev == ESP236) { esp 209 drivers/scsi/esp_scsi.c shost_printk(KERN_ALERT, esp->host, esp 218 drivers/scsi/esp_scsi.c static void hme_read_fifo(struct esp *esp) esp 224 drivers/scsi/esp_scsi.c esp->fifo[idx++] = esp_read8(ESP_FDATA); esp 225 drivers/scsi/esp_scsi.c esp->fifo[idx++] = esp_read8(ESP_FDATA); esp 227 drivers/scsi/esp_scsi.c if (esp->sreg2 & ESP_STAT2_F1BYTE) { esp 229 drivers/scsi/esp_scsi.c esp->fifo[idx++] = esp_read8(ESP_FDATA); esp 230 drivers/scsi/esp_scsi.c scsi_esp_cmd(esp, ESP_CMD_FLUSH); esp 232 drivers/scsi/esp_scsi.c esp->fifo_cnt = idx; esp 235 drivers/scsi/esp_scsi.c static void esp_set_all_config3(struct esp *esp, u8 val) esp 240 drivers/scsi/esp_scsi.c esp->target[i].esp_config3 = val; esp 244 drivers/scsi/esp_scsi.c static void esp_reset_esp(struct esp *esp) esp 249 drivers/scsi/esp_scsi.c scsi_esp_cmd(esp, ESP_CMD_RC); esp 250 drivers/scsi/esp_scsi.c scsi_esp_cmd(esp, ESP_CMD_NULL | ESP_CMD_DMA); esp 251 drivers/scsi/esp_scsi.c if (esp->rev == FAST) esp 253 drivers/scsi/esp_scsi.c scsi_esp_cmd(esp, ESP_CMD_NULL | ESP_CMD_DMA); esp 258 drivers/scsi/esp_scsi.c esp->max_period = ((35 * esp->ccycle) / 1000); esp 259 drivers/scsi/esp_scsi.c if (esp->rev == FAST) { esp 263 drivers/scsi/esp_scsi.c esp->rev = FAS236; esp 265 drivers/scsi/esp_scsi.c esp->rev = FASHME; /* Version is usually '5'. */ esp 267 drivers/scsi/esp_scsi.c esp->rev = FAS100A; esp 268 drivers/scsi/esp_scsi.c esp->min_period = ((4 * esp->ccycle) / 1000); esp 270 drivers/scsi/esp_scsi.c esp->min_period = ((5 * esp->ccycle) / 1000); esp 272 drivers/scsi/esp_scsi.c if (esp->rev == FAS236) { esp 281 drivers/scsi/esp_scsi.c esp->rev = PCSCSI; esp 282 drivers/scsi/esp_scsi.c esp_write8(esp->config4, ESP_CFG4); esp 285 drivers/scsi/esp_scsi.c esp->max_period = (esp->max_period + 3)>>2; esp 286 drivers/scsi/esp_scsi.c esp->min_period = (esp->min_period + 3)>>2; esp 288 drivers/scsi/esp_scsi.c esp_write8(esp->config1, ESP_CFG1); esp 289 drivers/scsi/esp_scsi.c switch (esp->rev) { esp 295 drivers/scsi/esp_scsi.c esp_write8(esp->config2, ESP_CFG2); esp 300 drivers/scsi/esp_scsi.c esp_write8(esp->config2, ESP_CFG2); esp 301 drivers/scsi/esp_scsi.c esp->prev_cfg3 = esp->target[0].esp_config3; esp 302 drivers/scsi/esp_scsi.c esp_write8(esp->prev_cfg3, ESP_CFG3); esp 306 drivers/scsi/esp_scsi.c esp->config2 |= (ESP_CONFIG2_HME32 | ESP_CONFIG2_HMEFENAB); esp 312 drivers/scsi/esp_scsi.c esp_write8(esp->config2, ESP_CFG2); esp 313 drivers/scsi/esp_scsi.c if (esp->rev == FASHME) { esp 314 drivers/scsi/esp_scsi.c u8 cfg3 = esp->target[0].esp_config3; esp 317 drivers/scsi/esp_scsi.c if (esp->scsi_id >= 8) esp 319 drivers/scsi/esp_scsi.c esp_set_all_config3(esp, cfg3); esp 321 drivers/scsi/esp_scsi.c u32 cfg3 = esp->target[0].esp_config3; esp 324 drivers/scsi/esp_scsi.c esp_set_all_config3(esp, cfg3); esp 326 drivers/scsi/esp_scsi.c esp->prev_cfg3 = esp->target[0].esp_config3; esp 327 drivers/scsi/esp_scsi.c esp_write8(esp->prev_cfg3, ESP_CFG3); esp 328 drivers/scsi/esp_scsi.c if (esp->rev == FASHME) { esp 329 drivers/scsi/esp_scsi.c esp->radelay = 80; esp 331 drivers/scsi/esp_scsi.c if (esp->flags & ESP_FLAG_DIFFERENTIAL) esp 332 drivers/scsi/esp_scsi.c esp->radelay = 0; esp 334 drivers/scsi/esp_scsi.c esp->radelay = 96; esp 340 drivers/scsi/esp_scsi.c esp_write8(esp->config2, ESP_CFG2); esp 341 drivers/scsi/esp_scsi.c esp_set_all_config3(esp, esp 342 drivers/scsi/esp_scsi.c (esp->target[0].esp_config3 | esp 344 drivers/scsi/esp_scsi.c esp->prev_cfg3 = esp->target[0].esp_config3; esp 345 drivers/scsi/esp_scsi.c esp_write8(esp->prev_cfg3, ESP_CFG3); esp 346 drivers/scsi/esp_scsi.c esp->radelay = 32; esp 354 drivers/scsi/esp_scsi.c esp_write8(esp->cfact, ESP_CFACT); esp 356 drivers/scsi/esp_scsi.c esp->prev_stp = 0; esp 357 drivers/scsi/esp_scsi.c esp_write8(esp->prev_stp, ESP_STP); esp 359 drivers/scsi/esp_scsi.c esp->prev_soff = 0; esp 360 drivers/scsi/esp_scsi.c esp_write8(esp->prev_soff, ESP_SOFF); esp 362 drivers/scsi/esp_scsi.c esp_write8(esp->neg_defp, ESP_TIMEO); esp 369 drivers/scsi/esp_scsi.c static void esp_map_dma(struct esp *esp, struct scsi_cmnd *cmd) esp 379 drivers/scsi/esp_scsi.c if (esp->flags & ESP_FLAG_NO_DMA_MAP) { esp 428 drivers/scsi/esp_scsi.c static void esp_advance_dma(struct esp *esp, struct esp_cmd_entry *ent, esp 441 drivers/scsi/esp_scsi.c shost_printk(KERN_ERR, esp->host, esp 443 drivers/scsi/esp_scsi.c shost_printk(KERN_ERR, esp->host, esp 456 drivers/scsi/esp_scsi.c static void esp_unmap_dma(struct esp *esp, struct scsi_cmnd *cmd) esp 458 drivers/scsi/esp_scsi.c if (!(esp->flags & ESP_FLAG_NO_DMA_MAP)) esp 462 drivers/scsi/esp_scsi.c static void esp_save_pointers(struct esp *esp, struct esp_cmd_entry *ent) esp 477 drivers/scsi/esp_scsi.c static void esp_restore_pointers(struct esp *esp, struct esp_cmd_entry *ent) esp 492 drivers/scsi/esp_scsi.c static void esp_write_tgt_config3(struct esp *esp, int tgt) esp 494 drivers/scsi/esp_scsi.c if (esp->rev > ESP100A) { esp 495 drivers/scsi/esp_scsi.c u8 val = esp->target[tgt].esp_config3; esp 497 drivers/scsi/esp_scsi.c if (val != esp->prev_cfg3) { esp 498 drivers/scsi/esp_scsi.c esp->prev_cfg3 = val; esp 504 drivers/scsi/esp_scsi.c static void esp_write_tgt_sync(struct esp *esp, int tgt) esp 506 drivers/scsi/esp_scsi.c u8 off = esp->target[tgt].esp_offset; esp 507 drivers/scsi/esp_scsi.c u8 per = esp->target[tgt].esp_period; esp 509 drivers/scsi/esp_scsi.c if (off != esp->prev_soff) { esp 510 drivers/scsi/esp_scsi.c esp->prev_soff = off; esp 513 drivers/scsi/esp_scsi.c if (per != esp->prev_stp) { esp 514 drivers/scsi/esp_scsi.c esp->prev_stp = per; esp 519 drivers/scsi/esp_scsi.c static u32 esp_dma_length_limit(struct esp *esp, u32 dma_addr, u32 dma_len) esp 521 drivers/scsi/esp_scsi.c if (esp->rev == FASHME) { esp 627 drivers/scsi/esp_scsi.c static void esp_map_sense(struct esp *esp, struct esp_cmd_entry *ent) esp 630 drivers/scsi/esp_scsi.c if (esp->flags & ESP_FLAG_NO_DMA_MAP) { esp 635 drivers/scsi/esp_scsi.c ent->sense_dma = dma_map_single(esp->dev, ent->sense_ptr, esp 639 drivers/scsi/esp_scsi.c static void esp_unmap_sense(struct esp *esp, struct esp_cmd_entry *ent) esp 641 drivers/scsi/esp_scsi.c if (!(esp->flags & ESP_FLAG_NO_DMA_MAP)) esp 642 drivers/scsi/esp_scsi.c dma_unmap_single(esp->dev, ent->sense_dma, esp 654 drivers/scsi/esp_scsi.c static void esp_autosense(struct esp *esp, struct esp_cmd_entry *ent) esp 668 drivers/scsi/esp_scsi.c esp_map_sense(esp, ent); esp 672 drivers/scsi/esp_scsi.c esp->active_cmd = ent; esp 674 drivers/scsi/esp_scsi.c p = esp->command_block; esp 675 drivers/scsi/esp_scsi.c esp->msg_out_len = 0; esp 686 drivers/scsi/esp_scsi.c esp->select_state = ESP_SELECT_BASIC; esp 689 drivers/scsi/esp_scsi.c if (esp->rev == FASHME) esp 693 drivers/scsi/esp_scsi.c esp_write_tgt_sync(esp, tgt); esp 694 drivers/scsi/esp_scsi.c esp_write_tgt_config3(esp, tgt); esp 696 drivers/scsi/esp_scsi.c val = (p - esp->command_block); esp 698 drivers/scsi/esp_scsi.c esp_send_dma_cmd(esp, val, 16, ESP_CMD_SELA); esp 701 drivers/scsi/esp_scsi.c static struct esp_cmd_entry *find_and_prep_issuable_command(struct esp *esp) esp 705 drivers/scsi/esp_scsi.c list_for_each_entry(ent, &esp->queued_cmds, list) { esp 732 drivers/scsi/esp_scsi.c static void esp_maybe_execute_command(struct esp *esp) esp 743 drivers/scsi/esp_scsi.c if (esp->active_cmd || esp 744 drivers/scsi/esp_scsi.c (esp->flags & ESP_FLAG_RESETTING)) esp 747 drivers/scsi/esp_scsi.c ent = find_and_prep_issuable_command(esp); esp 752 drivers/scsi/esp_scsi.c esp_autosense(esp, ent); esp 760 drivers/scsi/esp_scsi.c tp = &esp->target[tgt]; esp 762 drivers/scsi/esp_scsi.c list_move(&ent->list, &esp->active_cmds); esp 764 drivers/scsi/esp_scsi.c esp->active_cmd = ent; esp 766 drivers/scsi/esp_scsi.c esp_map_dma(esp, cmd); esp 767 drivers/scsi/esp_scsi.c esp_save_pointers(esp, ent); esp 772 drivers/scsi/esp_scsi.c p = esp->command_block; esp 774 drivers/scsi/esp_scsi.c esp->msg_out_len = 0; esp 795 drivers/scsi/esp_scsi.c if (esp->rev == FASHME && esp_need_to_nego_wide(tp)) { esp 796 drivers/scsi/esp_scsi.c esp->msg_out_len = esp 797 drivers/scsi/esp_scsi.c spi_populate_width_msg(&esp->msg_out[0], esp 802 drivers/scsi/esp_scsi.c esp->msg_out_len = esp 803 drivers/scsi/esp_scsi.c spi_populate_sync_msg(&esp->msg_out[0], esp 812 drivers/scsi/esp_scsi.c if (esp->msg_out_len) esp 819 drivers/scsi/esp_scsi.c if (ent->tag[0] && esp->rev == ESP100) { esp 827 drivers/scsi/esp_scsi.c esp->cmd_bytes_left = cmd->cmd_len; esp 828 drivers/scsi/esp_scsi.c esp->cmd_bytes_ptr = &cmd->cmnd[0]; esp 831 drivers/scsi/esp_scsi.c for (i = esp->msg_out_len - 1; esp 833 drivers/scsi/esp_scsi.c esp->msg_out[i + 2] = esp->msg_out[i]; esp 834 drivers/scsi/esp_scsi.c esp->msg_out[0] = ent->tag[0]; esp 835 drivers/scsi/esp_scsi.c esp->msg_out[1] = ent->tag[1]; esp 836 drivers/scsi/esp_scsi.c esp->msg_out_len += 2; esp 840 drivers/scsi/esp_scsi.c esp->select_state = ESP_SELECT_MSGOUT; esp 853 drivers/scsi/esp_scsi.c esp->select_state = ESP_SELECT_BASIC; esp 856 drivers/scsi/esp_scsi.c if (esp->rev == FASHME) esp 860 drivers/scsi/esp_scsi.c esp_write_tgt_sync(esp, tgt); esp 861 drivers/scsi/esp_scsi.c esp_write_tgt_config3(esp, tgt); esp 863 drivers/scsi/esp_scsi.c val = (p - esp->command_block); esp 872 drivers/scsi/esp_scsi.c esp_send_dma_cmd(esp, val, 16, start_cmd); esp 875 drivers/scsi/esp_scsi.c static struct esp_cmd_entry *esp_get_ent(struct esp *esp) esp 877 drivers/scsi/esp_scsi.c struct list_head *head = &esp->esp_cmd_pool; esp 890 drivers/scsi/esp_scsi.c static void esp_put_ent(struct esp *esp, struct esp_cmd_entry *ent) esp 892 drivers/scsi/esp_scsi.c list_add(&ent->list, &esp->esp_cmd_pool); esp 895 drivers/scsi/esp_scsi.c static void esp_cmd_is_done(struct esp *esp, struct esp_cmd_entry *ent, esp 902 drivers/scsi/esp_scsi.c esp->active_cmd = NULL; esp 903 drivers/scsi/esp_scsi.c esp_unmap_dma(esp, cmd); esp 913 drivers/scsi/esp_scsi.c esp_unmap_sense(esp, ent); esp 929 drivers/scsi/esp_scsi.c esp->host->unique_id, tgt, lun); esp 939 drivers/scsi/esp_scsi.c esp_put_ent(esp, ent); esp 941 drivers/scsi/esp_scsi.c esp_maybe_execute_command(esp); esp 950 drivers/scsi/esp_scsi.c static void esp_event_queue_full(struct esp *esp, struct esp_cmd_entry *ent) esp 961 drivers/scsi/esp_scsi.c struct esp *esp = shost_priv(dev->host); esp 965 drivers/scsi/esp_scsi.c ent = esp_get_ent(esp); esp 976 drivers/scsi/esp_scsi.c list_add_tail(&ent->list, &esp->queued_cmds); esp 978 drivers/scsi/esp_scsi.c esp_maybe_execute_command(esp); esp 985 drivers/scsi/esp_scsi.c static int esp_check_gross_error(struct esp *esp) esp 987 drivers/scsi/esp_scsi.c if (esp->sreg & ESP_STAT_SPAM) { esp 994 drivers/scsi/esp_scsi.c shost_printk(KERN_ERR, esp->host, esp 995 drivers/scsi/esp_scsi.c "Gross error sreg[%02x]\n", esp->sreg); esp 1002 drivers/scsi/esp_scsi.c static int esp_check_spur_intr(struct esp *esp) esp 1004 drivers/scsi/esp_scsi.c switch (esp->rev) { esp 1010 drivers/scsi/esp_scsi.c esp->sreg &= ~ESP_STAT_INTR; esp 1014 drivers/scsi/esp_scsi.c if (!(esp->sreg & ESP_STAT_INTR)) { esp 1015 drivers/scsi/esp_scsi.c if (esp->ireg & ESP_INTR_SR) esp 1021 drivers/scsi/esp_scsi.c if (!esp->ops->dma_error(esp)) { esp 1022 drivers/scsi/esp_scsi.c shost_printk(KERN_ERR, esp->host, esp 1024 drivers/scsi/esp_scsi.c esp->sreg); esp 1028 drivers/scsi/esp_scsi.c shost_printk(KERN_ERR, esp->host, "DMA error\n"); esp 1039 drivers/scsi/esp_scsi.c static void esp_schedule_reset(struct esp *esp) esp 1043 drivers/scsi/esp_scsi.c esp->flags |= ESP_FLAG_RESETTING; esp 1044 drivers/scsi/esp_scsi.c esp_event(esp, ESP_EVENT_RESET); esp 1051 drivers/scsi/esp_scsi.c static struct esp_cmd_entry *esp_reconnect_with_tag(struct esp *esp, esp 1058 drivers/scsi/esp_scsi.c shost_printk(KERN_ERR, esp->host, esp 1066 drivers/scsi/esp_scsi.c if (esp->ops->irq_pending(esp)) esp 1070 drivers/scsi/esp_scsi.c shost_printk(KERN_ERR, esp->host, esp 1075 drivers/scsi/esp_scsi.c esp->sreg = esp_read8(ESP_STATUS); esp 1076 drivers/scsi/esp_scsi.c esp->ireg = esp_read8(ESP_INTRPT); esp 1079 drivers/scsi/esp_scsi.c i, esp->ireg, esp->sreg); esp 1081 drivers/scsi/esp_scsi.c if (esp->ireg & ESP_INTR_DC) { esp 1082 drivers/scsi/esp_scsi.c shost_printk(KERN_ERR, esp->host, esp 1087 drivers/scsi/esp_scsi.c if ((esp->sreg & ESP_STAT_PMASK) != ESP_MIP) { esp 1088 drivers/scsi/esp_scsi.c shost_printk(KERN_ERR, esp->host, esp 1089 drivers/scsi/esp_scsi.c "Reconnect, not MIP sreg[%02x].\n", esp->sreg); esp 1094 drivers/scsi/esp_scsi.c esp->command_block[0] = 0xff; esp 1095 drivers/scsi/esp_scsi.c esp->command_block[1] = 0xff; esp 1096 drivers/scsi/esp_scsi.c esp->ops->send_dma_cmd(esp, esp->command_block_dma, esp 1100 drivers/scsi/esp_scsi.c scsi_esp_cmd(esp, ESP_CMD_MOK); esp 1103 drivers/scsi/esp_scsi.c if (esp->ops->irq_pending(esp)) { esp 1104 drivers/scsi/esp_scsi.c esp->sreg = esp_read8(ESP_STATUS); esp 1105 drivers/scsi/esp_scsi.c esp->ireg = esp_read8(ESP_INTRPT); esp 1106 drivers/scsi/esp_scsi.c if (esp->ireg & ESP_INTR_FDONE) esp 1112 drivers/scsi/esp_scsi.c shost_printk(KERN_ERR, esp->host, "Reconnect IRQ2 timeout\n"); esp 1115 drivers/scsi/esp_scsi.c esp->ops->dma_drain(esp); esp 1116 drivers/scsi/esp_scsi.c esp->ops->dma_invalidate(esp); esp 1119 drivers/scsi/esp_scsi.c i, esp->ireg, esp->sreg, esp 1120 drivers/scsi/esp_scsi.c esp->command_block[0], esp 1121 drivers/scsi/esp_scsi.c esp->command_block[1]); esp 1123 drivers/scsi/esp_scsi.c if (esp->command_block[0] < SIMPLE_QUEUE_TAG || esp 1124 drivers/scsi/esp_scsi.c esp->command_block[0] > ORDERED_QUEUE_TAG) { esp 1125 drivers/scsi/esp_scsi.c shost_printk(KERN_ERR, esp->host, esp 1127 drivers/scsi/esp_scsi.c esp->command_block[0]); esp 1131 drivers/scsi/esp_scsi.c ent = lp->tagged_cmds[esp->command_block[1]]; esp 1133 drivers/scsi/esp_scsi.c shost_printk(KERN_ERR, esp->host, esp 1135 drivers/scsi/esp_scsi.c esp->command_block[1]); esp 1142 drivers/scsi/esp_scsi.c static int esp_reconnect(struct esp *esp) esp 1150 drivers/scsi/esp_scsi.c BUG_ON(esp->active_cmd); esp 1151 drivers/scsi/esp_scsi.c if (esp->rev == FASHME) { esp 1155 drivers/scsi/esp_scsi.c target = esp->fifo[0]; esp 1156 drivers/scsi/esp_scsi.c lun = esp->fifo[1] & 0x7; esp 1166 drivers/scsi/esp_scsi.c if (!(bits & esp->scsi_id_mask)) esp 1168 drivers/scsi/esp_scsi.c bits &= ~esp->scsi_id_mask; esp 1175 drivers/scsi/esp_scsi.c scsi_esp_cmd(esp, ESP_CMD_FLUSH); esp 1176 drivers/scsi/esp_scsi.c if (esp->rev == ESP100) { esp 1186 drivers/scsi/esp_scsi.c scsi_esp_cmd(esp, ESP_CMD_NULL); esp 1189 drivers/scsi/esp_scsi.c esp_write_tgt_sync(esp, target); esp 1190 drivers/scsi/esp_scsi.c esp_write_tgt_config3(esp, target); esp 1192 drivers/scsi/esp_scsi.c scsi_esp_cmd(esp, ESP_CMD_MOK); esp 1194 drivers/scsi/esp_scsi.c if (esp->rev == FASHME) esp 1198 drivers/scsi/esp_scsi.c tp = &esp->target[target]; esp 1201 drivers/scsi/esp_scsi.c shost_printk(KERN_ERR, esp->host, esp 1210 drivers/scsi/esp_scsi.c ent = esp_reconnect_with_tag(esp, lp); esp 1215 drivers/scsi/esp_scsi.c esp->active_cmd = ent; esp 1217 drivers/scsi/esp_scsi.c esp_event(esp, ESP_EVENT_CHECK_PHASE); esp 1218 drivers/scsi/esp_scsi.c esp_restore_pointers(esp, ent); esp 1219 drivers/scsi/esp_scsi.c esp->flags |= ESP_FLAG_QUICKIRQ_CHECK; esp 1223 drivers/scsi/esp_scsi.c esp_schedule_reset(esp); esp 1227 drivers/scsi/esp_scsi.c static int esp_finish_select(struct esp *esp) esp 1233 drivers/scsi/esp_scsi.c esp->select_state = ESP_SELECT_NONE; esp 1235 drivers/scsi/esp_scsi.c esp->seqreg = esp_read8(ESP_SSTEP) & ESP_STEP_VBITS; esp 1236 drivers/scsi/esp_scsi.c ent = esp->active_cmd; esp 1239 drivers/scsi/esp_scsi.c if (esp->ops->dma_error(esp)) { esp 1243 drivers/scsi/esp_scsi.c esp_schedule_reset(esp); esp 1244 drivers/scsi/esp_scsi.c esp_cmd_is_done(esp, ent, cmd, (DID_ERROR << 16)); esp 1248 drivers/scsi/esp_scsi.c esp->ops->dma_invalidate(esp); esp 1250 drivers/scsi/esp_scsi.c if (esp->ireg == (ESP_INTR_RSEL | ESP_INTR_FDONE)) { esp 1251 drivers/scsi/esp_scsi.c struct esp_target_data *tp = &esp->target[cmd->device->id]; esp 1258 drivers/scsi/esp_scsi.c esp_unmap_dma(esp, cmd); esp 1261 drivers/scsi/esp_scsi.c esp->cmd_bytes_ptr = NULL; esp 1262 drivers/scsi/esp_scsi.c esp->cmd_bytes_left = 0; esp 1264 drivers/scsi/esp_scsi.c esp_unmap_sense(esp, ent); esp 1270 drivers/scsi/esp_scsi.c list_move(&ent->list, &esp->queued_cmds); esp 1271 drivers/scsi/esp_scsi.c esp->active_cmd = NULL; esp 1279 drivers/scsi/esp_scsi.c if (esp->ireg == ESP_INTR_DC) { esp 1286 drivers/scsi/esp_scsi.c esp->target[dev->id].flags |= ESP_TGT_CHECK_NEGO; esp 1288 drivers/scsi/esp_scsi.c scsi_esp_cmd(esp, ESP_CMD_ESEL); esp 1289 drivers/scsi/esp_scsi.c esp_cmd_is_done(esp, ent, cmd, (DID_BAD_TARGET << 16)); esp 1293 drivers/scsi/esp_scsi.c if (esp->ireg == (ESP_INTR_FDONE | ESP_INTR_BSERV)) { esp 1297 drivers/scsi/esp_scsi.c if (esp->rev <= ESP236) { esp 1300 drivers/scsi/esp_scsi.c scsi_esp_cmd(esp, ESP_CMD_NULL); esp 1303 drivers/scsi/esp_scsi.c (!esp->prev_soff || esp 1304 drivers/scsi/esp_scsi.c ((esp->sreg & ESP_STAT_PMASK) != ESP_DIP))) esp 1305 drivers/scsi/esp_scsi.c esp_flush_fifo(esp); esp 1311 drivers/scsi/esp_scsi.c esp_event(esp, ESP_EVENT_CHECK_PHASE); esp 1315 drivers/scsi/esp_scsi.c shost_printk(KERN_INFO, esp->host, esp 1316 drivers/scsi/esp_scsi.c "Unexpected selection completion ireg[%x]\n", esp->ireg); esp 1317 drivers/scsi/esp_scsi.c esp_schedule_reset(esp); esp 1321 drivers/scsi/esp_scsi.c static int esp_data_bytes_sent(struct esp *esp, struct esp_cmd_entry *ent, esp 1327 drivers/scsi/esp_scsi.c if (esp->prev_cfg3 & ESP_CONFIG3_EWIDE) esp 1331 drivers/scsi/esp_scsi.c if (!(esp->sreg & ESP_STAT_TCNT)) { esp 1334 drivers/scsi/esp_scsi.c if (esp->rev == FASHME) esp 1336 drivers/scsi/esp_scsi.c if (esp->rev == PCSCSI && (esp->config2 & ESP_CONFIG2_FENAB)) esp 1340 drivers/scsi/esp_scsi.c bytes_sent = esp->data_dma_len; esp 1342 drivers/scsi/esp_scsi.c bytes_sent -= esp->send_cmd_residual; esp 1377 drivers/scsi/esp_scsi.c if (!esp->prev_soff) { esp 1381 drivers/scsi/esp_scsi.c if (esp->rev == ESP100) { esp 1395 drivers/scsi/esp_scsi.c esp->sreg = esp_read8(ESP_STATUS); esp 1396 drivers/scsi/esp_scsi.c phase = esp->sreg & ESP_STAT_PMASK; esp 1410 drivers/scsi/esp_scsi.c esp_flush_fifo(esp); esp 1415 drivers/scsi/esp_scsi.c static void esp_setsync(struct esp *esp, struct esp_target_data *tp, esp 1425 drivers/scsi/esp_scsi.c esp_soff |= esp->radelay; esp 1426 drivers/scsi/esp_scsi.c if (esp->rev >= FAS236) { esp 1428 drivers/scsi/esp_scsi.c if (esp->rev >= FAS100A) esp 1432 drivers/scsi/esp_scsi.c if (esp->rev == FASHME) esp 1433 drivers/scsi/esp_scsi.c esp_soff &= ~esp->radelay; esp 1438 drivers/scsi/esp_scsi.c esp->prev_cfg3 = tp->esp_config3; esp 1439 drivers/scsi/esp_scsi.c esp_write8(esp->prev_cfg3, ESP_CFG3); esp 1443 drivers/scsi/esp_scsi.c tp->esp_period = esp->prev_stp = esp_stp; esp 1444 drivers/scsi/esp_scsi.c tp->esp_offset = esp->prev_soff = esp_soff; esp 1454 drivers/scsi/esp_scsi.c static void esp_msgin_reject(struct esp *esp) esp 1456 drivers/scsi/esp_scsi.c struct esp_cmd_entry *ent = esp->active_cmd; esp 1462 drivers/scsi/esp_scsi.c tp = &esp->target[tgt]; esp 1469 drivers/scsi/esp_scsi.c scsi_esp_cmd(esp, ESP_CMD_RATN); esp 1471 drivers/scsi/esp_scsi.c esp->msg_out_len = esp 1472 drivers/scsi/esp_scsi.c spi_populate_sync_msg(&esp->msg_out[0], esp 1476 drivers/scsi/esp_scsi.c scsi_esp_cmd(esp, ESP_CMD_SATN); esp 1485 drivers/scsi/esp_scsi.c esp_setsync(esp, tp, 0, 0, 0, 0); esp 1486 drivers/scsi/esp_scsi.c scsi_esp_cmd(esp, ESP_CMD_RATN); esp 1490 drivers/scsi/esp_scsi.c shost_printk(KERN_INFO, esp->host, "Unexpected MESSAGE REJECT\n"); esp 1491 drivers/scsi/esp_scsi.c esp_schedule_reset(esp); esp 1494 drivers/scsi/esp_scsi.c static void esp_msgin_sdtr(struct esp *esp, struct esp_target_data *tp) esp 1496 drivers/scsi/esp_scsi.c u8 period = esp->msg_in[3]; esp 1497 drivers/scsi/esp_scsi.c u8 offset = esp->msg_in[4]; esp 1509 drivers/scsi/esp_scsi.c if (period > esp->max_period) { esp 1513 drivers/scsi/esp_scsi.c if (period < esp->min_period) esp 1516 drivers/scsi/esp_scsi.c one_clock = esp->ccycle / 1000; esp 1518 drivers/scsi/esp_scsi.c if (stp && esp->rev >= FAS236) { esp 1526 drivers/scsi/esp_scsi.c esp_setsync(esp, tp, period, offset, stp, offset); esp 1530 drivers/scsi/esp_scsi.c esp->msg_out[0] = MESSAGE_REJECT; esp 1531 drivers/scsi/esp_scsi.c esp->msg_out_len = 1; esp 1532 drivers/scsi/esp_scsi.c scsi_esp_cmd(esp, ESP_CMD_SATN); esp 1538 drivers/scsi/esp_scsi.c esp->msg_out_len = esp 1539 drivers/scsi/esp_scsi.c spi_populate_sync_msg(&esp->msg_out[0], esp 1542 drivers/scsi/esp_scsi.c scsi_esp_cmd(esp, ESP_CMD_SATN); esp 1545 drivers/scsi/esp_scsi.c static void esp_msgin_wdtr(struct esp *esp, struct esp_target_data *tp) esp 1547 drivers/scsi/esp_scsi.c int size = 8 << esp->msg_in[3]; esp 1550 drivers/scsi/esp_scsi.c if (esp->rev != FASHME) esp 1568 drivers/scsi/esp_scsi.c esp->prev_cfg3 = cfg3; esp 1577 drivers/scsi/esp_scsi.c scsi_esp_cmd(esp, ESP_CMD_RATN); esp 1579 drivers/scsi/esp_scsi.c esp->msg_out_len = esp 1580 drivers/scsi/esp_scsi.c spi_populate_sync_msg(&esp->msg_out[0], esp 1584 drivers/scsi/esp_scsi.c scsi_esp_cmd(esp, ESP_CMD_SATN); esp 1589 drivers/scsi/esp_scsi.c esp->msg_out[0] = MESSAGE_REJECT; esp 1590 drivers/scsi/esp_scsi.c esp->msg_out_len = 1; esp 1591 drivers/scsi/esp_scsi.c scsi_esp_cmd(esp, ESP_CMD_SATN); esp 1594 drivers/scsi/esp_scsi.c static void esp_msgin_extended(struct esp *esp) esp 1596 drivers/scsi/esp_scsi.c struct esp_cmd_entry *ent = esp->active_cmd; esp 1601 drivers/scsi/esp_scsi.c tp = &esp->target[tgt]; esp 1602 drivers/scsi/esp_scsi.c if (esp->msg_in[2] == EXTENDED_SDTR) { esp 1603 drivers/scsi/esp_scsi.c esp_msgin_sdtr(esp, tp); esp 1606 drivers/scsi/esp_scsi.c if (esp->msg_in[2] == EXTENDED_WDTR) { esp 1607 drivers/scsi/esp_scsi.c esp_msgin_wdtr(esp, tp); esp 1611 drivers/scsi/esp_scsi.c shost_printk(KERN_INFO, esp->host, esp 1612 drivers/scsi/esp_scsi.c "Unexpected extended msg type %x\n", esp->msg_in[2]); esp 1614 drivers/scsi/esp_scsi.c esp->msg_out[0] = MESSAGE_REJECT; esp 1615 drivers/scsi/esp_scsi.c esp->msg_out_len = 1; esp 1616 drivers/scsi/esp_scsi.c scsi_esp_cmd(esp, ESP_CMD_SATN); esp 1622 drivers/scsi/esp_scsi.c static int esp_msgin_process(struct esp *esp) esp 1624 drivers/scsi/esp_scsi.c u8 msg0 = esp->msg_in[0]; esp 1625 drivers/scsi/esp_scsi.c int len = esp->msg_in_len; esp 1629 drivers/scsi/esp_scsi.c shost_printk(KERN_INFO, esp->host, esp 1638 drivers/scsi/esp_scsi.c if (len < esp->msg_in[1] + 2) esp 1640 drivers/scsi/esp_scsi.c esp_msgin_extended(esp); esp 1649 drivers/scsi/esp_scsi.c if (esp->msg_in[1] != 1) esp 1652 drivers/scsi/esp_scsi.c ent = esp->active_cmd; esp 1666 drivers/scsi/esp_scsi.c esp_restore_pointers(esp, esp->active_cmd); esp 1669 drivers/scsi/esp_scsi.c esp_save_pointers(esp, esp->active_cmd); esp 1674 drivers/scsi/esp_scsi.c struct esp_cmd_entry *ent = esp->active_cmd; esp 1677 drivers/scsi/esp_scsi.c esp_event(esp, ESP_EVENT_FREE_BUS); esp 1678 drivers/scsi/esp_scsi.c esp->flags |= ESP_FLAG_QUICKIRQ_CHECK; esp 1682 drivers/scsi/esp_scsi.c esp_msgin_reject(esp); esp 1687 drivers/scsi/esp_scsi.c esp->msg_out[0] = MESSAGE_REJECT; esp 1688 drivers/scsi/esp_scsi.c esp->msg_out_len = 1; esp 1689 drivers/scsi/esp_scsi.c scsi_esp_cmd(esp, ESP_CMD_SATN); esp 1694 drivers/scsi/esp_scsi.c static int esp_process_event(struct esp *esp) esp 1701 drivers/scsi/esp_scsi.c esp->event, esp->sreg & ESP_STAT_PMASK); esp 1702 drivers/scsi/esp_scsi.c switch (esp->event) { esp 1704 drivers/scsi/esp_scsi.c switch (esp->sreg & ESP_STAT_PMASK) { esp 1706 drivers/scsi/esp_scsi.c esp_event(esp, ESP_EVENT_DATA_OUT); esp 1709 drivers/scsi/esp_scsi.c esp_event(esp, ESP_EVENT_DATA_IN); esp 1712 drivers/scsi/esp_scsi.c esp_flush_fifo(esp); esp 1713 drivers/scsi/esp_scsi.c scsi_esp_cmd(esp, ESP_CMD_ICCSEQ); esp 1714 drivers/scsi/esp_scsi.c esp_event(esp, ESP_EVENT_STATUS); esp 1715 drivers/scsi/esp_scsi.c esp->flags |= ESP_FLAG_QUICKIRQ_CHECK; esp 1719 drivers/scsi/esp_scsi.c esp_event(esp, ESP_EVENT_MSGOUT); esp 1723 drivers/scsi/esp_scsi.c esp_event(esp, ESP_EVENT_MSGIN); esp 1727 drivers/scsi/esp_scsi.c esp_event(esp, ESP_EVENT_CMD_START); esp 1731 drivers/scsi/esp_scsi.c shost_printk(KERN_INFO, esp->host, esp 1733 drivers/scsi/esp_scsi.c esp->sreg); esp 1734 drivers/scsi/esp_scsi.c esp_schedule_reset(esp); esp 1744 drivers/scsi/esp_scsi.c struct esp_cmd_entry *ent = esp->active_cmd; esp 1749 drivers/scsi/esp_scsi.c if (esp->rev == ESP100) esp 1750 drivers/scsi/esp_scsi.c scsi_esp_cmd(esp, ESP_CMD_NULL); esp 1757 drivers/scsi/esp_scsi.c if (esp->ops->dma_length_limit) esp 1758 drivers/scsi/esp_scsi.c dma_len = esp->ops->dma_length_limit(esp, dma_addr, esp 1761 drivers/scsi/esp_scsi.c dma_len = esp_dma_length_limit(esp, dma_addr, dma_len); esp 1763 drivers/scsi/esp_scsi.c esp->data_dma_len = dma_len; esp 1766 drivers/scsi/esp_scsi.c shost_printk(KERN_ERR, esp->host, esp 1768 drivers/scsi/esp_scsi.c shost_printk(KERN_ERR, esp->host, esp 1772 drivers/scsi/esp_scsi.c esp_schedule_reset(esp); esp 1779 drivers/scsi/esp_scsi.c esp->ops->send_dma_cmd(esp, dma_addr, dma_len, dma_len, esp 1781 drivers/scsi/esp_scsi.c esp_event(esp, ESP_EVENT_DATA_DONE); esp 1785 drivers/scsi/esp_scsi.c struct esp_cmd_entry *ent = esp->active_cmd; esp 1789 drivers/scsi/esp_scsi.c if (esp->ops->dma_error(esp)) { esp 1790 drivers/scsi/esp_scsi.c shost_printk(KERN_INFO, esp->host, esp 1792 drivers/scsi/esp_scsi.c esp_schedule_reset(esp); esp 1799 drivers/scsi/esp_scsi.c esp->ops->dma_drain(esp); esp 1801 drivers/scsi/esp_scsi.c esp->ops->dma_invalidate(esp); esp 1803 drivers/scsi/esp_scsi.c if (esp->ireg != ESP_INTR_BSERV) { esp 1807 drivers/scsi/esp_scsi.c shost_printk(KERN_INFO, esp->host, esp 1809 drivers/scsi/esp_scsi.c esp_schedule_reset(esp); esp 1813 drivers/scsi/esp_scsi.c bytes_sent = esp_data_bytes_sent(esp, ent, cmd); esp 1820 drivers/scsi/esp_scsi.c esp_schedule_reset(esp); esp 1824 drivers/scsi/esp_scsi.c esp_advance_dma(esp, ent, cmd, bytes_sent); esp 1825 drivers/scsi/esp_scsi.c esp_event(esp, ESP_EVENT_CHECK_PHASE); esp 1830 drivers/scsi/esp_scsi.c struct esp_cmd_entry *ent = esp->active_cmd; esp 1832 drivers/scsi/esp_scsi.c if (esp->ireg & ESP_INTR_FDONE) { esp 1835 drivers/scsi/esp_scsi.c scsi_esp_cmd(esp, ESP_CMD_MOK); esp 1836 drivers/scsi/esp_scsi.c } else if (esp->ireg == ESP_INTR_BSERV) { esp 1839 drivers/scsi/esp_scsi.c esp_event(esp, ESP_EVENT_MSGIN); esp 1844 drivers/scsi/esp_scsi.c shost_printk(KERN_INFO, esp->host, esp 1847 drivers/scsi/esp_scsi.c esp_schedule_reset(esp); esp 1851 drivers/scsi/esp_scsi.c esp_event(esp, ESP_EVENT_FREE_BUS); esp 1852 drivers/scsi/esp_scsi.c esp->flags |= ESP_FLAG_QUICKIRQ_CHECK; esp 1856 drivers/scsi/esp_scsi.c struct esp_cmd_entry *ent = esp->active_cmd; esp 1861 drivers/scsi/esp_scsi.c scsi_esp_cmd(esp, ESP_CMD_ESEL); esp 1867 drivers/scsi/esp_scsi.c esp_event_queue_full(esp, ent); esp 1872 drivers/scsi/esp_scsi.c esp_autosense(esp, ent); esp 1874 drivers/scsi/esp_scsi.c esp_cmd_is_done(esp, ent, cmd, esp 1884 drivers/scsi/esp_scsi.c esp->active_cmd = NULL; esp 1885 drivers/scsi/esp_scsi.c esp_maybe_execute_command(esp); esp 1887 drivers/scsi/esp_scsi.c shost_printk(KERN_INFO, esp->host, esp 1890 drivers/scsi/esp_scsi.c esp_schedule_reset(esp); esp 1893 drivers/scsi/esp_scsi.c if (esp->active_cmd) esp 1894 drivers/scsi/esp_scsi.c esp->flags |= ESP_FLAG_QUICKIRQ_CHECK; esp 1898 drivers/scsi/esp_scsi.c scsi_esp_cmd(esp, ESP_CMD_FLUSH); esp 1903 drivers/scsi/esp_scsi.c for (i = 0; i < esp->msg_out_len; i++) esp 1904 drivers/scsi/esp_scsi.c printk("%02x ", esp->msg_out[i]); esp 1908 drivers/scsi/esp_scsi.c if (esp->rev == FASHME) { esp 1912 drivers/scsi/esp_scsi.c for (i = 0; i < esp->msg_out_len; i++) { esp 1913 drivers/scsi/esp_scsi.c esp_write8(esp->msg_out[i], ESP_FDATA); esp 1916 drivers/scsi/esp_scsi.c scsi_esp_cmd(esp, ESP_CMD_TI); esp 1918 drivers/scsi/esp_scsi.c if (esp->msg_out_len == 1) { esp 1919 drivers/scsi/esp_scsi.c esp_write8(esp->msg_out[0], ESP_FDATA); esp 1920 drivers/scsi/esp_scsi.c scsi_esp_cmd(esp, ESP_CMD_TI); esp 1921 drivers/scsi/esp_scsi.c } else if (esp->flags & ESP_FLAG_USE_FIFO) { esp 1922 drivers/scsi/esp_scsi.c for (i = 0; i < esp->msg_out_len; i++) esp 1923 drivers/scsi/esp_scsi.c esp_write8(esp->msg_out[i], ESP_FDATA); esp 1924 drivers/scsi/esp_scsi.c scsi_esp_cmd(esp, ESP_CMD_TI); esp 1927 drivers/scsi/esp_scsi.c memcpy(esp->command_block, esp 1928 drivers/scsi/esp_scsi.c esp->msg_out, esp 1929 drivers/scsi/esp_scsi.c esp->msg_out_len); esp 1931 drivers/scsi/esp_scsi.c esp->ops->send_dma_cmd(esp, esp 1932 drivers/scsi/esp_scsi.c esp->command_block_dma, esp 1933 drivers/scsi/esp_scsi.c esp->msg_out_len, esp 1934 drivers/scsi/esp_scsi.c esp->msg_out_len, esp 1939 drivers/scsi/esp_scsi.c esp_event(esp, ESP_EVENT_MSGOUT_DONE); esp 1943 drivers/scsi/esp_scsi.c if (esp->rev == FASHME) { esp 1944 drivers/scsi/esp_scsi.c scsi_esp_cmd(esp, ESP_CMD_FLUSH); esp 1946 drivers/scsi/esp_scsi.c if (esp->msg_out_len > 1) esp 1947 drivers/scsi/esp_scsi.c esp->ops->dma_invalidate(esp); esp 1952 drivers/scsi/esp_scsi.c if (!(esp->ireg & ESP_INTR_DC)) esp 1953 drivers/scsi/esp_scsi.c scsi_esp_cmd(esp, ESP_CMD_NULL); esp 1956 drivers/scsi/esp_scsi.c esp->msg_out_len = 0; esp 1958 drivers/scsi/esp_scsi.c esp_event(esp, ESP_EVENT_CHECK_PHASE); esp 1961 drivers/scsi/esp_scsi.c if (esp->ireg & ESP_INTR_BSERV) { esp 1962 drivers/scsi/esp_scsi.c if (esp->rev == FASHME) { esp 1965 drivers/scsi/esp_scsi.c scsi_esp_cmd(esp, ESP_CMD_FLUSH); esp 1967 drivers/scsi/esp_scsi.c scsi_esp_cmd(esp, ESP_CMD_FLUSH); esp 1968 drivers/scsi/esp_scsi.c if (esp->rev == ESP100) esp 1969 drivers/scsi/esp_scsi.c scsi_esp_cmd(esp, ESP_CMD_NULL); esp 1971 drivers/scsi/esp_scsi.c scsi_esp_cmd(esp, ESP_CMD_TI); esp 1972 drivers/scsi/esp_scsi.c esp->flags |= ESP_FLAG_QUICKIRQ_CHECK; esp 1975 drivers/scsi/esp_scsi.c if (esp->ireg & ESP_INTR_FDONE) { esp 1978 drivers/scsi/esp_scsi.c if (esp->rev == FASHME) esp 1979 drivers/scsi/esp_scsi.c val = esp->fifo[0]; esp 1982 drivers/scsi/esp_scsi.c esp->msg_in[esp->msg_in_len++] = val; esp 1986 drivers/scsi/esp_scsi.c if (!esp_msgin_process(esp)) esp 1987 drivers/scsi/esp_scsi.c esp->msg_in_len = 0; esp 1989 drivers/scsi/esp_scsi.c if (esp->rev == FASHME) esp 1990 drivers/scsi/esp_scsi.c scsi_esp_cmd(esp, ESP_CMD_FLUSH); esp 1992 drivers/scsi/esp_scsi.c scsi_esp_cmd(esp, ESP_CMD_MOK); esp 1995 drivers/scsi/esp_scsi.c if (esp->event == ESP_EVENT_RESET) esp 1998 drivers/scsi/esp_scsi.c if (esp->event != ESP_EVENT_FREE_BUS) esp 1999 drivers/scsi/esp_scsi.c esp_event(esp, ESP_EVENT_CHECK_PHASE); esp 2001 drivers/scsi/esp_scsi.c shost_printk(KERN_INFO, esp->host, esp 2003 drivers/scsi/esp_scsi.c esp_schedule_reset(esp); esp 2008 drivers/scsi/esp_scsi.c memcpy(esp->command_block, esp->cmd_bytes_ptr, esp 2009 drivers/scsi/esp_scsi.c esp->cmd_bytes_left); esp 2010 drivers/scsi/esp_scsi.c esp_send_dma_cmd(esp, esp->cmd_bytes_left, 16, ESP_CMD_TI); esp 2011 drivers/scsi/esp_scsi.c esp_event(esp, ESP_EVENT_CMD_DONE); esp 2012 drivers/scsi/esp_scsi.c esp->flags |= ESP_FLAG_QUICKIRQ_CHECK; esp 2015 drivers/scsi/esp_scsi.c esp->ops->dma_invalidate(esp); esp 2016 drivers/scsi/esp_scsi.c if (esp->ireg & ESP_INTR_BSERV) { esp 2017 drivers/scsi/esp_scsi.c esp_event(esp, ESP_EVENT_CHECK_PHASE); esp 2020 drivers/scsi/esp_scsi.c esp_schedule_reset(esp); esp 2024 drivers/scsi/esp_scsi.c scsi_esp_cmd(esp, ESP_CMD_RS); esp 2028 drivers/scsi/esp_scsi.c shost_printk(KERN_INFO, esp->host, esp 2029 drivers/scsi/esp_scsi.c "Unexpected event %x, resetting\n", esp->event); esp 2030 drivers/scsi/esp_scsi.c esp_schedule_reset(esp); esp 2036 drivers/scsi/esp_scsi.c static void esp_reset_cleanup_one(struct esp *esp, struct esp_cmd_entry *ent) esp 2040 drivers/scsi/esp_scsi.c esp_unmap_dma(esp, cmd); esp 2045 drivers/scsi/esp_scsi.c esp_unmap_sense(esp, ent); esp 2049 drivers/scsi/esp_scsi.c esp_put_ent(esp, ent); esp 2060 drivers/scsi/esp_scsi.c static void esp_reset_cleanup(struct esp *esp) esp 2065 drivers/scsi/esp_scsi.c list_for_each_entry_safe(ent, tmp, &esp->queued_cmds, list) { esp 2071 drivers/scsi/esp_scsi.c esp_put_ent(esp, ent); esp 2074 drivers/scsi/esp_scsi.c list_for_each_entry_safe(ent, tmp, &esp->active_cmds, list) { esp 2075 drivers/scsi/esp_scsi.c if (ent == esp->active_cmd) esp 2076 drivers/scsi/esp_scsi.c esp->active_cmd = NULL; esp 2077 drivers/scsi/esp_scsi.c esp_reset_cleanup_one(esp, ent); esp 2080 drivers/scsi/esp_scsi.c BUG_ON(esp->active_cmd != NULL); esp 2084 drivers/scsi/esp_scsi.c struct esp_target_data *tp = &esp->target[i]; esp 2098 drivers/scsi/esp_scsi.c esp->flags &= ~ESP_FLAG_RESETTING; esp 2102 drivers/scsi/esp_scsi.c static void __esp_interrupt(struct esp *esp) esp 2110 drivers/scsi/esp_scsi.c esp->sreg = esp_read8(ESP_STATUS); esp 2111 drivers/scsi/esp_scsi.c esp->seqreg = esp_read8(ESP_SSTEP); esp 2112 drivers/scsi/esp_scsi.c esp->ireg = esp_read8(ESP_INTRPT); esp 2114 drivers/scsi/esp_scsi.c if (esp->flags & ESP_FLAG_RESETTING) { esp 2117 drivers/scsi/esp_scsi.c if (esp_check_gross_error(esp)) esp 2120 drivers/scsi/esp_scsi.c finish_reset = esp_check_spur_intr(esp); esp 2125 drivers/scsi/esp_scsi.c if (esp->ireg & ESP_INTR_SR) esp 2129 drivers/scsi/esp_scsi.c esp_reset_cleanup(esp); esp 2130 drivers/scsi/esp_scsi.c if (esp->eh_reset) { esp 2131 drivers/scsi/esp_scsi.c complete(esp->eh_reset); esp 2132 drivers/scsi/esp_scsi.c esp->eh_reset = NULL; esp 2137 drivers/scsi/esp_scsi.c phase = (esp->sreg & ESP_STAT_PMASK); esp 2138 drivers/scsi/esp_scsi.c if (esp->rev == FASHME) { esp 2140 drivers/scsi/esp_scsi.c esp->select_state == ESP_SELECT_NONE && esp 2141 drivers/scsi/esp_scsi.c esp->event != ESP_EVENT_STATUS && esp 2142 drivers/scsi/esp_scsi.c esp->event != ESP_EVENT_DATA_DONE) || esp 2143 drivers/scsi/esp_scsi.c (esp->ireg & ESP_INTR_RSEL)) { esp 2144 drivers/scsi/esp_scsi.c esp->sreg2 = esp_read8(ESP_STATUS2); esp 2145 drivers/scsi/esp_scsi.c if (!(esp->sreg2 & ESP_STAT2_FEMPTY) || esp 2146 drivers/scsi/esp_scsi.c (esp->sreg2 & ESP_STAT2_F1BYTE)) esp 2147 drivers/scsi/esp_scsi.c hme_read_fifo(esp); esp 2153 drivers/scsi/esp_scsi.c esp->sreg, esp->seqreg, esp->sreg2, esp->ireg); esp 2157 drivers/scsi/esp_scsi.c if (esp->ireg & (ESP_INTR_S | ESP_INTR_SATN | ESP_INTR_IC)) { esp 2158 drivers/scsi/esp_scsi.c shost_printk(KERN_INFO, esp->host, esp 2159 drivers/scsi/esp_scsi.c "unexpected IREG %02x\n", esp->ireg); esp 2160 drivers/scsi/esp_scsi.c if (esp->ireg & ESP_INTR_IC) esp 2161 drivers/scsi/esp_scsi.c esp_dump_cmd_log(esp); esp 2163 drivers/scsi/esp_scsi.c esp_schedule_reset(esp); esp 2165 drivers/scsi/esp_scsi.c if (esp->ireg & ESP_INTR_RSEL) { esp 2166 drivers/scsi/esp_scsi.c if (esp->active_cmd) esp 2167 drivers/scsi/esp_scsi.c (void) esp_finish_select(esp); esp 2168 drivers/scsi/esp_scsi.c intr_done = esp_reconnect(esp); esp 2171 drivers/scsi/esp_scsi.c if (esp->select_state != ESP_SELECT_NONE) esp 2172 drivers/scsi/esp_scsi.c intr_done = esp_finish_select(esp); esp 2176 drivers/scsi/esp_scsi.c intr_done = esp_process_event(esp); esp 2181 drivers/scsi/esp_scsi.c struct esp *esp = dev_id; esp 2185 drivers/scsi/esp_scsi.c spin_lock_irqsave(esp->host->host_lock, flags); esp 2187 drivers/scsi/esp_scsi.c if (esp->ops->irq_pending(esp)) { esp 2192 drivers/scsi/esp_scsi.c __esp_interrupt(esp); esp 2193 drivers/scsi/esp_scsi.c if (!(esp->flags & ESP_FLAG_QUICKIRQ_CHECK)) esp 2195 drivers/scsi/esp_scsi.c esp->flags &= ~ESP_FLAG_QUICKIRQ_CHECK; esp 2198 drivers/scsi/esp_scsi.c if (esp->ops->irq_pending(esp)) esp 2205 drivers/scsi/esp_scsi.c spin_unlock_irqrestore(esp->host->host_lock, flags); esp 2211 drivers/scsi/esp_scsi.c static void esp_get_revision(struct esp *esp) esp 2215 drivers/scsi/esp_scsi.c esp->config1 = (ESP_CONFIG1_PENABLE | (esp->scsi_id & 7)); esp 2216 drivers/scsi/esp_scsi.c if (esp->config2 == 0) { esp 2217 drivers/scsi/esp_scsi.c esp->config2 = (ESP_CONFIG2_SCSI2ENAB | ESP_CONFIG2_REGPARITY); esp 2218 drivers/scsi/esp_scsi.c esp_write8(esp->config2, ESP_CFG2); esp 2223 drivers/scsi/esp_scsi.c esp->config2 = 0; esp 2230 drivers/scsi/esp_scsi.c esp->rev = ESP100; esp 2235 drivers/scsi/esp_scsi.c esp_set_all_config3(esp, 5); esp 2236 drivers/scsi/esp_scsi.c esp->prev_cfg3 = 5; esp 2237 drivers/scsi/esp_scsi.c esp_write8(esp->config2, ESP_CFG2); esp 2239 drivers/scsi/esp_scsi.c esp_write8(esp->prev_cfg3, ESP_CFG3); esp 2246 drivers/scsi/esp_scsi.c esp->rev = ESP100A; esp 2248 drivers/scsi/esp_scsi.c esp_set_all_config3(esp, 0); esp 2249 drivers/scsi/esp_scsi.c esp->prev_cfg3 = 0; esp 2250 drivers/scsi/esp_scsi.c esp_write8(esp->prev_cfg3, ESP_CFG3); esp 2255 drivers/scsi/esp_scsi.c if (esp->cfact == 0 || esp->cfact > ESP_CCF_F5) { esp 2256 drivers/scsi/esp_scsi.c esp->rev = FAST; esp 2257 drivers/scsi/esp_scsi.c esp->sync_defp = SYNC_DEFP_FAST; esp 2259 drivers/scsi/esp_scsi.c esp->rev = ESP236; esp 2264 drivers/scsi/esp_scsi.c static void esp_init_swstate(struct esp *esp) esp 2268 drivers/scsi/esp_scsi.c INIT_LIST_HEAD(&esp->queued_cmds); esp 2269 drivers/scsi/esp_scsi.c INIT_LIST_HEAD(&esp->active_cmds); esp 2270 drivers/scsi/esp_scsi.c INIT_LIST_HEAD(&esp->esp_cmd_pool); esp 2277 drivers/scsi/esp_scsi.c esp->target[i].flags = 0; esp 2278 drivers/scsi/esp_scsi.c esp->target[i].nego_goal_period = 0; esp 2279 drivers/scsi/esp_scsi.c esp->target[i].nego_goal_offset = 0; esp 2280 drivers/scsi/esp_scsi.c esp->target[i].nego_goal_width = 0; esp 2281 drivers/scsi/esp_scsi.c esp->target[i].nego_goal_tags = 0; esp 2286 drivers/scsi/esp_scsi.c static void esp_bootup_reset(struct esp *esp) esp 2291 drivers/scsi/esp_scsi.c esp->ops->reset_dma(esp); esp 2294 drivers/scsi/esp_scsi.c esp_reset_esp(esp); esp 2301 drivers/scsi/esp_scsi.c scsi_esp_cmd(esp, ESP_CMD_RS); esp 2304 drivers/scsi/esp_scsi.c esp_write8(esp->config1, ESP_CFG1); esp 2310 drivers/scsi/esp_scsi.c static void esp_set_clock_params(struct esp *esp) esp 2347 drivers/scsi/esp_scsi.c fhz = esp->cfreq; esp 2363 drivers/scsi/esp_scsi.c esp->cfact = (ccf == 8 ? 0 : ccf); esp 2364 drivers/scsi/esp_scsi.c esp->cfreq = fhz; esp 2365 drivers/scsi/esp_scsi.c esp->ccycle = ESP_HZ_TO_CYCLE(fhz); esp 2366 drivers/scsi/esp_scsi.c esp->ctick = ESP_TICK(ccf, esp->ccycle); esp 2367 drivers/scsi/esp_scsi.c esp->neg_defp = ESP_NEG_DEFP(fhz, ccf); esp 2368 drivers/scsi/esp_scsi.c esp->sync_defp = SYNC_DEFP_SLOW; esp 2384 drivers/scsi/esp_scsi.c int scsi_esp_register(struct esp *esp) esp 2389 drivers/scsi/esp_scsi.c if (!esp->num_tags) esp 2390 drivers/scsi/esp_scsi.c esp->num_tags = ESP_DEFAULT_TAGS; esp 2391 drivers/scsi/esp_scsi.c esp->host->transportt = esp_transport_template; esp 2392 drivers/scsi/esp_scsi.c esp->host->max_lun = ESP_MAX_LUN; esp 2393 drivers/scsi/esp_scsi.c esp->host->cmd_per_lun = 2; esp 2394 drivers/scsi/esp_scsi.c esp->host->unique_id = instance; esp 2396 drivers/scsi/esp_scsi.c esp_set_clock_params(esp); esp 2398 drivers/scsi/esp_scsi.c esp_get_revision(esp); esp 2400 drivers/scsi/esp_scsi.c esp_init_swstate(esp); esp 2402 drivers/scsi/esp_scsi.c esp_bootup_reset(esp); esp 2404 drivers/scsi/esp_scsi.c dev_printk(KERN_INFO, esp->dev, "esp%u: regs[%1p:%1p] irq[%u]\n", esp 2405 drivers/scsi/esp_scsi.c esp->host->unique_id, esp->regs, esp->dma_regs, esp 2406 drivers/scsi/esp_scsi.c esp->host->irq); esp 2407 drivers/scsi/esp_scsi.c dev_printk(KERN_INFO, esp->dev, esp 2409 drivers/scsi/esp_scsi.c esp->host->unique_id, esp_chip_names[esp->rev], esp 2410 drivers/scsi/esp_scsi.c esp->cfreq / 1000000, esp->cfact, esp->scsi_id); esp 2415 drivers/scsi/esp_scsi.c err = scsi_add_host(esp->host, esp->dev); esp 2421 drivers/scsi/esp_scsi.c scsi_scan_host(esp->host); esp 2427 drivers/scsi/esp_scsi.c void scsi_esp_unregister(struct esp *esp) esp 2429 drivers/scsi/esp_scsi.c scsi_remove_host(esp->host); esp 2435 drivers/scsi/esp_scsi.c struct esp *esp = shost_priv(dev_to_shost(&starget->dev)); esp 2436 drivers/scsi/esp_scsi.c struct esp_target_data *tp = &esp->target[starget->id]; esp 2445 drivers/scsi/esp_scsi.c struct esp *esp = shost_priv(dev_to_shost(&starget->dev)); esp 2446 drivers/scsi/esp_scsi.c struct esp_target_data *tp = &esp->target[starget->id]; esp 2453 drivers/scsi/esp_scsi.c struct esp *esp = shost_priv(dev->host); esp 2454 drivers/scsi/esp_scsi.c struct esp_target_data *tp = &esp->target[dev->id]; esp 2462 drivers/scsi/esp_scsi.c spi_min_period(tp->starget) = esp->min_period; esp 2465 drivers/scsi/esp_scsi.c if (esp->flags & ESP_FLAG_WIDE_CAPABLE) esp 2475 drivers/scsi/esp_scsi.c struct esp *esp = shost_priv(dev->host); esp 2476 drivers/scsi/esp_scsi.c struct esp_target_data *tp = &esp->target[dev->id]; esp 2479 drivers/scsi/esp_scsi.c scsi_change_queue_depth(dev, esp->num_tags); esp 2499 drivers/scsi/esp_scsi.c struct esp *esp = shost_priv(cmd->device->host); esp 2507 drivers/scsi/esp_scsi.c spin_lock_irqsave(esp->host->host_lock, flags); esp 2508 drivers/scsi/esp_scsi.c shost_printk(KERN_ERR, esp->host, "Aborting command [%p:%02x]\n", esp 2510 drivers/scsi/esp_scsi.c ent = esp->active_cmd; esp 2512 drivers/scsi/esp_scsi.c shost_printk(KERN_ERR, esp->host, esp 2515 drivers/scsi/esp_scsi.c list_for_each_entry(ent, &esp->queued_cmds, list) { esp 2516 drivers/scsi/esp_scsi.c shost_printk(KERN_ERR, esp->host, "Queued command [%p:%02x]\n", esp 2519 drivers/scsi/esp_scsi.c list_for_each_entry(ent, &esp->active_cmds, list) { esp 2520 drivers/scsi/esp_scsi.c shost_printk(KERN_ERR, esp->host, " Active command [%p:%02x]\n", esp 2523 drivers/scsi/esp_scsi.c esp_dump_cmd_log(esp); esp 2524 drivers/scsi/esp_scsi.c spin_unlock_irqrestore(esp->host->host_lock, flags); esp 2526 drivers/scsi/esp_scsi.c spin_lock_irqsave(esp->host->host_lock, flags); esp 2529 drivers/scsi/esp_scsi.c list_for_each_entry(tmp, &esp->queued_cmds, list) { esp 2545 drivers/scsi/esp_scsi.c esp_put_ent(esp, ent); esp 2552 drivers/scsi/esp_scsi.c ent = esp->active_cmd; esp 2558 drivers/scsi/esp_scsi.c if (esp->msg_out_len) esp 2564 drivers/scsi/esp_scsi.c esp->msg_out[0] = ABORT_TASK_SET; esp 2565 drivers/scsi/esp_scsi.c esp->msg_out_len = 1; esp 2568 drivers/scsi/esp_scsi.c scsi_esp_cmd(esp, ESP_CMD_SATN); esp 2589 drivers/scsi/esp_scsi.c spin_unlock_irqrestore(esp->host->host_lock, flags); esp 2592 drivers/scsi/esp_scsi.c spin_lock_irqsave(esp->host->host_lock, flags); esp 2594 drivers/scsi/esp_scsi.c spin_unlock_irqrestore(esp->host->host_lock, flags); esp 2602 drivers/scsi/esp_scsi.c spin_unlock_irqrestore(esp->host->host_lock, flags); esp 2610 drivers/scsi/esp_scsi.c spin_unlock_irqrestore(esp->host->host_lock, flags); esp 2616 drivers/scsi/esp_scsi.c struct esp *esp = shost_priv(cmd->device->host); esp 2622 drivers/scsi/esp_scsi.c spin_lock_irqsave(esp->host->host_lock, flags); esp 2624 drivers/scsi/esp_scsi.c esp->eh_reset = &eh_reset; esp 2631 drivers/scsi/esp_scsi.c esp->flags |= ESP_FLAG_RESETTING; esp 2632 drivers/scsi/esp_scsi.c scsi_esp_cmd(esp, ESP_CMD_RS); esp 2634 drivers/scsi/esp_scsi.c spin_unlock_irqrestore(esp->host->host_lock, flags); esp 2639 drivers/scsi/esp_scsi.c spin_lock_irqsave(esp->host->host_lock, flags); esp 2640 drivers/scsi/esp_scsi.c esp->eh_reset = NULL; esp 2641 drivers/scsi/esp_scsi.c spin_unlock_irqrestore(esp->host->host_lock, flags); esp 2652 drivers/scsi/esp_scsi.c struct esp *esp = shost_priv(cmd->device->host); esp 2655 drivers/scsi/esp_scsi.c spin_lock_irqsave(esp->host->host_lock, flags); esp 2656 drivers/scsi/esp_scsi.c esp_bootup_reset(esp); esp 2657 drivers/scsi/esp_scsi.c esp_reset_cleanup(esp); esp 2658 drivers/scsi/esp_scsi.c spin_unlock_irqrestore(esp->host->host_lock, flags); esp 2693 drivers/scsi/esp_scsi.c struct esp *esp = shost_priv(host); esp 2696 drivers/scsi/esp_scsi.c if (esp->flags & ESP_FLAG_DIFFERENTIAL) esp 2707 drivers/scsi/esp_scsi.c struct esp *esp = shost_priv(host); esp 2708 drivers/scsi/esp_scsi.c struct esp_target_data *tp = &esp->target[target->id]; esp 2710 drivers/scsi/esp_scsi.c if (esp->flags & ESP_FLAG_DISABLE_SYNC) esp 2720 drivers/scsi/esp_scsi.c struct esp *esp = shost_priv(host); esp 2721 drivers/scsi/esp_scsi.c struct esp_target_data *tp = &esp->target[target->id]; esp 2730 drivers/scsi/esp_scsi.c struct esp *esp = shost_priv(host); esp 2731 drivers/scsi/esp_scsi.c struct esp_target_data *tp = &esp->target[target->id]; esp 2793 drivers/scsi/esp_scsi.c static inline unsigned int esp_wait_for_fifo(struct esp *esp) esp 2806 drivers/scsi/esp_scsi.c shost_printk(KERN_ERR, esp->host, "FIFO is empty. sreg [%02x]\n", esp 2811 drivers/scsi/esp_scsi.c static inline int esp_wait_for_intr(struct esp *esp) esp 2816 drivers/scsi/esp_scsi.c esp->sreg = esp_read8(ESP_STATUS); esp 2817 drivers/scsi/esp_scsi.c if (esp->sreg & ESP_STAT_INTR) esp 2823 drivers/scsi/esp_scsi.c shost_printk(KERN_ERR, esp->host, "IRQ timeout. sreg [%02x]\n", esp 2824 drivers/scsi/esp_scsi.c esp->sreg); esp 2830 drivers/scsi/esp_scsi.c void esp_send_pio_cmd(struct esp *esp, u32 addr, u32 esp_count, esp 2833 drivers/scsi/esp_scsi.c u8 phase = esp->sreg & ESP_STAT_PMASK; esp 2836 drivers/scsi/esp_scsi.c esp->send_cmd_error = 0; esp 2842 drivers/scsi/esp_scsi.c scsi_esp_cmd(esp, cmd); esp 2845 drivers/scsi/esp_scsi.c if (!esp_wait_for_fifo(esp)) esp 2848 drivers/scsi/esp_scsi.c *dst++ = readb(esp->fifo_reg); esp 2854 drivers/scsi/esp_scsi.c if (esp_wait_for_intr(esp)) { esp 2855 drivers/scsi/esp_scsi.c esp->send_cmd_error = 1; esp 2859 drivers/scsi/esp_scsi.c if ((esp->sreg & ESP_STAT_PMASK) != phase) esp 2862 drivers/scsi/esp_scsi.c esp->ireg = esp_read8(ESP_INTRPT); esp 2863 drivers/scsi/esp_scsi.c if (esp->ireg & mask) { esp 2864 drivers/scsi/esp_scsi.c esp->send_cmd_error = 1; esp 2877 drivers/scsi/esp_scsi.c scsi_esp_cmd(esp, ESP_CMD_FLUSH); esp 2881 drivers/scsi/esp_scsi.c writesb(esp->fifo_reg, src, n); esp 2885 drivers/scsi/esp_scsi.c scsi_esp_cmd(esp, cmd); esp 2888 drivers/scsi/esp_scsi.c if (esp_wait_for_intr(esp)) { esp 2889 drivers/scsi/esp_scsi.c esp->send_cmd_error = 1; esp 2893 drivers/scsi/esp_scsi.c if ((esp->sreg & ESP_STAT_PMASK) != phase) esp 2896 drivers/scsi/esp_scsi.c esp->ireg = esp_read8(ESP_INTRPT); esp 2897 drivers/scsi/esp_scsi.c if (esp->ireg & ~ESP_INTR_BSERV) { esp 2898 drivers/scsi/esp_scsi.c esp->send_cmd_error = 1; esp 2907 drivers/scsi/esp_scsi.c writesb(esp->fifo_reg, src, n); esp 2915 drivers/scsi/esp_scsi.c esp->send_cmd_residual = esp_count; esp 355 drivers/scsi/esp_scsi.h struct esp; esp 361 drivers/scsi/esp_scsi.h void (*esp_write8)(struct esp *esp, u8 val, unsigned long reg); esp 362 drivers/scsi/esp_scsi.h u8 (*esp_read8)(struct esp *esp, unsigned long reg); esp 369 drivers/scsi/esp_scsi.h int (*irq_pending)(struct esp *esp); esp 374 drivers/scsi/esp_scsi.h u32 (*dma_length_limit)(struct esp *esp, u32 dma_addr, esp 381 drivers/scsi/esp_scsi.h void (*reset_dma)(struct esp *esp); esp 386 drivers/scsi/esp_scsi.h void (*dma_drain)(struct esp *esp); esp 389 drivers/scsi/esp_scsi.h void (*dma_invalidate)(struct esp *esp); esp 401 drivers/scsi/esp_scsi.h void (*send_dma_cmd)(struct esp *esp, u32 dma_addr, u32 esp_count, esp 407 drivers/scsi/esp_scsi.h int (*dma_error)(struct esp *esp); esp 566 drivers/scsi/esp_scsi.h extern int scsi_esp_register(struct esp *); esp 568 drivers/scsi/esp_scsi.h extern void scsi_esp_unregister(struct esp *); esp 570 drivers/scsi/esp_scsi.h extern void scsi_esp_cmd(struct esp *, u8); esp 572 drivers/scsi/esp_scsi.h extern void esp_send_pio_cmd(struct esp *esp, u32 dma_addr, u32 esp_count, esp 32 drivers/scsi/jazz_esp.c static void jazz_esp_write8(struct esp *esp, u8 val, unsigned long reg) esp 34 drivers/scsi/jazz_esp.c *(volatile u8 *)(esp->regs + reg) = val; esp 37 drivers/scsi/jazz_esp.c static u8 jazz_esp_read8(struct esp *esp, unsigned long reg) esp 39 drivers/scsi/jazz_esp.c return *(volatile u8 *)(esp->regs + reg); esp 42 drivers/scsi/jazz_esp.c static int jazz_esp_irq_pending(struct esp *esp) esp 44 drivers/scsi/jazz_esp.c if (jazz_esp_read8(esp, ESP_STATUS) & ESP_STAT_INTR) esp 49 drivers/scsi/jazz_esp.c static void jazz_esp_reset_dma(struct esp *esp) esp 51 drivers/scsi/jazz_esp.c vdma_disable ((int)esp->dma_regs); esp 54 drivers/scsi/jazz_esp.c static void jazz_esp_dma_drain(struct esp *esp) esp 59 drivers/scsi/jazz_esp.c static void jazz_esp_dma_invalidate(struct esp *esp) esp 61 drivers/scsi/jazz_esp.c vdma_disable ((int)esp->dma_regs); esp 64 drivers/scsi/jazz_esp.c static void jazz_esp_send_dma_cmd(struct esp *esp, u32 addr, u32 esp_count, esp 69 drivers/scsi/jazz_esp.c jazz_esp_write8(esp, (esp_count >> 0) & 0xff, ESP_TCLOW); esp 70 drivers/scsi/jazz_esp.c jazz_esp_write8(esp, (esp_count >> 8) & 0xff, ESP_TCMED); esp 71 drivers/scsi/jazz_esp.c vdma_disable ((int)esp->dma_regs); esp 73 drivers/scsi/jazz_esp.c vdma_set_mode ((int)esp->dma_regs, DMA_MODE_READ); esp 75 drivers/scsi/jazz_esp.c vdma_set_mode ((int)esp->dma_regs, DMA_MODE_WRITE); esp 77 drivers/scsi/jazz_esp.c vdma_set_addr ((int)esp->dma_regs, addr); esp 78 drivers/scsi/jazz_esp.c vdma_set_count ((int)esp->dma_regs, dma_count); esp 79 drivers/scsi/jazz_esp.c vdma_enable ((int)esp->dma_regs); esp 81 drivers/scsi/jazz_esp.c scsi_esp_cmd(esp, cmd); esp 84 drivers/scsi/jazz_esp.c static int jazz_esp_dma_error(struct esp *esp) esp 86 drivers/scsi/jazz_esp.c u32 enable = vdma_get_enable((int)esp->dma_regs); esp 109 drivers/scsi/jazz_esp.c struct esp *esp; esp 113 drivers/scsi/jazz_esp.c host = scsi_host_alloc(tpnt, sizeof(struct esp)); esp 120 drivers/scsi/jazz_esp.c esp = shost_priv(host); esp 122 drivers/scsi/jazz_esp.c esp->host = host; esp 123 drivers/scsi/jazz_esp.c esp->dev = &dev->dev; esp 124 drivers/scsi/jazz_esp.c esp->ops = &jazz_esp_ops; esp 130 drivers/scsi/jazz_esp.c esp->regs = (void __iomem *)res->start; esp 131 drivers/scsi/jazz_esp.c if (!esp->regs) esp 138 drivers/scsi/jazz_esp.c esp->dma_regs = (void __iomem *)res->start; esp 140 drivers/scsi/jazz_esp.c esp->command_block = dma_alloc_coherent(esp->dev, 16, esp 141 drivers/scsi/jazz_esp.c &esp->command_block_dma, esp 143 drivers/scsi/jazz_esp.c if (!esp->command_block) esp 147 drivers/scsi/jazz_esp.c err = request_irq(host->irq, scsi_esp_intr, IRQF_SHARED, "ESP", esp); esp 151 drivers/scsi/jazz_esp.c esp->scsi_id = 7; esp 152 drivers/scsi/jazz_esp.c esp->host->this_id = esp->scsi_id; esp 153 drivers/scsi/jazz_esp.c esp->scsi_id_mask = (1 << esp->scsi_id); esp 154 drivers/scsi/jazz_esp.c esp->cfreq = 40000000; esp 156 drivers/scsi/jazz_esp.c dev_set_drvdata(&dev->dev, esp); esp 158 drivers/scsi/jazz_esp.c err = scsi_esp_register(esp); esp 165 drivers/scsi/jazz_esp.c free_irq(host->irq, esp); esp 167 drivers/scsi/jazz_esp.c dma_free_coherent(esp->dev, 16, esp 168 drivers/scsi/jazz_esp.c esp->command_block, esp 169 drivers/scsi/jazz_esp.c esp->command_block_dma); esp 179 drivers/scsi/jazz_esp.c struct esp *esp = dev_get_drvdata(&dev->dev); esp 180 drivers/scsi/jazz_esp.c unsigned int irq = esp->host->irq; esp 182 drivers/scsi/jazz_esp.c scsi_esp_unregister(esp); esp 184 drivers/scsi/jazz_esp.c free_irq(irq, esp); esp 185 drivers/scsi/jazz_esp.c dma_free_coherent(esp->dev, 16, esp 186 drivers/scsi/jazz_esp.c esp->command_block, esp 187 drivers/scsi/jazz_esp.c esp->command_block_dma); esp 189 drivers/scsi/jazz_esp.c scsi_host_put(esp->host); esp 49 drivers/scsi/mac_esp.c #define esp_read8(REG) mac_esp_read8(esp, REG) esp 50 drivers/scsi/mac_esp.c #define esp_write8(VAL, REG) mac_esp_write8(esp, VAL, REG) esp 53 drivers/scsi/mac_esp.c struct esp *esp; esp 57 drivers/scsi/mac_esp.c static struct esp *esp_chips[2]; esp 60 drivers/scsi/mac_esp.c #define MAC_ESP_GET_PRIV(esp) ((struct mac_esp_priv *) \ esp 61 drivers/scsi/mac_esp.c dev_get_drvdata((esp)->dev)) esp 63 drivers/scsi/mac_esp.c static inline void mac_esp_write8(struct esp *esp, u8 val, unsigned long reg) esp 65 drivers/scsi/mac_esp.c nubus_writeb(val, esp->regs + reg * 16); esp 68 drivers/scsi/mac_esp.c static inline u8 mac_esp_read8(struct esp *esp, unsigned long reg) esp 70 drivers/scsi/mac_esp.c return nubus_readb(esp->regs + reg * 16); esp 73 drivers/scsi/mac_esp.c static void mac_esp_reset_dma(struct esp *esp) esp 78 drivers/scsi/mac_esp.c static void mac_esp_dma_drain(struct esp *esp) esp 83 drivers/scsi/mac_esp.c static void mac_esp_dma_invalidate(struct esp *esp) esp 88 drivers/scsi/mac_esp.c static int mac_esp_dma_error(struct esp *esp) esp 90 drivers/scsi/mac_esp.c return esp->send_cmd_error; esp 93 drivers/scsi/mac_esp.c static inline int mac_esp_wait_for_empty_fifo(struct esp *esp) esp 109 drivers/scsi/mac_esp.c esp->send_cmd_error = 1; esp 113 drivers/scsi/mac_esp.c static inline int mac_esp_wait_for_dreq(struct esp *esp) esp 115 drivers/scsi/mac_esp.c struct mac_esp_priv *mep = MAC_ESP_GET_PRIV(esp); esp 135 drivers/scsi/mac_esp.c esp->send_cmd_error = 1; esp 197 drivers/scsi/mac_esp.c static void mac_esp_send_pdma_cmd(struct esp *esp, u32 addr, u32 esp_count, esp 200 drivers/scsi/mac_esp.c struct mac_esp_priv *mep = MAC_ESP_GET_PRIV(esp); esp 202 drivers/scsi/mac_esp.c esp->send_cmd_error = 0; esp 205 drivers/scsi/mac_esp.c scsi_esp_cmd(esp, ESP_CMD_FLUSH); esp 210 drivers/scsi/mac_esp.c scsi_esp_cmd(esp, cmd); esp 218 drivers/scsi/mac_esp.c if (mac_esp_wait_for_dreq(esp)) esp 230 drivers/scsi/mac_esp.c if (mac_esp_wait_for_empty_fifo(esp)) esp 240 drivers/scsi/mac_esp.c static int mac_esp_irq_pending(struct esp *esp) esp 247 drivers/scsi/mac_esp.c static u32 mac_esp_dma_length_limit(struct esp *esp, u32 dma_addr, u32 dma_len) esp 294 drivers/scsi/mac_esp.c struct esp *esp; esp 304 drivers/scsi/mac_esp.c host = scsi_host_alloc(tpnt, sizeof(struct esp)); esp 312 drivers/scsi/mac_esp.c esp = shost_priv(host); esp 314 drivers/scsi/mac_esp.c esp->host = host; esp 315 drivers/scsi/mac_esp.c esp->dev = &dev->dev; esp 317 drivers/scsi/mac_esp.c esp->command_block = kzalloc(16, GFP_KERNEL); esp 318 drivers/scsi/mac_esp.c if (!esp->command_block) esp 320 drivers/scsi/mac_esp.c esp->command_block_dma = (dma_addr_t)esp->command_block; esp 322 drivers/scsi/mac_esp.c esp->scsi_id = 7; esp 323 drivers/scsi/mac_esp.c host->this_id = esp->scsi_id; esp 324 drivers/scsi/mac_esp.c esp->scsi_id_mask = 1 << esp->scsi_id; esp 329 drivers/scsi/mac_esp.c mep->esp = esp; esp 334 drivers/scsi/mac_esp.c esp->cfreq = 16500000; esp 335 drivers/scsi/mac_esp.c esp->regs = (void __iomem *)MAC_ESP_REGS_QUADRA; esp 336 drivers/scsi/mac_esp.c mep->pdma_io = esp->regs + MAC_ESP_PDMA_IO_OFFSET; esp 340 drivers/scsi/mac_esp.c esp->cfreq = 25000000; esp 341 drivers/scsi/mac_esp.c esp->regs = (void __iomem *)(MAC_ESP_REGS_QUADRA2 + esp 343 drivers/scsi/mac_esp.c mep->pdma_io = esp->regs + MAC_ESP_PDMA_IO_OFFSET; esp 352 drivers/scsi/mac_esp.c esp->cfreq = 25000000; esp 353 drivers/scsi/mac_esp.c esp->regs = (void __iomem *)MAC_ESP_REGS_QUADRA3; esp 358 drivers/scsi/mac_esp.c esp->fifo_reg = esp->regs + ESP_FDATA * 16; esp 360 drivers/scsi/mac_esp.c esp->ops = &mac_esp_ops; esp 361 drivers/scsi/mac_esp.c esp->flags = ESP_FLAG_NO_DMA_MAP; esp 366 drivers/scsi/mac_esp.c esp->flags |= ESP_FLAG_DISABLE_SYNC; esp 383 drivers/scsi/mac_esp.c esp_chips[dev->id] = esp; esp 386 drivers/scsi/mac_esp.c err = scsi_esp_register(esp); esp 403 drivers/scsi/mac_esp.c kfree(esp->command_block); esp 413 drivers/scsi/mac_esp.c struct esp *esp = mep->esp; esp 414 drivers/scsi/mac_esp.c unsigned int irq = esp->host->irq; esp 416 drivers/scsi/mac_esp.c scsi_esp_unregister(esp); esp 428 drivers/scsi/mac_esp.c kfree(esp->command_block); esp 430 drivers/scsi/mac_esp.c scsi_host_put(esp->host); esp 44 drivers/scsi/sun3x_esp.c readl(esp->dma_regs + (REG)) esp 46 drivers/scsi/sun3x_esp.c writel((VAL), esp->dma_regs + (REG)) esp 49 drivers/scsi/sun3x_esp.c *(volatile u32 *)(esp->dma_regs + (REG)) esp 51 drivers/scsi/sun3x_esp.c do { *(volatile u32 *)(esp->dma_regs + (REG)) = (VAL); } while (0) esp 54 drivers/scsi/sun3x_esp.c static void sun3x_esp_write8(struct esp *esp, u8 val, unsigned long reg) esp 56 drivers/scsi/sun3x_esp.c writeb(val, esp->regs + (reg * 4UL)); esp 59 drivers/scsi/sun3x_esp.c static u8 sun3x_esp_read8(struct esp *esp, unsigned long reg) esp 61 drivers/scsi/sun3x_esp.c return readb(esp->regs + (reg * 4UL)); esp 64 drivers/scsi/sun3x_esp.c static int sun3x_esp_irq_pending(struct esp *esp) esp 71 drivers/scsi/sun3x_esp.c static void sun3x_esp_reset_dma(struct esp *esp) esp 84 drivers/scsi/sun3x_esp.c static void sun3x_esp_dma_drain(struct esp *esp) esp 99 drivers/scsi/sun3x_esp.c esp->host->unique_id); esp 106 drivers/scsi/sun3x_esp.c static void sun3x_esp_dma_invalidate(struct esp *esp) esp 115 drivers/scsi/sun3x_esp.c "invalidate!\n", esp->host->unique_id); esp 128 drivers/scsi/sun3x_esp.c static void sun3x_esp_send_dma_cmd(struct esp *esp, u32 addr, u32 esp_count, esp 135 drivers/scsi/sun3x_esp.c sun3x_esp_write8(esp, (esp_count >> 0) & 0xff, ESP_TCLOW); esp 136 drivers/scsi/sun3x_esp.c sun3x_esp_write8(esp, (esp_count >> 8) & 0xff, ESP_TCMED); esp 146 drivers/scsi/sun3x_esp.c scsi_esp_cmd(esp, cmd); esp 149 drivers/scsi/sun3x_esp.c static int sun3x_esp_dma_error(struct esp *esp) esp 174 drivers/scsi/sun3x_esp.c struct esp *esp; esp 178 drivers/scsi/sun3x_esp.c host = scsi_host_alloc(tpnt, sizeof(struct esp)); esp 183 drivers/scsi/sun3x_esp.c esp = shost_priv(host); esp 185 drivers/scsi/sun3x_esp.c esp->host = host; esp 186 drivers/scsi/sun3x_esp.c esp->dev = &dev->dev; esp 187 drivers/scsi/sun3x_esp.c esp->ops = &sun3x_esp_ops; esp 193 drivers/scsi/sun3x_esp.c esp->regs = ioremap_nocache(res->start, 0x20); esp 194 drivers/scsi/sun3x_esp.c if (!esp->regs) esp 201 drivers/scsi/sun3x_esp.c esp->dma_regs = ioremap_nocache(res->start, 0x10); esp 203 drivers/scsi/sun3x_esp.c esp->command_block = dma_alloc_coherent(esp->dev, 16, esp 204 drivers/scsi/sun3x_esp.c &esp->command_block_dma, esp 206 drivers/scsi/sun3x_esp.c if (!esp->command_block) esp 211 drivers/scsi/sun3x_esp.c "SUN3X ESP", esp); esp 215 drivers/scsi/sun3x_esp.c esp->scsi_id = 7; esp 216 drivers/scsi/sun3x_esp.c esp->host->this_id = esp->scsi_id; esp 217 drivers/scsi/sun3x_esp.c esp->scsi_id_mask = (1 << esp->scsi_id); esp 218 drivers/scsi/sun3x_esp.c esp->cfreq = 20000000; esp 220 drivers/scsi/sun3x_esp.c dev_set_drvdata(&dev->dev, esp); esp 222 drivers/scsi/sun3x_esp.c err = scsi_esp_register(esp); esp 229 drivers/scsi/sun3x_esp.c free_irq(host->irq, esp); esp 231 drivers/scsi/sun3x_esp.c dma_free_coherent(esp->dev, 16, esp 232 drivers/scsi/sun3x_esp.c esp->command_block, esp 233 drivers/scsi/sun3x_esp.c esp->command_block_dma); esp 235 drivers/scsi/sun3x_esp.c iounmap(esp->dma_regs); esp 237 drivers/scsi/sun3x_esp.c iounmap(esp->regs); esp 246 drivers/scsi/sun3x_esp.c struct esp *esp = dev_get_drvdata(&dev->dev); esp 247 drivers/scsi/sun3x_esp.c unsigned int irq = esp->host->irq; esp 250 drivers/scsi/sun3x_esp.c scsi_esp_unregister(esp); esp 256 drivers/scsi/sun3x_esp.c free_irq(irq, esp); esp 257 drivers/scsi/sun3x_esp.c dma_free_coherent(esp->dev, 16, esp 258 drivers/scsi/sun3x_esp.c esp->command_block, esp 259 drivers/scsi/sun3x_esp.c esp->command_block_dma); esp 261 drivers/scsi/sun3x_esp.c scsi_host_put(esp->host); esp 32 drivers/scsi/sun_esp.c sbus_readl(esp->dma_regs + (REG)) esp 34 drivers/scsi/sun_esp.c sbus_writel((VAL), esp->dma_regs + (REG)) esp 47 drivers/scsi/sun_esp.c static int esp_sbus_setup_dma(struct esp *esp, struct platform_device *dma_of) esp 49 drivers/scsi/sun_esp.c esp->dma = dma_of; esp 51 drivers/scsi/sun_esp.c esp->dma_regs = of_ioremap(&dma_of->resource[0], 0, esp 54 drivers/scsi/sun_esp.c if (!esp->dma_regs) esp 59 drivers/scsi/sun_esp.c esp->dmarev = dvmarev0; esp 62 drivers/scsi/sun_esp.c esp->dmarev = dvmaesc1; esp 65 drivers/scsi/sun_esp.c esp->dmarev = dvmarev1; esp 68 drivers/scsi/sun_esp.c esp->dmarev = dvmarev2; esp 71 drivers/scsi/sun_esp.c esp->dmarev = dvmahme; esp 74 drivers/scsi/sun_esp.c esp->dmarev = dvmarevplus; esp 82 drivers/scsi/sun_esp.c static int esp_sbus_map_regs(struct esp *esp, int hme) esp 84 drivers/scsi/sun_esp.c struct platform_device *op = to_platform_device(esp->dev); esp 95 drivers/scsi/sun_esp.c esp->regs = of_ioremap(res, 0, SBUS_ESP_REG_SIZE, "ESP"); esp 96 drivers/scsi/sun_esp.c if (!esp->regs) esp 102 drivers/scsi/sun_esp.c static int esp_sbus_map_command_block(struct esp *esp) esp 104 drivers/scsi/sun_esp.c esp->command_block = dma_alloc_coherent(esp->dev, 16, esp 105 drivers/scsi/sun_esp.c &esp->command_block_dma, esp 107 drivers/scsi/sun_esp.c if (!esp->command_block) esp 112 drivers/scsi/sun_esp.c static int esp_sbus_register_irq(struct esp *esp) esp 114 drivers/scsi/sun_esp.c struct Scsi_Host *host = esp->host; esp 115 drivers/scsi/sun_esp.c struct platform_device *op = to_platform_device(esp->dev); esp 118 drivers/scsi/sun_esp.c return request_irq(host->irq, scsi_esp_intr, IRQF_SHARED, "ESP", esp); esp 121 drivers/scsi/sun_esp.c static void esp_get_scsi_id(struct esp *esp, struct platform_device *espdma) esp 123 drivers/scsi/sun_esp.c struct platform_device *op = to_platform_device(esp->dev); esp 127 drivers/scsi/sun_esp.c esp->scsi_id = of_getintprop_default(dp, "initiator-id", 0xff); esp 128 drivers/scsi/sun_esp.c if (esp->scsi_id != 0xff) esp 131 drivers/scsi/sun_esp.c esp->scsi_id = of_getintprop_default(dp, "scsi-initiator-id", 0xff); esp 132 drivers/scsi/sun_esp.c if (esp->scsi_id != 0xff) esp 135 drivers/scsi/sun_esp.c esp->scsi_id = of_getintprop_default(espdma->dev.of_node, esp 139 drivers/scsi/sun_esp.c esp->host->this_id = esp->scsi_id; esp 140 drivers/scsi/sun_esp.c esp->scsi_id_mask = (1 << esp->scsi_id); esp 143 drivers/scsi/sun_esp.c static void esp_get_differential(struct esp *esp) esp 145 drivers/scsi/sun_esp.c struct platform_device *op = to_platform_device(esp->dev); esp 150 drivers/scsi/sun_esp.c esp->flags |= ESP_FLAG_DIFFERENTIAL; esp 152 drivers/scsi/sun_esp.c esp->flags &= ~ESP_FLAG_DIFFERENTIAL; esp 155 drivers/scsi/sun_esp.c static void esp_get_clock_params(struct esp *esp) esp 157 drivers/scsi/sun_esp.c struct platform_device *op = to_platform_device(esp->dev); esp 168 drivers/scsi/sun_esp.c esp->cfreq = fmhz; esp 171 drivers/scsi/sun_esp.c static void esp_get_bursts(struct esp *esp, struct platform_device *dma_of) esp 174 drivers/scsi/sun_esp.c struct platform_device *op = to_platform_device(esp->dev); esp 193 drivers/scsi/sun_esp.c esp->bursts = bursts; esp 196 drivers/scsi/sun_esp.c static void esp_sbus_get_props(struct esp *esp, struct platform_device *espdma) esp 198 drivers/scsi/sun_esp.c esp_get_scsi_id(esp, espdma); esp 199 drivers/scsi/sun_esp.c esp_get_differential(esp); esp 200 drivers/scsi/sun_esp.c esp_get_clock_params(esp); esp 201 drivers/scsi/sun_esp.c esp_get_bursts(esp, espdma); esp 204 drivers/scsi/sun_esp.c static void sbus_esp_write8(struct esp *esp, u8 val, unsigned long reg) esp 206 drivers/scsi/sun_esp.c sbus_writeb(val, esp->regs + (reg * 4UL)); esp 209 drivers/scsi/sun_esp.c static u8 sbus_esp_read8(struct esp *esp, unsigned long reg) esp 211 drivers/scsi/sun_esp.c return sbus_readb(esp->regs + (reg * 4UL)); esp 214 drivers/scsi/sun_esp.c static int sbus_esp_irq_pending(struct esp *esp) esp 221 drivers/scsi/sun_esp.c static void sbus_esp_reset_dma(struct esp *esp) esp 225 drivers/scsi/sun_esp.c struct platform_device *op = to_platform_device(esp->dev); esp 228 drivers/scsi/sun_esp.c can_do_burst16 = (esp->bursts & DMA_BURST16) != 0; esp 229 drivers/scsi/sun_esp.c can_do_burst32 = (esp->bursts & DMA_BURST32) != 0; esp 235 drivers/scsi/sun_esp.c can_do_burst64 = (esp->bursts & DMA_BURST64) != 0; esp 238 drivers/scsi/sun_esp.c if (esp->dmarev != dvmahme) { esp 243 drivers/scsi/sun_esp.c switch (esp->dmarev) { esp 248 drivers/scsi/sun_esp.c esp->prev_hme_dmacsr = (DMA_PARITY_OFF | DMA_2CLKS | esp 251 drivers/scsi/sun_esp.c esp->prev_hme_dmacsr &= ~(DMA_ENABLE | DMA_ST_WRITE | esp 255 drivers/scsi/sun_esp.c esp->prev_hme_dmacsr |= DMA_BRST64; esp 257 drivers/scsi/sun_esp.c esp->prev_hme_dmacsr |= DMA_BRST32; esp 260 drivers/scsi/sun_esp.c esp->prev_hme_dmacsr |= DMA_SCSI_SBUS64; esp 261 drivers/scsi/sun_esp.c sbus_set_sbus64(&op->dev, esp->bursts); esp 269 drivers/scsi/sun_esp.c esp->host->unique_id); esp 276 drivers/scsi/sun_esp.c dma_write32(esp->prev_hme_dmacsr, DMA_CSR); esp 282 drivers/scsi/sun_esp.c if (esp->rev != ESP100) { esp 320 drivers/scsi/sun_esp.c static void sbus_esp_dma_drain(struct esp *esp) esp 325 drivers/scsi/sun_esp.c if (esp->dmarev == dvmahme) esp 332 drivers/scsi/sun_esp.c if (esp->dmarev != dvmarev3 && esp->dmarev != dvmaesc1) esp 339 drivers/scsi/sun_esp.c esp->host->unique_id); esp 346 drivers/scsi/sun_esp.c static void sbus_esp_dma_invalidate(struct esp *esp) esp 348 drivers/scsi/sun_esp.c if (esp->dmarev == dvmahme) { esp 351 drivers/scsi/sun_esp.c esp->prev_hme_dmacsr = ((esp->prev_hme_dmacsr | esp 357 drivers/scsi/sun_esp.c dma_write32(esp->prev_hme_dmacsr, DMA_CSR); esp 371 drivers/scsi/sun_esp.c "invalidate!\n", esp->host->unique_id); esp 385 drivers/scsi/sun_esp.c static void sbus_esp_send_dma_cmd(struct esp *esp, u32 addr, u32 esp_count, esp 392 drivers/scsi/sun_esp.c sbus_esp_write8(esp, (esp_count >> 0) & 0xff, ESP_TCLOW); esp 393 drivers/scsi/sun_esp.c sbus_esp_write8(esp, (esp_count >> 8) & 0xff, ESP_TCMED); esp 394 drivers/scsi/sun_esp.c if (esp->rev == FASHME) { esp 395 drivers/scsi/sun_esp.c sbus_esp_write8(esp, (esp_count >> 16) & 0xff, FAS_RLO); esp 396 drivers/scsi/sun_esp.c sbus_esp_write8(esp, 0, FAS_RHI); esp 398 drivers/scsi/sun_esp.c scsi_esp_cmd(esp, cmd); esp 400 drivers/scsi/sun_esp.c csr = esp->prev_hme_dmacsr; esp 406 drivers/scsi/sun_esp.c esp->prev_hme_dmacsr = csr; esp 419 drivers/scsi/sun_esp.c if (esp->dmarev == dvmaesc1) { esp 425 drivers/scsi/sun_esp.c scsi_esp_cmd(esp, cmd); esp 430 drivers/scsi/sun_esp.c static int sbus_esp_dma_error(struct esp *esp) esp 456 drivers/scsi/sun_esp.c struct esp *esp; esp 459 drivers/scsi/sun_esp.c host = scsi_host_alloc(tpnt, sizeof(struct esp)); esp 466 drivers/scsi/sun_esp.c esp = shost_priv(host); esp 468 drivers/scsi/sun_esp.c esp->host = host; esp 469 drivers/scsi/sun_esp.c esp->dev = &op->dev; esp 470 drivers/scsi/sun_esp.c esp->ops = &sbus_esp_ops; esp 473 drivers/scsi/sun_esp.c esp->flags |= ESP_FLAG_WIDE_CAPABLE; esp 475 drivers/scsi/sun_esp.c err = esp_sbus_setup_dma(esp, espdma); esp 479 drivers/scsi/sun_esp.c err = esp_sbus_map_regs(esp, hme); esp 483 drivers/scsi/sun_esp.c err = esp_sbus_map_command_block(esp); esp 487 drivers/scsi/sun_esp.c err = esp_sbus_register_irq(esp); esp 491 drivers/scsi/sun_esp.c esp_sbus_get_props(esp, espdma); esp 497 drivers/scsi/sun_esp.c if (esp->dmarev == dvmaesc1) { esp 503 drivers/scsi/sun_esp.c dev_set_drvdata(&op->dev, esp); esp 505 drivers/scsi/sun_esp.c err = scsi_esp_register(esp); esp 512 drivers/scsi/sun_esp.c free_irq(host->irq, esp); esp 515 drivers/scsi/sun_esp.c esp->command_block, esp 516 drivers/scsi/sun_esp.c esp->command_block_dma); esp 518 drivers/scsi/sun_esp.c of_iounmap(&op->resource[(hme ? 1 : 0)], esp->regs, SBUS_ESP_REG_SIZE); esp 554 drivers/scsi/sun_esp.c struct esp *esp = dev_get_drvdata(&op->dev); esp 555 drivers/scsi/sun_esp.c struct platform_device *dma_of = esp->dma; esp 556 drivers/scsi/sun_esp.c unsigned int irq = esp->host->irq; esp 560 drivers/scsi/sun_esp.c scsi_esp_unregister(esp); esp 566 drivers/scsi/sun_esp.c free_irq(irq, esp); esp 568 drivers/scsi/sun_esp.c is_hme = (esp->dmarev == dvmahme); esp 571 drivers/scsi/sun_esp.c esp->command_block, esp 572 drivers/scsi/sun_esp.c esp->command_block_dma); esp 573 drivers/scsi/sun_esp.c of_iounmap(&op->resource[(is_hme ? 1 : 0)], esp->regs, esp 575 drivers/scsi/sun_esp.c of_iounmap(&dma_of->resource[0], esp->dma_regs, esp 578 drivers/scsi/sun_esp.c scsi_host_put(esp->host); esp 158 drivers/scsi/zorro_esp.c struct esp *esp; /* our ESP instance - for Scsi_host* */ esp 172 drivers/scsi/zorro_esp.c static void zorro_esp_write8(struct esp *esp, u8 val, unsigned long reg) esp 174 drivers/scsi/zorro_esp.c writeb(val, esp->regs + (reg * 4UL)); esp 177 drivers/scsi/zorro_esp.c static u8 zorro_esp_read8(struct esp *esp, unsigned long reg) esp 179 drivers/scsi/zorro_esp.c return readb(esp->regs + (reg * 4UL)); esp 182 drivers/scsi/zorro_esp.c static int zorro_esp_irq_pending(struct esp *esp) esp 185 drivers/scsi/zorro_esp.c if (zorro_esp_read8(esp, ESP_STATUS) & ESP_STAT_INTR) esp 191 drivers/scsi/zorro_esp.c static int cyber_esp_irq_pending(struct esp *esp) esp 193 drivers/scsi/zorro_esp.c struct cyber_dma_registers __iomem *dregs = esp->dma_regs; esp 197 drivers/scsi/zorro_esp.c return ((zorro_esp_read8(esp, ESP_STATUS) & ESP_STAT_INTR) && esp 201 drivers/scsi/zorro_esp.c static int fastlane_esp_irq_pending(struct esp *esp) esp 203 drivers/scsi/zorro_esp.c struct fastlane_dma_registers __iomem *dregs = esp->dma_regs; esp 215 drivers/scsi/zorro_esp.c (zorro_esp_read8(esp, ESP_STATUS) & ESP_STAT_INTR)); esp 218 drivers/scsi/zorro_esp.c static u32 zorro_esp_dma_length_limit(struct esp *esp, u32 dma_addr, esp 224 drivers/scsi/zorro_esp.c static u32 fastlane_esp_dma_length_limit(struct esp *esp, u32 dma_addr, esp 231 drivers/scsi/zorro_esp.c static void zorro_esp_reset_dma(struct esp *esp) esp 236 drivers/scsi/zorro_esp.c static void zorro_esp_dma_drain(struct esp *esp) esp 241 drivers/scsi/zorro_esp.c static void zorro_esp_dma_invalidate(struct esp *esp) esp 246 drivers/scsi/zorro_esp.c static void fastlane_esp_dma_invalidate(struct esp *esp) esp 248 drivers/scsi/zorro_esp.c struct zorro_esp_priv *zep = dev_get_drvdata(esp->dev); esp 249 drivers/scsi/zorro_esp.c struct fastlane_dma_registers __iomem *dregs = esp->dma_regs; esp 259 drivers/scsi/zorro_esp.c static void zorro_esp_send_blz1230_dma_cmd(struct esp *esp, u32 addr, esp 262 drivers/scsi/zorro_esp.c struct blz1230_dma_registers __iomem *dregs = esp->dma_regs; esp 263 drivers/scsi/zorro_esp.c u8 phase = esp->sreg & ESP_STAT_PMASK; esp 270 drivers/scsi/zorro_esp.c if (phase == ESP_MIP && addr == esp->command_block_dma) { esp 271 drivers/scsi/zorro_esp.c esp_send_pio_cmd(esp, (u32)esp->command_block, esp_count, esp 277 drivers/scsi/zorro_esp.c esp->send_cmd_error = 0; esp 278 drivers/scsi/zorro_esp.c esp->send_cmd_residual = 0; esp 282 drivers/scsi/zorro_esp.c dma_sync_single_for_device(esp->dev, addr, esp_count, esp 286 drivers/scsi/zorro_esp.c dma_sync_single_for_device(esp->dev, addr, esp_count, esp 301 drivers/scsi/zorro_esp.c scsi_esp_cmd(esp, ESP_CMD_DMA); esp 302 drivers/scsi/zorro_esp.c zorro_esp_write8(esp, (esp_count >> 0) & 0xff, ESP_TCLOW); esp 303 drivers/scsi/zorro_esp.c zorro_esp_write8(esp, (esp_count >> 8) & 0xff, ESP_TCMED); esp 305 drivers/scsi/zorro_esp.c scsi_esp_cmd(esp, cmd); esp 310 drivers/scsi/zorro_esp.c static void zorro_esp_send_blz1230II_dma_cmd(struct esp *esp, u32 addr, esp 313 drivers/scsi/zorro_esp.c struct blz1230II_dma_registers __iomem *dregs = esp->dma_regs; esp 314 drivers/scsi/zorro_esp.c u8 phase = esp->sreg & ESP_STAT_PMASK; esp 317 drivers/scsi/zorro_esp.c if (phase == ESP_MIP && addr == esp->command_block_dma) { esp 318 drivers/scsi/zorro_esp.c esp_send_pio_cmd(esp, (u32)esp->command_block, esp_count, esp 323 drivers/scsi/zorro_esp.c esp->send_cmd_error = 0; esp 324 drivers/scsi/zorro_esp.c esp->send_cmd_residual = 0; esp 328 drivers/scsi/zorro_esp.c dma_sync_single_for_device(esp->dev, addr, esp_count, esp 332 drivers/scsi/zorro_esp.c dma_sync_single_for_device(esp->dev, addr, esp_count, esp 346 drivers/scsi/zorro_esp.c scsi_esp_cmd(esp, ESP_CMD_DMA); esp 347 drivers/scsi/zorro_esp.c zorro_esp_write8(esp, (esp_count >> 0) & 0xff, ESP_TCLOW); esp 348 drivers/scsi/zorro_esp.c zorro_esp_write8(esp, (esp_count >> 8) & 0xff, ESP_TCMED); esp 350 drivers/scsi/zorro_esp.c scsi_esp_cmd(esp, cmd); esp 355 drivers/scsi/zorro_esp.c static void zorro_esp_send_blz2060_dma_cmd(struct esp *esp, u32 addr, esp 358 drivers/scsi/zorro_esp.c struct blz2060_dma_registers __iomem *dregs = esp->dma_regs; esp 359 drivers/scsi/zorro_esp.c u8 phase = esp->sreg & ESP_STAT_PMASK; esp 362 drivers/scsi/zorro_esp.c if (phase == ESP_MIP && addr == esp->command_block_dma) { esp 363 drivers/scsi/zorro_esp.c esp_send_pio_cmd(esp, (u32)esp->command_block, esp_count, esp 368 drivers/scsi/zorro_esp.c esp->send_cmd_error = 0; esp 369 drivers/scsi/zorro_esp.c esp->send_cmd_residual = 0; esp 373 drivers/scsi/zorro_esp.c dma_sync_single_for_device(esp->dev, addr, esp_count, esp 377 drivers/scsi/zorro_esp.c dma_sync_single_for_device(esp->dev, addr, esp_count, esp 391 drivers/scsi/zorro_esp.c scsi_esp_cmd(esp, ESP_CMD_DMA); esp 392 drivers/scsi/zorro_esp.c zorro_esp_write8(esp, (esp_count >> 0) & 0xff, ESP_TCLOW); esp 393 drivers/scsi/zorro_esp.c zorro_esp_write8(esp, (esp_count >> 8) & 0xff, ESP_TCMED); esp 395 drivers/scsi/zorro_esp.c scsi_esp_cmd(esp, cmd); esp 400 drivers/scsi/zorro_esp.c static void zorro_esp_send_cyber_dma_cmd(struct esp *esp, u32 addr, esp 403 drivers/scsi/zorro_esp.c struct zorro_esp_priv *zep = dev_get_drvdata(esp->dev); esp 404 drivers/scsi/zorro_esp.c struct cyber_dma_registers __iomem *dregs = esp->dma_regs; esp 405 drivers/scsi/zorro_esp.c u8 phase = esp->sreg & ESP_STAT_PMASK; esp 409 drivers/scsi/zorro_esp.c if (phase == ESP_MIP && addr == esp->command_block_dma) { esp 410 drivers/scsi/zorro_esp.c esp_send_pio_cmd(esp, (u32)esp->command_block, esp_count, esp 415 drivers/scsi/zorro_esp.c esp->send_cmd_error = 0; esp 416 drivers/scsi/zorro_esp.c esp->send_cmd_residual = 0; esp 418 drivers/scsi/zorro_esp.c zorro_esp_write8(esp, (esp_count >> 0) & 0xff, ESP_TCLOW); esp 419 drivers/scsi/zorro_esp.c zorro_esp_write8(esp, (esp_count >> 8) & 0xff, ESP_TCMED); esp 423 drivers/scsi/zorro_esp.c dma_sync_single_for_device(esp->dev, addr, esp_count, esp 428 drivers/scsi/zorro_esp.c dma_sync_single_for_device(esp->dev, addr, esp_count, esp 447 drivers/scsi/zorro_esp.c scsi_esp_cmd(esp, cmd); esp 452 drivers/scsi/zorro_esp.c static void zorro_esp_send_cyberII_dma_cmd(struct esp *esp, u32 addr, esp 455 drivers/scsi/zorro_esp.c struct cyberII_dma_registers __iomem *dregs = esp->dma_regs; esp 456 drivers/scsi/zorro_esp.c u8 phase = esp->sreg & ESP_STAT_PMASK; esp 459 drivers/scsi/zorro_esp.c if (phase == ESP_MIP && addr == esp->command_block_dma) { esp 460 drivers/scsi/zorro_esp.c esp_send_pio_cmd(esp, (u32)esp->command_block, esp_count, esp 465 drivers/scsi/zorro_esp.c esp->send_cmd_error = 0; esp 466 drivers/scsi/zorro_esp.c esp->send_cmd_residual = 0; esp 468 drivers/scsi/zorro_esp.c zorro_esp_write8(esp, (esp_count >> 0) & 0xff, ESP_TCLOW); esp 469 drivers/scsi/zorro_esp.c zorro_esp_write8(esp, (esp_count >> 8) & 0xff, ESP_TCMED); esp 473 drivers/scsi/zorro_esp.c dma_sync_single_for_device(esp->dev, addr, esp_count, esp 478 drivers/scsi/zorro_esp.c dma_sync_single_for_device(esp->dev, addr, esp_count, esp 488 drivers/scsi/zorro_esp.c scsi_esp_cmd(esp, cmd); esp 493 drivers/scsi/zorro_esp.c static void zorro_esp_send_fastlane_dma_cmd(struct esp *esp, u32 addr, esp 496 drivers/scsi/zorro_esp.c struct zorro_esp_priv *zep = dev_get_drvdata(esp->dev); esp 497 drivers/scsi/zorro_esp.c struct fastlane_dma_registers __iomem *dregs = esp->dma_regs; esp 498 drivers/scsi/zorro_esp.c u8 phase = esp->sreg & ESP_STAT_PMASK; esp 502 drivers/scsi/zorro_esp.c if (phase == ESP_MIP && addr == esp->command_block_dma) { esp 503 drivers/scsi/zorro_esp.c esp_send_pio_cmd(esp, (u32)esp->command_block, esp_count, esp 508 drivers/scsi/zorro_esp.c esp->send_cmd_error = 0; esp 509 drivers/scsi/zorro_esp.c esp->send_cmd_residual = 0; esp 511 drivers/scsi/zorro_esp.c zorro_esp_write8(esp, (esp_count >> 0) & 0xff, ESP_TCLOW); esp 512 drivers/scsi/zorro_esp.c zorro_esp_write8(esp, (esp_count >> 8) & 0xff, ESP_TCMED); esp 516 drivers/scsi/zorro_esp.c dma_sync_single_for_device(esp->dev, addr, esp_count, esp 521 drivers/scsi/zorro_esp.c dma_sync_single_for_device(esp->dev, addr, esp_count, esp 540 drivers/scsi/zorro_esp.c scsi_esp_cmd(esp, cmd); esp 543 drivers/scsi/zorro_esp.c static int zorro_esp_dma_error(struct esp *esp) esp 545 drivers/scsi/zorro_esp.c return esp->send_cmd_error; esp 718 drivers/scsi/zorro_esp.c struct esp *esp; esp 777 drivers/scsi/zorro_esp.c host = scsi_host_alloc(tpnt, sizeof(struct esp)); esp 788 drivers/scsi/zorro_esp.c esp = shost_priv(host); esp 789 drivers/scsi/zorro_esp.c esp->host = host; esp 790 drivers/scsi/zorro_esp.c esp->dev = &z->dev; esp 792 drivers/scsi/zorro_esp.c esp->scsi_id = host->this_id; esp 793 drivers/scsi/zorro_esp.c esp->scsi_id_mask = (1 << esp->scsi_id); esp 795 drivers/scsi/zorro_esp.c esp->cfreq = 40000000; esp 797 drivers/scsi/zorro_esp.c zep->esp = esp; esp 799 drivers/scsi/zorro_esp.c dev_set_drvdata(esp->dev, zep); esp 816 drivers/scsi/zorro_esp.c esp->ops = zdd->esp_ops; esp 819 drivers/scsi/zorro_esp.c esp->regs = ioremap_nocache(ioaddr, 0x20); esp 822 drivers/scsi/zorro_esp.c esp->regs = ZTWO_VADDR(ioaddr); esp 824 drivers/scsi/zorro_esp.c if (!esp->regs) { esp 829 drivers/scsi/zorro_esp.c esp->fifo_reg = esp->regs + ESP_FDATA * 4; esp 833 drivers/scsi/zorro_esp.c zorro_esp_write8(esp, (ESP_CONFIG1_PENABLE | 7), ESP_CFG1); esp 834 drivers/scsi/zorro_esp.c if (zorro_esp_read8(esp, ESP_CFG1) != (ESP_CONFIG1_PENABLE|7)) { esp 845 drivers/scsi/zorro_esp.c esp->dma_regs = ioremap_nocache(dmaaddr, esp 849 drivers/scsi/zorro_esp.c esp->dma_regs = ZTWO_VADDR(dmaaddr); esp 851 drivers/scsi/zorro_esp.c if (!esp->dma_regs) { esp 856 drivers/scsi/zorro_esp.c esp->command_block = dma_alloc_coherent(esp->dev, 16, esp 857 drivers/scsi/zorro_esp.c &esp->command_block_dma, esp 860 drivers/scsi/zorro_esp.c if (!esp->command_block) { esp 867 drivers/scsi/zorro_esp.c "Amiga Zorro ESP", esp); esp 874 drivers/scsi/zorro_esp.c err = scsi_esp_register(esp); esp 884 drivers/scsi/zorro_esp.c free_irq(host->irq, esp); esp 887 drivers/scsi/zorro_esp.c dma_free_coherent(esp->dev, 16, esp 888 drivers/scsi/zorro_esp.c esp->command_block, esp 889 drivers/scsi/zorro_esp.c esp->command_block_dma); esp 893 drivers/scsi/zorro_esp.c iounmap(esp->dma_regs); esp 897 drivers/scsi/zorro_esp.c iounmap(esp->regs); esp 918 drivers/scsi/zorro_esp.c struct esp *esp = zep->esp; esp 919 drivers/scsi/zorro_esp.c struct Scsi_Host *host = esp->host; esp 921 drivers/scsi/zorro_esp.c scsi_esp_unregister(esp); esp 923 drivers/scsi/zorro_esp.c free_irq(host->irq, esp); esp 924 drivers/scsi/zorro_esp.c dma_free_coherent(esp->dev, 16, esp 925 drivers/scsi/zorro_esp.c esp->command_block, esp 926 drivers/scsi/zorro_esp.c esp->command_block_dma); esp 930 drivers/scsi/zorro_esp.c iounmap(esp->dma_regs); esp 934 drivers/scsi/zorro_esp.c iounmap(esp->regs); esp 433 fs/proc/array.c unsigned long vsize, eip, esp, wchan = 0; esp 451 fs/proc/array.c vsize = eip = esp = 0; esp 468 fs/proc/array.c esp = KSTK_ESP(task); esp 568 fs/proc/array.c seq_put_decimal_ull(m, " ", esp); esp 426 include/linux/mlx5/mlx5_ifc_fpga.h u8 esp[0x1]; esp 27 include/net/esp.h int esp_output_head(struct xfrm_state *x, struct sk_buff *skb, struct esp_info *esp); esp 28 include/net/esp.h int esp_output_tail(struct xfrm_state *x, struct sk_buff *skb, struct esp_info *esp); esp 30 include/net/esp.h int esp6_output_head(struct xfrm_state *x, struct sk_buff *skb, struct esp_info *esp); esp 31 include/net/esp.h int esp6_output_tail(struct xfrm_state *x, struct sk_buff *skb, struct esp_info *esp); esp 2040 include/rdma/ib_verbs.h struct ib_flow_spec_esp esp; esp 17 include/uapi/video/uvesafb.h __u32 esp; esp 33 include/xen/interface/hvm/hvm_vcpu.h uint32_t esp; esp 228 net/ipv4/esp4.c static int esp_output_udp_encap(struct xfrm_state *x, struct sk_buff *skb, struct esp_info *esp) esp 235 net/ipv4/esp4.c struct ip_esp_hdr *esph = esp->esph; esp 244 net/ipv4/esp4.c len = skb->len + esp->tailen - skb_transport_offset(skb); esp 267 net/ipv4/esp4.c esp->esph = esph; esp 272 net/ipv4/esp4.c int esp_output_head(struct xfrm_state *x, struct sk_buff *skb, struct esp_info *esp) esp 280 net/ipv4/esp4.c int tailen = esp->tailen; esp 284 net/ipv4/esp4.c int err = esp_output_udp_encap(x, skb, esp); esp 303 net/ipv4/esp4.c esp->inplace = false; esp 321 net/ipv4/esp4.c esp_output_fill_trailer(tail, esp->tfclen, esp->plen, esp->proto); esp 348 net/ipv4/esp4.c esph_offset = (unsigned char *)esp->esph - skb_transport_header(skb); esp 354 net/ipv4/esp4.c esp->esph = (struct ip_esp_hdr *)(skb_transport_header(skb) + esph_offset); esp 357 net/ipv4/esp4.c esp_output_fill_trailer(tail, esp->tfclen, esp->plen, esp->proto); esp 365 net/ipv4/esp4.c int esp_output_tail(struct xfrm_state *x, struct sk_buff *skb, struct esp_info *esp) esp 393 net/ipv4/esp4.c tmp = esp_alloc_tmp(aead, esp->nfrags + 2, extralen); esp 402 net/ipv4/esp4.c if (esp->inplace) esp 405 net/ipv4/esp4.c dsg = &sg[esp->nfrags]; esp 407 net/ipv4/esp4.c esph = esp_output_set_extra(skb, x, esp->esph, extra); esp 408 net/ipv4/esp4.c esp->esph = esph; esp 410 net/ipv4/esp4.c sg_init_table(sg, esp->nfrags); esp 413 net/ipv4/esp4.c assoclen + ivlen + esp->clen + alen); esp 417 net/ipv4/esp4.c if (!esp->inplace) { esp 441 net/ipv4/esp4.c assoclen + ivlen + esp->clen + alen); esp 451 net/ipv4/esp4.c aead_request_set_crypt(req, sg, dsg, ivlen + esp->clen, iv); esp 455 net/ipv4/esp4.c memcpy(iv + ivlen - min(ivlen, 8), (u8 *)&esp->seqno + 8 - min(ivlen, 8), esp 490 net/ipv4/esp4.c struct esp_info esp; esp 492 net/ipv4/esp4.c esp.inplace = true; esp 494 net/ipv4/esp4.c esp.proto = *skb_mac_header(skb); esp 502 net/ipv4/esp4.c esp.tfclen = 0; esp 509 net/ipv4/esp4.c esp.tfclen = padto - skb->len; esp 512 net/ipv4/esp4.c esp.clen = ALIGN(skb->len + 2 + esp.tfclen, blksize); esp 513 net/ipv4/esp4.c esp.plen = esp.clen - skb->len - esp.tfclen; esp 514 net/ipv4/esp4.c esp.tailen = esp.tfclen + esp.plen + alen; esp 516 net/ipv4/esp4.c esp.esph = ip_esp_hdr(skb); esp 518 net/ipv4/esp4.c esp.nfrags = esp_output_head(x, skb, &esp); esp 519 net/ipv4/esp4.c if (esp.nfrags < 0) esp 520 net/ipv4/esp4.c return esp.nfrags; esp 522 net/ipv4/esp4.c esph = esp.esph; esp 526 net/ipv4/esp4.c esp.seqno = cpu_to_be64(XFRM_SKB_CB(skb)->seq.output.low + esp 531 net/ipv4/esp4.c return esp_output_tail(x, skb, &esp); esp 212 net/ipv4/esp4_offload.c struct esp_info esp; esp 216 net/ipv4/esp4_offload.c esp.inplace = true; esp 230 net/ipv4/esp4_offload.c esp.proto = xo->proto; esp 237 net/ipv4/esp4_offload.c esp.tfclen = 0; esp 241 net/ipv4/esp4_offload.c esp.clen = ALIGN(skb->len + 2 + esp.tfclen, blksize); esp 242 net/ipv4/esp4_offload.c esp.plen = esp.clen - skb->len - esp.tfclen; esp 243 net/ipv4/esp4_offload.c esp.tailen = esp.tfclen + esp.plen + alen; esp 245 net/ipv4/esp4_offload.c esp.esph = ip_esp_hdr(skb); esp 249 net/ipv4/esp4_offload.c esp.nfrags = esp_output_head(x, skb, &esp); esp 250 net/ipv4/esp4_offload.c if (esp.nfrags < 0) esp 251 net/ipv4/esp4_offload.c return esp.nfrags; esp 256 net/ipv4/esp4_offload.c esph = esp.esph; esp 270 net/ipv4/esp4_offload.c esp.seqno = cpu_to_be64(seq + ((u64)xo->seq.hi << 32)); esp 278 net/ipv4/esp4_offload.c err = esp_output_tail(x, skb, &esp); esp 226 net/ipv6/esp6.c int esp6_output_head(struct xfrm_state *x, struct sk_buff *skb, struct esp_info *esp) esp 233 net/ipv6/esp6.c int tailen = esp->tailen; esp 248 net/ipv6/esp6.c esp->inplace = false; esp 266 net/ipv6/esp6.c esp_output_fill_trailer(tail, esp->tfclen, esp->plen, esp->proto); esp 299 net/ipv6/esp6.c esp_output_fill_trailer(tail, esp->tfclen, esp->plen, esp->proto); esp 307 net/ipv6/esp6.c int esp6_output_tail(struct xfrm_state *x, struct sk_buff *skb, struct esp_info *esp) esp 335 net/ipv6/esp6.c tmp = esp_alloc_tmp(aead, esp->nfrags + 2, seqhilen); esp 344 net/ipv6/esp6.c if (esp->inplace) esp 347 net/ipv6/esp6.c dsg = &sg[esp->nfrags]; esp 351 net/ipv6/esp6.c sg_init_table(sg, esp->nfrags); esp 354 net/ipv6/esp6.c assoclen + ivlen + esp->clen + alen); esp 358 net/ipv6/esp6.c if (!esp->inplace) { esp 382 net/ipv6/esp6.c assoclen + ivlen + esp->clen + alen); esp 392 net/ipv6/esp6.c aead_request_set_crypt(req, sg, dsg, ivlen + esp->clen, iv); esp 396 net/ipv6/esp6.c memcpy(iv + ivlen - min(ivlen, 8), (u8 *)&esp->seqno + 8 - min(ivlen, 8), esp 431 net/ipv6/esp6.c struct esp_info esp; esp 433 net/ipv6/esp6.c esp.inplace = true; esp 435 net/ipv6/esp6.c esp.proto = *skb_mac_header(skb); esp 443 net/ipv6/esp6.c esp.tfclen = 0; esp 450 net/ipv6/esp6.c esp.tfclen = padto - skb->len; esp 453 net/ipv6/esp6.c esp.clen = ALIGN(skb->len + 2 + esp.tfclen, blksize); esp 454 net/ipv6/esp6.c esp.plen = esp.clen - skb->len - esp.tfclen; esp 455 net/ipv6/esp6.c esp.tailen = esp.tfclen + esp.plen + alen; esp 457 net/ipv6/esp6.c esp.nfrags = esp6_output_head(x, skb, &esp); esp 458 net/ipv6/esp6.c if (esp.nfrags < 0) esp 459 net/ipv6/esp6.c return esp.nfrags; esp 465 net/ipv6/esp6.c esp.seqno = cpu_to_be64(XFRM_SKB_CB(skb)->seq.output.low + esp 470 net/ipv6/esp6.c return esp6_output_tail(x, skb, &esp); esp 245 net/ipv6/esp6_offload.c struct esp_info esp; esp 249 net/ipv6/esp6_offload.c esp.inplace = true; esp 261 net/ipv6/esp6_offload.c esp.proto = xo->proto; esp 268 net/ipv6/esp6_offload.c esp.tfclen = 0; esp 272 net/ipv6/esp6_offload.c esp.clen = ALIGN(skb->len + 2 + esp.tfclen, blksize); esp 273 net/ipv6/esp6_offload.c esp.plen = esp.clen - skb->len - esp.tfclen; esp 274 net/ipv6/esp6_offload.c esp.tailen = esp.tfclen + esp.plen + alen; esp 277 net/ipv6/esp6_offload.c esp.nfrags = esp6_output_head(x, skb, &esp); esp 278 net/ipv6/esp6_offload.c if (esp.nfrags < 0) esp 279 net/ipv6/esp6_offload.c return esp.nfrags; esp 298 net/ipv6/esp6_offload.c esp.seqno = cpu_to_be64(xo->seq.low + ((u64)xo->seq.hi << 32)); esp 309 net/ipv6/esp6_offload.c err = esp6_output_tail(x, skb, &esp); esp 203 net/xfrm/xfrm_state.c X(afinfo, type, esp); esp 248 net/xfrm/xfrm_state.c X(afinfo, type, esp); esp 59 tools/perf/arch/x86/util/dwarf-regs.c REG_OFFSET_NAME_32("$stack", esp), /* Stack address instead of %sp */ esp 89 tools/perf/arch/x86/util/perf_regs.c SDT_NAME_REG(esp, sp), esp 391 tools/testing/selftests/bpf/bpf_helpers.h #define PT_REGS_RET(x) ((x)->esp) esp 394 tools/testing/selftests/bpf/bpf_helpers.h #define PT_REGS_SP(x) ((x)->esp) esp 271 tools/testing/selftests/x86/entry_from_vm86.c v86.regs.esp = 4096;