Lines Matching refs:acc
41 struct knav_acc_channel *acc) in __knav_acc_notify() argument
61 queue = acc->channel - range->acc_info.start_channel; in __knav_acc_notify()
85 atomic_inc(&kq->acc->retrigger_count); in knav_acc_set_notify()
86 mask = BIT(kq->acc->channel % 32); in knav_acc_set_notify()
87 offset = ACC_INTD_OFFSET_STATUS(kq->acc->channel); in knav_acc_set_notify()
89 kq->acc->name); in knav_acc_set_notify()
96 struct knav_acc_channel *acc; in knav_acc_int_handler() local
111 acc = range->acc; in knav_acc_int_handler()
119 acc += queue; in knav_acc_int_handler()
122 channel = acc->channel; in knav_acc_int_handler()
123 list_dma = acc->list_dma[acc->list_index]; in knav_acc_int_handler()
124 list_cpu = acc->list_cpu[acc->list_index]; in knav_acc_int_handler()
126 channel, acc->list_index, list_cpu, list_dma); in knav_acc_int_handler()
127 if (atomic_read(&acc->retrigger_count)) { in knav_acc_int_handler()
128 atomic_dec(&acc->retrigger_count); in knav_acc_int_handler()
129 __knav_acc_notify(range, acc); in knav_acc_int_handler()
148 acc->list_index, list, list[0]); in knav_acc_int_handler()
152 acc->list_index, list, list[0], list[1]); in knav_acc_int_handler()
156 acc->list_index, list, list[0], list[1], in knav_acc_int_handler()
194 __knav_acc_notify(range, acc); in knav_acc_int_handler()
200 acc->list_index ^= 1; in knav_acc_int_handler()
216 struct knav_acc_channel *acc; in knav_range_setup_acc_irq() local
222 acc = range->acc; in knav_range_setup_acc_irq()
226 acc = range->acc + queue; in knav_range_setup_acc_irq()
231 old = acc->open_mask; in knav_range_setup_acc_irq()
236 acc->open_mask = new; in knav_range_setup_acc_irq()
240 old, new, acc->name); in knav_range_setup_acc_irq()
248 acc->name, acc->name); in knav_range_setup_acc_irq()
249 ret = request_irq(irq, knav_acc_int_handler, 0, acc->name, in knav_range_setup_acc_irq()
263 acc->name, acc->name); in knav_range_setup_acc_irq()
319 struct knav_acc_channel *acc; in knav_acc_setup_cmd() local
324 acc = range->acc; in knav_acc_setup_cmd()
328 acc = range->acc + queue; in knav_acc_setup_cmd()
334 cmd->command = acc->channel; in knav_acc_setup_cmd()
336 cmd->list_phys = acc->list_dma[0]; in knav_acc_setup_cmd()
352 struct knav_acc_channel *acc; in knav_acc_stop() local
355 acc = range->acc + queue; in knav_acc_stop()
362 acc->name, knav_acc_result_str(result)); in knav_acc_stop()
370 struct knav_acc_channel *acc; in knav_acc_start() local
373 acc = range->acc + queue; in knav_acc_start()
380 acc->name, knav_acc_result_str(result)); in knav_acc_start()
388 struct knav_acc_channel *acc; in knav_acc_init_range() local
393 acc = range->acc + queue; in knav_acc_init_range()
396 acc->list_index = 0; in knav_acc_init_range()
418 kq->acc = range->acc; in knav_acc_init_queue()
420 kq->acc += id; in knav_acc_init_queue()
443 struct knav_acc_channel *acc; in knav_acc_free_range() local
455 acc = range->acc + channel; in knav_acc_free_range()
456 if (!acc->list_cpu[0]) in knav_acc_free_range()
458 dma_unmap_single(kdev->dev, acc->list_dma[0], in knav_acc_free_range()
460 free_pages_exact(acc->list_cpu[0], info->mem_size); in knav_acc_free_range()
462 devm_kfree(range->kdev->dev, range->acc); in knav_acc_free_range()
488 struct knav_acc_channel *acc; in knav_init_acc_range() local
554 range->acc = devm_kzalloc(kdev->dev, channels * sizeof(*range->acc), in knav_init_acc_range()
556 if (!range->acc) in knav_init_acc_range()
560 acc = range->acc + channel; in knav_init_acc_range()
561 acc->channel = info->start_channel + channel; in knav_init_acc_range()
578 scnprintf(acc->name, sizeof(acc->name), "hwqueue-acc-%d", in knav_init_acc_range()
579 acc->channel); in knav_init_acc_range()
580 acc->list_cpu[0] = list_mem; in knav_init_acc_range()
581 acc->list_cpu[1] = list_mem + list_size; in knav_init_acc_range()
582 acc->list_dma[0] = list_dma; in knav_init_acc_range()
583 acc->list_dma[1] = list_dma + list_size; in knav_init_acc_range()
585 acc->name, acc->channel, list_dma, list_mem); in knav_init_acc_range()