pan/bi: Structify ADD unit add/min/max
authorAlyssa Rosenzweig <alyssa.rosenzweig@collabora.com>
Mon, 6 Apr 2020 17:48:06 +0000 (13:48 -0400)
committerMarge Bot <eric+marge@anholt.net>
Mon, 6 Apr 2020 19:41:56 +0000 (19:41 +0000)
..since it's missing for FMA

Signed-off-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4470>

src/panfrost/bifrost/bifrost.h

index db173bb0645f3027018f0c5f10853fc491406e46..88ed61601b2be1cedd7ffb60ff03d57b71e5d639 100644 (file)
@@ -133,6 +133,23 @@ struct bifrost_add_2src {
         unsigned op   : 14;
 } __attribute__((packed));
 
+#define BIFROST_ADD_OP_FMAX32 (0x00)
+#define BIFROST_ADD_OP_FMIN32 (0x01)
+#define BIFROST_ADD_OP_FADD32 (0x02)
+
+struct bifrost_add_faddmin {
+        unsigned src0 : 3;
+        unsigned src1 : 3;
+        unsigned src1_abs : 1;
+        unsigned src0_neg : 1;
+        unsigned src1_neg : 1;
+        unsigned select : 2;
+        unsigned outmod : 2;
+        unsigned mode : 2;
+        unsigned src0_abs : 1;
+        unsigned op   : 4;
+} __attribute__((packed));
+
 #define BIFROST_ADD_OP_ST_VAR (0x19300 >> 8)
 
 struct bifrost_st_vary {