qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Qemu-devel] DMA active hw_error


From: Richard Cole
Subject: [Qemu-devel] DMA active hw_error
Date: Mon, 26 Dec 2011 18:26:29 -0800

I'm new to QEMU so this might be a rather naive question but why is
there a hw_error here:

https://github.com/qemu/QEMU/blob/2ac711791b2e4aabc5e4046b7428727828c705eb/hw/pl080.c#L96

It causes QEMU at least on my machine to abort. It would seem to make
it so the rest of the function will never be executed? That hw_error
(or a cpu_error) line seems have have been there since the file was
imported.

Here's the code fragment in case that link doesn't work.

static void pl080_run(pl080_state *s)
{
    int c;
    int flow;
    pl080_channel *ch;
    int swidth;
    int dwidth;
    int xsize;
    int n;
    int src_id;
    int dest_id;
    int size;
    uint8_t buff[4];
    uint32_t req;

    s->tc_mask = 0;
    for (c = 0; c < s->nchannels; c++) {
        if (s->chan[c].conf & PL080_CCONF_ITC)
            s->tc_mask |= 1 << c;
        if (s->chan[c].conf & PL080_CCONF_IE)
            s->err_mask |= 1 << c;
    }

    if ((s->conf & PL080_CONF_E) == 0)
        return;

hw_error("DMA active\n");
    /* If we are already in the middle of a DMA operation then indicate that
       there may be new DMA requests and return immediately.  */
    if (s->running) {
        s->running++;
        return;
    }

regards,

Richard.



reply via email to

[Prev in Thread] Current Thread [Next in Thread]