xref: /linux/drivers/gpu/drm/msm/registers/adreno/a8xx_descriptors.xml (revision 3f1c07fc21c68bd3bd2df9d2c9441f6485e934d9)
1*1ef05ef9SAkhil P Oommen<?xml version="1.0" encoding="UTF-8"?>
2*1ef05ef9SAkhil P Oommen<database xmlns="http://nouveau.freedesktop.org/"
3*1ef05ef9SAkhil P Oommenxmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
4*1ef05ef9SAkhil P Oommenxsi:schemaLocation="https://gitlab.freedesktop.org/freedreno/ rules-fd.xsd">
5*1ef05ef9SAkhil P Oommen<import file="freedreno_copyright.xml"/>
6*1ef05ef9SAkhil P Oommen<import file="adreno/adreno_common.xml"/>
7*1ef05ef9SAkhil P Oommen<import file="adreno/adreno_pm4.xml"/>
8*1ef05ef9SAkhil P Oommen<import file="adreno/a6xx_enums.xml"/>
9*1ef05ef9SAkhil P Oommen<import file="adreno/a8xx_enums.xml"/>
10*1ef05ef9SAkhil P Oommen
11*1ef05ef9SAkhil P Oommen<domain name="A8XX_TEX_SAMP" width="32">
12*1ef05ef9SAkhil P Oommen	<doc>Texture sampler dwords</doc>
13*1ef05ef9SAkhil P Oommen	<reg32 offset="0" name="0">
14*1ef05ef9SAkhil P Oommen		<bitfield name="MIPFILTER_LINEAR_NEAR" pos="0" type="boolean"/>
15*1ef05ef9SAkhil P Oommen		<bitfield name="MIPMAPING_DIS" pos="1" type="boolean"/>
16*1ef05ef9SAkhil P Oommen		<bitfield name="XY_MAG" low="2" high="3" type="a6xx_tex_filter"/>
17*1ef05ef9SAkhil P Oommen		<bitfield name="XY_MIN" low="4" high="5" type="a6xx_tex_filter"/>
18*1ef05ef9SAkhil P Oommen		<bitfield name="WRAP_S" low="6" high="8" type="a6xx_tex_clamp"/>
19*1ef05ef9SAkhil P Oommen		<bitfield name="WRAP_T" low="9" high="11" type="a6xx_tex_clamp"/>
20*1ef05ef9SAkhil P Oommen		<bitfield name="WRAP_R" low="12" high="14" type="a6xx_tex_clamp"/>
21*1ef05ef9SAkhil P Oommen		<bitfield name="MSAA_BOX_FILTERING" pos="15" type="boolean"/>
22*1ef05ef9SAkhil P Oommen		<bitfield name="LOD_BIAS" low="16" high="28" type="fixed" radix="8"/>
23*1ef05ef9SAkhil P Oommen		<bitfield name="ANISO" low="29" high="31" type="a6xx_tex_aniso"/>
24*1ef05ef9SAkhil P Oommen	</reg32>
25*1ef05ef9SAkhil P Oommen	<reg32 offset="1" name="1">
26*1ef05ef9SAkhil P Oommen		<bitfield name="MAX_LOD" low="0" high="11" type="ufixed" radix="8"/>
27*1ef05ef9SAkhil P Oommen		<bitfield name="MIN_LOD" low="12" high="23" type="ufixed" radix="8"/>
28*1ef05ef9SAkhil P Oommen		<bitfield name="REDUCTION_MODE" low="24" high="25" type="a6xx_reduction_mode"/>
29*1ef05ef9SAkhil P Oommen		<bitfield name="COMPARE_FUNC" low="26" high="28" type="adreno_compare_func"/>
30*1ef05ef9SAkhil P Oommen		<bitfield name="CHROMA_LINEAR" pos="29" type="boolean"/>
31*1ef05ef9SAkhil P Oommen		<bitfield name="CUBEMAPSEAMLESSFILTOFF" pos="30" type="boolean"/>
32*1ef05ef9SAkhil P Oommen		<bitfield name="UNNORM_COORDS" pos="31" type="boolean"/>
33*1ef05ef9SAkhil P Oommen	</reg32>
34*1ef05ef9SAkhil P Oommen	<reg32 offset="2" name="2">
35*1ef05ef9SAkhil P Oommen		<bitfield name="FASTBORDERCOLOREN" pos="0" type="boolean"/>
36*1ef05ef9SAkhil P Oommen		<bitfield name="FASTBORDERCOLOR" low="1" high="2" type="a6xx_fast_border_color"/>
37*1ef05ef9SAkhil P Oommen		<bitfield name="BCOLOR" low="7" high="31"/>
38*1ef05ef9SAkhil P Oommen	</reg32>
39*1ef05ef9SAkhil P Oommen	<reg32 offset="3" name="3"/>
40*1ef05ef9SAkhil P Oommen</domain>
41*1ef05ef9SAkhil P Oommen
42*1ef05ef9SAkhil P Oommen<domain name="A8XX_TEX_MEMOBJ" width="32" varset="chip">
43*1ef05ef9SAkhil P Oommen	<doc>Texture memobj dwords</doc>
44*1ef05ef9SAkhil P Oommen	<reg32 offset="0" name="0">
45*1ef05ef9SAkhil P Oommen		<bitfield name="BASE_LO" low="6" high="31" shr="6"/>
46*1ef05ef9SAkhil P Oommen	</reg32>
47*1ef05ef9SAkhil P Oommen	<reg32 offset="1" name="1">
48*1ef05ef9SAkhil P Oommen		<bitfield name="BASE_HI" low="0" high="16"/>
49*1ef05ef9SAkhil P Oommen		<bitfield name="TYPE" low="17" high="19" type="a6xx_tex_type"/>
50*1ef05ef9SAkhil P Oommen		<bitfield name="DEPTH" low="20" high="31" type="uint"/>
51*1ef05ef9SAkhil P Oommen	</reg32>
52*1ef05ef9SAkhil P Oommen	<reg32 offset="2" name="2">
53*1ef05ef9SAkhil P Oommen		<bitfield name="WIDTH" low="0" high="14" type="uint"/>
54*1ef05ef9SAkhil P Oommen		<bitfield name="HEIGHT" low="15" high="29" type="uint"/>
55*1ef05ef9SAkhil P Oommen		<bitfield name="SAMPLES" low="30" high="31" type="a3xx_msaa_samples"/>
56*1ef05ef9SAkhil P Oommen	</reg32>
57*1ef05ef9SAkhil P Oommen	<reg32 offset="3" name="3">
58*1ef05ef9SAkhil P Oommen		<bitfield name="FMT" low="0" high="7" type="a6xx_format"/>
59*1ef05ef9SAkhil P Oommen		<bitfield name="SWAP" low="8" high="9" type="a3xx_color_swap"/>
60*1ef05ef9SAkhil P Oommen		<bitfield name="SWIZ_X" low="10" high="12" type="a8xx_tex_swiz"/>
61*1ef05ef9SAkhil P Oommen		<bitfield name="SWIZ_Y" low="13" high="15" type="a8xx_tex_swiz"/>
62*1ef05ef9SAkhil P Oommen		<bitfield name="SWIZ_Z" low="16" high="18" type="a8xx_tex_swiz"/>
63*1ef05ef9SAkhil P Oommen		<bitfield name="SWIZ_W" low="19" high="21" type="a8xx_tex_swiz"/>
64*1ef05ef9SAkhil P Oommen	</reg32>
65*1ef05ef9SAkhil P Oommen	<reg32 offset="4" name="4">
66*1ef05ef9SAkhil P Oommen		<bitfield name="TILE_MODE" low="0" high="1" type="a6xx_tile_mode"/>
67*1ef05ef9SAkhil P Oommen		<bitfield name="FLAG" pos="2" type="boolean"/>
68*1ef05ef9SAkhil P Oommen		<bitfield name="PRT_EN" pos="3" type="boolean"/>
69*1ef05ef9SAkhil P Oommen		<bitfield name="TILE_ALL" pos="4" type="boolean"/>
70*1ef05ef9SAkhil P Oommen		<bitfield name="SRGB" pos="5" type="boolean"/>
71*1ef05ef9SAkhil P Oommen		<bitfield name="FLAG_LO" low="6" high="31" shr="6"/>
72*1ef05ef9SAkhil P Oommen		<!-- For multiplanar: -->
73*1ef05ef9SAkhil P Oommen		<bitfield name="BASE_U_LO" low="6" high="31" shr="6"/>
74*1ef05ef9SAkhil P Oommen	</reg32>
75*1ef05ef9SAkhil P Oommen	<reg32 offset="5" name="5">
76*1ef05ef9SAkhil P Oommen		<bitfield name="FLAG_HI" low="0" high="16"/>
77*1ef05ef9SAkhil P Oommen		<!-- For multiplanar: -->
78*1ef05ef9SAkhil P Oommen		<bitfield name="BASE_U_HI" low="0" high="16"/>
79*1ef05ef9SAkhil P Oommen		<bitfield name="FLAG_BUFFER_PITCH" low="17" high="24" shr="6" type="uint"/>
80*1ef05ef9SAkhil P Oommen		<bitfield name="ALL_SAMPLES_CENTER" pos="29" type="boolean"/>
81*1ef05ef9SAkhil P Oommen		<bitfield name="MUTABLEEN" pos="31" type="boolean"/>
82*1ef05ef9SAkhil P Oommen	</reg32>
83*1ef05ef9SAkhil P Oommen	<reg32 offset="6" name="6">
84*1ef05ef9SAkhil P Oommen		<bitfield name="TEX_LINE_OFFSET" low="0" high="23" type="uint"/> <!-- PITCH -->
85*1ef05ef9SAkhil P Oommen		<bitfield name="MIN_LINE_OFFSET" low="24" high="27" type="uint"/> <!-- PITCHALIGN -->
86*1ef05ef9SAkhil P Oommen		<bitfield name="MIPLVLS" low="28" high="31" type="uint"/>
87*1ef05ef9SAkhil P Oommen	</reg32>
88*1ef05ef9SAkhil P Oommen	<reg32 offset="7" name="7">
89*1ef05ef9SAkhil P Oommen		<bitfield name="ARRAY_SLICE_OFFSET" low="0" high="22" shr="12" type="uint"/> <!-- ARRAY_PITCH -->
90*1ef05ef9SAkhil P Oommen		<bitfield name="ASO_UNIT" pos="23"/> <!-- 4KB or 32B ? -->
91*1ef05ef9SAkhil P Oommen		<bitfield name="MIN_ARRAY_SLIZE_OFFSET" low="24" high="27" shr="12"/> <!-- MIN_LAYERSZ -->
92*1ef05ef9SAkhil P Oommen		<bitfield name="GMEM_TILING_FALLBACK_EN" pos="28" type="boolean"/>
93*1ef05ef9SAkhil P Oommen		<bitfield name="CORNER_BASED_EN" pos="30" type="boolean"/>
94*1ef05ef9SAkhil P Oommen		<bitfield name="GMEM_FULL_SURF" pos="31" type="boolean"/>
95*1ef05ef9SAkhil P Oommen		<!-- For multiplanar.  This overlaps other single-planar fields: -->
96*1ef05ef9SAkhil P Oommen		<bitfield name="UV_OFFSET_H" low="24" high="25" type="ufixed" radix="2"/> <!-- CHROMA_MIDPOINT_X -->
97*1ef05ef9SAkhil P Oommen		<bitfield name="UV_OFFSET_V" low="26" high="27" type="ufixed" radix="2"/> <!-- CHROMA_MIDPOINT_Y -->
98*1ef05ef9SAkhil P Oommen	</reg32>
99*1ef05ef9SAkhil P Oommen	<reg32 offset="8" name="8">
100*1ef05ef9SAkhil P Oommen		<bitfield name="FLAG_ARRAY_PITCH" low="0" high="14" shr="12" type="uint"/> <!-- FLAG_BUFFER_ARRAY_PITCH -->
101*1ef05ef9SAkhil P Oommen		<!-- log2 size of the first level, required for mipmapping -->
102*1ef05ef9SAkhil P Oommen		<bitfield name="FLAG_BUFFER_LOGW" low="24" high="27" type="uint"/>
103*1ef05ef9SAkhil P Oommen		<bitfield name="FLAG_BUFFER_LOGH" low="28" high="31" type="uint"/>
104*1ef05ef9SAkhil P Oommen		<!-- For multiplanar.  This overlaps other single-planar fields: -->
105*1ef05ef9SAkhil P Oommen		<bitfield name="BASE_V_LO" low="6" high="31" shr="6"/>
106*1ef05ef9SAkhil P Oommen	</reg32>
107*1ef05ef9SAkhil P Oommen	<reg32 offset="9" name="9">
108*1ef05ef9SAkhil P Oommen		<bitfield name="MIN_LOD_CLAMP" low="19" high="30" type="ufixed" radix="8"/>
109*1ef05ef9SAkhil P Oommen		<!-- For multiplanar, this overlaps other fields: -->
110*1ef05ef9SAkhil P Oommen		<bitfield name="BASE_V_HI" low="0" high="16"/>
111*1ef05ef9SAkhil P Oommen		<bitfield name="UV_PITCH" low="17" high="26"/> <!-- PLANE_PITCH -->
112*1ef05ef9SAkhil P Oommen	</reg32>
113*1ef05ef9SAkhil P Oommen	<reg32 offset="10" name="10"/>
114*1ef05ef9SAkhil P Oommen	<reg32 offset="11" name="11"/>
115*1ef05ef9SAkhil P Oommen	<reg32 offset="12" name="12"/>
116*1ef05ef9SAkhil P Oommen	<reg32 offset="13" name="13"/>
117*1ef05ef9SAkhil P Oommen	<reg32 offset="14" name="14"/>
118*1ef05ef9SAkhil P Oommen	<reg32 offset="15" name="15"/>
119*1ef05ef9SAkhil P Oommen</domain>
120*1ef05ef9SAkhil P Oommen
121*1ef05ef9SAkhil P Oommen</database>
122