desc_write
desc_write(xe, h2g, tail, h2g->info.tail);
desc_write(xe, g2h, status, desc_status | GUC_CTB_STATUS_OVERFLOW);
desc_write(xe, g2h, status, desc_status | GUC_CTB_STATUS_OVERFLOW);
desc_write(xe, g2h, head, g2h->info.head);
desc_write(xe, h2g, status, desc_status | GUC_CTB_STATUS_OVERFLOW);
desc_write(xe, h2g, status, desc_status | GUC_CTB_STATUS_MISMATCH);
desc_write(xe, h2g, status, desc_status | GUC_CTB_STATUS_OVERFLOW);
desc_write(xe, h2g, status, desc_status | GUC_CTB_STATUS_OVERFLOW);
desc_write(xe, h2g, tail, h2g->info.tail);
desc_write(prev, hw_next, desc_dma);
desc_write(prev, hw_mode, mode & ~CPDMA_DESC_EOQ);