summaryrefslogtreecommitdiff
path: root/rtl/gfx/gfx_defs.sv
diff options
context:
space:
mode:
authorAlejandro Soto <alejandro@34project.org>2023-11-10 21:32:15 -0600
committerAlejandro Soto <alejandro@34project.org>2023-11-11 00:14:14 -0600
commita979554f1f69b1a3a28e0fa38a26736fbab082da (patch)
tree3c722f82134c3adfafd60c20d3855661fbc45f5e /rtl/gfx/gfx_defs.sv
parent152a3970fc3d0d55823840cf45edcf84c5b471fd (diff)
rtl/gfx: implement fragment address linearization
Diffstat (limited to 'rtl/gfx/gfx_defs.sv')
-rw-r--r--rtl/gfx/gfx_defs.sv13
1 files changed, 13 insertions, 0 deletions
diff --git a/rtl/gfx/gfx_defs.sv b/rtl/gfx/gfx_defs.sv
index 60962e1..cc6e6f3 100644
--- a/rtl/gfx/gfx_defs.sv
+++ b/rtl/gfx/gfx_defs.sv
@@ -48,6 +48,11 @@ typedef struct packed
logic[9:0] r, g, b;
} rgb30;
+typedef struct packed
+{
+ logic[7:0] a, r, g, b;
+} rgb32;
+
`define FIXED_FRAC 16
`define FIXED_FMA_STAGES 5
@@ -115,4 +120,12 @@ typedef struct packed
typedef frag_xy[`GFX_FINE_LANES - 1:0] frag_xy_lanes;
typedef logic[`GFX_FINE_LANES - 1:0] paint_lanes;
+typedef struct packed
+{
+ linear_coord addr;
+ rgb32 color;
+} frag_paint;
+
+`define GFX_FRAG_ADDR_STAGES 3
+
`endif