mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-05-04 20:38:06 +02:00
pan/genxml: Add float internal and writeback formats
Valhall adds float color target support in hardware, including hardware blending. This commit just adds the XML and doesn't enable it in the C code. Annoyingly, even though there's enough bits to do otherwise, the hardware re-interprets the color (writeback) format field in the render target descriptor based on the internal format. The easiest way to handle this in the XML is to just have two different enums and fields in the Render Target structs which alias. This seems to be the least duplication while still encoding the necessary information. Reviewed-by: Aksel Hjerpbakk <aksel.hjerpbakk@arm.com> Reviewed-by: Lars-Ivar Hesselberg Simonsen <lars-ivar.simonsen@arm.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39171>
This commit is contained in:
parent
e9a83d530c
commit
aac927aa15
4 changed files with 88 additions and 0 deletions
|
|
@ -1520,6 +1520,10 @@
|
|||
<value name="R4G4B4A4" value="4"/>
|
||||
<value name="R5G6B5A0" value="5"/>
|
||||
<value name="R5G5B5A1" value="6"/>
|
||||
<value name="R16F" value="16"/>
|
||||
<value name="RG16F" value="17"/>
|
||||
<value name="RGBA16F" value="18"/>
|
||||
<value name="RG11F_B10F" value="20"/>
|
||||
<value name="RAW8" value="32"/>
|
||||
<value name="RAW16" value="33"/>
|
||||
<value name="RAW32" value="34"/>
|
||||
|
|
@ -1558,6 +1562,22 @@
|
|||
<value name="NATIVE" value="31"/>
|
||||
</enum>
|
||||
|
||||
<enum name="Float Color Format">
|
||||
<value name="RAW8" value="0"/>
|
||||
<value name="RAW16" value="1"/>
|
||||
<value name="RAW24" value="2"/>
|
||||
<value name="RAW32" value="3"/>
|
||||
<value name="RAW48" value="4"/>
|
||||
<value name="RAW64" value="5"/>
|
||||
<value name="RAW96" value="6"/>
|
||||
<value name="RAW128" value="7"/>
|
||||
<value name="R16F" value="16"/>
|
||||
<value name="RG16F" value="17"/>
|
||||
<value name="RGB16F" value="18"/>
|
||||
<value name="RGBA16F" value="19"/>
|
||||
<value name="RG11F_B10F" value="20"/>
|
||||
</enum>
|
||||
|
||||
<enum name="Downsampling Accumulation Mode">
|
||||
<value name="Unsigned normalized integer" value="0"/>
|
||||
<value name="Signed normalized integer" value="1"/>
|
||||
|
|
@ -1772,6 +1792,7 @@
|
|||
<field name="Internal Format" size="6" start="0:26" type="Color Buffer Internal Format"/>
|
||||
<field name="Write Enable" size="1" start="1:0" type="bool"/>
|
||||
<field name="Writeback Format" size="5" start="1:3" type="Color Format"/>
|
||||
<field name="Writeback Float Format" size="5" start="1:3" type="Float Color Format"/>
|
||||
<field name="Writeback Block Format" size="4" start="1:8" type="Block Format"/>
|
||||
<field name="Writeback MSAA" size="2" start="1:12" type="MSAA"/>
|
||||
<field name="sRGB" size="1" start="1:14" type="bool"/>
|
||||
|
|
@ -1817,6 +1838,7 @@
|
|||
<field name="Internal Format" size="6" start="0:26" type="Color Buffer Internal Format"/>
|
||||
<field name="Write Enable" size="1" start="1:0" type="bool"/>
|
||||
<field name="Writeback Format" size="5" start="1:3" type="Color Format"/>
|
||||
<field name="Writeback Float Format" size="5" start="1:3" type="Float Color Format"/>
|
||||
<field name="Writeback Block Format" size="4" start="1:8" type="Block Format"/>
|
||||
<field name="Writeback MSAA" size="2" start="1:12" type="MSAA"/>
|
||||
<field name="sRGB" size="1" start="1:14" type="bool"/>
|
||||
|
|
|
|||
|
|
@ -1786,6 +1786,10 @@
|
|||
<value name="R4G4B4A4" value="4"/>
|
||||
<value name="R5G6B5A0" value="5"/>
|
||||
<value name="R5G5B5A1" value="6"/>
|
||||
<value name="R16F" value="16"/>
|
||||
<value name="RG16F" value="17"/>
|
||||
<value name="RGBA16F" value="18"/>
|
||||
<value name="RG11F_B10F" value="20"/>
|
||||
<value name="RAW8" value="32"/>
|
||||
<value name="RAW16" value="33"/>
|
||||
<value name="RAW32" value="34"/>
|
||||
|
|
@ -1824,6 +1828,22 @@
|
|||
<value name="NATIVE" value="31"/>
|
||||
</enum>
|
||||
|
||||
<enum name="Float Color Format">
|
||||
<value name="RAW8" value="0"/>
|
||||
<value name="RAW16" value="1"/>
|
||||
<value name="RAW24" value="2"/>
|
||||
<value name="RAW32" value="3"/>
|
||||
<value name="RAW48" value="4"/>
|
||||
<value name="RAW64" value="5"/>
|
||||
<value name="RAW96" value="6"/>
|
||||
<value name="RAW128" value="7"/>
|
||||
<value name="R16F" value="16"/>
|
||||
<value name="RG16F" value="17"/>
|
||||
<value name="RGB16F" value="18"/>
|
||||
<value name="RGBA16F" value="19"/>
|
||||
<value name="RG11F_B10F" value="20"/>
|
||||
</enum>
|
||||
|
||||
<enum name="Downsampling Accumulation Mode">
|
||||
<value name="Unsigned normalized integer" value="0"/>
|
||||
<value name="Signed normalized integer" value="1"/>
|
||||
|
|
@ -2060,6 +2080,7 @@
|
|||
<field name="Internal Format" size="6" start="0:26" type="Color Buffer Internal Format"/>
|
||||
<field name="Write Enable" size="1" start="1:0" type="bool"/>
|
||||
<field name="Writeback Format" size="5" start="1:3" type="Color Format"/>
|
||||
<field name="Writeback Float Format" size="5" start="1:3" type="Float Color Format"/>
|
||||
<field name="Writeback Block Format" size="4" start="1:8" type="Block Format"/>
|
||||
<field name="Writeback MSAA" size="2" start="1:12" type="MSAA"/>
|
||||
<field name="sRGB" size="1" start="1:14" type="bool"/>
|
||||
|
|
@ -2105,6 +2126,7 @@
|
|||
<field name="Internal Format" size="6" start="0:26" type="Color Buffer Internal Format"/>
|
||||
<field name="Write Enable" size="1" start="1:0" type="bool"/>
|
||||
<field name="Writeback Format" size="5" start="1:3" type="Color Format"/>
|
||||
<field name="Writeback Float Format" size="5" start="1:3" type="Float Color Format"/>
|
||||
<field name="Writeback Block Format" size="4" start="1:8" type="Block Format"/>
|
||||
<field name="Writeback MSAA" size="2" start="1:12" type="MSAA"/>
|
||||
<field name="sRGB" size="1" start="1:14" type="bool"/>
|
||||
|
|
|
|||
|
|
@ -2088,6 +2088,10 @@
|
|||
<value name="R4G4B4A4" value="4"/>
|
||||
<value name="R5G6B5A0" value="5"/>
|
||||
<value name="R5G5B5A1" value="6"/>
|
||||
<value name="R16F" value="16"/>
|
||||
<value name="RG16F" value="17"/>
|
||||
<value name="RGBA16F" value="18"/>
|
||||
<value name="RG11F_B10F" value="20"/>
|
||||
<value name="RAW8" value="32"/>
|
||||
<value name="RAW16" value="33"/>
|
||||
<value name="RAW32" value="34"/>
|
||||
|
|
@ -2126,6 +2130,22 @@
|
|||
<value name="NATIVE" value="31"/>
|
||||
</enum>
|
||||
|
||||
<enum name="Float Color Format">
|
||||
<value name="RAW8" value="0"/>
|
||||
<value name="RAW16" value="1"/>
|
||||
<value name="RAW24" value="2"/>
|
||||
<value name="RAW32" value="3"/>
|
||||
<value name="RAW48" value="4"/>
|
||||
<value name="RAW64" value="5"/>
|
||||
<value name="RAW96" value="6"/>
|
||||
<value name="RAW128" value="7"/>
|
||||
<value name="R16F" value="16"/>
|
||||
<value name="RG16F" value="17"/>
|
||||
<value name="RGB16F" value="18"/>
|
||||
<value name="RGBA16F" value="19"/>
|
||||
<value name="RG11F_B10F" value="20"/>
|
||||
</enum>
|
||||
|
||||
<enum name="Downsampling Accumulation Mode">
|
||||
<value name="Unsigned normalized integer" value="0"/>
|
||||
<value name="Signed normalized integer" value="1"/>
|
||||
|
|
@ -2366,6 +2386,7 @@
|
|||
<field name="Internal Format" size="6" start="0:26" type="Color Buffer Internal Format"/>
|
||||
<field name="Write Enable" size="1" start="1:0" type="bool"/>
|
||||
<field name="Writeback Format" size="5" start="1:3" type="Color Format"/>
|
||||
<field name="Writeback Float Format" size="5" start="1:3" type="Float Color Format"/>
|
||||
<field name="Writeback Block Format" size="4" start="1:8" type="Block Format"/>
|
||||
<field name="Writeback MSAA" size="2" start="1:12" type="MSAA"/>
|
||||
<field name="sRGB" size="1" start="1:14" type="bool"/>
|
||||
|
|
@ -2411,6 +2432,7 @@
|
|||
<field name="Internal Format" size="6" start="0:26" type="Color Buffer Internal Format"/>
|
||||
<field name="Write Enable" size="1" start="1:0" type="bool"/>
|
||||
<field name="Writeback Format" size="5" start="1:3" type="Color Format"/>
|
||||
<field name="Writeback Float Format" size="5" start="1:3" type="Float Color Format"/>
|
||||
<field name="Writeback Block Format" size="4" start="1:8" type="Block Format"/>
|
||||
<field name="Writeback MSAA" size="2" start="1:12" type="MSAA"/>
|
||||
<field name="sRGB" size="1" start="1:14" type="bool"/>
|
||||
|
|
|
|||
|
|
@ -944,6 +944,10 @@
|
|||
<value name="R4G4B4A4" value="4"/>
|
||||
<value name="R5G6B5A0" value="5"/>
|
||||
<value name="R5G5B5A1" value="6"/>
|
||||
<value name="R16F" value="16"/>
|
||||
<value name="RG16F" value="17"/>
|
||||
<value name="RGBA16F" value="18"/>
|
||||
<value name="RG11F_B10F" value="20"/>
|
||||
<value name="RAW8" value="32"/>
|
||||
<value name="RAW16" value="33"/>
|
||||
<value name="RAW32" value="34"/>
|
||||
|
|
@ -982,6 +986,22 @@
|
|||
<value name="NATIVE" value="31"/>
|
||||
</enum>
|
||||
|
||||
<enum name="Float Color Format">
|
||||
<value name="RAW8" value="0"/>
|
||||
<value name="RAW16" value="1"/>
|
||||
<value name="RAW24" value="2"/>
|
||||
<value name="RAW32" value="3"/>
|
||||
<value name="RAW48" value="4"/>
|
||||
<value name="RAW64" value="5"/>
|
||||
<value name="RAW96" value="6"/>
|
||||
<value name="RAW128" value="7"/>
|
||||
<value name="R16F" value="16"/>
|
||||
<value name="RG16F" value="17"/>
|
||||
<value name="RGB16F" value="18"/>
|
||||
<value name="RGBA16F" value="19"/>
|
||||
<value name="RG11F_B10F" value="20"/>
|
||||
</enum>
|
||||
|
||||
<enum name="Downsampling Accumulation Mode">
|
||||
<value name="Unsigned normalized integer" value="0"/>
|
||||
<value name="Signed normalized integer" value="1"/>
|
||||
|
|
@ -1195,6 +1215,7 @@
|
|||
<field name="Internal Format" size="6" start="0:26" type="Color Buffer Internal Format"/>
|
||||
<field name="Write Enable" size="1" start="1:0" type="bool"/>
|
||||
<field name="Writeback Format" size="5" start="1:3" type="Color Format"/>
|
||||
<field name="Writeback Float Format" size="5" start="1:3" type="Float Color Format"/>
|
||||
<field name="Writeback Block Format" size="4" start="1:8" type="Block Format"/>
|
||||
<field name="Writeback MSAA" size="2" start="1:12" type="MSAA"/>
|
||||
<field name="sRGB" size="1" start="1:14" type="bool"/>
|
||||
|
|
@ -1238,6 +1259,7 @@
|
|||
<field name="Internal Format" size="6" start="0:26" type="Color Buffer Internal Format"/>
|
||||
<field name="Write Enable" size="1" start="1:0" type="bool"/>
|
||||
<field name="Writeback Format" size="5" start="1:3" type="Color Format"/>
|
||||
<field name="Writeback Float Format" size="5" start="1:3" type="Float Color Format"/>
|
||||
<field name="Writeback Block Format" size="4" start="1:8" type="Block Format"/>
|
||||
<field name="Writeback MSAA" size="2" start="1:12" type="MSAA"/>
|
||||
<field name="sRGB" size="1" start="1:14" type="bool"/>
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue