mirror of
https://gitlab.com/qemu-project/qemu
synced 2024-11-05 20:35:44 +00:00
etraxfs_dma: Dont forward zero-length payload to clients
Signed-off-by: Edgar E. Iglesias <edgar.iglesias@xilinx.com>
This commit is contained in:
parent
586d1a99ff
commit
c3bce9d5f9
1 changed files with 8 additions and 5 deletions
|
@ -440,13 +440,16 @@ static int channel_out_run(struct fs_dma_ctrl *ctrl, int c)
|
|||
D(printf("channel %d pushes %x %u bytes eop=%u\n", c,
|
||||
saved_data_buf, len, out_eop));
|
||||
|
||||
if (ctrl->channels[c].client->client.push)
|
||||
ctrl->channels[c].client->client.push(
|
||||
ctrl->channels[c].client->client.opaque,
|
||||
buf, len, out_eop);
|
||||
else
|
||||
if (ctrl->channels[c].client->client.push) {
|
||||
if (len > 0) {
|
||||
ctrl->channels[c].client->client.push(
|
||||
ctrl->channels[c].client->client.opaque,
|
||||
buf, len, out_eop);
|
||||
}
|
||||
} else {
|
||||
printf("WARNING: DMA ch%d dataloss,"
|
||||
" no attached client.\n", c);
|
||||
}
|
||||
|
||||
saved_data_buf += len;
|
||||
|
||||
|
|
Loading…
Reference in a new issue