|
@@ -808,6 +808,9 @@ static u32 process_channel_irqs(struct bam_device *bdev)
|
|
|
/* Number of bytes available to read */
|
|
/* Number of bytes available to read */
|
|
|
avail = CIRC_CNT(offset, bchan->head, MAX_DESCRIPTORS + 1);
|
|
avail = CIRC_CNT(offset, bchan->head, MAX_DESCRIPTORS + 1);
|
|
|
|
|
|
|
|
|
|
+ if (offset < bchan->head)
|
|
|
|
|
+ avail--;
|
|
|
|
|
+
|
|
|
list_for_each_entry_safe(async_desc, tmp,
|
|
list_for_each_entry_safe(async_desc, tmp,
|
|
|
&bchan->desc_list, desc_node) {
|
|
&bchan->desc_list, desc_node) {
|
|
|
/* Not enough data to read */
|
|
/* Not enough data to read */
|