ENGINE_READ_FW
ENGINE_READ_FW(engine, RING_HEAD) & HEAD_ADDR,
ENGINE_READ_FW(engine, RING_TAIL) & TAIL_ADDR);
if ((ENGINE_READ_FW(engine, RING_HEAD) & HEAD_ADDR) !=
(ENGINE_READ_FW(engine, RING_TAIL) & TAIL_ADDR))
return ENGINE_READ_FW(engine, RING_EXECLIST_STATUS_HI);
ENGINE_READ_FW(engine, RING_EXECLIST_STATUS_HI));
ENGINE_WRITE_FW(engine, RING_HEAD, ENGINE_READ_FW(engine, RING_TAIL));
return (ENGINE_READ_FW(engine, RING_HEAD) & HEAD_ADDR) == 0;
if (ENGINE_READ_FW(engine, RING_HEAD) == ring->head)
if (ENGINE_READ_FW(engine, RING_HEAD) != ENGINE_READ_FW(engine, RING_TAIL)) {
ENGINE_READ_FW(engine, RING_HEAD),
ENGINE_READ_FW(engine, RING_TAIL),
ENGINE_READ_FW(engine, RING_CTL),
ENGINE_READ_FW(engine, RING_HEAD),
ENGINE_READ_FW(engine, RING_TAIL),
ENGINE_READ_FW(engine, RING_START));
ENGINE_READ_FW(engine, RING_CTL),
ENGINE_READ_FW(engine, RING_HEAD),
ENGINE_READ_FW(engine, RING_TAIL),
ENGINE_READ_FW(engine, RING_START));
ENGINE_READ_FW(engine, RING_TIMESTAMP);
return ENGINE_READ_FW(engine, RING_TIMESTAMP_UDW);
return ENGINE_READ_FW(engine, RING_TIMESTAMP);
val = ENGINE_READ_FW(engine, RING_CTL);
val = ENGINE_READ_FW(engine, RING_MI_MODE);
tail = ENGINE_READ_FW(engine, RING_TAIL);
head = ENGINE_READ_FW(engine, RING_HEAD);
acthd = ENGINE_READ_FW(engine, ACTHD);
cycles = ENGINE_READ_FW(ce->engine, RING_TIMESTAMP);
elapsed[i] = ENGINE_READ_FW(ce->engine, RING_TIMESTAMP);
elapsed[i - 1] = ENGINE_READ_FW(ce->engine, RING_TIMESTAMP);
elapsed[i - 1] = ENGINE_READ_FW(ce->engine, RING_TIMESTAMP);
elapsed[i - 1] = ENGINE_READ_FW(ce->engine, RING_TIMESTAMP);