|
ra8-firmware 0.1.0
Bare-metal firmware for the Renesas RA8 family (RA8D2 / RA8P1)
|
Builder state for composing a DRW display list in a caller buffer. More...
#include <ra8_drw.h>
Data Fields | |
| uint32_t * | buf |
| Caller word buffer, 4-byte aligned, in SRAM. | |
| uint32_t | cap_words |
| Buffer capacity in 32-bit words. | |
| uint32_t | count |
| Words emitted so far (<= cap_words). | |
| bool | overflow |
| A request exceeded the buffer capacity. | |
| bool | terminated |
| ra8_drw_dlist_end has closed the list. | |
Builder state for composing a DRW display list in a caller buffer.
A display list lets the DRW clear and repaint a framebuffer end to end with the CPU never touching it inside the loop, so there is no CPU/engine write race to latch STATUS.BUSERRMFB – the loop-stable path proven on silicon for issue #247. ra8_drw_dlist_begin binds this builder to a 4-byte-aligned word buffer in a region the DRW bus initiator can read (SRAM); ra8_drw_dlist_add_fill appends primitives; ra8_drw_dlist_end terminates the list; ra8_drw_dlist_run kicks it. The build calls never touch MMIO.
| uint32_t* ra8_drw_dlist_t::buf |
Caller word buffer, 4-byte aligned, in SRAM.
Definition at line 239 of file ra8_drw.h.
Referenced by internal_dlist_put_reg(), internal_dlist_put_special(), ra8_drw_dlist_begin(), and ra8_drw_dlist_run().
| uint32_t ra8_drw_dlist_t::cap_words |
Buffer capacity in 32-bit words.
Definition at line 240 of file ra8_drw.h.
Referenced by ra8_drw_dlist_add_fill(), ra8_drw_dlist_begin(), and ra8_drw_dlist_end().
| uint32_t ra8_drw_dlist_t::count |
Words emitted so far (<= cap_words).
Definition at line 241 of file ra8_drw.h.
Referenced by internal_dlist_put_reg(), internal_dlist_put_special(), ra8_drw_dlist_add_fill(), ra8_drw_dlist_begin(), ra8_drw_dlist_end(), and ra8_drw_dlist_run().
| bool ra8_drw_dlist_t::overflow |
A request exceeded the buffer capacity.
Definition at line 242 of file ra8_drw.h.
Referenced by ra8_drw_dlist_add_fill(), ra8_drw_dlist_begin(), ra8_drw_dlist_end(), and ra8_drw_dlist_run().
| bool ra8_drw_dlist_t::terminated |
ra8_drw_dlist_end has closed the list.
Definition at line 243 of file ra8_drw.h.
Referenced by ra8_drw_dlist_begin(), ra8_drw_dlist_end(), and ra8_drw_dlist_run().