Searched refs:ascb (Results 1 – 8 of 8) sorted by relevance
/drivers/scsi/aic94xx/ |
D | aic94xx_tmf.c | 35 static int asd_enqueue_internal(struct asd_ascb *ascb, in asd_enqueue_internal() argument 42 ascb->tasklet_complete = tasklet_complete; in asd_enqueue_internal() 43 ascb->uldd_timer = 1; in asd_enqueue_internal() 45 ascb->timer.data = (unsigned long) ascb; in asd_enqueue_internal() 46 ascb->timer.function = timed_out; in asd_enqueue_internal() 47 ascb->timer.expires = jiffies + AIC94XX_SCB_TIMEOUT; in asd_enqueue_internal() 49 add_timer(&ascb->timer); in asd_enqueue_internal() 51 res = asd_post_ascb_list(ascb->ha, ascb, 1); in asd_enqueue_internal() 53 del_timer(&ascb->timer); in asd_enqueue_internal() 75 static void asd_clear_nexus_tasklet_complete(struct asd_ascb *ascb, in asd_clear_nexus_tasklet_complete() argument [all …]
|
D | aic94xx_scb.c | 85 static void asd_phy_event_tasklet(struct asd_ascb *ascb, in asd_phy_event_tasklet() argument 88 struct asd_ha_struct *asd_ha = ascb->ha; in asd_phy_event_tasklet() 235 static void asd_bytes_dmaed_tasklet(struct asd_ascb *ascb, in asd_bytes_dmaed_tasklet() argument 240 int edb_el = edb_id + ascb->edb_index; in asd_bytes_dmaed_tasklet() 241 struct asd_dma_tok *edb = ascb->ha->seq.edb_arr[edb_el]; in asd_bytes_dmaed_tasklet() 242 struct asd_phy *phy = &ascb->ha->phys[phy_id]; in asd_bytes_dmaed_tasklet() 254 asd_form_port(ascb->ha, phy); in asd_bytes_dmaed_tasklet() 258 static void asd_link_reset_err_tasklet(struct asd_ascb *ascb, in asd_link_reset_err_tasklet() argument 262 struct asd_ha_struct *asd_ha = ascb->ha; in asd_link_reset_err_tasklet() 295 struct asd_ascb *cp = asd_ascb_alloc_list(ascb->ha, &num, in asd_link_reset_err_tasklet() [all …]
|
D | aic94xx_task.c | 58 struct asd_ascb *ascb = task->lldd_task; in asd_map_scatterlist() local 59 struct asd_ha_struct *asd_ha = ascb->ha; in asd_map_scatterlist() 90 ascb->sg_arr = asd_alloc_coherent(asd_ha, in asd_map_scatterlist() 93 if (!ascb->sg_arr) { in asd_map_scatterlist() 99 &((struct sg_el *)ascb->sg_arr->vaddr)[i]; in asd_map_scatterlist() 115 sg_arr[2].bus_addr=cpu_to_le64((u64)ascb->sg_arr->dma_handle); in asd_map_scatterlist() 134 static void asd_unmap_scatterlist(struct asd_ascb *ascb) in asd_unmap_scatterlist() argument 136 struct asd_ha_struct *asd_ha = ascb->ha; in asd_unmap_scatterlist() 137 struct sas_task *task = ascb->uldd_task; in asd_unmap_scatterlist() 144 le64_to_cpu(ascb->scb->ssp_task.sg_element[0].bus_addr); in asd_unmap_scatterlist() [all …]
|
D | aic94xx_hwi.h | 289 struct asd_ascb *ascb) in asd_init_ascb() argument 291 INIT_LIST_HEAD(&ascb->list); in asd_init_ascb() 292 ascb->scb = ascb->dma_scb.vaddr; in asd_init_ascb() 293 ascb->ha = asd_ha; in asd_init_ascb() 294 ascb->timer.function = NULL; in asd_init_ascb() 295 init_timer(&ascb->timer); in asd_init_ascb() 296 ascb->tc_index = -1; in asd_init_ascb() 338 static inline void asd_ascb_free(struct asd_ascb *ascb) in asd_ascb_free() argument 340 if (ascb) { in asd_ascb_free() 341 struct asd_ha_struct *asd_ha = ascb->ha; in asd_ascb_free() [all …]
|
D | aic94xx_hwi.c | 361 struct asd_ascb *ascb = seq->escb_arr[i]; in asd_assign_edbs2escbs() local 362 struct empty_scb *escb = &ascb->scb->escb; in asd_assign_edbs2escbs() 364 ascb->edb_index = z; in asd_assign_edbs2escbs() 741 struct asd_ascb *ascb; in asd_dl_tasklet_handler() local 748 ascb = asd_tc_index_find(seq, (int)le16_to_cpu(dl->index)); in asd_dl_tasklet_handler() 750 if (unlikely(!ascb)) { in asd_dl_tasklet_handler() 753 } else if (ascb->scb->header.opcode == EMPTY_SCB) { in asd_dl_tasklet_handler() 755 } else if (!ascb->uldd_timer && !del_timer(&ascb->timer)) { in asd_dl_tasklet_handler() 759 list_del_init(&ascb->list); in asd_dl_tasklet_handler() 763 ascb->tasklet_complete(ascb, dl); in asd_dl_tasklet_handler() [all …]
|
D | aic94xx_dump.c | 931 static void asd_dump_scb(struct asd_ascb *ascb, int ind) 935 ind, ascb->dma_scb.vaddr, 936 (unsigned long long)ascb->dma_scb.dma_handle, 938 le64_to_cpu(ascb->scb->header.next_scb), 939 le16_to_cpu(ascb->scb->header.index), 940 ascb->scb->header.opcode); 943 void asd_dump_scb_list(struct asd_ascb *ascb, int num) 949 asd_dump_scb(ascb, i++); 952 if (num > 0 && !list_empty(&ascb->list)) { 955 list_for_each(el, &ascb->list) {
|
D | aic94xx.h | 79 void asd_invalidate_edb(struct asd_ascb *ascb, int edb_id);
|
D | aic94xx_init.c | 882 struct asd_ascb *ascb = list_entry(pos, struct asd_ascb, list); in asd_free_queues() local 889 del_timer_sync(&ascb->timer); in asd_free_queues() 890 WARN_ON(ascb->scb->header.opcode != CONTROL_PHY); in asd_free_queues() 894 asd_ascb_free(ascb); in asd_free_queues()
|