|
@@ -2751,7 +2751,7 @@ static int handle_ir_buffer_fill(struct context *context,
|
|
|
container_of(context, struct iso_context, context);
|
|
|
u32 buffer_dma;
|
|
|
|
|
|
- if (!last->transfer_status)
|
|
|
+ if (last->res_count != 0)
|
|
|
/* Descriptor(s) not done yet, stop iteration */
|
|
|
return 0;
|
|
|
|
|
@@ -2765,8 +2765,7 @@ static int handle_ir_buffer_fill(struct context *context,
|
|
|
if (le16_to_cpu(last->control) & DESCRIPTOR_IRQ_ALWAYS)
|
|
|
ctx->base.callback.mc(&ctx->base,
|
|
|
le32_to_cpu(last->data_address) +
|
|
|
- le16_to_cpu(last->req_count) -
|
|
|
- le16_to_cpu(last->res_count),
|
|
|
+ le16_to_cpu(last->req_count),
|
|
|
ctx->base.callback_data);
|
|
|
|
|
|
return 1;
|