]> git.baikalelectronics.ru Git - kernel.git/commitdiff
drm/msm: Generated register update
authorRob Clark <robdclark@chromium.org>
Sun, 30 May 2021 22:44:23 +0000 (15:44 -0700)
committerRob Clark <robdclark@chromium.org>
Wed, 23 Jun 2021 14:33:54 +0000 (07:33 -0700)
Based on mesa commit daa2ccff7a0201941db3901780d179e2634057d5

Small bit of .c churn in the phy code to adapt to split up of phy
related registers.

Signed-off-by: Rob Clark <robdclark@chromium.org>
32 files changed:
drivers/gpu/drm/msm/adreno/a2xx.xml.h
drivers/gpu/drm/msm/adreno/a3xx.xml.h
drivers/gpu/drm/msm/adreno/a4xx.xml.h
drivers/gpu/drm/msm/adreno/a5xx.xml.h
drivers/gpu/drm/msm/adreno/a6xx.xml.h
drivers/gpu/drm/msm/adreno/a6xx_gmu.xml.h
drivers/gpu/drm/msm/adreno/a6xx_gpu.c
drivers/gpu/drm/msm/adreno/adreno_common.xml.h
drivers/gpu/drm/msm/adreno/adreno_pm4.xml.h
drivers/gpu/drm/msm/disp/mdp4/mdp4.xml.h
drivers/gpu/drm/msm/disp/mdp5/mdp5.xml.h
drivers/gpu/drm/msm/disp/mdp_common.xml.h
drivers/gpu/drm/msm/dsi/dsi.xml.h
drivers/gpu/drm/msm/dsi/dsi_phy_10nm.xml.h [new file with mode: 0644]
drivers/gpu/drm/msm/dsi/dsi_phy_14nm.xml.h [new file with mode: 0644]
drivers/gpu/drm/msm/dsi/dsi_phy_20nm.xml.h [new file with mode: 0644]
drivers/gpu/drm/msm/dsi/dsi_phy_28nm.xml.h [new file with mode: 0644]
drivers/gpu/drm/msm/dsi/dsi_phy_28nm_8960.xml.h [new file with mode: 0644]
drivers/gpu/drm/msm/dsi/dsi_phy_5nm.xml.h [new file with mode: 0644]
drivers/gpu/drm/msm/dsi/dsi_phy_7nm.xml.h [new file with mode: 0644]
drivers/gpu/drm/msm/dsi/mmss_cc.xml.h
drivers/gpu/drm/msm/dsi/phy/dsi_phy_10nm.c
drivers/gpu/drm/msm/dsi/phy/dsi_phy_14nm.c
drivers/gpu/drm/msm/dsi/phy/dsi_phy_20nm.c
drivers/gpu/drm/msm/dsi/phy/dsi_phy_28nm.c
drivers/gpu/drm/msm/dsi/phy/dsi_phy_28nm_8960.c
drivers/gpu/drm/msm/dsi/phy/dsi_phy_7nm.c
drivers/gpu/drm/msm/dsi/sfpb.xml.h
drivers/gpu/drm/msm/edp/edp.xml.h
drivers/gpu/drm/msm/hdmi/hdmi.xml.h
drivers/gpu/drm/msm/hdmi/qfprom.xml.h
drivers/gpu/drm/msm/msm_drv.h

index 54e1b2aa57d5e9ea98f4e901ddd46b6182abc6d6..4ff52957609323feda3ad1ebf2ac9d3c948dab6a 100644 (file)
@@ -8,21 +8,21 @@ http://github.com/freedreno/envytools/
 git clone https://github.com/freedreno/envytools.git
 
 The rules-ng-ng source files this header was generated from are:
-- /home/robclark/src/envytools/rnndb/adreno.xml                     (    594 bytes, from 2020-07-23 21:58:14)
-- /home/robclark/src/envytools/rnndb/freedreno_copyright.xml        (   1572 bytes, from 2020-07-23 21:58:14)
-- /home/robclark/src/envytools/rnndb/adreno/a2xx.xml                (  90159 bytes, from 2020-07-23 21:58:14)
-- /home/robclark/src/envytools/rnndb/adreno/adreno_common.xml       (  14386 bytes, from 2020-07-23 21:58:14)
-- /home/robclark/src/envytools/rnndb/adreno/adreno_pm4.xml          (  65048 bytes, from 2020-07-23 21:58:14)
-- /home/robclark/src/envytools/rnndb/adreno/a3xx.xml                (  84226 bytes, from 2020-07-23 21:58:14)
-- /home/robclark/src/envytools/rnndb/adreno/a4xx.xml                ( 112556 bytes, from 2020-07-23 21:58:14)
-- /home/robclark/src/envytools/rnndb/adreno/a5xx.xml                ( 149461 bytes, from 2020-07-23 21:58:14)
-- /home/robclark/src/envytools/rnndb/adreno/a6xx.xml                ( 184695 bytes, from 2020-07-23 21:58:14)
-- /home/robclark/src/envytools/rnndb/adreno/a6xx_gmu.xml            (  11218 bytes, from 2020-07-23 21:58:14)
-- /home/robclark/src/envytools/rnndb/adreno/ocmem.xml               (   1773 bytes, from 2020-07-23 21:58:14)
-- /home/robclark/src/envytools/rnndb/adreno/adreno_control_regs.xml (   4559 bytes, from 2020-07-23 21:58:14)
-- /home/robclark/src/envytools/rnndb/adreno/adreno_pipe_regs.xml    (   2872 bytes, from 2020-07-23 21:58:14)
-
-Copyright (C) 2013-2020 by the following authors:
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/adreno.xml                     (    594 bytes, from 2021-02-18 16:45:44)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/freedreno_copyright.xml        (   1572 bytes, from 2021-02-18 16:45:44)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/adreno/a2xx.xml                (  90810 bytes, from 2021-02-18 16:45:44)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/adreno/adreno_common.xml       (  14386 bytes, from 2021-02-18 16:45:44)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/adreno/adreno_pm4.xml          (  67699 bytes, from 2021-05-31 20:21:57)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/adreno/a3xx.xml                (  84226 bytes, from 2021-02-18 16:45:44)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/adreno/a4xx.xml                ( 112551 bytes, from 2021-02-18 16:45:44)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/adreno/a5xx.xml                ( 150713 bytes, from 2021-06-10 22:34:02)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/adreno/a6xx.xml                ( 180049 bytes, from 2021-06-02 21:44:19)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/adreno/a6xx_gmu.xml            (  11331 bytes, from 2021-05-21 19:18:08)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/adreno/ocmem.xml               (   1773 bytes, from 2021-02-18 16:45:44)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/adreno/adreno_control_regs.xml (   6038 bytes, from 2021-05-27 20:22:36)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/adreno/adreno_pipe_regs.xml    (   2924 bytes, from 2021-05-27 20:18:13)
+
+Copyright (C) 2013-2021 by the following authors:
 - Rob Clark <robdclark@gmail.com> (robclark)
 - Ilia Mirkin <imirkin@alum.mit.edu> (imirkin)
 
@@ -1258,11 +1258,17 @@ static inline uint32_t A2XX_MH_MMU_VA_RANGE_VA_BASE(uint32_t val)
 
 #define REG_A2XX_NQWAIT_UNTIL                                  0x00000394
 
-#define REG_A2XX_RBBM_PERFCOUNTER1_SELECT                      0x00000395
+#define REG_A2XX_RBBM_PERFCOUNTER0_SELECT                      0x00000395
 
-#define REG_A2XX_RBBM_PERFCOUNTER1_LO                          0x00000397
+#define REG_A2XX_RBBM_PERFCOUNTER1_SELECT                      0x00000396
 
-#define REG_A2XX_RBBM_PERFCOUNTER1_HI                          0x00000398
+#define REG_A2XX_RBBM_PERFCOUNTER0_LO                          0x00000397
+
+#define REG_A2XX_RBBM_PERFCOUNTER0_HI                          0x00000398
+
+#define REG_A2XX_RBBM_PERFCOUNTER1_LO                          0x00000399
+
+#define REG_A2XX_RBBM_PERFCOUNTER1_HI                          0x0000039a
 
 #define REG_A2XX_RBBM_DEBUG                                    0x0000039b
 
@@ -2922,10 +2928,28 @@ static inline uint32_t A2XX_RB_COPY_DEST_OFFSET_Y(uint32_t val)
 
 #define REG_A2XX_RB_PERFCOUNTER0_SELECT                                0x00000f04
 
+#define REG_A2XX_RB_PERFCOUNTER1_SELECT                                0x00000f05
+
+#define REG_A2XX_RB_PERFCOUNTER2_SELECT                                0x00000f06
+
+#define REG_A2XX_RB_PERFCOUNTER3_SELECT                                0x00000f07
+
 #define REG_A2XX_RB_PERFCOUNTER0_LOW                           0x00000f08
 
 #define REG_A2XX_RB_PERFCOUNTER0_HI                            0x00000f09
 
+#define REG_A2XX_RB_PERFCOUNTER1_LOW                           0x00000f0a
+
+#define REG_A2XX_RB_PERFCOUNTER1_HI                            0x00000f0b
+
+#define REG_A2XX_RB_PERFCOUNTER2_LOW                           0x00000f0c
+
+#define REG_A2XX_RB_PERFCOUNTER2_HI                            0x00000f0d
+
+#define REG_A2XX_RB_PERFCOUNTER3_LOW                           0x00000f0e
+
+#define REG_A2XX_RB_PERFCOUNTER3_HI                            0x00000f0f
+
 #define REG_A2XX_SQ_TEX_0                                      0x00000000
 #define A2XX_SQ_TEX_0_TYPE__MASK                               0x00000003
 #define A2XX_SQ_TEX_0_TYPE__SHIFT                              0
index 16f9ef453bf8a768a267a42581a24857069cc593..e106b65abe262caab75acbe2a21ba8faa3344e8d 100644 (file)
@@ -8,21 +8,21 @@ http://github.com/freedreno/envytools/
 git clone https://github.com/freedreno/envytools.git
 
 The rules-ng-ng source files this header was generated from are:
-- /home/robclark/src/envytools/rnndb/adreno.xml                     (    594 bytes, from 2020-07-23 21:58:14)
-- /home/robclark/src/envytools/rnndb/freedreno_copyright.xml        (   1572 bytes, from 2020-07-23 21:58:14)
-- /home/robclark/src/envytools/rnndb/adreno/a2xx.xml                (  90159 bytes, from 2020-07-23 21:58:14)
-- /home/robclark/src/envytools/rnndb/adreno/adreno_common.xml       (  14386 bytes, from 2020-07-23 21:58:14)
-- /home/robclark/src/envytools/rnndb/adreno/adreno_pm4.xml          (  65048 bytes, from 2020-07-23 21:58:14)
-- /home/robclark/src/envytools/rnndb/adreno/a3xx.xml                (  84226 bytes, from 2020-07-23 21:58:14)
-- /home/robclark/src/envytools/rnndb/adreno/a4xx.xml                ( 112556 bytes, from 2020-07-23 21:58:14)
-- /home/robclark/src/envytools/rnndb/adreno/a5xx.xml                ( 149461 bytes, from 2020-07-23 21:58:14)
-- /home/robclark/src/envytools/rnndb/adreno/a6xx.xml                ( 184695 bytes, from 2020-07-23 21:58:14)
-- /home/robclark/src/envytools/rnndb/adreno/a6xx_gmu.xml            (  11218 bytes, from 2020-07-23 21:58:14)
-- /home/robclark/src/envytools/rnndb/adreno/ocmem.xml               (   1773 bytes, from 2020-07-23 21:58:14)
-- /home/robclark/src/envytools/rnndb/adreno/adreno_control_regs.xml (   4559 bytes, from 2020-07-23 21:58:14)
-- /home/robclark/src/envytools/rnndb/adreno/adreno_pipe_regs.xml    (   2872 bytes, from 2020-07-23 21:58:14)
-
-Copyright (C) 2013-2020 by the following authors:
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/adreno.xml                     (    594 bytes, from 2021-02-18 16:45:44)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/freedreno_copyright.xml        (   1572 bytes, from 2021-02-18 16:45:44)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/adreno/a2xx.xml                (  90810 bytes, from 2021-02-18 16:45:44)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/adreno/adreno_common.xml       (  14386 bytes, from 2021-02-18 16:45:44)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/adreno/adreno_pm4.xml          (  67699 bytes, from 2021-05-31 20:21:57)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/adreno/a3xx.xml                (  84226 bytes, from 2021-02-18 16:45:44)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/adreno/a4xx.xml                ( 112551 bytes, from 2021-02-18 16:45:44)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/adreno/a5xx.xml                ( 150713 bytes, from 2021-06-10 22:34:02)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/adreno/a6xx.xml                ( 180049 bytes, from 2021-06-02 21:44:19)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/adreno/a6xx_gmu.xml            (  11331 bytes, from 2021-05-21 19:18:08)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/adreno/ocmem.xml               (   1773 bytes, from 2021-02-18 16:45:44)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/adreno/adreno_control_regs.xml (   6038 bytes, from 2021-05-27 20:22:36)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/adreno/adreno_pipe_regs.xml    (   2924 bytes, from 2021-05-27 20:18:13)
+
+Copyright (C) 2013-2021 by the following authors:
 - Rob Clark <robdclark@gmail.com> (robclark)
 - Ilia Mirkin <imirkin@alum.mit.edu> (imirkin)
 
@@ -1215,7 +1215,7 @@ static inline uint32_t A3XX_RB_ALPHA_REF_UINT(uint32_t val)
 #define A3XX_RB_ALPHA_REF_FLOAT__SHIFT                         16
 static inline uint32_t A3XX_RB_ALPHA_REF_FLOAT(float val)
 {
-       return ((util_float_to_half(val)) << A3XX_RB_ALPHA_REF_FLOAT__SHIFT) & A3XX_RB_ALPHA_REF_FLOAT__MASK;
+       return ((_mesa_float_to_half(val)) << A3XX_RB_ALPHA_REF_FLOAT__SHIFT) & A3XX_RB_ALPHA_REF_FLOAT__MASK;
 }
 
 static inline uint32_t REG_A3XX_RB_MRT(uint32_t i0) { return 0x000020c4 + 0x4*i0; }
@@ -1328,7 +1328,7 @@ static inline uint32_t A3XX_RB_BLEND_RED_UINT(uint32_t val)
 #define A3XX_RB_BLEND_RED_FLOAT__SHIFT                         16
 static inline uint32_t A3XX_RB_BLEND_RED_FLOAT(float val)
 {
-       return ((util_float_to_half(val)) << A3XX_RB_BLEND_RED_FLOAT__SHIFT) & A3XX_RB_BLEND_RED_FLOAT__MASK;
+       return ((_mesa_float_to_half(val)) << A3XX_RB_BLEND_RED_FLOAT__SHIFT) & A3XX_RB_BLEND_RED_FLOAT__MASK;
 }
 
 #define REG_A3XX_RB_BLEND_GREEN                                        0x000020e5
@@ -1342,7 +1342,7 @@ static inline uint32_t A3XX_RB_BLEND_GREEN_UINT(uint32_t val)
 #define A3XX_RB_BLEND_GREEN_FLOAT__SHIFT                       16
 static inline uint32_t A3XX_RB_BLEND_GREEN_FLOAT(float val)
 {
-       return ((util_float_to_half(val)) << A3XX_RB_BLEND_GREEN_FLOAT__SHIFT) & A3XX_RB_BLEND_GREEN_FLOAT__MASK;
+       return ((_mesa_float_to_half(val)) << A3XX_RB_BLEND_GREEN_FLOAT__SHIFT) & A3XX_RB_BLEND_GREEN_FLOAT__MASK;
 }
 
 #define REG_A3XX_RB_BLEND_BLUE                                 0x000020e6
@@ -1356,7 +1356,7 @@ static inline uint32_t A3XX_RB_BLEND_BLUE_UINT(uint32_t val)
 #define A3XX_RB_BLEND_BLUE_FLOAT__SHIFT                                16
 static inline uint32_t A3XX_RB_BLEND_BLUE_FLOAT(float val)
 {
-       return ((util_float_to_half(val)) << A3XX_RB_BLEND_BLUE_FLOAT__SHIFT) & A3XX_RB_BLEND_BLUE_FLOAT__MASK;
+       return ((_mesa_float_to_half(val)) << A3XX_RB_BLEND_BLUE_FLOAT__SHIFT) & A3XX_RB_BLEND_BLUE_FLOAT__MASK;
 }
 
 #define REG_A3XX_RB_BLEND_ALPHA                                        0x000020e7
@@ -1370,7 +1370,7 @@ static inline uint32_t A3XX_RB_BLEND_ALPHA_UINT(uint32_t val)
 #define A3XX_RB_BLEND_ALPHA_FLOAT__SHIFT                       16
 static inline uint32_t A3XX_RB_BLEND_ALPHA_FLOAT(float val)
 {
-       return ((util_float_to_half(val)) << A3XX_RB_BLEND_ALPHA_FLOAT__SHIFT) & A3XX_RB_BLEND_ALPHA_FLOAT__MASK;
+       return ((_mesa_float_to_half(val)) << A3XX_RB_BLEND_ALPHA_FLOAT__SHIFT) & A3XX_RB_BLEND_ALPHA_FLOAT__MASK;
 }
 
 #define REG_A3XX_RB_CLEAR_COLOR_DW0                            0x000020e8
index a7eaf2c83fe23ebd1894a1f8659162754db42e50..b26ede96ae2aae2f59bff55679d483b0137c6b5b 100644 (file)
@@ -8,21 +8,21 @@ http://github.com/freedreno/envytools/
 git clone https://github.com/freedreno/envytools.git
 
 The rules-ng-ng source files this header was generated from are:
-- /home/robclark/src/envytools/rnndb/adreno.xml                     (    594 bytes, from 2020-07-23 21:58:14)
-- /home/robclark/src/envytools/rnndb/freedreno_copyright.xml        (   1572 bytes, from 2020-07-23 21:58:14)
-- /home/robclark/src/envytools/rnndb/adreno/a2xx.xml                (  90159 bytes, from 2020-07-23 21:58:14)
-- /home/robclark/src/envytools/rnndb/adreno/adreno_common.xml       (  14386 bytes, from 2020-07-23 21:58:14)
-- /home/robclark/src/envytools/rnndb/adreno/adreno_pm4.xml          (  65048 bytes, from 2020-07-23 21:58:14)
-- /home/robclark/src/envytools/rnndb/adreno/a3xx.xml                (  84226 bytes, from 2020-07-23 21:58:14)
-- /home/robclark/src/envytools/rnndb/adreno/a4xx.xml                ( 112556 bytes, from 2020-07-23 21:58:14)
-- /home/robclark/src/envytools/rnndb/adreno/a5xx.xml                ( 149461 bytes, from 2020-07-23 21:58:14)
-- /home/robclark/src/envytools/rnndb/adreno/a6xx.xml                ( 184695 bytes, from 2020-07-23 21:58:14)
-- /home/robclark/src/envytools/rnndb/adreno/a6xx_gmu.xml            (  11218 bytes, from 2020-07-23 21:58:14)
-- /home/robclark/src/envytools/rnndb/adreno/ocmem.xml               (   1773 bytes, from 2020-07-23 21:58:14)
-- /home/robclark/src/envytools/rnndb/adreno/adreno_control_regs.xml (   4559 bytes, from 2020-07-23 21:58:14)
-- /home/robclark/src/envytools/rnndb/adreno/adreno_pipe_regs.xml    (   2872 bytes, from 2020-07-23 21:58:14)
-
-Copyright (C) 2013-2020 by the following authors:
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/adreno.xml                     (    594 bytes, from 2021-02-18 16:45:44)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/freedreno_copyright.xml        (   1572 bytes, from 2021-02-18 16:45:44)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/adreno/a2xx.xml                (  90810 bytes, from 2021-02-18 16:45:44)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/adreno/adreno_common.xml       (  14386 bytes, from 2021-02-18 16:45:44)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/adreno/adreno_pm4.xml          (  67699 bytes, from 2021-05-31 20:21:57)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/adreno/a3xx.xml                (  84226 bytes, from 2021-02-18 16:45:44)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/adreno/a4xx.xml                ( 112551 bytes, from 2021-02-18 16:45:44)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/adreno/a5xx.xml                ( 150713 bytes, from 2021-06-10 22:34:02)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/adreno/a6xx.xml                ( 180049 bytes, from 2021-06-02 21:44:19)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/adreno/a6xx_gmu.xml            (  11331 bytes, from 2021-05-21 19:18:08)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/adreno/ocmem.xml               (   1773 bytes, from 2021-02-18 16:45:44)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/adreno/adreno_control_regs.xml (   6038 bytes, from 2021-05-27 20:22:36)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/adreno/adreno_pipe_regs.xml    (   2924 bytes, from 2021-05-27 20:18:13)
+
+Copyright (C) 2013-2021 by the following authors:
 - Rob Clark <robdclark@gmail.com> (robclark)
 - Ilia Mirkin <imirkin@alum.mit.edu> (imirkin)
 
@@ -1085,7 +1085,7 @@ static inline uint32_t A4XX_RB_BLEND_RED_SINT(uint32_t val)
 #define A4XX_RB_BLEND_RED_FLOAT__SHIFT                         16
 static inline uint32_t A4XX_RB_BLEND_RED_FLOAT(float val)
 {
-       return ((util_float_to_half(val)) << A4XX_RB_BLEND_RED_FLOAT__SHIFT) & A4XX_RB_BLEND_RED_FLOAT__MASK;
+       return ((_mesa_float_to_half(val)) << A4XX_RB_BLEND_RED_FLOAT__SHIFT) & A4XX_RB_BLEND_RED_FLOAT__MASK;
 }
 
 #define REG_A4XX_RB_BLEND_RED_F32                              0x000020f1
@@ -1113,7 +1113,7 @@ static inline uint32_t A4XX_RB_BLEND_GREEN_SINT(uint32_t val)
 #define A4XX_RB_BLEND_GREEN_FLOAT__SHIFT                       16
 static inline uint32_t A4XX_RB_BLEND_GREEN_FLOAT(float val)
 {
-       return ((util_float_to_half(val)) << A4XX_RB_BLEND_GREEN_FLOAT__SHIFT) & A4XX_RB_BLEND_GREEN_FLOAT__MASK;
+       return ((_mesa_float_to_half(val)) << A4XX_RB_BLEND_GREEN_FLOAT__SHIFT) & A4XX_RB_BLEND_GREEN_FLOAT__MASK;
 }
 
 #define REG_A4XX_RB_BLEND_GREEN_F32                            0x000020f3
@@ -1141,7 +1141,7 @@ static inline uint32_t A4XX_RB_BLEND_BLUE_SINT(uint32_t val)
 #define A4XX_RB_BLEND_BLUE_FLOAT__SHIFT                                16
 static inline uint32_t A4XX_RB_BLEND_BLUE_FLOAT(float val)
 {
-       return ((util_float_to_half(val)) << A4XX_RB_BLEND_BLUE_FLOAT__SHIFT) & A4XX_RB_BLEND_BLUE_FLOAT__MASK;
+       return ((_mesa_float_to_half(val)) << A4XX_RB_BLEND_BLUE_FLOAT__SHIFT) & A4XX_RB_BLEND_BLUE_FLOAT__MASK;
 }
 
 #define REG_A4XX_RB_BLEND_BLUE_F32                             0x000020f5
@@ -1169,7 +1169,7 @@ static inline uint32_t A4XX_RB_BLEND_ALPHA_SINT(uint32_t val)
 #define A4XX_RB_BLEND_ALPHA_FLOAT__SHIFT                       16
 static inline uint32_t A4XX_RB_BLEND_ALPHA_FLOAT(float val)
 {
-       return ((util_float_to_half(val)) << A4XX_RB_BLEND_ALPHA_FLOAT__SHIFT) & A4XX_RB_BLEND_ALPHA_FLOAT__MASK;
+       return ((_mesa_float_to_half(val)) << A4XX_RB_BLEND_ALPHA_FLOAT__SHIFT) & A4XX_RB_BLEND_ALPHA_FLOAT__MASK;
 }
 
 #define REG_A4XX_RB_BLEND_ALPHA_F32                            0x000020f7
index 7b9fcfe95c04643d13decc97f18e5b9c1a18d2ef..1e575ca1f2705bb6fb0ff2ecd007b0befcd3ac6c 100644 (file)
@@ -8,21 +8,21 @@ http://github.com/freedreno/envytools/
 git clone https://github.com/freedreno/envytools.git
 
 The rules-ng-ng source files this header was generated from are:
-- /home/robclark/src/envytools/rnndb/adreno.xml                     (    594 bytes, from 2020-07-23 21:58:14)
-- /home/robclark/src/envytools/rnndb/freedreno_copyright.xml        (   1572 bytes, from 2020-07-23 21:58:14)
-- /home/robclark/src/envytools/rnndb/adreno/a2xx.xml                (  90159 bytes, from 2020-07-23 21:58:14)
-- /home/robclark/src/envytools/rnndb/adreno/adreno_common.xml       (  14386 bytes, from 2020-07-23 21:58:14)
-- /home/robclark/src/envytools/rnndb/adreno/adreno_pm4.xml          (  65048 bytes, from 2020-07-23 21:58:14)
-- /home/robclark/src/envytools/rnndb/adreno/a3xx.xml                (  84226 bytes, from 2020-07-23 21:58:14)
-- /home/robclark/src/envytools/rnndb/adreno/a4xx.xml                ( 112556 bytes, from 2020-07-23 21:58:14)
-- /home/robclark/src/envytools/rnndb/adreno/a5xx.xml                ( 149461 bytes, from 2020-07-23 21:58:14)
-- /home/robclark/src/envytools/rnndb/adreno/a6xx.xml                ( 184695 bytes, from 2020-07-23 21:58:14)
-- /home/robclark/src/envytools/rnndb/adreno/a6xx_gmu.xml            (  11218 bytes, from 2020-07-23 21:58:14)
-- /home/robclark/src/envytools/rnndb/adreno/ocmem.xml               (   1773 bytes, from 2020-07-23 21:58:14)
-- /home/robclark/src/envytools/rnndb/adreno/adreno_control_regs.xml (   4559 bytes, from 2020-07-23 21:58:14)
-- /home/robclark/src/envytools/rnndb/adreno/adreno_pipe_regs.xml    (   2872 bytes, from 2020-07-23 21:58:14)
-
-Copyright (C) 2013-2020 by the following authors:
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/adreno.xml                     (    594 bytes, from 2021-02-18 16:45:44)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/freedreno_copyright.xml        (   1572 bytes, from 2021-02-18 16:45:44)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/adreno/a2xx.xml                (  90810 bytes, from 2021-02-18 16:45:44)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/adreno/adreno_common.xml       (  14386 bytes, from 2021-02-18 16:45:44)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/adreno/adreno_pm4.xml          (  67699 bytes, from 2021-05-31 20:21:57)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/adreno/a3xx.xml                (  84226 bytes, from 2021-02-18 16:45:44)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/adreno/a4xx.xml                ( 112551 bytes, from 2021-02-18 16:45:44)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/adreno/a5xx.xml                ( 150713 bytes, from 2021-06-10 22:34:02)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/adreno/a6xx.xml                ( 180049 bytes, from 2021-06-02 21:44:19)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/adreno/a6xx_gmu.xml            (  11331 bytes, from 2021-05-21 19:18:08)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/adreno/ocmem.xml               (   1773 bytes, from 2021-02-18 16:45:44)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/adreno/adreno_control_regs.xml (   6038 bytes, from 2021-05-27 20:22:36)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/adreno/adreno_pipe_regs.xml    (   2924 bytes, from 2021-05-27 20:18:13)
+
+Copyright (C) 2013-2021 by the following authors:
 - Rob Clark <robdclark@gmail.com> (robclark)
 - Ilia Mirkin <imirkin@alum.mit.edu> (imirkin)
 
@@ -2021,6 +2021,7 @@ static inline uint32_t A5XX_RBBM_STATUS_CP_ME_BUSY(uint32_t val)
 #define A5XX_RBBM_STATUS_HI_BUSY                               0x00000001
 
 #define REG_A5XX_RBBM_STATUS3                                  0x00000530
+#define A5XX_RBBM_STATUS3_SMMU_STALLED_ON_FAULT                        0x01000000
 
 #define REG_A5XX_RBBM_INT_0_STATUS                             0x000004e1
 
@@ -2351,6 +2352,7 @@ static inline uint32_t A5XX_VSC_RESOLVE_CNTL_Y(uint32_t val)
 #define REG_A5XX_VFD_PERFCTR_VFD_SEL_7                         0x00000e57
 
 #define REG_A5XX_VPC_DBG_ECO_CNTL                              0x00000e60
+#define A5XX_VPC_DBG_ECO_CNTL_ALLFLATOPTDIS                    0x00000400
 
 #define REG_A5XX_VPC_ADDR_MODE_CNTL                            0x00000e61
 
@@ -2808,7 +2810,19 @@ static inline uint32_t A5XX_VSC_RESOLVE_CNTL_Y(uint32_t val)
 #define REG_A5XX_GRAS_CL_CNTL                                  0x0000e000
 #define A5XX_GRAS_CL_CNTL_ZERO_GB_SCALE_Z                      0x00000040
 
-#define REG_A5XX_UNKNOWN_E001                                  0x0000e001
+#define REG_A5XX_GRAS_VS_CL_CNTL                               0x0000e001
+#define A5XX_GRAS_VS_CL_CNTL_CLIP_MASK__MASK                   0x000000ff
+#define A5XX_GRAS_VS_CL_CNTL_CLIP_MASK__SHIFT                  0
+static inline uint32_t A5XX_GRAS_VS_CL_CNTL_CLIP_MASK(uint32_t val)
+{
+       return ((val) << A5XX_GRAS_VS_CL_CNTL_CLIP_MASK__SHIFT) & A5XX_GRAS_VS_CL_CNTL_CLIP_MASK__MASK;
+}
+#define A5XX_GRAS_VS_CL_CNTL_CULL_MASK__MASK                   0x0000ff00
+#define A5XX_GRAS_VS_CL_CNTL_CULL_MASK__SHIFT                  8
+static inline uint32_t A5XX_GRAS_VS_CL_CNTL_CULL_MASK(uint32_t val)
+{
+       return ((val) << A5XX_GRAS_VS_CL_CNTL_CULL_MASK__SHIFT) & A5XX_GRAS_VS_CL_CNTL_CULL_MASK__MASK;
+}
 
 #define REG_A5XX_UNKNOWN_E004                                  0x0000e004
 
@@ -3345,7 +3359,7 @@ static inline uint32_t A5XX_RB_BLEND_RED_SINT(uint32_t val)
 #define A5XX_RB_BLEND_RED_FLOAT__SHIFT                         16
 static inline uint32_t A5XX_RB_BLEND_RED_FLOAT(float val)
 {
-       return ((util_float_to_half(val)) << A5XX_RB_BLEND_RED_FLOAT__SHIFT) & A5XX_RB_BLEND_RED_FLOAT__MASK;
+       return ((_mesa_float_to_half(val)) << A5XX_RB_BLEND_RED_FLOAT__SHIFT) & A5XX_RB_BLEND_RED_FLOAT__MASK;
 }
 
 #define REG_A5XX_RB_BLEND_RED_F32                              0x0000e1a1
@@ -3373,7 +3387,7 @@ static inline uint32_t A5XX_RB_BLEND_GREEN_SINT(uint32_t val)
 #define A5XX_RB_BLEND_GREEN_FLOAT__SHIFT                       16
 static inline uint32_t A5XX_RB_BLEND_GREEN_FLOAT(float val)
 {
-       return ((util_float_to_half(val)) << A5XX_RB_BLEND_GREEN_FLOAT__SHIFT) & A5XX_RB_BLEND_GREEN_FLOAT__MASK;
+       return ((_mesa_float_to_half(val)) << A5XX_RB_BLEND_GREEN_FLOAT__SHIFT) & A5XX_RB_BLEND_GREEN_FLOAT__MASK;
 }
 
 #define REG_A5XX_RB_BLEND_GREEN_F32                            0x0000e1a3
@@ -3401,7 +3415,7 @@ static inline uint32_t A5XX_RB_BLEND_BLUE_SINT(uint32_t val)
 #define A5XX_RB_BLEND_BLUE_FLOAT__SHIFT                                16
 static inline uint32_t A5XX_RB_BLEND_BLUE_FLOAT(float val)
 {
-       return ((util_float_to_half(val)) << A5XX_RB_BLEND_BLUE_FLOAT__SHIFT) & A5XX_RB_BLEND_BLUE_FLOAT__MASK;
+       return ((_mesa_float_to_half(val)) << A5XX_RB_BLEND_BLUE_FLOAT__SHIFT) & A5XX_RB_BLEND_BLUE_FLOAT__MASK;
 }
 
 #define REG_A5XX_RB_BLEND_BLUE_F32                             0x0000e1a5
@@ -3429,7 +3443,7 @@ static inline uint32_t A5XX_RB_BLEND_ALPHA_SINT(uint32_t val)
 #define A5XX_RB_BLEND_ALPHA_FLOAT__SHIFT                       16
 static inline uint32_t A5XX_RB_BLEND_ALPHA_FLOAT(float val)
 {
-       return ((util_float_to_half(val)) << A5XX_RB_BLEND_ALPHA_FLOAT__SHIFT) & A5XX_RB_BLEND_ALPHA_FLOAT__MASK;
+       return ((_mesa_float_to_half(val)) << A5XX_RB_BLEND_ALPHA_FLOAT__SHIFT) & A5XX_RB_BLEND_ALPHA_FLOAT__MASK;
 }
 
 #define REG_A5XX_RB_BLEND_ALPHA_F32                            0x0000e1a7
@@ -3806,7 +3820,25 @@ static inline uint32_t REG_A5XX_VPC_VAR_DISABLE(uint32_t i0) { return 0x0000e294
 
 #define REG_A5XX_VPC_GS_SIV_CNTL                               0x0000e298
 
-#define REG_A5XX_UNKNOWN_E29A                                  0x0000e29a
+#define REG_A5XX_VPC_CLIP_CNTL                                 0x0000e29a
+#define A5XX_VPC_CLIP_CNTL_CLIP_MASK__MASK                     0x000000ff
+#define A5XX_VPC_CLIP_CNTL_CLIP_MASK__SHIFT                    0
+static inline uint32_t A5XX_VPC_CLIP_CNTL_CLIP_MASK(uint32_t val)
+{
+       return ((val) << A5XX_VPC_CLIP_CNTL_CLIP_MASK__SHIFT) & A5XX_VPC_CLIP_CNTL_CLIP_MASK__MASK;
+}
+#define A5XX_VPC_CLIP_CNTL_CLIP_DIST_03_LOC__MASK              0x0000ff00
+#define A5XX_VPC_CLIP_CNTL_CLIP_DIST_03_LOC__SHIFT             8
+static inline uint32_t A5XX_VPC_CLIP_CNTL_CLIP_DIST_03_LOC(uint32_t val)
+{
+       return ((val) << A5XX_VPC_CLIP_CNTL_CLIP_DIST_03_LOC__SHIFT) & A5XX_VPC_CLIP_CNTL_CLIP_DIST_03_LOC__MASK;
+}
+#define A5XX_VPC_CLIP_CNTL_CLIP_DIST_47_LOC__MASK              0x00ff0000
+#define A5XX_VPC_CLIP_CNTL_CLIP_DIST_47_LOC__SHIFT             16
+static inline uint32_t A5XX_VPC_CLIP_CNTL_CLIP_DIST_47_LOC(uint32_t val)
+{
+       return ((val) << A5XX_VPC_CLIP_CNTL_CLIP_DIST_47_LOC__SHIFT) & A5XX_VPC_CLIP_CNTL_CLIP_DIST_47_LOC__MASK;
+}
 
 #define REG_A5XX_VPC_PACK                                      0x0000e29d
 #define A5XX_VPC_PACK_NUMNONPOSVAR__MASK                       0x000000ff
@@ -3910,7 +3942,13 @@ static inline uint32_t A5XX_PC_RASTER_CNTL_POLYMODE_BACK_PTYPE(enum adreno_pa_su
 }
 #define A5XX_PC_RASTER_CNTL_POLYMODE_ENABLE                    0x00000040
 
-#define REG_A5XX_UNKNOWN_E389                                  0x0000e389
+#define REG_A5XX_PC_CLIP_CNTL                                  0x0000e389
+#define A5XX_PC_CLIP_CNTL_CLIP_MASK__MASK                      0x000000ff
+#define A5XX_PC_CLIP_CNTL_CLIP_MASK__SHIFT                     0
+static inline uint32_t A5XX_PC_CLIP_CNTL_CLIP_MASK(uint32_t val)
+{
+       return ((val) << A5XX_PC_CLIP_CNTL_CLIP_MASK__SHIFT) & A5XX_PC_CLIP_CNTL_CLIP_MASK__MASK;
+}
 
 #define REG_A5XX_PC_RESTART_INDEX                              0x0000e38c
 
@@ -4302,7 +4340,12 @@ static inline uint32_t A5XX_SP_FS_CTRL_REG0_BRANCHSTACK(uint32_t val)
 #define REG_A5XX_SP_FS_OBJ_START_HI                            0x0000e5c4
 
 #define REG_A5XX_SP_BLEND_CNTL                                 0x0000e5c9
-#define A5XX_SP_BLEND_CNTL_ENABLED                             0x00000001
+#define A5XX_SP_BLEND_CNTL_ENABLE_BLEND__MASK                  0x000000ff
+#define A5XX_SP_BLEND_CNTL_ENABLE_BLEND__SHIFT                 0
+static inline uint32_t A5XX_SP_BLEND_CNTL_ENABLE_BLEND(uint32_t val)
+{
+       return ((val) << A5XX_SP_BLEND_CNTL_ENABLE_BLEND__SHIFT) & A5XX_SP_BLEND_CNTL_ENABLE_BLEND__MASK;
+}
 #define A5XX_SP_BLEND_CNTL_UNK8                                        0x00000100
 #define A5XX_SP_BLEND_CNTL_ALPHA_TO_COVERAGE                   0x00000400
 
@@ -5192,8 +5235,8 @@ static inline uint32_t A5XX_TEX_SAMP_1_MIN_LOD(float val)
 }
 
 #define REG_A5XX_TEX_SAMP_2                                    0x00000002
-#define A5XX_TEX_SAMP_2_BCOLOR_OFFSET__MASK                    0xfffffff0
-#define A5XX_TEX_SAMP_2_BCOLOR_OFFSET__SHIFT                   4
+#define A5XX_TEX_SAMP_2_BCOLOR_OFFSET__MASK                    0xffffff80
+#define A5XX_TEX_SAMP_2_BCOLOR_OFFSET__SHIFT                   7
 static inline uint32_t A5XX_TEX_SAMP_2_BCOLOR_OFFSET(uint32_t val)
 {
        return ((val) << A5XX_TEX_SAMP_2_BCOLOR_OFFSET__SHIFT) & A5XX_TEX_SAMP_2_BCOLOR_OFFSET__MASK;
@@ -5273,6 +5316,7 @@ static inline uint32_t A5XX_TEX_CONST_1_HEIGHT(uint32_t val)
 }
 
 #define REG_A5XX_TEX_CONST_2                                   0x00000002
+#define A5XX_TEX_CONST_2_UNK4                                  0x00000010
 #define A5XX_TEX_CONST_2_PITCHALIGN__MASK                      0x0000000f
 #define A5XX_TEX_CONST_2_PITCHALIGN__SHIFT                     0
 static inline uint32_t A5XX_TEX_CONST_2_PITCHALIGN(uint32_t val)
@@ -5291,6 +5335,7 @@ static inline uint32_t A5XX_TEX_CONST_2_TYPE(enum a5xx_tex_type val)
 {
        return ((val) << A5XX_TEX_CONST_2_TYPE__SHIFT) & A5XX_TEX_CONST_2_TYPE__MASK;
 }
+#define A5XX_TEX_CONST_2_UNK31                                 0x80000000
 
 #define REG_A5XX_TEX_CONST_3                                   0x00000003
 #define A5XX_TEX_CONST_3_ARRAY_PITCH__MASK                     0x00003fff
index 920c5e6b8e9673af6e1d293a54db646c383e6ee9..a3cb3d988ba4e9aa8086e474850377f91bc1efc3 100644 (file)
@@ -8,21 +8,21 @@ http://github.com/freedreno/envytools/
 git clone https://github.com/freedreno/envytools.git
 
 The rules-ng-ng source files this header was generated from are:
-- /home/robclark/src/envytools/rnndb/adreno.xml                     (    594 bytes, from 2020-07-23 21:58:14)
-- /home/robclark/src/envytools/rnndb/freedreno_copyright.xml        (   1572 bytes, from 2020-07-23 21:58:14)
-- /home/robclark/src/envytools/rnndb/adreno/a2xx.xml                (  90159 bytes, from 2020-07-23 21:58:14)
-- /home/robclark/src/envytools/rnndb/adreno/adreno_common.xml       (  14386 bytes, from 2020-07-23 21:58:14)
-- /home/robclark/src/envytools/rnndb/adreno/adreno_pm4.xml          (  65048 bytes, from 2020-07-23 21:58:14)
-- /home/robclark/src/envytools/rnndb/adreno/a3xx.xml                (  84226 bytes, from 2020-07-23 21:58:14)
-- /home/robclark/src/envytools/rnndb/adreno/a4xx.xml                ( 112556 bytes, from 2020-07-23 21:58:14)
-- /home/robclark/src/envytools/rnndb/adreno/a5xx.xml                ( 149461 bytes, from 2020-07-23 21:58:14)
-- /home/robclark/src/envytools/rnndb/adreno/a6xx.xml                ( 184695 bytes, from 2020-07-23 21:58:14)
-- /home/robclark/src/envytools/rnndb/adreno/a6xx_gmu.xml            (  11218 bytes, from 2020-07-23 21:58:14)
-- /home/robclark/src/envytools/rnndb/adreno/ocmem.xml               (   1773 bytes, from 2020-07-23 21:58:14)
-- /home/robclark/src/envytools/rnndb/adreno/adreno_control_regs.xml (   4559 bytes, from 2020-07-23 21:58:14)
-- /home/robclark/src/envytools/rnndb/adreno/adreno_pipe_regs.xml    (   2872 bytes, from 2020-07-23 21:58:14)
-
-Copyright (C) 2013-2020 by the following authors:
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/adreno.xml                     (    594 bytes, from 2021-02-18 16:45:44)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/freedreno_copyright.xml        (   1572 bytes, from 2021-02-18 16:45:44)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/adreno/a2xx.xml                (  90810 bytes, from 2021-02-18 16:45:44)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/adreno/adreno_common.xml       (  14386 bytes, from 2021-02-18 16:45:44)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/adreno/adreno_pm4.xml          (  67699 bytes, from 2021-05-31 20:21:57)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/adreno/a3xx.xml                (  84226 bytes, from 2021-02-18 16:45:44)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/adreno/a4xx.xml                ( 112551 bytes, from 2021-02-18 16:45:44)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/adreno/a5xx.xml                ( 150713 bytes, from 2021-06-10 22:34:02)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/adreno/a6xx.xml                ( 180049 bytes, from 2021-06-02 21:44:19)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/adreno/a6xx_gmu.xml            (  11331 bytes, from 2021-05-21 19:18:08)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/adreno/ocmem.xml               (   1773 bytes, from 2021-02-18 16:45:44)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/adreno/adreno_control_regs.xml (   6038 bytes, from 2021-05-27 20:22:36)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/adreno/adreno_pipe_regs.xml    (   2924 bytes, from 2021-05-27 20:18:13)
+
+Copyright (C) 2013-2021 by the following authors:
 - Rob Clark <robdclark@gmail.com> (robclark)
 - Ilia Mirkin <imirkin@alum.mit.edu> (imirkin)
 
@@ -168,7 +168,7 @@ enum a6xx_format {
        FMT6_ASTC_10x10 = 204,
        FMT6_ASTC_12x10 = 205,
        FMT6_ASTC_12x12 = 206,
-       FMT6_S8Z24_UINT = 234,
+       FMT6_Z24_UINT_S8_UINT = 234,
        FMT6_NONE = 255,
 };
 
@@ -907,6 +907,11 @@ enum a6xx_tess_output {
        TESS_CCW_TRIS = 3,
 };
 
+enum a6xx_threadsize {
+       THREAD64 = 0,
+       THREAD128 = 1,
+};
+
 enum a6xx_tex_filter {
        A6XX_TEX_NEAREST = 0,
        A6XX_TEX_LINEAR = 1,
@@ -1007,9 +1012,7 @@ enum a6xx_tex_type {
 
 #define REG_A6XX_CP_PROTECT_STATUS                             0x00000824
 
-#define REG_A6XX_CP_SQE_INSTR_BASE_LO                          0x00000830
-
-#define REG_A6XX_CP_SQE_INSTR_BASE_HI                          0x00000831
+#define REG_A6XX_CP_SQE_INSTR_BASE                             0x00000830
 
 #define REG_A6XX_CP_MISC_CNTL                                  0x00000840
 
@@ -1104,33 +1107,7 @@ static inline uint32_t A6XX_CP_PROTECT_REG_MASK_LEN(uint32_t val)
 
 #define REG_A6XX_CP_CONTEXT_SWITCH_NON_PRIV_RESTORE_ADDR_HI    0x000008a8
 
-#define REG_A6XX_CP_PERFCTR_CP_SEL_0                           0x000008d0
-
-#define REG_A6XX_CP_PERFCTR_CP_SEL_1                           0x000008d1
-
-#define REG_A6XX_CP_PERFCTR_CP_SEL_2                           0x000008d2
-
-#define REG_A6XX_CP_PERFCTR_CP_SEL_3                           0x000008d3
-
-#define REG_A6XX_CP_PERFCTR_CP_SEL_4                           0x000008d4
-
-#define REG_A6XX_CP_PERFCTR_CP_SEL_5                           0x000008d5
-
-#define REG_A6XX_CP_PERFCTR_CP_SEL_6                           0x000008d6
-
-#define REG_A6XX_CP_PERFCTR_CP_SEL_7                           0x000008d7
-
-#define REG_A6XX_CP_PERFCTR_CP_SEL_8                           0x000008d8
-
-#define REG_A6XX_CP_PERFCTR_CP_SEL_9                           0x000008d9
-
-#define REG_A6XX_CP_PERFCTR_CP_SEL_10                          0x000008da
-
-#define REG_A6XX_CP_PERFCTR_CP_SEL_11                          0x000008db
-
-#define REG_A6XX_CP_PERFCTR_CP_SEL_12                          0x000008dc
-
-#define REG_A6XX_CP_PERFCTR_CP_SEL_13                          0x000008dd
+static inline uint32_t REG_A6XX_CP_PERFCTR_CP_SEL(uint32_t i0) { return 0x000008d0 + 0x1*i0; }
 
 #define REG_A6XX_CP_CRASH_SCRIPT_BASE_LO                       0x00000900
 
@@ -1176,15 +1153,21 @@ static inline uint32_t A6XX_CP_PROTECT_REG_MASK_LEN(uint32_t val)
 
 #define REG_A6XX_CP_SDS_BASE_HI                                        0x0000092f
 
-#define REG_A6XX_CP_SDS_REM_SIZE                               0x0000092e
+#define REG_A6XX_CP_SDS_REM_SIZE                               0x00000930
+
+#define REG_A6XX_CP_MRB_BASE                                   0x00000931
+
+#define REG_A6XX_CP_MRB_BASE_HI                                        0x00000932
 
-#define REG_A6XX_CP_BIN_SIZE_ADDRESS                           0x00000931
+#define REG_A6XX_CP_MRB_REM_SIZE                               0x00000933
 
-#define REG_A6XX_CP_BIN_SIZE_ADDRESS_HI                                0x00000932
+#define REG_A6XX_CP_VSD_BASE                                   0x00000934
 
-#define REG_A6XX_CP_BIN_DATA_ADDR                              0x00000934
+#define REG_A6XX_CP_VSD_BASE_HI                                        0x00000935
 
-#define REG_A6XX_CP_BIN_DATA_ADDR_HI                           0x00000935
+#define REG_A6XX_CP_MRB_DWORDS                                 0x00000946
+
+#define REG_A6XX_CP_VSD_DWORDS                                 0x00000947
 
 #define REG_A6XX_CP_CSQ_IB1_STAT                               0x00000949
 #define A6XX_CP_CSQ_IB1_STAT_REM__MASK                         0xffff0000
@@ -1202,6 +1185,14 @@ static inline uint32_t A6XX_CP_CSQ_IB2_STAT_REM(uint32_t val)
        return ((val) << A6XX_CP_CSQ_IB2_STAT_REM__SHIFT) & A6XX_CP_CSQ_IB2_STAT_REM__MASK;
 }
 
+#define REG_A6XX_CP_MRQ_MRB_STAT                               0x0000094c
+#define A6XX_CP_MRQ_MRB_STAT_REM__MASK                         0xffff0000
+#define A6XX_CP_MRQ_MRB_STAT_REM__SHIFT                                16
+static inline uint32_t A6XX_CP_MRQ_MRB_STAT_REM(uint32_t val)
+{
+       return ((val) << A6XX_CP_MRQ_MRB_STAT_REM__SHIFT) & A6XX_CP_MRQ_MRB_STAT_REM__MASK;
+}
+
 #define REG_A6XX_CP_ALWAYS_ON_COUNTER_LO                       0x00000980
 
 #define REG_A6XX_CP_ALWAYS_ON_COUNTER_HI                       0x00000981
@@ -1212,6 +1203,10 @@ static inline uint32_t A6XX_CP_CSQ_IB2_STAT_REM(uint32_t val)
 
 #define REG_A6XX_CP_APERTURE_CNTL_CD                           0x00000a03
 
+#define REG_A6XX_CP_LPAC_PROG_FIFO_SIZE                                0x00000b34
+
+#define REG_A6XX_CP_LPAC_SQE_INSTR_BASE                                0x00000b82
+
 #define REG_A6XX_VSC_ADDR_MODE_CNTL                            0x00000c01
 
 #define REG_A6XX_RBBM_INT_0_STATUS                             0x00000201
@@ -1247,505 +1242,37 @@ static inline uint32_t A6XX_CP_CSQ_IB2_STAT_REM(uint32_t val)
 
 #define REG_A6XX_RBBM_VBIF_GX_RESET_STATUS                     0x00000215
 
-#define REG_A6XX_RBBM_PERFCTR_CP_0_LO                          0x00000400
-
-#define REG_A6XX_RBBM_PERFCTR_CP_0_HI                          0x00000401
-
-#define REG_A6XX_RBBM_PERFCTR_CP_1_LO                          0x00000402
-
-#define REG_A6XX_RBBM_PERFCTR_CP_1_HI                          0x00000403
-
-#define REG_A6XX_RBBM_PERFCTR_CP_2_LO                          0x00000404
-
-#define REG_A6XX_RBBM_PERFCTR_CP_2_HI                          0x00000405
-
-#define REG_A6XX_RBBM_PERFCTR_CP_3_LO                          0x00000406
-
-#define REG_A6XX_RBBM_PERFCTR_CP_3_HI                          0x00000407
-
-#define REG_A6XX_RBBM_PERFCTR_CP_4_LO                          0x00000408
-
-#define REG_A6XX_RBBM_PERFCTR_CP_4_HI                          0x00000409
-
-#define REG_A6XX_RBBM_PERFCTR_CP_5_LO                          0x0000040a
-
-#define REG_A6XX_RBBM_PERFCTR_CP_5_HI                          0x0000040b
-
-#define REG_A6XX_RBBM_PERFCTR_CP_6_LO                          0x0000040c
-
-#define REG_A6XX_RBBM_PERFCTR_CP_6_HI                          0x0000040d
-
-#define REG_A6XX_RBBM_PERFCTR_CP_7_LO                          0x0000040e
-
-#define REG_A6XX_RBBM_PERFCTR_CP_7_HI                          0x0000040f
-
-#define REG_A6XX_RBBM_PERFCTR_CP_8_LO                          0x00000410
-
-#define REG_A6XX_RBBM_PERFCTR_CP_8_HI                          0x00000411
-
-#define REG_A6XX_RBBM_PERFCTR_CP_9_LO                          0x00000412
-
-#define REG_A6XX_RBBM_PERFCTR_CP_9_HI                          0x00000413
-
-#define REG_A6XX_RBBM_PERFCTR_CP_10_LO                         0x00000414
-
-#define REG_A6XX_RBBM_PERFCTR_CP_10_HI                         0x00000415
-
-#define REG_A6XX_RBBM_PERFCTR_CP_11_LO                         0x00000416
-
-#define REG_A6XX_RBBM_PERFCTR_CP_11_HI                         0x00000417
-
-#define REG_A6XX_RBBM_PERFCTR_CP_12_LO                         0x00000418
-
-#define REG_A6XX_RBBM_PERFCTR_CP_12_HI                         0x00000419
-
-#define REG_A6XX_RBBM_PERFCTR_CP_13_LO                         0x0000041a
-
-#define REG_A6XX_RBBM_PERFCTR_CP_13_HI                         0x0000041b
-
-#define REG_A6XX_RBBM_PERFCTR_RBBM_0_LO                                0x0000041c
-
-#define REG_A6XX_RBBM_PERFCTR_RBBM_0_HI                                0x0000041d
-
-#define REG_A6XX_RBBM_PERFCTR_RBBM_1_LO                                0x0000041e
-
-#define REG_A6XX_RBBM_PERFCTR_RBBM_1_HI                                0x0000041f
-
-#define REG_A6XX_RBBM_PERFCTR_RBBM_2_LO                                0x00000420
-
-#define REG_A6XX_RBBM_PERFCTR_RBBM_2_HI                                0x00000421
-
-#define REG_A6XX_RBBM_PERFCTR_RBBM_3_LO                                0x00000422
-
-#define REG_A6XX_RBBM_PERFCTR_RBBM_3_HI                                0x00000423
-
-#define REG_A6XX_RBBM_PERFCTR_PC_0_LO                          0x00000424
-
-#define REG_A6XX_RBBM_PERFCTR_PC_0_HI                          0x00000425
-
-#define REG_A6XX_RBBM_PERFCTR_PC_1_LO                          0x00000426
-
-#define REG_A6XX_RBBM_PERFCTR_PC_1_HI                          0x00000427
-
-#define REG_A6XX_RBBM_PERFCTR_PC_2_LO                          0x00000428
-
-#define REG_A6XX_RBBM_PERFCTR_PC_2_HI                          0x00000429
-
-#define REG_A6XX_RBBM_PERFCTR_PC_3_LO                          0x0000042a
-
-#define REG_A6XX_RBBM_PERFCTR_PC_3_HI                          0x0000042b
-
-#define REG_A6XX_RBBM_PERFCTR_PC_4_LO                          0x0000042c
-
-#define REG_A6XX_RBBM_PERFCTR_PC_4_HI                          0x0000042d
-
-#define REG_A6XX_RBBM_PERFCTR_PC_5_LO                          0x0000042e
-
-#define REG_A6XX_RBBM_PERFCTR_PC_5_HI                          0x0000042f
-
-#define REG_A6XX_RBBM_PERFCTR_PC_6_LO                          0x00000430
-
-#define REG_A6XX_RBBM_PERFCTR_PC_6_HI                          0x00000431
-
-#define REG_A6XX_RBBM_PERFCTR_PC_7_LO                          0x00000432
-
-#define REG_A6XX_RBBM_PERFCTR_PC_7_HI                          0x00000433
-
-#define REG_A6XX_RBBM_PERFCTR_VFD_0_LO                         0x00000434
-
-#define REG_A6XX_RBBM_PERFCTR_VFD_0_HI                         0x00000435
-
-#define REG_A6XX_RBBM_PERFCTR_VFD_1_LO                         0x00000436
-
-#define REG_A6XX_RBBM_PERFCTR_VFD_1_HI                         0x00000437
-
-#define REG_A6XX_RBBM_PERFCTR_VFD_2_LO                         0x00000438
-
-#define REG_A6XX_RBBM_PERFCTR_VFD_2_HI                         0x00000439
-
-#define REG_A6XX_RBBM_PERFCTR_VFD_3_LO                         0x0000043a
-
-#define REG_A6XX_RBBM_PERFCTR_VFD_3_HI                         0x0000043b
-
-#define REG_A6XX_RBBM_PERFCTR_VFD_4_LO                         0x0000043c
-
-#define REG_A6XX_RBBM_PERFCTR_VFD_4_HI                         0x0000043d
-
-#define REG_A6XX_RBBM_PERFCTR_VFD_5_LO                         0x0000043e
-
-#define REG_A6XX_RBBM_PERFCTR_VFD_5_HI                         0x0000043f
-
-#define REG_A6XX_RBBM_PERFCTR_VFD_6_LO                         0x00000440
-
-#define REG_A6XX_RBBM_PERFCTR_VFD_6_HI                         0x00000441
-
-#define REG_A6XX_RBBM_PERFCTR_VFD_7_LO                         0x00000442
-
-#define REG_A6XX_RBBM_PERFCTR_VFD_7_HI                         0x00000443
-
-#define REG_A6XX_RBBM_PERFCTR_HLSQ_0_LO                                0x00000444
-
-#define REG_A6XX_RBBM_PERFCTR_HLSQ_0_HI                                0x00000445
-
-#define REG_A6XX_RBBM_PERFCTR_HLSQ_1_LO                                0x00000446
-
-#define REG_A6XX_RBBM_PERFCTR_HLSQ_1_HI                                0x00000447
-
-#define REG_A6XX_RBBM_PERFCTR_HLSQ_2_LO                                0x00000448
-
-#define REG_A6XX_RBBM_PERFCTR_HLSQ_2_HI                                0x00000449
-
-#define REG_A6XX_RBBM_PERFCTR_HLSQ_3_LO                                0x0000044a
-
-#define REG_A6XX_RBBM_PERFCTR_HLSQ_3_HI                                0x0000044b
-
-#define REG_A6XX_RBBM_PERFCTR_HLSQ_4_LO                                0x0000044c
-
-#define REG_A6XX_RBBM_PERFCTR_HLSQ_4_HI                                0x0000044d
-
-#define REG_A6XX_RBBM_PERFCTR_HLSQ_5_LO                                0x0000044e
-
-#define REG_A6XX_RBBM_PERFCTR_HLSQ_5_HI                                0x0000044f
-
-#define REG_A6XX_RBBM_PERFCTR_VPC_0_LO                         0x00000450
-
-#define REG_A6XX_RBBM_PERFCTR_VPC_0_HI                         0x00000451
-
-#define REG_A6XX_RBBM_PERFCTR_VPC_1_LO                         0x00000452
-
-#define REG_A6XX_RBBM_PERFCTR_VPC_1_HI                         0x00000453
-
-#define REG_A6XX_RBBM_PERFCTR_VPC_2_LO                         0x00000454
-
-#define REG_A6XX_RBBM_PERFCTR_VPC_2_HI                         0x00000455
-
-#define REG_A6XX_RBBM_PERFCTR_VPC_3_LO                         0x00000456
-
-#define REG_A6XX_RBBM_PERFCTR_VPC_3_HI                         0x00000457
-
-#define REG_A6XX_RBBM_PERFCTR_VPC_4_LO                         0x00000458
-
-#define REG_A6XX_RBBM_PERFCTR_VPC_4_HI                         0x00000459
-
-#define REG_A6XX_RBBM_PERFCTR_VPC_5_LO                         0x0000045a
-
-#define REG_A6XX_RBBM_PERFCTR_VPC_5_HI                         0x0000045b
-
-#define REG_A6XX_RBBM_PERFCTR_CCU_0_LO                         0x0000045c
-
-#define REG_A6XX_RBBM_PERFCTR_CCU_0_HI                         0x0000045d
-
-#define REG_A6XX_RBBM_PERFCTR_CCU_1_LO                         0x0000045e
-
-#define REG_A6XX_RBBM_PERFCTR_CCU_1_HI                         0x0000045f
-
-#define REG_A6XX_RBBM_PERFCTR_CCU_2_LO                         0x00000460
-
-#define REG_A6XX_RBBM_PERFCTR_CCU_2_HI                         0x00000461
-
-#define REG_A6XX_RBBM_PERFCTR_CCU_3_LO                         0x00000462
-
-#define REG_A6XX_RBBM_PERFCTR_CCU_3_HI                         0x00000463
-
-#define REG_A6XX_RBBM_PERFCTR_CCU_4_LO                         0x00000464
-
-#define REG_A6XX_RBBM_PERFCTR_CCU_4_HI                         0x00000465
-
-#define REG_A6XX_RBBM_PERFCTR_TSE_0_LO                         0x00000466
-
-#define REG_A6XX_RBBM_PERFCTR_TSE_0_HI                         0x00000467
-
-#define REG_A6XX_RBBM_PERFCTR_TSE_1_LO                         0x00000468
-
-#define REG_A6XX_RBBM_PERFCTR_TSE_1_HI                         0x00000469
-
-#define REG_A6XX_RBBM_PERFCTR_TSE_2_LO                         0x0000046a
-
-#define REG_A6XX_RBBM_PERFCTR_TSE_2_HI                         0x0000046b
-
-#define REG_A6XX_RBBM_PERFCTR_TSE_3_LO                         0x0000046c
-
-#define REG_A6XX_RBBM_PERFCTR_TSE_3_HI                         0x0000046d
-
-#define REG_A6XX_RBBM_PERFCTR_RAS_0_LO                         0x0000046e
-
-#define REG_A6XX_RBBM_PERFCTR_RAS_0_HI                         0x0000046f
-
-#define REG_A6XX_RBBM_PERFCTR_RAS_1_LO                         0x00000470
-
-#define REG_A6XX_RBBM_PERFCTR_RAS_1_HI                         0x00000471
-
-#define REG_A6XX_RBBM_PERFCTR_RAS_2_LO                         0x00000472
-
-#define REG_A6XX_RBBM_PERFCTR_RAS_2_HI                         0x00000473
-
-#define REG_A6XX_RBBM_PERFCTR_RAS_3_LO                         0x00000474
-
-#define REG_A6XX_RBBM_PERFCTR_RAS_3_HI                         0x00000475
-
-#define REG_A6XX_RBBM_PERFCTR_UCHE_0_LO                                0x00000476
-
-#define REG_A6XX_RBBM_PERFCTR_UCHE_0_HI                                0x00000477
-
-#define REG_A6XX_RBBM_PERFCTR_UCHE_1_LO                                0x00000478
-
-#define REG_A6XX_RBBM_PERFCTR_UCHE_1_HI                                0x00000479
-
-#define REG_A6XX_RBBM_PERFCTR_UCHE_2_LO                                0x0000047a
-
-#define REG_A6XX_RBBM_PERFCTR_UCHE_2_HI                                0x0000047b
-
-#define REG_A6XX_RBBM_PERFCTR_UCHE_3_LO                                0x0000047c
-
-#define REG_A6XX_RBBM_PERFCTR_UCHE_3_HI                                0x0000047d
-
-#define REG_A6XX_RBBM_PERFCTR_UCHE_4_LO                                0x0000047e
-
-#define REG_A6XX_RBBM_PERFCTR_UCHE_4_HI                                0x0000047f
-
-#define REG_A6XX_RBBM_PERFCTR_UCHE_5_LO                                0x00000480
-
-#define REG_A6XX_RBBM_PERFCTR_UCHE_5_HI                                0x00000481
-
-#define REG_A6XX_RBBM_PERFCTR_UCHE_6_LO                                0x00000482
-
-#define REG_A6XX_RBBM_PERFCTR_UCHE_6_HI                                0x00000483
-
-#define REG_A6XX_RBBM_PERFCTR_UCHE_7_LO                                0x00000484
-
-#define REG_A6XX_RBBM_PERFCTR_UCHE_7_HI                                0x00000485
-
-#define REG_A6XX_RBBM_PERFCTR_UCHE_8_LO                                0x00000486
-
-#define REG_A6XX_RBBM_PERFCTR_UCHE_8_HI                                0x00000487
-
-#define REG_A6XX_RBBM_PERFCTR_UCHE_9_LO                                0x00000488
-
-#define REG_A6XX_RBBM_PERFCTR_UCHE_9_HI                                0x00000489
-
-#define REG_A6XX_RBBM_PERFCTR_UCHE_10_LO                       0x0000048a
-
-#define REG_A6XX_RBBM_PERFCTR_UCHE_10_HI                       0x0000048b
-
-#define REG_A6XX_RBBM_PERFCTR_UCHE_11_LO                       0x0000048c
-
-#define REG_A6XX_RBBM_PERFCTR_UCHE_11_HI                       0x0000048d
-
-#define REG_A6XX_RBBM_PERFCTR_TP_0_LO                          0x0000048e
-
-#define REG_A6XX_RBBM_PERFCTR_TP_0_HI                          0x0000048f
-
-#define REG_A6XX_RBBM_PERFCTR_TP_1_LO                          0x00000490
-
-#define REG_A6XX_RBBM_PERFCTR_TP_1_HI                          0x00000491
-
-#define REG_A6XX_RBBM_PERFCTR_TP_2_LO                          0x00000492
-
-#define REG_A6XX_RBBM_PERFCTR_TP_2_HI                          0x00000493
-
-#define REG_A6XX_RBBM_PERFCTR_TP_3_LO                          0x00000494
-
-#define REG_A6XX_RBBM_PERFCTR_TP_3_HI                          0x00000495
-
-#define REG_A6XX_RBBM_PERFCTR_TP_4_LO                          0x00000496
-
-#define REG_A6XX_RBBM_PERFCTR_TP_4_HI                          0x00000497
-
-#define REG_A6XX_RBBM_PERFCTR_TP_5_LO                          0x00000498
-
-#define REG_A6XX_RBBM_PERFCTR_TP_5_HI                          0x00000499
-
-#define REG_A6XX_RBBM_PERFCTR_TP_6_LO                          0x0000049a
-
-#define REG_A6XX_RBBM_PERFCTR_TP_6_HI                          0x0000049b
-
-#define REG_A6XX_RBBM_PERFCTR_TP_7_LO                          0x0000049c
-
-#define REG_A6XX_RBBM_PERFCTR_TP_7_HI                          0x0000049d
-
-#define REG_A6XX_RBBM_PERFCTR_TP_8_LO                          0x0000049e
-
-#define REG_A6XX_RBBM_PERFCTR_TP_8_HI                          0x0000049f
+static inline uint32_t REG_A6XX_RBBM_PERFCTR_CP(uint32_t i0) { return 0x00000400 + 0x2*i0; }
 
-#define REG_A6XX_RBBM_PERFCTR_TP_9_LO                          0x000004a0
+static inline uint32_t REG_A6XX_RBBM_PERFCTR_RBBM(uint32_t i0) { return 0x0000041c + 0x2*i0; }
 
-#define REG_A6XX_RBBM_PERFCTR_TP_9_HI                          0x000004a1
+static inline uint32_t REG_A6XX_RBBM_PERFCTR_PC(uint32_t i0) { return 0x00000424 + 0x2*i0; }
 
-#define REG_A6XX_RBBM_PERFCTR_TP_10_LO                         0x000004a2
+static inline uint32_t REG_A6XX_RBBM_PERFCTR_VFD(uint32_t i0) { return 0x00000434 + 0x2*i0; }
 
-#define REG_A6XX_RBBM_PERFCTR_TP_10_HI                         0x000004a3
+static inline uint32_t REG_A6XX_RBBM_PERFCTR_HLSQ(uint32_t i0) { return 0x00000444 + 0x2*i0; }
 
-#define REG_A6XX_RBBM_PERFCTR_TP_11_LO                         0x000004a4
+static inline uint32_t REG_A6XX_RBBM_PERFCTR_VPC(uint32_t i0) { return 0x00000450 + 0x2*i0; }
 
-#define REG_A6XX_RBBM_PERFCTR_TP_11_HI                         0x000004a5
+static inline uint32_t REG_A6XX_RBBM_PERFCTR_CCU(uint32_t i0) { return 0x0000045c + 0x2*i0; }
 
-#define REG_A6XX_RBBM_PERFCTR_SP_0_LO                          0x000004a6
+static inline uint32_t REG_A6XX_RBBM_PERFCTR_TSE(uint32_t i0) { return 0x00000466 + 0x2*i0; }
 
-#define REG_A6XX_RBBM_PERFCTR_SP_0_HI                          0x000004a7
+static inline uint32_t REG_A6XX_RBBM_PERFCTR_RAS(uint32_t i0) { return 0x0000046e + 0x2*i0; }
 
-#define REG_A6XX_RBBM_PERFCTR_SP_1_LO                          0x000004a8
+static inline uint32_t REG_A6XX_RBBM_PERFCTR_UCHE(uint32_t i0) { return 0x00000476 + 0x2*i0; }
 
-#define REG_A6XX_RBBM_PERFCTR_SP_1_HI                          0x000004a9
+static inline uint32_t REG_A6XX_RBBM_PERFCTR_TP(uint32_t i0) { return 0x0000048e + 0x2*i0; }
 
-#define REG_A6XX_RBBM_PERFCTR_SP_2_LO                          0x000004aa
+static inline uint32_t REG_A6XX_RBBM_PERFCTR_SP(uint32_t i0) { return 0x000004a6 + 0x2*i0; }
 
-#define REG_A6XX_RBBM_PERFCTR_SP_2_HI                          0x000004ab
+static inline uint32_t REG_A6XX_RBBM_PERFCTR_RB(uint32_t i0) { return 0x000004d6 + 0x2*i0; }
 
-#define REG_A6XX_RBBM_PERFCTR_SP_3_LO                          0x000004ac
+static inline uint32_t REG_A6XX_RBBM_PERFCTR_VSC(uint32_t i0) { return 0x000004e6 + 0x2*i0; }
 
-#define REG_A6XX_RBBM_PERFCTR_SP_3_HI                          0x000004ad
+static inline uint32_t REG_A6XX_RBBM_PERFCTR_LRZ(uint32_t i0) { return 0x000004ea + 0x2*i0; }
 
-#define REG_A6XX_RBBM_PERFCTR_SP_4_LO                          0x000004ae
-
-#define REG_A6XX_RBBM_PERFCTR_SP_4_HI                          0x000004af
-
-#define REG_A6XX_RBBM_PERFCTR_SP_5_LO                          0x000004b0
-
-#define REG_A6XX_RBBM_PERFCTR_SP_5_HI                          0x000004b1
-
-#define REG_A6XX_RBBM_PERFCTR_SP_6_LO                          0x000004b2
-
-#define REG_A6XX_RBBM_PERFCTR_SP_6_HI                          0x000004b3
-
-#define REG_A6XX_RBBM_PERFCTR_SP_7_LO                          0x000004b4
-
-#define REG_A6XX_RBBM_PERFCTR_SP_7_HI                          0x000004b5
-
-#define REG_A6XX_RBBM_PERFCTR_SP_8_LO                          0x000004b6
-
-#define REG_A6XX_RBBM_PERFCTR_SP_8_HI                          0x000004b7
-
-#define REG_A6XX_RBBM_PERFCTR_SP_9_LO                          0x000004b8
-
-#define REG_A6XX_RBBM_PERFCTR_SP_9_HI                          0x000004b9
-
-#define REG_A6XX_RBBM_PERFCTR_SP_10_LO                         0x000004ba
-
-#define REG_A6XX_RBBM_PERFCTR_SP_10_HI                         0x000004bb
-
-#define REG_A6XX_RBBM_PERFCTR_SP_11_LO                         0x000004bc
-
-#define REG_A6XX_RBBM_PERFCTR_SP_11_HI                         0x000004bd
-
-#define REG_A6XX_RBBM_PERFCTR_SP_12_LO                         0x000004be
-
-#define REG_A6XX_RBBM_PERFCTR_SP_12_HI                         0x000004bf
-
-#define REG_A6XX_RBBM_PERFCTR_SP_13_LO                         0x000004c0
-
-#define REG_A6XX_RBBM_PERFCTR_SP_13_HI                         0x000004c1
-
-#define REG_A6XX_RBBM_PERFCTR_SP_14_LO                         0x000004c2
-
-#define REG_A6XX_RBBM_PERFCTR_SP_14_HI                         0x000004c3
-
-#define REG_A6XX_RBBM_PERFCTR_SP_15_LO                         0x000004c4
-
-#define REG_A6XX_RBBM_PERFCTR_SP_15_HI                         0x000004c5
-
-#define REG_A6XX_RBBM_PERFCTR_SP_16_LO                         0x000004c6
-
-#define REG_A6XX_RBBM_PERFCTR_SP_16_HI                         0x000004c7
-
-#define REG_A6XX_RBBM_PERFCTR_SP_17_LO                         0x000004c8
-
-#define REG_A6XX_RBBM_PERFCTR_SP_17_HI                         0x000004c9
-
-#define REG_A6XX_RBBM_PERFCTR_SP_18_LO                         0x000004ca
-
-#define REG_A6XX_RBBM_PERFCTR_SP_18_HI                         0x000004cb
-
-#define REG_A6XX_RBBM_PERFCTR_SP_19_LO                         0x000004cc
-
-#define REG_A6XX_RBBM_PERFCTR_SP_19_HI                         0x000004cd
-
-#define REG_A6XX_RBBM_PERFCTR_SP_20_LO                         0x000004ce
-
-#define REG_A6XX_RBBM_PERFCTR_SP_20_HI                         0x000004cf
-
-#define REG_A6XX_RBBM_PERFCTR_SP_21_LO                         0x000004d0
-
-#define REG_A6XX_RBBM_PERFCTR_SP_21_HI                         0x000004d1
-
-#define REG_A6XX_RBBM_PERFCTR_SP_22_LO                         0x000004d2
-
-#define REG_A6XX_RBBM_PERFCTR_SP_22_HI                         0x000004d3
-
-#define REG_A6XX_RBBM_PERFCTR_SP_23_LO                         0x000004d4
-
-#define REG_A6XX_RBBM_PERFCTR_SP_23_HI                         0x000004d5
-
-#define REG_A6XX_RBBM_PERFCTR_RB_0_LO                          0x000004d6
-
-#define REG_A6XX_RBBM_PERFCTR_RB_0_HI                          0x000004d7
-
-#define REG_A6XX_RBBM_PERFCTR_RB_1_LO                          0x000004d8
-
-#define REG_A6XX_RBBM_PERFCTR_RB_1_HI                          0x000004d9
-
-#define REG_A6XX_RBBM_PERFCTR_RB_2_LO                          0x000004da
-
-#define REG_A6XX_RBBM_PERFCTR_RB_2_HI                          0x000004db
-
-#define REG_A6XX_RBBM_PERFCTR_RB_3_LO                          0x000004dc
-
-#define REG_A6XX_RBBM_PERFCTR_RB_3_HI                          0x000004dd
-
-#define REG_A6XX_RBBM_PERFCTR_RB_4_LO                          0x000004de
-
-#define REG_A6XX_RBBM_PERFCTR_RB_4_HI                          0x000004df
-
-#define REG_A6XX_RBBM_PERFCTR_RB_5_LO                          0x000004e0
-
-#define REG_A6XX_RBBM_PERFCTR_RB_5_HI                          0x000004e1
-
-#define REG_A6XX_RBBM_PERFCTR_RB_6_LO                          0x000004e2
-
-#define REG_A6XX_RBBM_PERFCTR_RB_6_HI                          0x000004e3
-
-#define REG_A6XX_RBBM_PERFCTR_RB_7_LO                          0x000004e4
-
-#define REG_A6XX_RBBM_PERFCTR_RB_7_HI                          0x000004e5
-
-#define REG_A6XX_RBBM_PERFCTR_VSC_0_LO                         0x000004e6
-
-#define REG_A6XX_RBBM_PERFCTR_VSC_0_HI                         0x000004e7
-
-#define REG_A6XX_RBBM_PERFCTR_VSC_1_LO                         0x000004e8
-
-#define REG_A6XX_RBBM_PERFCTR_VSC_1_HI                         0x000004e9
-
-#define REG_A6XX_RBBM_PERFCTR_LRZ_0_LO                         0x000004ea
-
-#define REG_A6XX_RBBM_PERFCTR_LRZ_0_HI                         0x000004eb
-
-#define REG_A6XX_RBBM_PERFCTR_LRZ_1_LO                         0x000004ec
-
-#define REG_A6XX_RBBM_PERFCTR_LRZ_1_HI                         0x000004ed
-
-#define REG_A6XX_RBBM_PERFCTR_LRZ_2_LO                         0x000004ee
-
-#define REG_A6XX_RBBM_PERFCTR_LRZ_2_HI                         0x000004ef
-
-#define REG_A6XX_RBBM_PERFCTR_LRZ_3_LO                         0x000004f0
-
-#define REG_A6XX_RBBM_PERFCTR_LRZ_3_HI                         0x000004f1
-
-#define REG_A6XX_RBBM_PERFCTR_CMP_0_LO                         0x000004f2
-
-#define REG_A6XX_RBBM_PERFCTR_CMP_0_HI                         0x000004f3
-
-#define REG_A6XX_RBBM_PERFCTR_CMP_1_LO                         0x000004f4
-
-#define REG_A6XX_RBBM_PERFCTR_CMP_1_HI                         0x000004f5
-
-#define REG_A6XX_RBBM_PERFCTR_CMP_2_LO                         0x000004f6
-
-#define REG_A6XX_RBBM_PERFCTR_CMP_2_HI                         0x000004f7
-
-#define REG_A6XX_RBBM_PERFCTR_CMP_3_LO                         0x000004f8
-
-#define REG_A6XX_RBBM_PERFCTR_CMP_3_HI                         0x000004f9
+static inline uint32_t REG_A6XX_RBBM_PERFCTR_CMP(uint32_t i0) { return 0x000004f2 + 0x2*i0; }
 
 #define REG_A6XX_RBBM_PERFCTR_CNTL                             0x00000500
 
@@ -1761,13 +1288,7 @@ static inline uint32_t A6XX_CP_CSQ_IB2_STAT_REM(uint32_t val)
 
 #define REG_A6XX_RBBM_PERFCTR_LOAD_VALUE_HI                    0x00000506
 
-#define REG_A6XX_RBBM_PERFCTR_RBBM_SEL_0                       0x00000507
-
-#define REG_A6XX_RBBM_PERFCTR_RBBM_SEL_1                       0x00000508
-
-#define REG_A6XX_RBBM_PERFCTR_RBBM_SEL_2                       0x00000509
-
-#define REG_A6XX_RBBM_PERFCTR_RBBM_SEL_3                       0x0000050a
+static inline uint32_t REG_A6XX_RBBM_PERFCTR_RBBM_SEL(uint32_t i0) { return 0x00000507 + 0x1*i0; }
 
 #define REG_A6XX_RBBM_PERFCTR_GPU_BUSY_MASKED                  0x0000050b
 
@@ -2231,204 +1752,60 @@ static inline uint32_t A6XX_DBGC_CFG_DBGBUS_BYTEL_1_BYTEL14(uint32_t val)
 }
 #define A6XX_DBGC_CFG_DBGBUS_BYTEL_1_BYTEL15__MASK             0xf0000000
 #define A6XX_DBGC_CFG_DBGBUS_BYTEL_1_BYTEL15__SHIFT            28
-static inline uint32_t A6XX_DBGC_CFG_DBGBUS_BYTEL_1_BYTEL15(uint32_t val)
-{
-       return ((val) << A6XX_DBGC_CFG_DBGBUS_BYTEL_1_BYTEL15__SHIFT) & A6XX_DBGC_CFG_DBGBUS_BYTEL_1_BYTEL15__MASK;
-}
-
-#define REG_A6XX_DBGC_CFG_DBGBUS_TRACE_BUF1                    0x0000062f
-
-#define REG_A6XX_DBGC_CFG_DBGBUS_TRACE_BUF2                    0x00000630
-
-#define REG_A6XX_VSC_PERFCTR_VSC_SEL_0                         0x00000cd8
-
-#define REG_A6XX_VSC_PERFCTR_VSC_SEL_1                         0x00000cd9
-
-#define REG_A6XX_HLSQ_ADDR_MODE_CNTL                           0x0000be05
-
-#define REG_A6XX_HLSQ_PERFCTR_HLSQ_SEL_0                       0x0000be10
-
-#define REG_A6XX_HLSQ_PERFCTR_HLSQ_SEL_1                       0x0000be11
-
-#define REG_A6XX_HLSQ_PERFCTR_HLSQ_SEL_2                       0x0000be12
-
-#define REG_A6XX_HLSQ_PERFCTR_HLSQ_SEL_3                       0x0000be13
-
-#define REG_A6XX_HLSQ_PERFCTR_HLSQ_SEL_4                       0x0000be14
-
-#define REG_A6XX_HLSQ_PERFCTR_HLSQ_SEL_5                       0x0000be15
-
-#define REG_A6XX_HLSQ_DBG_AHB_READ_APERTURE                    0x0000c800
-
-#define REG_A6XX_HLSQ_DBG_READ_SEL                             0x0000d000
-
-#define REG_A6XX_VFD_ADDR_MODE_CNTL                            0x0000a601
-
-#define REG_A6XX_VFD_PERFCTR_VFD_SEL_0                         0x0000a610
-
-#define REG_A6XX_VFD_PERFCTR_VFD_SEL_1                         0x0000a611
-
-#define REG_A6XX_VFD_PERFCTR_VFD_SEL_2                         0x0000a612
-
-#define REG_A6XX_VFD_PERFCTR_VFD_SEL_3                         0x0000a613
-
-#define REG_A6XX_VFD_PERFCTR_VFD_SEL_4                         0x0000a614
-
-#define REG_A6XX_VFD_PERFCTR_VFD_SEL_5                         0x0000a615
-
-#define REG_A6XX_VFD_PERFCTR_VFD_SEL_6                         0x0000a616
-
-#define REG_A6XX_VFD_PERFCTR_VFD_SEL_7                         0x0000a617
-
-#define REG_A6XX_UCHE_ADDR_MODE_CNTL                           0x00000e00
-
-#define REG_A6XX_UCHE_MODE_CNTL                                        0x00000e01
-
-#define REG_A6XX_UCHE_WRITE_RANGE_MAX_LO                       0x00000e05
-
-#define REG_A6XX_UCHE_WRITE_RANGE_MAX_HI                       0x00000e06
-
-#define REG_A6XX_UCHE_WRITE_THRU_BASE_LO                       0x00000e07
-
-#define REG_A6XX_UCHE_WRITE_THRU_BASE_HI                       0x00000e08
-
-#define REG_A6XX_UCHE_TRAP_BASE_LO                             0x00000e09
-
-#define REG_A6XX_UCHE_TRAP_BASE_HI                             0x00000e0a
-
-#define REG_A6XX_UCHE_GMEM_RANGE_MIN_LO                                0x00000e0b
-
-#define REG_A6XX_UCHE_GMEM_RANGE_MIN_HI                                0x00000e0c
-
-#define REG_A6XX_UCHE_GMEM_RANGE_MAX_LO                                0x00000e0d
-
-#define REG_A6XX_UCHE_GMEM_RANGE_MAX_HI                                0x00000e0e
-
-#define REG_A6XX_UCHE_CACHE_WAYS                               0x00000e17
-
-#define REG_A6XX_UCHE_FILTER_CNTL                              0x00000e18
-
-#define REG_A6XX_UCHE_CLIENT_PF                                        0x00000e19
-#define A6XX_UCHE_CLIENT_PF_PERFSEL__MASK                      0x000000ff
-#define A6XX_UCHE_CLIENT_PF_PERFSEL__SHIFT                     0
-static inline uint32_t A6XX_UCHE_CLIENT_PF_PERFSEL(uint32_t val)
-{
-       return ((val) << A6XX_UCHE_CLIENT_PF_PERFSEL__SHIFT) & A6XX_UCHE_CLIENT_PF_PERFSEL__MASK;
-}
-
-#define REG_A6XX_UCHE_PERFCTR_UCHE_SEL_0                       0x00000e1c
-
-#define REG_A6XX_UCHE_PERFCTR_UCHE_SEL_1                       0x00000e1d
-
-#define REG_A6XX_UCHE_PERFCTR_UCHE_SEL_2                       0x00000e1e
-
-#define REG_A6XX_UCHE_PERFCTR_UCHE_SEL_3                       0x00000e1f
-
-#define REG_A6XX_UCHE_PERFCTR_UCHE_SEL_4                       0x00000e20
-
-#define REG_A6XX_UCHE_PERFCTR_UCHE_SEL_5                       0x00000e21
-
-#define REG_A6XX_UCHE_PERFCTR_UCHE_SEL_6                       0x00000e22
-
-#define REG_A6XX_UCHE_PERFCTR_UCHE_SEL_7                       0x00000e23
-
-#define REG_A6XX_UCHE_PERFCTR_UCHE_SEL_8                       0x00000e24
-
-#define REG_A6XX_UCHE_PERFCTR_UCHE_SEL_9                       0x00000e25
-
-#define REG_A6XX_UCHE_PERFCTR_UCHE_SEL_10                      0x00000e26
-
-#define REG_A6XX_UCHE_PERFCTR_UCHE_SEL_11                      0x00000e27
-
-#define REG_A6XX_SP_ADDR_MODE_CNTL                             0x0000ae01
-
-#define REG_A6XX_SP_NC_MODE_CNTL                               0x0000ae02
-
-#define REG_A6XX_SP_PERFCTR_SP_SEL_0                           0x0000ae10
-
-#define REG_A6XX_SP_PERFCTR_SP_SEL_1                           0x0000ae11
-
-#define REG_A6XX_SP_PERFCTR_SP_SEL_2                           0x0000ae12
-
-#define REG_A6XX_SP_PERFCTR_SP_SEL_3                           0x0000ae13
-
-#define REG_A6XX_SP_PERFCTR_SP_SEL_4                           0x0000ae14
-
-#define REG_A6XX_SP_PERFCTR_SP_SEL_5                           0x0000ae15
-
-#define REG_A6XX_SP_PERFCTR_SP_SEL_6                           0x0000ae16
-
-#define REG_A6XX_SP_PERFCTR_SP_SEL_7                           0x0000ae17
-
-#define REG_A6XX_SP_PERFCTR_SP_SEL_8                           0x0000ae18
-
-#define REG_A6XX_SP_PERFCTR_SP_SEL_9                           0x0000ae19
-
-#define REG_A6XX_SP_PERFCTR_SP_SEL_10                          0x0000ae1a
-
-#define REG_A6XX_SP_PERFCTR_SP_SEL_11                          0x0000ae1b
-
-#define REG_A6XX_SP_PERFCTR_SP_SEL_12                          0x0000ae1c
-
-#define REG_A6XX_SP_PERFCTR_SP_SEL_13                          0x0000ae1d
-
-#define REG_A6XX_SP_PERFCTR_SP_SEL_14                          0x0000ae1e
-
-#define REG_A6XX_SP_PERFCTR_SP_SEL_15                          0x0000ae1f
-
-#define REG_A6XX_SP_PERFCTR_SP_SEL_16                          0x0000ae20
-
-#define REG_A6XX_SP_PERFCTR_SP_SEL_17                          0x0000ae21
-
-#define REG_A6XX_SP_PERFCTR_SP_SEL_18                          0x0000ae22
-
-#define REG_A6XX_SP_PERFCTR_SP_SEL_19                          0x0000ae23
-
-#define REG_A6XX_SP_PERFCTR_SP_SEL_20                          0x0000ae24
+static inline uint32_t A6XX_DBGC_CFG_DBGBUS_BYTEL_1_BYTEL15(uint32_t val)
+{
+       return ((val) << A6XX_DBGC_CFG_DBGBUS_BYTEL_1_BYTEL15__SHIFT) & A6XX_DBGC_CFG_DBGBUS_BYTEL_1_BYTEL15__MASK;
+}
 
-#define REG_A6XX_SP_PERFCTR_SP_SEL_21                          0x0000ae25
+#define REG_A6XX_DBGC_CFG_DBGBUS_TRACE_BUF1                    0x0000062f
 
-#define REG_A6XX_SP_PERFCTR_SP_SEL_22                          0x0000ae26
+#define REG_A6XX_DBGC_CFG_DBGBUS_TRACE_BUF2                    0x00000630
 
-#define REG_A6XX_SP_PERFCTR_SP_SEL_23                          0x0000ae27
+static inline uint32_t REG_A6XX_VSC_PERFCTR_VSC_SEL(uint32_t i0) { return 0x00000cd8 + 0x1*i0; }
 
-#define REG_A6XX_TPL1_ADDR_MODE_CNTL                           0x0000b601
+#define REG_A6XX_HLSQ_DBG_AHB_READ_APERTURE                    0x0000c800
 
-#define REG_A6XX_TPL1_NC_MODE_CNTL                             0x0000b604
+#define REG_A6XX_HLSQ_DBG_READ_SEL                             0x0000d000
 
-#define REG_A6XX_TPL1_BICUBIC_WEIGHTS_TABLE_0                  0x0000b608
+#define REG_A6XX_UCHE_ADDR_MODE_CNTL                           0x00000e00
 
-#define REG_A6XX_TPL1_BICUBIC_WEIGHTS_TABLE_1                  0x0000b609
+#define REG_A6XX_UCHE_MODE_CNTL                                        0x00000e01
 
-#define REG_A6XX_TPL1_BICUBIC_WEIGHTS_TABLE_2                  0x0000b60a
+#define REG_A6XX_UCHE_WRITE_RANGE_MAX_LO                       0x00000e05
 
-#define REG_A6XX_TPL1_BICUBIC_WEIGHTS_TABLE_3                  0x0000b60b
+#define REG_A6XX_UCHE_WRITE_RANGE_MAX_HI                       0x00000e06
 
-#define REG_A6XX_TPL1_BICUBIC_WEIGHTS_TABLE_4                  0x0000b60c
+#define REG_A6XX_UCHE_WRITE_THRU_BASE_LO                       0x00000e07
 
-#define REG_A6XX_TPL1_PERFCTR_TP_SEL_0                         0x0000b610
+#define REG_A6XX_UCHE_WRITE_THRU_BASE_HI                       0x00000e08
 
-#define REG_A6XX_TPL1_PERFCTR_TP_SEL_1                         0x0000b611
+#define REG_A6XX_UCHE_TRAP_BASE_LO                             0x00000e09
 
-#define REG_A6XX_TPL1_PERFCTR_TP_SEL_2                         0x0000b612
+#define REG_A6XX_UCHE_TRAP_BASE_HI                             0x00000e0a
 
-#define REG_A6XX_TPL1_PERFCTR_TP_SEL_3                         0x0000b613
+#define REG_A6XX_UCHE_GMEM_RANGE_MIN_LO                                0x00000e0b
 
-#define REG_A6XX_TPL1_PERFCTR_TP_SEL_4                         0x0000b614
+#define REG_A6XX_UCHE_GMEM_RANGE_MIN_HI                                0x00000e0c
 
-#define REG_A6XX_TPL1_PERFCTR_TP_SEL_5                         0x0000b615
+#define REG_A6XX_UCHE_GMEM_RANGE_MAX_LO                                0x00000e0d
 
-#define REG_A6XX_TPL1_PERFCTR_TP_SEL_6                         0x0000b616
+#define REG_A6XX_UCHE_GMEM_RANGE_MAX_HI                                0x00000e0e
 
-#define REG_A6XX_TPL1_PERFCTR_TP_SEL_7                         0x0000b617
+#define REG_A6XX_UCHE_CACHE_WAYS                               0x00000e17
 
-#define REG_A6XX_TPL1_PERFCTR_TP_SEL_8                         0x0000b618
+#define REG_A6XX_UCHE_FILTER_CNTL                              0x00000e18
 
-#define REG_A6XX_TPL1_PERFCTR_TP_SEL_9                         0x0000b619
+#define REG_A6XX_UCHE_CLIENT_PF                                        0x00000e19
+#define A6XX_UCHE_CLIENT_PF_PERFSEL__MASK                      0x000000ff
+#define A6XX_UCHE_CLIENT_PF_PERFSEL__SHIFT                     0
+static inline uint32_t A6XX_UCHE_CLIENT_PF_PERFSEL(uint32_t val)
+{
+       return ((val) << A6XX_UCHE_CLIENT_PF_PERFSEL__SHIFT) & A6XX_UCHE_CLIENT_PF_PERFSEL__MASK;
+}
 
-#define REG_A6XX_TPL1_PERFCTR_TP_SEL_10                                0x0000b61a
+static inline uint32_t REG_A6XX_UCHE_PERFCTR_UCHE_SEL(uint32_t i0) { return 0x00000e1c + 0x1*i0; }
 
-#define REG_A6XX_TPL1_PERFCTR_TP_SEL_11                                0x0000b61b
+#define REG_A6XX_UCHE_CMDQ_CONFIG                              0x00000e3c
 
 #define REG_A6XX_VBIF_VERSION                                  0x00003000
 
@@ -2507,6 +1884,8 @@ static inline uint32_t A6XX_VBIF_TEST_BUS2_CTRL1_DATA_SEL(uint32_t val)
 
 #define REG_A6XX_VBIF_PERF_PWR_CNT_HIGH2                       0x0000311a
 
+#define REG_A6XX_GBIF_SCACHE_CNTL0                             0x00003c01
+
 #define REG_A6XX_GBIF_SCACHE_CNTL1                             0x00003c02
 
 #define REG_A6XX_GBIF_QSB_SIDE0                                        0x00003c03
@@ -2555,36 +1934,6 @@ static inline uint32_t A6XX_VBIF_TEST_BUS2_CTRL1_DATA_SEL(uint32_t val)
 
 #define REG_A6XX_GBIF_PWR_CNT_HIGH2                            0x00003cd1
 
-#define REG_A6XX_SP_WINDOW_OFFSET                              0x0000b4d1
-#define A6XX_SP_WINDOW_OFFSET_WINDOW_OFFSET_DISABLE            0x80000000
-#define A6XX_SP_WINDOW_OFFSET_X__MASK                          0x00007fff
-#define A6XX_SP_WINDOW_OFFSET_X__SHIFT                         0
-static inline uint32_t A6XX_SP_WINDOW_OFFSET_X(uint32_t val)
-{
-       return ((val) << A6XX_SP_WINDOW_OFFSET_X__SHIFT) & A6XX_SP_WINDOW_OFFSET_X__MASK;
-}
-#define A6XX_SP_WINDOW_OFFSET_Y__MASK                          0x7fff0000
-#define A6XX_SP_WINDOW_OFFSET_Y__SHIFT                         16
-static inline uint32_t A6XX_SP_WINDOW_OFFSET_Y(uint32_t val)
-{
-       return ((val) << A6XX_SP_WINDOW_OFFSET_Y__SHIFT) & A6XX_SP_WINDOW_OFFSET_Y__MASK;
-}
-
-#define REG_A6XX_SP_TP_WINDOW_OFFSET                           0x0000b307
-#define A6XX_SP_TP_WINDOW_OFFSET_WINDOW_OFFSET_DISABLE         0x80000000
-#define A6XX_SP_TP_WINDOW_OFFSET_X__MASK                       0x00007fff
-#define A6XX_SP_TP_WINDOW_OFFSET_X__SHIFT                      0
-static inline uint32_t A6XX_SP_TP_WINDOW_OFFSET_X(uint32_t val)
-{
-       return ((val) << A6XX_SP_TP_WINDOW_OFFSET_X__SHIFT) & A6XX_SP_TP_WINDOW_OFFSET_X__MASK;
-}
-#define A6XX_SP_TP_WINDOW_OFFSET_Y__MASK                       0x7fff0000
-#define A6XX_SP_TP_WINDOW_OFFSET_Y__SHIFT                      16
-static inline uint32_t A6XX_SP_TP_WINDOW_OFFSET_Y(uint32_t val)
-{
-       return ((val) << A6XX_SP_TP_WINDOW_OFFSET_Y__SHIFT) & A6XX_SP_TP_WINDOW_OFFSET_Y__MASK;
-}
-
 #define REG_A6XX_VSC_BIN_SIZE                                  0x00000c02
 #define A6XX_VSC_BIN_SIZE_WIDTH__MASK                          0x000000ff
 #define A6XX_VSC_BIN_SIZE_WIDTH__SHIFT                         0
@@ -2599,10 +1948,6 @@ static inline uint32_t A6XX_VSC_BIN_SIZE_HEIGHT(uint32_t val)
        return ((val >> 4) << A6XX_VSC_BIN_SIZE_HEIGHT__SHIFT) & A6XX_VSC_BIN_SIZE_HEIGHT__MASK;
 }
 
-#define REG_A6XX_VSC_DRAW_STRM_SIZE_ADDRESS_LO                 0x00000c03
-
-#define REG_A6XX_VSC_DRAW_STRM_SIZE_ADDRESS_HI                 0x00000c04
-
 #define REG_A6XX_VSC_DRAW_STRM_SIZE_ADDRESS                    0x00000c03
 
 #define REG_A6XX_VSC_BIN_COUNT                                 0x00000c06
@@ -2647,20 +1992,12 @@ static inline uint32_t A6XX_VSC_PIPE_CONFIG_REG_H(uint32_t val)
        return ((val) << A6XX_VSC_PIPE_CONFIG_REG_H__SHIFT) & A6XX_VSC_PIPE_CONFIG_REG_H__MASK;
 }
 
-#define REG_A6XX_VSC_PRIM_STRM_ADDRESS_LO                      0x00000c30
-
-#define REG_A6XX_VSC_PRIM_STRM_ADDRESS_HI                      0x00000c31
-
 #define REG_A6XX_VSC_PRIM_STRM_ADDRESS                         0x00000c30
 
 #define REG_A6XX_VSC_PRIM_STRM_PITCH                           0x00000c32
 
 #define REG_A6XX_VSC_PRIM_STRM_LIMIT                           0x00000c33
 
-#define REG_A6XX_VSC_DRAW_STRM_ADDRESS_LO                      0x00000c34
-
-#define REG_A6XX_VSC_DRAW_STRM_ADDRESS_HI                      0x00000c35
-
 #define REG_A6XX_VSC_DRAW_STRM_ADDRESS                         0x00000c34
 
 #define REG_A6XX_VSC_DRAW_STRM_PITCH                           0x00000c36
@@ -2849,12 +2186,20 @@ static inline uint32_t A6XX_GRAS_SU_CNTL_UNK12(uint32_t val)
        return ((val) << A6XX_GRAS_SU_CNTL_UNK12__SHIFT) & A6XX_GRAS_SU_CNTL_UNK12__MASK;
 }
 #define A6XX_GRAS_SU_CNTL_MSAA_ENABLE                          0x00002000
-#define A6XX_GRAS_SU_CNTL_UNK15__MASK                          0x007f8000
+#define A6XX_GRAS_SU_CNTL_UNK15__MASK                          0x00018000
 #define A6XX_GRAS_SU_CNTL_UNK15__SHIFT                         15
 static inline uint32_t A6XX_GRAS_SU_CNTL_UNK15(uint32_t val)
 {
        return ((val) << A6XX_GRAS_SU_CNTL_UNK15__SHIFT) & A6XX_GRAS_SU_CNTL_UNK15__MASK;
 }
+#define A6XX_GRAS_SU_CNTL_UNK17                                        0x00020000
+#define A6XX_GRAS_SU_CNTL_MULTIVIEW_ENABLE                     0x00040000
+#define A6XX_GRAS_SU_CNTL_UNK19__MASK                          0x00780000
+#define A6XX_GRAS_SU_CNTL_UNK19__SHIFT                         19
+static inline uint32_t A6XX_GRAS_SU_CNTL_UNK19(uint32_t val)
+{
+       return ((val) << A6XX_GRAS_SU_CNTL_UNK19__SHIFT) & A6XX_GRAS_SU_CNTL_UNK19__MASK;
+}
 
 #define REG_A6XX_GRAS_SU_POINT_MINMAX                          0x00008091
 #define A6XX_GRAS_SU_POINT_MINMAX_MIN__MASK                    0x0000ffff
@@ -3205,11 +2550,12 @@ static inline uint32_t A6XX_GRAS_SC_WINDOW_SCISSOR_BR_Y(uint32_t val)
 #define A6XX_GRAS_LRZ_CNTL_GREATER                             0x00000004
 #define A6XX_GRAS_LRZ_CNTL_FC_ENABLE                           0x00000008
 #define A6XX_GRAS_LRZ_CNTL_Z_TEST_ENABLE                       0x00000010
-#define A6XX_GRAS_LRZ_CNTL_UNK5__MASK                          0x000003e0
-#define A6XX_GRAS_LRZ_CNTL_UNK5__SHIFT                         5
-static inline uint32_t A6XX_GRAS_LRZ_CNTL_UNK5(uint32_t val)
+#define A6XX_GRAS_LRZ_CNTL_Z_BOUNDS_ENABLE                     0x00000020
+#define A6XX_GRAS_LRZ_CNTL_UNK6__MASK                          0x000003c0
+#define A6XX_GRAS_LRZ_CNTL_UNK6__SHIFT                         6
+static inline uint32_t A6XX_GRAS_LRZ_CNTL_UNK6(uint32_t val)
 {
-       return ((val) << A6XX_GRAS_LRZ_CNTL_UNK5__SHIFT) & A6XX_GRAS_LRZ_CNTL_UNK5__MASK;
+       return ((val) << A6XX_GRAS_LRZ_CNTL_UNK6__SHIFT) & A6XX_GRAS_LRZ_CNTL_UNK6__MASK;
 }
 
 #define REG_A6XX_GRAS_UNKNOWN_8101                             0x00008101
@@ -3222,10 +2568,6 @@ static inline uint32_t A6XX_GRAS_2D_BLIT_INFO_COLOR_FORMAT(enum a6xx_format val)
        return ((val) << A6XX_GRAS_2D_BLIT_INFO_COLOR_FORMAT__SHIFT) & A6XX_GRAS_2D_BLIT_INFO_COLOR_FORMAT__MASK;
 }
 
-#define REG_A6XX_GRAS_LRZ_BUFFER_BASE_LO                       0x00008103
-
-#define REG_A6XX_GRAS_LRZ_BUFFER_BASE_HI                       0x00008104
-
 #define REG_A6XX_GRAS_LRZ_BUFFER_BASE                          0x00008103
 #define A6XX_GRAS_LRZ_BUFFER_BASE__MASK                                0xffffffff
 #define A6XX_GRAS_LRZ_BUFFER_BASE__SHIFT                       0
@@ -3248,10 +2590,6 @@ static inline uint32_t A6XX_GRAS_LRZ_BUFFER_PITCH_ARRAY_PITCH(uint32_t val)
        return ((val >> 4) << A6XX_GRAS_LRZ_BUFFER_PITCH_ARRAY_PITCH__SHIFT) & A6XX_GRAS_LRZ_BUFFER_PITCH_ARRAY_PITCH__MASK;
 }
 
-#define REG_A6XX_GRAS_LRZ_FAST_CLEAR_BUFFER_BASE_LO            0x00008106
-
-#define REG_A6XX_GRAS_LRZ_FAST_CLEAR_BUFFER_BASE_HI            0x00008107
-
 #define REG_A6XX_GRAS_LRZ_FAST_CLEAR_BUFFER_BASE               0x00008106
 #define A6XX_GRAS_LRZ_FAST_CLEAR_BUFFER_BASE__MASK             0xffffffff
 #define A6XX_GRAS_LRZ_FAST_CLEAR_BUFFER_BASE__SHIFT            0
@@ -3406,29 +2744,11 @@ static inline uint32_t A6XX_GRAS_2D_RESOLVE_CNTL_2_Y(uint32_t val)
 
 #define REG_A6XX_GRAS_ADDR_MODE_CNTL                           0x00008601
 
-#define REG_A6XX_GRAS_PERFCTR_TSE_SEL_0                                0x00008610
-
-#define REG_A6XX_GRAS_PERFCTR_TSE_SEL_1                                0x00008611
-
-#define REG_A6XX_GRAS_PERFCTR_TSE_SEL_2                                0x00008612
-
-#define REG_A6XX_GRAS_PERFCTR_TSE_SEL_3                                0x00008613
-
-#define REG_A6XX_GRAS_PERFCTR_RAS_SEL_0                                0x00008614
-
-#define REG_A6XX_GRAS_PERFCTR_RAS_SEL_1                                0x00008615
-
-#define REG_A6XX_GRAS_PERFCTR_RAS_SEL_2                                0x00008616
-
-#define REG_A6XX_GRAS_PERFCTR_RAS_SEL_3                                0x00008617
+static inline uint32_t REG_A6XX_GRAS_PERFCTR_TSE_SEL(uint32_t i0) { return 0x00008610 + 0x1*i0; }
 
-#define REG_A6XX_GRAS_PERFCTR_LRZ_SEL_0                                0x00008618
+static inline uint32_t REG_A6XX_GRAS_PERFCTR_RAS_SEL(uint32_t i0) { return 0x00008614 + 0x1*i0; }
 
-#define REG_A6XX_GRAS_PERFCTR_LRZ_SEL_1                                0x00008619
-
-#define REG_A6XX_GRAS_PERFCTR_LRZ_SEL_2                                0x0000861a
-
-#define REG_A6XX_GRAS_PERFCTR_LRZ_SEL_3                                0x0000861b
+static inline uint32_t REG_A6XX_GRAS_PERFCTR_LRZ_SEL(uint32_t i0) { return 0x00008618 + 0x1*i0; }
 
 #define REG_A6XX_RB_BIN_CONTROL                                        0x00008800
 #define A6XX_RB_BIN_CONTROL_BINW__MASK                         0x0000003f
@@ -3889,10 +3209,6 @@ static inline uint32_t A6XX_RB_MRT_ARRAY_PITCH(uint32_t val)
        return ((val >> 6) << A6XX_RB_MRT_ARRAY_PITCH__SHIFT) & A6XX_RB_MRT_ARRAY_PITCH__MASK;
 }
 
-static inline uint32_t REG_A6XX_RB_MRT_BASE_LO(uint32_t i0) { return 0x00008825 + 0x8*i0; }
-
-static inline uint32_t REG_A6XX_RB_MRT_BASE_HI(uint32_t i0) { return 0x00008826 + 0x8*i0; }
-
 static inline uint32_t REG_A6XX_RB_MRT_BASE(uint32_t i0) { return 0x00008825 + 0x8*i0; }
 #define A6XX_RB_MRT_BASE__MASK                                 0xffffffff
 #define A6XX_RB_MRT_BASE__SHIFT                                        0
@@ -4025,10 +3341,6 @@ static inline uint32_t A6XX_RB_DEPTH_BUFFER_ARRAY_PITCH(uint32_t val)
        return ((val >> 6) << A6XX_RB_DEPTH_BUFFER_ARRAY_PITCH__SHIFT) & A6XX_RB_DEPTH_BUFFER_ARRAY_PITCH__MASK;
 }
 
-#define REG_A6XX_RB_DEPTH_BUFFER_BASE_LO                       0x00008875
-
-#define REG_A6XX_RB_DEPTH_BUFFER_BASE_HI                       0x00008876
-
 #define REG_A6XX_RB_DEPTH_BUFFER_BASE                          0x00008875
 #define A6XX_RB_DEPTH_BUFFER_BASE__MASK                                0xffffffff
 #define A6XX_RB_DEPTH_BUFFER_BASE__SHIFT                       0
@@ -4134,10 +3446,6 @@ static inline uint32_t A6XX_RB_STENCIL_BUFFER_ARRAY_PITCH(uint32_t val)
        return ((val >> 6) << A6XX_RB_STENCIL_BUFFER_ARRAY_PITCH__SHIFT) & A6XX_RB_STENCIL_BUFFER_ARRAY_PITCH__MASK;
 }
 
-#define REG_A6XX_RB_STENCIL_BUFFER_BASE_LO                     0x00008884
-
-#define REG_A6XX_RB_STENCIL_BUFFER_BASE_HI                     0x00008885
-
 #define REG_A6XX_RB_STENCIL_BUFFER_BASE                                0x00008884
 #define A6XX_RB_STENCIL_BUFFER_BASE__MASK                      0xffffffff
 #define A6XX_RB_STENCIL_BUFFER_BASE__SHIFT                     0
@@ -4355,10 +3663,6 @@ static inline uint32_t A6XX_RB_BLIT_DST(uint32_t val)
        return ((val) << A6XX_RB_BLIT_DST__SHIFT) & A6XX_RB_BLIT_DST__MASK;
 }
 
-#define REG_A6XX_RB_BLIT_DST_LO                                        0x000088d8
-
-#define REG_A6XX_RB_BLIT_DST_HI                                        0x000088d9
-
 #define REG_A6XX_RB_BLIT_DST_PITCH                             0x000088da
 #define A6XX_RB_BLIT_DST_PITCH__MASK                           0x0000ffff
 #define A6XX_RB_BLIT_DST_PITCH__SHIFT                          0
@@ -4383,10 +3687,6 @@ static inline uint32_t A6XX_RB_BLIT_FLAG_DST(uint32_t val)
        return ((val) << A6XX_RB_BLIT_FLAG_DST__SHIFT) & A6XX_RB_BLIT_FLAG_DST__MASK;
 }
 
-#define REG_A6XX_RB_BLIT_FLAG_DST_LO                           0x000088dc
-
-#define REG_A6XX_RB_BLIT_FLAG_DST_HI                           0x000088dd
-
 #define REG_A6XX_RB_BLIT_FLAG_DST_PITCH                                0x000088de
 #define A6XX_RB_BLIT_FLAG_DST_PITCH_PITCH__MASK                        0x000007ff
 #define A6XX_RB_BLIT_FLAG_DST_PITCH_PITCH__SHIFT               0
@@ -4412,7 +3712,7 @@ static inline uint32_t A6XX_RB_BLIT_FLAG_DST_PITCH_ARRAY_PITCH(uint32_t val)
 #define REG_A6XX_RB_BLIT_INFO                                  0x000088e3
 #define A6XX_RB_BLIT_INFO_UNK0                                 0x00000001
 #define A6XX_RB_BLIT_INFO_GMEM                                 0x00000002
-#define A6XX_RB_BLIT_INFO_INTEGER                              0x00000004
+#define A6XX_RB_BLIT_INFO_SAMPLE_0                             0x00000004
 #define A6XX_RB_BLIT_INFO_DEPTH                                        0x00000008
 #define A6XX_RB_BLIT_INFO_CLEAR_MASK__MASK                     0x000000f0
 #define A6XX_RB_BLIT_INFO_CLEAR_MASK__SHIFT                    4
@@ -4459,10 +3759,6 @@ static inline uint32_t A6XX_RB_UNK_FLAG_BUFFER_PITCH_ARRAY_PITCH(uint32_t val)
 
 #define REG_A6XX_RB_UNKNOWN_88F4                               0x000088f4
 
-#define REG_A6XX_RB_DEPTH_FLAG_BUFFER_BASE_LO                  0x00008900
-
-#define REG_A6XX_RB_DEPTH_FLAG_BUFFER_BASE_HI                  0x00008901
-
 #define REG_A6XX_RB_DEPTH_FLAG_BUFFER_BASE                     0x00008900
 #define A6XX_RB_DEPTH_FLAG_BUFFER_BASE__MASK                   0xffffffff
 #define A6XX_RB_DEPTH_FLAG_BUFFER_BASE__SHIFT                  0
@@ -4493,10 +3789,6 @@ static inline uint32_t A6XX_RB_DEPTH_FLAG_BUFFER_PITCH_ARRAY_PITCH(uint32_t val)
 
 static inline uint32_t REG_A6XX_RB_MRT_FLAG_BUFFER(uint32_t i0) { return 0x00008903 + 0x3*i0; }
 
-static inline uint32_t REG_A6XX_RB_MRT_FLAG_BUFFER_ADDR_LO(uint32_t i0) { return 0x00008903 + 0x3*i0; }
-
-static inline uint32_t REG_A6XX_RB_MRT_FLAG_BUFFER_ADDR_HI(uint32_t i0) { return 0x00008904 + 0x3*i0; }
-
 static inline uint32_t REG_A6XX_RB_MRT_FLAG_BUFFER_ADDR(uint32_t i0) { return 0x00008903 + 0x3*i0; }
 #define A6XX_RB_MRT_FLAG_BUFFER_ADDR__MASK                     0xffffffff
 #define A6XX_RB_MRT_FLAG_BUFFER_ADDR__SHIFT                    0
@@ -4519,10 +3811,6 @@ static inline uint32_t A6XX_RB_MRT_FLAG_BUFFER_PITCH_ARRAY_PITCH(uint32_t val)
        return ((val >> 7) << A6XX_RB_MRT_FLAG_BUFFER_PITCH_ARRAY_PITCH__SHIFT) & A6XX_RB_MRT_FLAG_BUFFER_PITCH_ARRAY_PITCH__MASK;
 }
 
-#define REG_A6XX_RB_SAMPLE_COUNT_ADDR_LO                       0x00008927
-
-#define REG_A6XX_RB_SAMPLE_COUNT_ADDR_HI                       0x00008928
-
 #define REG_A6XX_RB_SAMPLE_COUNT_ADDR                          0x00008927
 #define A6XX_RB_SAMPLE_COUNT_ADDR__MASK                                0xffffffff
 #define A6XX_RB_SAMPLE_COUNT_ADDR__SHIFT                       0
@@ -4608,13 +3896,19 @@ static inline uint32_t A6XX_RB_2D_DST_INFO_SAMPLES(enum a3xx_msaa_samples val)
        return ((val) << A6XX_RB_2D_DST_INFO_SAMPLES__SHIFT) & A6XX_RB_2D_DST_INFO_SAMPLES__MASK;
 }
 #define A6XX_RB_2D_DST_INFO_FILTER                             0x00010000
+#define A6XX_RB_2D_DST_INFO_UNK17                              0x00020000
 #define A6XX_RB_2D_DST_INFO_SAMPLES_AVERAGE                    0x00040000
+#define A6XX_RB_2D_DST_INFO_UNK19                              0x00080000
 #define A6XX_RB_2D_DST_INFO_UNK20                              0x00100000
+#define A6XX_RB_2D_DST_INFO_UNK21                              0x00200000
 #define A6XX_RB_2D_DST_INFO_UNK22                              0x00400000
-
-#define REG_A6XX_RB_2D_DST_LO                                  0x00008c18
-
-#define REG_A6XX_RB_2D_DST_HI                                  0x00008c19
+#define A6XX_RB_2D_DST_INFO_UNK23__MASK                                0x07800000
+#define A6XX_RB_2D_DST_INFO_UNK23__SHIFT                       23
+static inline uint32_t A6XX_RB_2D_DST_INFO_UNK23(uint32_t val)
+{
+       return ((val) << A6XX_RB_2D_DST_INFO_UNK23__SHIFT) & A6XX_RB_2D_DST_INFO_UNK23__MASK;
+}
+#define A6XX_RB_2D_DST_INFO_UNK28                              0x10000000
 
 #define REG_A6XX_RB_2D_DST                                     0x00008c18
 #define A6XX_RB_2D_DST__MASK                                   0xffffffff
@@ -4656,10 +3950,6 @@ static inline uint32_t A6XX_RB_2D_DST_PLANE2(uint32_t val)
        return ((val) << A6XX_RB_2D_DST_PLANE2__SHIFT) & A6XX_RB_2D_DST_PLANE2__MASK;
 }
 
-#define REG_A6XX_RB_2D_DST_FLAGS_LO                            0x00008c20
-
-#define REG_A6XX_RB_2D_DST_FLAGS_HI                            0x00008c21
-
 #define REG_A6XX_RB_2D_DST_FLAGS                               0x00008c20
 #define A6XX_RB_2D_DST_FLAGS__MASK                             0xffffffff
 #define A6XX_RB_2D_DST_FLAGS__SHIFT                            0
@@ -4740,41 +4030,13 @@ static inline uint32_t A6XX_RB_NC_MODE_CNTL_UNK12(uint32_t val)
        return ((val) << A6XX_RB_NC_MODE_CNTL_UNK12__SHIFT) & A6XX_RB_NC_MODE_CNTL_UNK12__MASK;
 }
 
-#define REG_A6XX_RB_PERFCTR_RB_SEL_0                           0x00008e10
-
-#define REG_A6XX_RB_PERFCTR_RB_SEL_1                           0x00008e11
-
-#define REG_A6XX_RB_PERFCTR_RB_SEL_2                           0x00008e12
-
-#define REG_A6XX_RB_PERFCTR_RB_SEL_3                           0x00008e13
-
-#define REG_A6XX_RB_PERFCTR_RB_SEL_4                           0x00008e14
-
-#define REG_A6XX_RB_PERFCTR_RB_SEL_5                           0x00008e15
-
-#define REG_A6XX_RB_PERFCTR_RB_SEL_6                           0x00008e16
-
-#define REG_A6XX_RB_PERFCTR_RB_SEL_7                           0x00008e17
-
-#define REG_A6XX_RB_PERFCTR_CCU_SEL_0                          0x00008e18
+static inline uint32_t REG_A6XX_RB_PERFCTR_RB_SEL(uint32_t i0) { return 0x00008e10 + 0x1*i0; }
 
-#define REG_A6XX_RB_PERFCTR_CCU_SEL_1                          0x00008e19
-
-#define REG_A6XX_RB_PERFCTR_CCU_SEL_2                          0x00008e1a
-
-#define REG_A6XX_RB_PERFCTR_CCU_SEL_3                          0x00008e1b
-
-#define REG_A6XX_RB_PERFCTR_CCU_SEL_4                          0x00008e1c
+static inline uint32_t REG_A6XX_RB_PERFCTR_CCU_SEL(uint32_t i0) { return 0x00008e18 + 0x1*i0; }
 
 #define REG_A6XX_RB_UNKNOWN_8E28                               0x00008e28
 
-#define REG_A6XX_RB_PERFCTR_CMP_SEL_0                          0x00008e2c
-
-#define REG_A6XX_RB_PERFCTR_CMP_SEL_1                          0x00008e2d
-
-#define REG_A6XX_RB_PERFCTR_CMP_SEL_2                          0x00008e2e
-
-#define REG_A6XX_RB_PERFCTR_CMP_SEL_3                          0x00008e2f
+static inline uint32_t REG_A6XX_RB_PERFCTR_CMP_SEL(uint32_t i0) { return 0x00008e2c + 0x1*i0; }
 
 #define REG_A6XX_RB_RB_SUB_BLOCK_SEL_CNTL_HOST                 0x00008e3b
 
@@ -4895,6 +4157,8 @@ static inline uint32_t A6XX_VPC_DS_LAYER_CNTL_VIEWLOC(uint32_t val)
 }
 
 #define REG_A6XX_VPC_UNKNOWN_9107                              0x00009107
+#define A6XX_VPC_UNKNOWN_9107_RASTER_DISCARD                   0x00000001
+#define A6XX_VPC_UNKNOWN_9107_UNK2                             0x00000004
 
 #define REG_A6XX_VPC_POLYGON_MODE                              0x00009108
 #define A6XX_VPC_POLYGON_MODE_MODE__MASK                       0x00000003
@@ -4921,13 +4185,13 @@ static inline uint32_t REG_A6XX_VPC_VAR(uint32_t i0) { return 0x00009212 + 0x1*i
 static inline uint32_t REG_A6XX_VPC_VAR_DISABLE(uint32_t i0) { return 0x00009212 + 0x1*i0; }
 
 #define REG_A6XX_VPC_SO_CNTL                                   0x00009216
-#define A6XX_VPC_SO_CNTL_UNK0__MASK                            0x000000ff
-#define A6XX_VPC_SO_CNTL_UNK0__SHIFT                           0
-static inline uint32_t A6XX_VPC_SO_CNTL_UNK0(uint32_t val)
+#define A6XX_VPC_SO_CNTL_ADDR__MASK                            0x000000ff
+#define A6XX_VPC_SO_CNTL_ADDR__SHIFT                           0
+static inline uint32_t A6XX_VPC_SO_CNTL_ADDR(uint32_t val)
 {
-       return ((val) << A6XX_VPC_SO_CNTL_UNK0__SHIFT) & A6XX_VPC_SO_CNTL_UNK0__MASK;
+       return ((val) << A6XX_VPC_SO_CNTL_ADDR__SHIFT) & A6XX_VPC_SO_CNTL_ADDR__MASK;
 }
-#define A6XX_VPC_SO_CNTL_ENABLE                                        0x00010000
+#define A6XX_VPC_SO_CNTL_RESET                                 0x00010000
 
 #define REG_A6XX_VPC_SO_PROG                                   0x00009217
 #define A6XX_VPC_SO_PROG_A_BUF__MASK                           0x00000003
@@ -4957,10 +4221,6 @@ static inline uint32_t A6XX_VPC_SO_PROG_B_OFF(uint32_t val)
 }
 #define A6XX_VPC_SO_PROG_B_EN                                  0x00800000
 
-#define REG_A6XX_VPC_SO_STREAM_COUNTS_LO                       0x00009218
-
-#define REG_A6XX_VPC_SO_STREAM_COUNTS_HI                       0x00009219
-
 #define REG_A6XX_VPC_SO_STREAM_COUNTS                          0x00009218
 #define A6XX_VPC_SO_STREAM_COUNTS__MASK                                0xffffffff
 #define A6XX_VPC_SO_STREAM_COUNTS__SHIFT                       0
@@ -4979,10 +4239,6 @@ static inline uint32_t A6XX_VPC_SO_BUFFER_BASE(uint32_t val)
        return ((val) << A6XX_VPC_SO_BUFFER_BASE__SHIFT) & A6XX_VPC_SO_BUFFER_BASE__MASK;
 }
 
-static inline uint32_t REG_A6XX_VPC_SO_BUFFER_BASE_LO(uint32_t i0) { return 0x0000921a + 0x7*i0; }
-
-static inline uint32_t REG_A6XX_VPC_SO_BUFFER_BASE_HI(uint32_t i0) { return 0x0000921b + 0x7*i0; }
-
 static inline uint32_t REG_A6XX_VPC_SO_BUFFER_SIZE(uint32_t i0) { return 0x0000921c + 0x7*i0; }
 #define A6XX_VPC_SO_BUFFER_SIZE__MASK                          0xfffffffc
 #define A6XX_VPC_SO_BUFFER_SIZE__SHIFT                         2
@@ -5009,10 +4265,6 @@ static inline uint32_t A6XX_VPC_SO_FLUSH_BASE(uint32_t val)
        return ((val) << A6XX_VPC_SO_FLUSH_BASE__SHIFT) & A6XX_VPC_SO_FLUSH_BASE__MASK;
 }
 
-static inline uint32_t REG_A6XX_VPC_SO_FLUSH_BASE_LO(uint32_t i0) { return 0x0000921f + 0x7*i0; }
-
-static inline uint32_t REG_A6XX_VPC_SO_FLUSH_BASE_HI(uint32_t i0) { return 0x00009220 + 0x7*i0; }
-
 #define REG_A6XX_VPC_POINT_COORD_INVERT                                0x00009236
 #define A6XX_VPC_POINT_COORD_INVERT_INVERT                     0x00000001
 
@@ -5037,11 +4289,11 @@ static inline uint32_t A6XX_VPC_VS_PACK_PSIZELOC(uint32_t val)
 {
        return ((val) << A6XX_VPC_VS_PACK_PSIZELOC__SHIFT) & A6XX_VPC_VS_PACK_PSIZELOC__MASK;
 }
-#define A6XX_VPC_VS_PACK_UNK24__MASK                           0x0f000000
-#define A6XX_VPC_VS_PACK_UNK24__SHIFT                          24
-static inline uint32_t A6XX_VPC_VS_PACK_UNK24(uint32_t val)
+#define A6XX_VPC_VS_PACK_EXTRAPOS__MASK                                0x0f000000
+#define A6XX_VPC_VS_PACK_EXTRAPOS__SHIFT                       24
+static inline uint32_t A6XX_VPC_VS_PACK_EXTRAPOS(uint32_t val)
 {
-       return ((val) << A6XX_VPC_VS_PACK_UNK24__SHIFT) & A6XX_VPC_VS_PACK_UNK24__MASK;
+       return ((val) << A6XX_VPC_VS_PACK_EXTRAPOS__SHIFT) & A6XX_VPC_VS_PACK_EXTRAPOS__MASK;
 }
 
 #define REG_A6XX_VPC_GS_PACK                                   0x00009302
@@ -5063,11 +4315,11 @@ static inline uint32_t A6XX_VPC_GS_PACK_PSIZELOC(uint32_t val)
 {
        return ((val) << A6XX_VPC_GS_PACK_PSIZELOC__SHIFT) & A6XX_VPC_GS_PACK_PSIZELOC__MASK;
 }
-#define A6XX_VPC_GS_PACK_UNK24__MASK                           0x0f000000
-#define A6XX_VPC_GS_PACK_UNK24__SHIFT                          24
-static inline uint32_t A6XX_VPC_GS_PACK_UNK24(uint32_t val)
+#define A6XX_VPC_GS_PACK_EXTRAPOS__MASK                                0x0f000000
+#define A6XX_VPC_GS_PACK_EXTRAPOS__SHIFT                       24
+static inline uint32_t A6XX_VPC_GS_PACK_EXTRAPOS(uint32_t val)
 {
-       return ((val) << A6XX_VPC_GS_PACK_UNK24__SHIFT) & A6XX_VPC_GS_PACK_UNK24__MASK;
+       return ((val) << A6XX_VPC_GS_PACK_EXTRAPOS__SHIFT) & A6XX_VPC_GS_PACK_EXTRAPOS__MASK;
 }
 
 #define REG_A6XX_VPC_DS_PACK                                   0x00009303
@@ -5089,11 +4341,11 @@ static inline uint32_t A6XX_VPC_DS_PACK_PSIZELOC(uint32_t val)
 {
        return ((val) << A6XX_VPC_DS_PACK_PSIZELOC__SHIFT) & A6XX_VPC_DS_PACK_PSIZELOC__MASK;
 }
-#define A6XX_VPC_DS_PACK_UNK24__MASK                           0x0f000000
-#define A6XX_VPC_DS_PACK_UNK24__SHIFT                          24
-static inline uint32_t A6XX_VPC_DS_PACK_UNK24(uint32_t val)
+#define A6XX_VPC_DS_PACK_EXTRAPOS__MASK                                0x0f000000
+#define A6XX_VPC_DS_PACK_EXTRAPOS__SHIFT                       24
+static inline uint32_t A6XX_VPC_DS_PACK_EXTRAPOS(uint32_t val)
 {
-       return ((val) << A6XX_VPC_DS_PACK_UNK24__SHIFT) & A6XX_VPC_DS_PACK_UNK24__MASK;
+       return ((val) << A6XX_VPC_DS_PACK_EXTRAPOS__SHIFT) & A6XX_VPC_DS_PACK_EXTRAPOS__MASK;
 }
 
 #define REG_A6XX_VPC_CNTL_0                                    0x00009304
@@ -5110,24 +4362,43 @@ static inline uint32_t A6XX_VPC_CNTL_0_PRIMIDLOC(uint32_t val)
        return ((val) << A6XX_VPC_CNTL_0_PRIMIDLOC__SHIFT) & A6XX_VPC_CNTL_0_PRIMIDLOC__MASK;
 }
 #define A6XX_VPC_CNTL_0_VARYING                                        0x00010000
-#define A6XX_VPC_CNTL_0_UNKLOC__MASK                           0xff000000
-#define A6XX_VPC_CNTL_0_UNKLOC__SHIFT                          24
-static inline uint32_t A6XX_VPC_CNTL_0_UNKLOC(uint32_t val)
+#define A6XX_VPC_CNTL_0_VIEWIDLOC__MASK                                0xff000000
+#define A6XX_VPC_CNTL_0_VIEWIDLOC__SHIFT                       24
+static inline uint32_t A6XX_VPC_CNTL_0_VIEWIDLOC(uint32_t val)
 {
-       return ((val) << A6XX_VPC_CNTL_0_UNKLOC__SHIFT) & A6XX_VPC_CNTL_0_UNKLOC__MASK;
+       return ((val) << A6XX_VPC_CNTL_0_VIEWIDLOC__SHIFT) & A6XX_VPC_CNTL_0_VIEWIDLOC__MASK;
 }
 
-#define REG_A6XX_VPC_SO_BUF_CNTL                               0x00009305
-#define A6XX_VPC_SO_BUF_CNTL_BUF0                              0x00000001
-#define A6XX_VPC_SO_BUF_CNTL_BUF1                              0x00000008
-#define A6XX_VPC_SO_BUF_CNTL_BUF2                              0x00000040
-#define A6XX_VPC_SO_BUF_CNTL_BUF3                              0x00000200
-#define A6XX_VPC_SO_BUF_CNTL_ENABLE                            0x00008000
-#define A6XX_VPC_SO_BUF_CNTL_UNK16__MASK                       0x000f0000
-#define A6XX_VPC_SO_BUF_CNTL_UNK16__SHIFT                      16
-static inline uint32_t A6XX_VPC_SO_BUF_CNTL_UNK16(uint32_t val)
+#define REG_A6XX_VPC_SO_STREAM_CNTL                            0x00009305
+#define A6XX_VPC_SO_STREAM_CNTL_BUF0_STREAM__MASK              0x00000007
+#define A6XX_VPC_SO_STREAM_CNTL_BUF0_STREAM__SHIFT             0
+static inline uint32_t A6XX_VPC_SO_STREAM_CNTL_BUF0_STREAM(uint32_t val)
+{
+       return ((val) << A6XX_VPC_SO_STREAM_CNTL_BUF0_STREAM__SHIFT) & A6XX_VPC_SO_STREAM_CNTL_BUF0_STREAM__MASK;
+}
+#define A6XX_VPC_SO_STREAM_CNTL_BUF1_STREAM__MASK              0x00000038
+#define A6XX_VPC_SO_STREAM_CNTL_BUF1_STREAM__SHIFT             3
+static inline uint32_t A6XX_VPC_SO_STREAM_CNTL_BUF1_STREAM(uint32_t val)
+{
+       return ((val) << A6XX_VPC_SO_STREAM_CNTL_BUF1_STREAM__SHIFT) & A6XX_VPC_SO_STREAM_CNTL_BUF1_STREAM__MASK;
+}
+#define A6XX_VPC_SO_STREAM_CNTL_BUF2_STREAM__MASK              0x000001c0
+#define A6XX_VPC_SO_STREAM_CNTL_BUF2_STREAM__SHIFT             6
+static inline uint32_t A6XX_VPC_SO_STREAM_CNTL_BUF2_STREAM(uint32_t val)
 {
-       return ((val) << A6XX_VPC_SO_BUF_CNTL_UNK16__SHIFT) & A6XX_VPC_SO_BUF_CNTL_UNK16__MASK;
+       return ((val) << A6XX_VPC_SO_STREAM_CNTL_BUF2_STREAM__SHIFT) & A6XX_VPC_SO_STREAM_CNTL_BUF2_STREAM__MASK;
+}
+#define A6XX_VPC_SO_STREAM_CNTL_BUF3_STREAM__MASK              0x00000e00
+#define A6XX_VPC_SO_STREAM_CNTL_BUF3_STREAM__SHIFT             9
+static inline uint32_t A6XX_VPC_SO_STREAM_CNTL_BUF3_STREAM(uint32_t val)
+{
+       return ((val) << A6XX_VPC_SO_STREAM_CNTL_BUF3_STREAM__SHIFT) & A6XX_VPC_SO_STREAM_CNTL_BUF3_STREAM__MASK;
+}
+#define A6XX_VPC_SO_STREAM_CNTL_STREAM_ENABLE__MASK            0x00078000
+#define A6XX_VPC_SO_STREAM_CNTL_STREAM_ENABLE__SHIFT           15
+static inline uint32_t A6XX_VPC_SO_STREAM_CNTL_STREAM_ENABLE(uint32_t val)
+{
+       return ((val) << A6XX_VPC_SO_STREAM_CNTL_STREAM_ENABLE__SHIFT) & A6XX_VPC_SO_STREAM_CNTL_STREAM_ENABLE__MASK;
 }
 
 #define REG_A6XX_VPC_SO_DISABLE                                        0x00009306
@@ -5141,32 +4412,22 @@ static inline uint32_t A6XX_VPC_SO_BUF_CNTL_UNK16(uint32_t val)
 
 #define REG_A6XX_VPC_UNKNOWN_9603                              0x00009603
 
-#define REG_A6XX_VPC_PERFCTR_VPC_SEL_0                         0x00009604
-
-#define REG_A6XX_VPC_PERFCTR_VPC_SEL_1                         0x00009605
-
-#define REG_A6XX_VPC_PERFCTR_VPC_SEL_2                         0x00009606
-
-#define REG_A6XX_VPC_PERFCTR_VPC_SEL_3                         0x00009607
-
-#define REG_A6XX_VPC_PERFCTR_VPC_SEL_4                         0x00009608
-
-#define REG_A6XX_VPC_PERFCTR_VPC_SEL_5                         0x00009609
+static inline uint32_t REG_A6XX_VPC_PERFCTR_VPC_SEL(uint32_t i0) { return 0x00009604 + 0x1*i0; }
 
 #define REG_A6XX_PC_TESS_NUM_VERTEX                            0x00009800
 
-#define REG_A6XX_PC_UNKNOWN_9801                               0x00009801
-#define A6XX_PC_UNKNOWN_9801_UNK0__MASK                                0x000007ff
-#define A6XX_PC_UNKNOWN_9801_UNK0__SHIFT                       0
-static inline uint32_t A6XX_PC_UNKNOWN_9801_UNK0(uint32_t val)
+#define REG_A6XX_PC_HS_INPUT_SIZE                              0x00009801
+#define A6XX_PC_HS_INPUT_SIZE_SIZE__MASK                       0x000007ff
+#define A6XX_PC_HS_INPUT_SIZE_SIZE__SHIFT                      0
+static inline uint32_t A6XX_PC_HS_INPUT_SIZE_SIZE(uint32_t val)
 {
-       return ((val) << A6XX_PC_UNKNOWN_9801_UNK0__SHIFT) & A6XX_PC_UNKNOWN_9801_UNK0__MASK;
+       return ((val) << A6XX_PC_HS_INPUT_SIZE_SIZE__SHIFT) & A6XX_PC_HS_INPUT_SIZE_SIZE__MASK;
 }
-#define A6XX_PC_UNKNOWN_9801_UNK13__MASK                       0x00002000
-#define A6XX_PC_UNKNOWN_9801_UNK13__SHIFT                      13
-static inline uint32_t A6XX_PC_UNKNOWN_9801_UNK13(uint32_t val)
+#define A6XX_PC_HS_INPUT_SIZE_UNK13__MASK                      0x00002000
+#define A6XX_PC_HS_INPUT_SIZE_UNK13__SHIFT                     13
+static inline uint32_t A6XX_PC_HS_INPUT_SIZE_UNK13(uint32_t val)
 {
-       return ((val) << A6XX_PC_UNKNOWN_9801_UNK13__SHIFT) & A6XX_PC_UNKNOWN_9801_UNK13__MASK;
+       return ((val) << A6XX_PC_HS_INPUT_SIZE_UNK13__SHIFT) & A6XX_PC_HS_INPUT_SIZE_UNK13__MASK;
 }
 
 #define REG_A6XX_PC_TESS_CNTL                                  0x00009802
@@ -5221,6 +4482,8 @@ static inline uint32_t A6XX_PC_EVENT_CMD_EVENT(enum vgt_event_type val)
        return ((val) << A6XX_PC_EVENT_CMD_EVENT__SHIFT) & A6XX_PC_EVENT_CMD_EVENT__MASK;
 }
 
+#define REG_A6XX_PC_MARKER                                     0x00009880
+
 #define REG_A6XX_PC_POLYGON_MODE                               0x00009981
 #define A6XX_PC_POLYGON_MODE_MODE__MASK                                0x00000003
 #define A6XX_PC_POLYGON_MODE_MODE__SHIFT                       0
@@ -5229,7 +4492,14 @@ static inline uint32_t A6XX_PC_POLYGON_MODE_MODE(enum a6xx_polygon_mode val)
        return ((val) << A6XX_PC_POLYGON_MODE_MODE__SHIFT) & A6XX_PC_POLYGON_MODE_MODE__MASK;
 }
 
-#define REG_A6XX_PC_UNKNOWN_9980                               0x00009980
+#define REG_A6XX_PC_RASTER_CNTL                                        0x00009980
+#define A6XX_PC_RASTER_CNTL_STREAM__MASK                       0x00000003
+#define A6XX_PC_RASTER_CNTL_STREAM__SHIFT                      0
+static inline uint32_t A6XX_PC_RASTER_CNTL_STREAM(uint32_t val)
+{
+       return ((val) << A6XX_PC_RASTER_CNTL_STREAM__SHIFT) & A6XX_PC_RASTER_CNTL_STREAM__MASK;
+}
+#define A6XX_PC_RASTER_CNTL_DISCARD                            0x00000004
 
 #define REG_A6XX_PC_PRIMITIVE_CNTL_0                           0x00009b00
 #define A6XX_PC_PRIMITIVE_CNTL_0_PRIMITIVE_RESTART             0x00000001
@@ -5327,9 +4597,17 @@ static inline uint32_t A6XX_PC_PRIMITIVE_CNTL_6_STRIDE_IN_VPC(uint32_t val)
        return ((val) << A6XX_PC_PRIMITIVE_CNTL_6_STRIDE_IN_VPC__SHIFT) & A6XX_PC_PRIMITIVE_CNTL_6_STRIDE_IN_VPC__MASK;
 }
 
-#define REG_A6XX_PC_UNKNOWN_9B07                               0x00009b07
+#define REG_A6XX_PC_MULTIVIEW_CNTL                             0x00009b07
+#define A6XX_PC_MULTIVIEW_CNTL_ENABLE                          0x00000001
+#define A6XX_PC_MULTIVIEW_CNTL_DISABLEMULTIPOS                 0x00000002
+#define A6XX_PC_MULTIVIEW_CNTL_VIEWS__MASK                     0x0000007c
+#define A6XX_PC_MULTIVIEW_CNTL_VIEWS__SHIFT                    2
+static inline uint32_t A6XX_PC_MULTIVIEW_CNTL_VIEWS(uint32_t val)
+{
+       return ((val) << A6XX_PC_MULTIVIEW_CNTL_VIEWS__SHIFT) & A6XX_PC_MULTIVIEW_CNTL_VIEWS__MASK;
+}
 
-#define REG_A6XX_PC_UNKNOWN_9B08                               0x00009b08
+#define REG_A6XX_PC_MULTIVIEW_MASK                             0x00009b08
 
 #define REG_A6XX_PC_2D_EVENT_CMD                               0x00009c00
 #define A6XX_PC_2D_EVENT_CMD_EVENT__MASK                       0x0000007f
@@ -5349,9 +4627,11 @@ static inline uint32_t A6XX_PC_2D_EVENT_CMD_STATE_ID(uint32_t val)
 
 #define REG_A6XX_PC_ADDR_MODE_CNTL                             0x00009e01
 
-#define REG_A6XX_PC_TESSFACTOR_ADDR_LO                         0x00009e08
+#define REG_A6XX_PC_DRAW_INDX_BASE                             0x00009e04
 
-#define REG_A6XX_PC_TESSFACTOR_ADDR_HI                         0x00009e09
+#define REG_A6XX_PC_DRAW_FIRST_INDX                            0x00009e06
+
+#define REG_A6XX_PC_DRAW_MAX_INDICES                           0x00009e07
 
 #define REG_A6XX_PC_TESSFACTOR_ADDR                            0x00009e08
 #define A6XX_PC_TESSFACTOR_ADDR__MASK                          0xffffffff
@@ -5361,6 +4641,44 @@ static inline uint32_t A6XX_PC_TESSFACTOR_ADDR(uint32_t val)
        return ((val) << A6XX_PC_TESSFACTOR_ADDR__SHIFT) & A6XX_PC_TESSFACTOR_ADDR__MASK;
 }
 
+#define REG_A6XX_PC_DRAW_INITIATOR                             0x00009e0b
+#define A6XX_PC_DRAW_INITIATOR_PRIM_TYPE__MASK                 0x0000003f
+#define A6XX_PC_DRAW_INITIATOR_PRIM_TYPE__SHIFT                        0
+static inline uint32_t A6XX_PC_DRAW_INITIATOR_PRIM_TYPE(enum pc_di_primtype val)
+{
+       return ((val) << A6XX_PC_DRAW_INITIATOR_PRIM_TYPE__SHIFT) & A6XX_PC_DRAW_INITIATOR_PRIM_TYPE__MASK;
+}
+#define A6XX_PC_DRAW_INITIATOR_SOURCE_SELECT__MASK             0x000000c0
+#define A6XX_PC_DRAW_INITIATOR_SOURCE_SELECT__SHIFT            6
+static inline uint32_t A6XX_PC_DRAW_INITIATOR_SOURCE_SELECT(enum pc_di_src_sel val)
+{
+       return ((val) << A6XX_PC_DRAW_INITIATOR_SOURCE_SELECT__SHIFT) & A6XX_PC_DRAW_INITIATOR_SOURCE_SELECT__MASK;
+}
+#define A6XX_PC_DRAW_INITIATOR_VIS_CULL__MASK                  0x00000300
+#define A6XX_PC_DRAW_INITIATOR_VIS_CULL__SHIFT                 8
+static inline uint32_t A6XX_PC_DRAW_INITIATOR_VIS_CULL(enum pc_di_vis_cull_mode val)
+{
+       return ((val) << A6XX_PC_DRAW_INITIATOR_VIS_CULL__SHIFT) & A6XX_PC_DRAW_INITIATOR_VIS_CULL__MASK;
+}
+#define A6XX_PC_DRAW_INITIATOR_INDEX_SIZE__MASK                        0x00000c00
+#define A6XX_PC_DRAW_INITIATOR_INDEX_SIZE__SHIFT               10
+static inline uint32_t A6XX_PC_DRAW_INITIATOR_INDEX_SIZE(enum a4xx_index_size val)
+{
+       return ((val) << A6XX_PC_DRAW_INITIATOR_INDEX_SIZE__SHIFT) & A6XX_PC_DRAW_INITIATOR_INDEX_SIZE__MASK;
+}
+#define A6XX_PC_DRAW_INITIATOR_PATCH_TYPE__MASK                        0x00003000
+#define A6XX_PC_DRAW_INITIATOR_PATCH_TYPE__SHIFT               12
+static inline uint32_t A6XX_PC_DRAW_INITIATOR_PATCH_TYPE(enum a6xx_patch_type val)
+{
+       return ((val) << A6XX_PC_DRAW_INITIATOR_PATCH_TYPE__SHIFT) & A6XX_PC_DRAW_INITIATOR_PATCH_TYPE__MASK;
+}
+#define A6XX_PC_DRAW_INITIATOR_GS_ENABLE                       0x00010000
+#define A6XX_PC_DRAW_INITIATOR_TESS_ENABLE                     0x00020000
+
+#define REG_A6XX_PC_DRAW_NUM_INSTANCES                         0x00009e0c
+
+#define REG_A6XX_PC_DRAW_NUM_INDICES                           0x00009e0d
+
 #define REG_A6XX_PC_VSTREAM_CONTROL                            0x00009e11
 #define A6XX_PC_VSTREAM_CONTROL_UNK0__MASK                     0x0000ffff
 #define A6XX_PC_VSTREAM_CONTROL_UNK0__SHIFT                    0
@@ -5397,21 +4715,10 @@ static inline uint32_t A6XX_PC_BIN_DRAW_STRM(uint32_t val)
        return ((val) << A6XX_PC_BIN_DRAW_STRM__SHIFT) & A6XX_PC_BIN_DRAW_STRM__MASK;
 }
 
-#define REG_A6XX_PC_PERFCTR_PC_SEL_0                           0x00009e34
-
-#define REG_A6XX_PC_PERFCTR_PC_SEL_1                           0x00009e35
-
-#define REG_A6XX_PC_PERFCTR_PC_SEL_2                           0x00009e36
-
-#define REG_A6XX_PC_PERFCTR_PC_SEL_3                           0x00009e37
-
-#define REG_A6XX_PC_PERFCTR_PC_SEL_4                           0x00009e38
+#define REG_A6XX_PC_VISIBILITY_OVERRIDE                                0x00009e1c
+#define A6XX_PC_VISIBILITY_OVERRIDE_OVERRIDE                   0x00000001
 
-#define REG_A6XX_PC_PERFCTR_PC_SEL_5                           0x00009e39
-
-#define REG_A6XX_PC_PERFCTR_PC_SEL_6                           0x00009e3a
-
-#define REG_A6XX_PC_PERFCTR_PC_SEL_7                           0x00009e3b
+static inline uint32_t REG_A6XX_PC_PERFCTR_PC_SEL(uint32_t i0) { return 0x00009e34 + 0x1*i0; }
 
 #define REG_A6XX_PC_UNKNOWN_9E72                               0x00009e72
 
@@ -5448,6 +4755,12 @@ static inline uint32_t A6XX_VFD_CONTROL_1_REGID4PRIMID(uint32_t val)
 {
        return ((val) << A6XX_VFD_CONTROL_1_REGID4PRIMID__SHIFT) & A6XX_VFD_CONTROL_1_REGID4PRIMID__MASK;
 }
+#define A6XX_VFD_CONTROL_1_REGID4VIEWID__MASK                  0xff000000
+#define A6XX_VFD_CONTROL_1_REGID4VIEWID__SHIFT                 24
+static inline uint32_t A6XX_VFD_CONTROL_1_REGID4VIEWID(uint32_t val)
+{
+       return ((val) << A6XX_VFD_CONTROL_1_REGID4VIEWID__SHIFT) & A6XX_VFD_CONTROL_1_REGID4VIEWID__MASK;
+}
 
 #define REG_A6XX_VFD_CONTROL_2                                 0x0000a002
 #define A6XX_VFD_CONTROL_2_REGID_HSPATCHID__MASK               0x000000ff
@@ -5464,6 +4777,12 @@ static inline uint32_t A6XX_VFD_CONTROL_2_REGID_INVOCATIONID(uint32_t val)
 }
 
 #define REG_A6XX_VFD_CONTROL_3                                 0x0000a003
+#define A6XX_VFD_CONTROL_3_UNK0__MASK                          0x000000ff
+#define A6XX_VFD_CONTROL_3_UNK0__SHIFT                         0
+static inline uint32_t A6XX_VFD_CONTROL_3_UNK0(uint32_t val)
+{
+       return ((val) << A6XX_VFD_CONTROL_3_UNK0__SHIFT) & A6XX_VFD_CONTROL_3_UNK0__MASK;
+}
 #define A6XX_VFD_CONTROL_3_REGID_DSPATCHID__MASK               0x0000ff00
 #define A6XX_VFD_CONTROL_3_REGID_DSPATCHID__SHIFT              8
 static inline uint32_t A6XX_VFD_CONTROL_3_REGID_DSPATCHID(uint32_t val)
@@ -5484,6 +4803,12 @@ static inline uint32_t A6XX_VFD_CONTROL_3_REGID_TESSY(uint32_t val)
 }
 
 #define REG_A6XX_VFD_CONTROL_4                                 0x0000a004
+#define A6XX_VFD_CONTROL_4_UNK0__MASK                          0x000000ff
+#define A6XX_VFD_CONTROL_4_UNK0__SHIFT                         0
+static inline uint32_t A6XX_VFD_CONTROL_4_UNK0(uint32_t val)
+{
+       return ((val) << A6XX_VFD_CONTROL_4_UNK0__SHIFT) & A6XX_VFD_CONTROL_4_UNK0__MASK;
+}
 
 #define REG_A6XX_VFD_CONTROL_5                                 0x0000a005
 #define A6XX_VFD_CONTROL_5_REGID_GSHEADER__MASK                        0x000000ff
@@ -5492,14 +4817,30 @@ static inline uint32_t A6XX_VFD_CONTROL_5_REGID_GSHEADER(uint32_t val)
 {
        return ((val) << A6XX_VFD_CONTROL_5_REGID_GSHEADER__SHIFT) & A6XX_VFD_CONTROL_5_REGID_GSHEADER__MASK;
 }
+#define A6XX_VFD_CONTROL_5_UNK8__MASK                          0x0000ff00
+#define A6XX_VFD_CONTROL_5_UNK8__SHIFT                         8
+static inline uint32_t A6XX_VFD_CONTROL_5_UNK8(uint32_t val)
+{
+       return ((val) << A6XX_VFD_CONTROL_5_UNK8__SHIFT) & A6XX_VFD_CONTROL_5_UNK8__MASK;
+}
 
 #define REG_A6XX_VFD_CONTROL_6                                 0x0000a006
 #define A6XX_VFD_CONTROL_6_PRIMID_PASSTHRU                     0x00000001
 
 #define REG_A6XX_VFD_MODE_CNTL                                 0x0000a007
 #define A6XX_VFD_MODE_CNTL_BINNING_PASS                                0x00000001
+#define A6XX_VFD_MODE_CNTL_UNK1                                        0x00000002
+#define A6XX_VFD_MODE_CNTL_UNK2                                        0x00000004
 
-#define REG_A6XX_VFD_UNKNOWN_A008                              0x0000a008
+#define REG_A6XX_VFD_MULTIVIEW_CNTL                            0x0000a008
+#define A6XX_VFD_MULTIVIEW_CNTL_ENABLE                         0x00000001
+#define A6XX_VFD_MULTIVIEW_CNTL_DISABLEMULTIPOS                        0x00000002
+#define A6XX_VFD_MULTIVIEW_CNTL_VIEWS__MASK                    0x0000007c
+#define A6XX_VFD_MULTIVIEW_CNTL_VIEWS__SHIFT                   2
+static inline uint32_t A6XX_VFD_MULTIVIEW_CNTL_VIEWS(uint32_t val)
+{
+       return ((val) << A6XX_VFD_MULTIVIEW_CNTL_VIEWS__SHIFT) & A6XX_VFD_MULTIVIEW_CNTL_VIEWS__MASK;
+}
 
 #define REG_A6XX_VFD_ADD_OFFSET                                        0x0000a009
 #define A6XX_VFD_ADD_OFFSET_VERTEX                             0x00000001
@@ -5512,10 +4853,12 @@ static inline uint32_t A6XX_VFD_CONTROL_5_REGID_GSHEADER(uint32_t val)
 static inline uint32_t REG_A6XX_VFD_FETCH(uint32_t i0) { return 0x0000a010 + 0x4*i0; }
 
 static inline uint32_t REG_A6XX_VFD_FETCH_BASE(uint32_t i0) { return 0x0000a010 + 0x4*i0; }
-
-static inline uint32_t REG_A6XX_VFD_FETCH_BASE_LO(uint32_t i0) { return 0x0000a010 + 0x4*i0; }
-
-static inline uint32_t REG_A6XX_VFD_FETCH_BASE_HI(uint32_t i0) { return 0x0000a011 + 0x4*i0; }
+#define A6XX_VFD_FETCH_BASE__MASK                              0xffffffff
+#define A6XX_VFD_FETCH_BASE__SHIFT                             0
+static inline uint32_t A6XX_VFD_FETCH_BASE(uint32_t val)
+{
+       return ((val) << A6XX_VFD_FETCH_BASE__SHIFT) & A6XX_VFD_FETCH_BASE__MASK;
+}
 
 static inline uint32_t REG_A6XX_VFD_FETCH_SIZE(uint32_t i0) { return 0x0000a012 + 0x4*i0; }
 
@@ -5572,7 +4915,19 @@ static inline uint32_t A6XX_VFD_DEST_CNTL_INSTR_REGID(uint32_t val)
 
 #define REG_A6XX_SP_UNKNOWN_A0F8                               0x0000a0f8
 
+#define REG_A6XX_VFD_ADDR_MODE_CNTL                            0x0000a601
+
+static inline uint32_t REG_A6XX_VFD_PERFCTR_VFD_SEL(uint32_t i0) { return 0x0000a610 + 0x1*i0; }
+
 #define REG_A6XX_SP_VS_CTRL_REG0                               0x0000a800
+#define A6XX_SP_VS_CTRL_REG0_MERGEDREGS                                0x00100000
+#define A6XX_SP_VS_CTRL_REG0_UNK21                             0x00200000
+#define A6XX_SP_VS_CTRL_REG0_THREADMODE__MASK                  0x00000001
+#define A6XX_SP_VS_CTRL_REG0_THREADMODE__SHIFT                 0
+static inline uint32_t A6XX_SP_VS_CTRL_REG0_THREADMODE(enum a3xx_threadmode val)
+{
+       return ((val) << A6XX_SP_VS_CTRL_REG0_THREADMODE__SHIFT) & A6XX_SP_VS_CTRL_REG0_THREADMODE__MASK;
+}
 #define A6XX_SP_VS_CTRL_REG0_HALFREGFOOTPRINT__MASK            0x0000007e
 #define A6XX_SP_VS_CTRL_REG0_HALFREGFOOTPRINT__SHIFT           1
 static inline uint32_t A6XX_SP_VS_CTRL_REG0_HALFREGFOOTPRINT(uint32_t val)
@@ -5585,22 +4940,13 @@ static inline uint32_t A6XX_SP_VS_CTRL_REG0_FULLREGFOOTPRINT(uint32_t val)
 {
        return ((val) << A6XX_SP_VS_CTRL_REG0_FULLREGFOOTPRINT__SHIFT) & A6XX_SP_VS_CTRL_REG0_FULLREGFOOTPRINT__MASK;
 }
+#define A6XX_SP_VS_CTRL_REG0_UNK13                             0x00002000
 #define A6XX_SP_VS_CTRL_REG0_BRANCHSTACK__MASK                 0x000fc000
 #define A6XX_SP_VS_CTRL_REG0_BRANCHSTACK__SHIFT                        14
 static inline uint32_t A6XX_SP_VS_CTRL_REG0_BRANCHSTACK(uint32_t val)
 {
        return ((val) << A6XX_SP_VS_CTRL_REG0_BRANCHSTACK__SHIFT) & A6XX_SP_VS_CTRL_REG0_BRANCHSTACK__MASK;
 }
-#define A6XX_SP_VS_CTRL_REG0_THREADSIZE__MASK                  0x00100000
-#define A6XX_SP_VS_CTRL_REG0_THREADSIZE__SHIFT                 20
-static inline uint32_t A6XX_SP_VS_CTRL_REG0_THREADSIZE(enum a3xx_threadsize val)
-{
-       return ((val) << A6XX_SP_VS_CTRL_REG0_THREADSIZE__SHIFT) & A6XX_SP_VS_CTRL_REG0_THREADSIZE__MASK;
-}
-#define A6XX_SP_VS_CTRL_REG0_VARYING                           0x00400000
-#define A6XX_SP_VS_CTRL_REG0_DIFF_FINE                         0x00800000
-#define A6XX_SP_VS_CTRL_REG0_PIXLODENABLE                      0x04000000
-#define A6XX_SP_VS_CTRL_REG0_MERGEDREGS                                0x80000000
 
 #define REG_A6XX_SP_VS_BRANCH_COND                             0x0000a801
 
@@ -5611,6 +4957,12 @@ static inline uint32_t A6XX_SP_VS_PRIMITIVE_CNTL_OUT(uint32_t val)
 {
        return ((val) << A6XX_SP_VS_PRIMITIVE_CNTL_OUT__SHIFT) & A6XX_SP_VS_PRIMITIVE_CNTL_OUT__MASK;
 }
+#define A6XX_SP_VS_PRIMITIVE_CNTL_FLAGS_REGID__MASK            0x00003fc0
+#define A6XX_SP_VS_PRIMITIVE_CNTL_FLAGS_REGID__SHIFT           6
+static inline uint32_t A6XX_SP_VS_PRIMITIVE_CNTL_FLAGS_REGID(uint32_t val)
+{
+       return ((val) << A6XX_SP_VS_PRIMITIVE_CNTL_FLAGS_REGID__SHIFT) & A6XX_SP_VS_PRIMITIVE_CNTL_FLAGS_REGID__MASK;
+}
 
 static inline uint32_t REG_A6XX_SP_VS_OUT(uint32_t i0) { return 0x0000a803 + 0x1*i0; }
 
@@ -5668,11 +5020,46 @@ static inline uint32_t A6XX_SP_VS_VPC_DST_REG_OUTLOC3(uint32_t val)
        return ((val) << A6XX_SP_VS_VPC_DST_REG_OUTLOC3__SHIFT) & A6XX_SP_VS_VPC_DST_REG_OUTLOC3__MASK;
 }
 
-#define REG_A6XX_SP_UNKNOWN_A81B                               0x0000a81b
+#define REG_A6XX_SP_VS_OBJ_FIRST_EXEC_OFFSET                   0x0000a81b
+
+#define REG_A6XX_SP_VS_OBJ_START                               0x0000a81c
+#define A6XX_SP_VS_OBJ_START__MASK                             0xffffffff
+#define A6XX_SP_VS_OBJ_START__SHIFT                            0
+static inline uint32_t A6XX_SP_VS_OBJ_START(uint32_t val)
+{
+       return ((val) << A6XX_SP_VS_OBJ_START__SHIFT) & A6XX_SP_VS_OBJ_START__MASK;
+}
+
+#define REG_A6XX_SP_VS_PVT_MEM_PARAM                           0x0000a81e
+#define A6XX_SP_VS_PVT_MEM_PARAM_MEMSIZEPERITEM__MASK          0x000000ff
+#define A6XX_SP_VS_PVT_MEM_PARAM_MEMSIZEPERITEM__SHIFT         0
+static inline uint32_t A6XX_SP_VS_PVT_MEM_PARAM_MEMSIZEPERITEM(uint32_t val)
+{
+       return ((val >> 9) << A6XX_SP_VS_PVT_MEM_PARAM_MEMSIZEPERITEM__SHIFT) & A6XX_SP_VS_PVT_MEM_PARAM_MEMSIZEPERITEM__MASK;
+}
+#define A6XX_SP_VS_PVT_MEM_PARAM_HWSTACKSIZEPERTHREAD__MASK    0xff000000
+#define A6XX_SP_VS_PVT_MEM_PARAM_HWSTACKSIZEPERTHREAD__SHIFT   24
+static inline uint32_t A6XX_SP_VS_PVT_MEM_PARAM_HWSTACKSIZEPERTHREAD(uint32_t val)
+{
+       return ((val) << A6XX_SP_VS_PVT_MEM_PARAM_HWSTACKSIZEPERTHREAD__SHIFT) & A6XX_SP_VS_PVT_MEM_PARAM_HWSTACKSIZEPERTHREAD__MASK;
+}
 
-#define REG_A6XX_SP_VS_OBJ_START_LO                            0x0000a81c
+#define REG_A6XX_SP_VS_PVT_MEM_ADDR                            0x0000a81f
+#define A6XX_SP_VS_PVT_MEM_ADDR__MASK                          0xffffffff
+#define A6XX_SP_VS_PVT_MEM_ADDR__SHIFT                         0
+static inline uint32_t A6XX_SP_VS_PVT_MEM_ADDR(uint32_t val)
+{
+       return ((val) << A6XX_SP_VS_PVT_MEM_ADDR__SHIFT) & A6XX_SP_VS_PVT_MEM_ADDR__MASK;
+}
 
-#define REG_A6XX_SP_VS_OBJ_START_HI                            0x0000a81d
+#define REG_A6XX_SP_VS_PVT_MEM_SIZE                            0x0000a821
+#define A6XX_SP_VS_PVT_MEM_SIZE_TOTALPVTMEMSIZE__MASK          0x0003ffff
+#define A6XX_SP_VS_PVT_MEM_SIZE_TOTALPVTMEMSIZE__SHIFT         0
+static inline uint32_t A6XX_SP_VS_PVT_MEM_SIZE_TOTALPVTMEMSIZE(uint32_t val)
+{
+       return ((val >> 12) << A6XX_SP_VS_PVT_MEM_SIZE_TOTALPVTMEMSIZE__SHIFT) & A6XX_SP_VS_PVT_MEM_SIZE_TOTALPVTMEMSIZE__MASK;
+}
+#define A6XX_SP_VS_PVT_MEM_SIZE_PERWAVEMEMLAYOUT               0x80000000
 
 #define REG_A6XX_SP_VS_TEX_COUNT                               0x0000a822
 
@@ -5694,7 +5081,7 @@ static inline uint32_t A6XX_SP_VS_CONFIG_NSAMP(uint32_t val)
 {
        return ((val) << A6XX_SP_VS_CONFIG_NSAMP__SHIFT) & A6XX_SP_VS_CONFIG_NSAMP__MASK;
 }
-#define A6XX_SP_VS_CONFIG_NIBO__MASK                           0x3fc00000
+#define A6XX_SP_VS_CONFIG_NIBO__MASK                           0x1fc00000
 #define A6XX_SP_VS_CONFIG_NIBO__SHIFT                          22
 static inline uint32_t A6XX_SP_VS_CONFIG_NIBO(uint32_t val)
 {
@@ -5703,7 +5090,22 @@ static inline uint32_t A6XX_SP_VS_CONFIG_NIBO(uint32_t val)
 
 #define REG_A6XX_SP_VS_INSTRLEN                                        0x0000a824
 
+#define REG_A6XX_SP_VS_PVT_MEM_HW_STACK_OFFSET                 0x0000a825
+#define A6XX_SP_VS_PVT_MEM_HW_STACK_OFFSET__MASK               0x0007ffff
+#define A6XX_SP_VS_PVT_MEM_HW_STACK_OFFSET__SHIFT              0
+static inline uint32_t A6XX_SP_VS_PVT_MEM_HW_STACK_OFFSET(uint32_t val)
+{
+       return ((val >> 11) << A6XX_SP_VS_PVT_MEM_HW_STACK_OFFSET__SHIFT) & A6XX_SP_VS_PVT_MEM_HW_STACK_OFFSET__MASK;
+}
+
 #define REG_A6XX_SP_HS_CTRL_REG0                               0x0000a830
+#define A6XX_SP_HS_CTRL_REG0_UNK20                             0x00100000
+#define A6XX_SP_HS_CTRL_REG0_THREADMODE__MASK                  0x00000001
+#define A6XX_SP_HS_CTRL_REG0_THREADMODE__SHIFT                 0
+static inline uint32_t A6XX_SP_HS_CTRL_REG0_THREADMODE(enum a3xx_threadmode val)
+{
+       return ((val) << A6XX_SP_HS_CTRL_REG0_THREADMODE__SHIFT) & A6XX_SP_HS_CTRL_REG0_THREADMODE__MASK;
+}
 #define A6XX_SP_HS_CTRL_REG0_HALFREGFOOTPRINT__MASK            0x0000007e
 #define A6XX_SP_HS_CTRL_REG0_HALFREGFOOTPRINT__SHIFT           1
 static inline uint32_t A6XX_SP_HS_CTRL_REG0_HALFREGFOOTPRINT(uint32_t val)
@@ -5716,30 +5118,58 @@ static inline uint32_t A6XX_SP_HS_CTRL_REG0_FULLREGFOOTPRINT(uint32_t val)
 {
        return ((val) << A6XX_SP_HS_CTRL_REG0_FULLREGFOOTPRINT__SHIFT) & A6XX_SP_HS_CTRL_REG0_FULLREGFOOTPRINT__MASK;
 }
+#define A6XX_SP_HS_CTRL_REG0_UNK13                             0x00002000
 #define A6XX_SP_HS_CTRL_REG0_BRANCHSTACK__MASK                 0x000fc000
 #define A6XX_SP_HS_CTRL_REG0_BRANCHSTACK__SHIFT                        14
 static inline uint32_t A6XX_SP_HS_CTRL_REG0_BRANCHSTACK(uint32_t val)
 {
        return ((val) << A6XX_SP_HS_CTRL_REG0_BRANCHSTACK__SHIFT) & A6XX_SP_HS_CTRL_REG0_BRANCHSTACK__MASK;
 }
-#define A6XX_SP_HS_CTRL_REG0_THREADSIZE__MASK                  0x00100000
-#define A6XX_SP_HS_CTRL_REG0_THREADSIZE__SHIFT                 20
-static inline uint32_t A6XX_SP_HS_CTRL_REG0_THREADSIZE(enum a3xx_threadsize val)
+
+#define REG_A6XX_SP_HS_WAVE_INPUT_SIZE                         0x0000a831
+
+#define REG_A6XX_SP_HS_BRANCH_COND                             0x0000a832
+
+#define REG_A6XX_SP_HS_OBJ_FIRST_EXEC_OFFSET                   0x0000a833
+
+#define REG_A6XX_SP_HS_OBJ_START                               0x0000a834
+#define A6XX_SP_HS_OBJ_START__MASK                             0xffffffff
+#define A6XX_SP_HS_OBJ_START__SHIFT                            0
+static inline uint32_t A6XX_SP_HS_OBJ_START(uint32_t val)
 {
-       return ((val) << A6XX_SP_HS_CTRL_REG0_THREADSIZE__SHIFT) & A6XX_SP_HS_CTRL_REG0_THREADSIZE__MASK;
+       return ((val) << A6XX_SP_HS_OBJ_START__SHIFT) & A6XX_SP_HS_OBJ_START__MASK;
 }
-#define A6XX_SP_HS_CTRL_REG0_VARYING                           0x00400000
-#define A6XX_SP_HS_CTRL_REG0_DIFF_FINE                         0x00800000
-#define A6XX_SP_HS_CTRL_REG0_PIXLODENABLE                      0x04000000
-#define A6XX_SP_HS_CTRL_REG0_MERGEDREGS                                0x80000000
 
-#define REG_A6XX_SP_HS_UNKNOWN_A831                            0x0000a831
-
-#define REG_A6XX_SP_HS_UNKNOWN_A833                            0x0000a833
+#define REG_A6XX_SP_HS_PVT_MEM_PARAM                           0x0000a836
+#define A6XX_SP_HS_PVT_MEM_PARAM_MEMSIZEPERITEM__MASK          0x000000ff
+#define A6XX_SP_HS_PVT_MEM_PARAM_MEMSIZEPERITEM__SHIFT         0
+static inline uint32_t A6XX_SP_HS_PVT_MEM_PARAM_MEMSIZEPERITEM(uint32_t val)
+{
+       return ((val >> 9) << A6XX_SP_HS_PVT_MEM_PARAM_MEMSIZEPERITEM__SHIFT) & A6XX_SP_HS_PVT_MEM_PARAM_MEMSIZEPERITEM__MASK;
+}
+#define A6XX_SP_HS_PVT_MEM_PARAM_HWSTACKSIZEPERTHREAD__MASK    0xff000000
+#define A6XX_SP_HS_PVT_MEM_PARAM_HWSTACKSIZEPERTHREAD__SHIFT   24
+static inline uint32_t A6XX_SP_HS_PVT_MEM_PARAM_HWSTACKSIZEPERTHREAD(uint32_t val)
+{
+       return ((val) << A6XX_SP_HS_PVT_MEM_PARAM_HWSTACKSIZEPERTHREAD__SHIFT) & A6XX_SP_HS_PVT_MEM_PARAM_HWSTACKSIZEPERTHREAD__MASK;
+}
 
-#define REG_A6XX_SP_HS_OBJ_START_LO                            0x0000a834
+#define REG_A6XX_SP_HS_PVT_MEM_ADDR                            0x0000a837
+#define A6XX_SP_HS_PVT_MEM_ADDR__MASK                          0xffffffff
+#define A6XX_SP_HS_PVT_MEM_ADDR__SHIFT                         0
+static inline uint32_t A6XX_SP_HS_PVT_MEM_ADDR(uint32_t val)
+{
+       return ((val) << A6XX_SP_HS_PVT_MEM_ADDR__SHIFT) & A6XX_SP_HS_PVT_MEM_ADDR__MASK;
+}
 
-#define REG_A6XX_SP_HS_OBJ_START_HI                            0x0000a835
+#define REG_A6XX_SP_HS_PVT_MEM_SIZE                            0x0000a839
+#define A6XX_SP_HS_PVT_MEM_SIZE_TOTALPVTMEMSIZE__MASK          0x0003ffff
+#define A6XX_SP_HS_PVT_MEM_SIZE_TOTALPVTMEMSIZE__SHIFT         0
+static inline uint32_t A6XX_SP_HS_PVT_MEM_SIZE_TOTALPVTMEMSIZE(uint32_t val)
+{
+       return ((val >> 12) << A6XX_SP_HS_PVT_MEM_SIZE_TOTALPVTMEMSIZE__SHIFT) & A6XX_SP_HS_PVT_MEM_SIZE_TOTALPVTMEMSIZE__MASK;
+}
+#define A6XX_SP_HS_PVT_MEM_SIZE_PERWAVEMEMLAYOUT               0x80000000
 
 #define REG_A6XX_SP_HS_TEX_COUNT                               0x0000a83a
 
@@ -5761,7 +5191,7 @@ static inline uint32_t A6XX_SP_HS_CONFIG_NSAMP(uint32_t val)
 {
        return ((val) << A6XX_SP_HS_CONFIG_NSAMP__SHIFT) & A6XX_SP_HS_CONFIG_NSAMP__MASK;
 }
-#define A6XX_SP_HS_CONFIG_NIBO__MASK                           0x3fc00000
+#define A6XX_SP_HS_CONFIG_NIBO__MASK                           0x1fc00000
 #define A6XX_SP_HS_CONFIG_NIBO__SHIFT                          22
 static inline uint32_t A6XX_SP_HS_CONFIG_NIBO(uint32_t val)
 {
@@ -5770,7 +5200,22 @@ static inline uint32_t A6XX_SP_HS_CONFIG_NIBO(uint32_t val)
 
 #define REG_A6XX_SP_HS_INSTRLEN                                        0x0000a83c
 
+#define REG_A6XX_SP_HS_PVT_MEM_HW_STACK_OFFSET                 0x0000a83d
+#define A6XX_SP_HS_PVT_MEM_HW_STACK_OFFSET__MASK               0x0007ffff
+#define A6XX_SP_HS_PVT_MEM_HW_STACK_OFFSET__SHIFT              0
+static inline uint32_t A6XX_SP_HS_PVT_MEM_HW_STACK_OFFSET(uint32_t val)
+{
+       return ((val >> 11) << A6XX_SP_HS_PVT_MEM_HW_STACK_OFFSET__SHIFT) & A6XX_SP_HS_PVT_MEM_HW_STACK_OFFSET__MASK;
+}
+
 #define REG_A6XX_SP_DS_CTRL_REG0                               0x0000a840
+#define A6XX_SP_DS_CTRL_REG0_MERGEDREGS                                0x00100000
+#define A6XX_SP_DS_CTRL_REG0_THREADMODE__MASK                  0x00000001
+#define A6XX_SP_DS_CTRL_REG0_THREADMODE__SHIFT                 0
+static inline uint32_t A6XX_SP_DS_CTRL_REG0_THREADMODE(enum a3xx_threadmode val)
+{
+       return ((val) << A6XX_SP_DS_CTRL_REG0_THREADMODE__SHIFT) & A6XX_SP_DS_CTRL_REG0_THREADMODE__MASK;
+}
 #define A6XX_SP_DS_CTRL_REG0_HALFREGFOOTPRINT__MASK            0x0000007e
 #define A6XX_SP_DS_CTRL_REG0_HALFREGFOOTPRINT__SHIFT           1
 static inline uint32_t A6XX_SP_DS_CTRL_REG0_HALFREGFOOTPRINT(uint32_t val)
@@ -5783,22 +5228,15 @@ static inline uint32_t A6XX_SP_DS_CTRL_REG0_FULLREGFOOTPRINT(uint32_t val)
 {
        return ((val) << A6XX_SP_DS_CTRL_REG0_FULLREGFOOTPRINT__SHIFT) & A6XX_SP_DS_CTRL_REG0_FULLREGFOOTPRINT__MASK;
 }
+#define A6XX_SP_DS_CTRL_REG0_UNK13                             0x00002000
 #define A6XX_SP_DS_CTRL_REG0_BRANCHSTACK__MASK                 0x000fc000
 #define A6XX_SP_DS_CTRL_REG0_BRANCHSTACK__SHIFT                        14
 static inline uint32_t A6XX_SP_DS_CTRL_REG0_BRANCHSTACK(uint32_t val)
 {
        return ((val) << A6XX_SP_DS_CTRL_REG0_BRANCHSTACK__SHIFT) & A6XX_SP_DS_CTRL_REG0_BRANCHSTACK__MASK;
 }
-#define A6XX_SP_DS_CTRL_REG0_THREADSIZE__MASK                  0x00100000
-#define A6XX_SP_DS_CTRL_REG0_THREADSIZE__SHIFT                 20
-static inline uint32_t A6XX_SP_DS_CTRL_REG0_THREADSIZE(enum a3xx_threadsize val)
-{
-       return ((val) << A6XX_SP_DS_CTRL_REG0_THREADSIZE__SHIFT) & A6XX_SP_DS_CTRL_REG0_THREADSIZE__MASK;
-}
-#define A6XX_SP_DS_CTRL_REG0_VARYING                           0x00400000
-#define A6XX_SP_DS_CTRL_REG0_DIFF_FINE                         0x00800000
-#define A6XX_SP_DS_CTRL_REG0_PIXLODENABLE                      0x04000000
-#define A6XX_SP_DS_CTRL_REG0_MERGEDREGS                                0x80000000
+
+#define REG_A6XX_SP_DS_BRANCH_COND                             0x0000a841
 
 #define REG_A6XX_SP_DS_PRIMITIVE_CNTL                          0x0000a842
 #define A6XX_SP_DS_PRIMITIVE_CNTL_OUT__MASK                    0x0000003f
@@ -5807,6 +5245,12 @@ static inline uint32_t A6XX_SP_DS_PRIMITIVE_CNTL_OUT(uint32_t val)
 {
        return ((val) << A6XX_SP_DS_PRIMITIVE_CNTL_OUT__SHIFT) & A6XX_SP_DS_PRIMITIVE_CNTL_OUT__MASK;
 }
+#define A6XX_SP_DS_PRIMITIVE_CNTL_FLAGS_REGID__MASK            0x00003fc0
+#define A6XX_SP_DS_PRIMITIVE_CNTL_FLAGS_REGID__SHIFT           6
+static inline uint32_t A6XX_SP_DS_PRIMITIVE_CNTL_FLAGS_REGID(uint32_t val)
+{
+       return ((val) << A6XX_SP_DS_PRIMITIVE_CNTL_FLAGS_REGID__SHIFT) & A6XX_SP_DS_PRIMITIVE_CNTL_FLAGS_REGID__MASK;
+}
 
 static inline uint32_t REG_A6XX_SP_DS_OUT(uint32_t i0) { return 0x0000a843 + 0x1*i0; }
 
@@ -5864,11 +5308,46 @@ static inline uint32_t A6XX_SP_DS_VPC_DST_REG_OUTLOC3(uint32_t val)
        return ((val) << A6XX_SP_DS_VPC_DST_REG_OUTLOC3__SHIFT) & A6XX_SP_DS_VPC_DST_REG_OUTLOC3__MASK;
 }
 
-#define REG_A6XX_SP_DS_UNKNOWN_A85B                            0x0000a85b
+#define REG_A6XX_SP_DS_OBJ_FIRST_EXEC_OFFSET                   0x0000a85b
+
+#define REG_A6XX_SP_DS_OBJ_START                               0x0000a85c
+#define A6XX_SP_DS_OBJ_START__MASK                             0xffffffff
+#define A6XX_SP_DS_OBJ_START__SHIFT                            0
+static inline uint32_t A6XX_SP_DS_OBJ_START(uint32_t val)
+{
+       return ((val) << A6XX_SP_DS_OBJ_START__SHIFT) & A6XX_SP_DS_OBJ_START__MASK;
+}
+
+#define REG_A6XX_SP_DS_PVT_MEM_PARAM                           0x0000a85e
+#define A6XX_SP_DS_PVT_MEM_PARAM_MEMSIZEPERITEM__MASK          0x000000ff
+#define A6XX_SP_DS_PVT_MEM_PARAM_MEMSIZEPERITEM__SHIFT         0
+static inline uint32_t A6XX_SP_DS_PVT_MEM_PARAM_MEMSIZEPERITEM(uint32_t val)
+{
+       return ((val >> 9) << A6XX_SP_DS_PVT_MEM_PARAM_MEMSIZEPERITEM__SHIFT) & A6XX_SP_DS_PVT_MEM_PARAM_MEMSIZEPERITEM__MASK;
+}
+#define A6XX_SP_DS_PVT_MEM_PARAM_HWSTACKSIZEPERTHREAD__MASK    0xff000000
+#define A6XX_SP_DS_PVT_MEM_PARAM_HWSTACKSIZEPERTHREAD__SHIFT   24
+static inline uint32_t A6XX_SP_DS_PVT_MEM_PARAM_HWSTACKSIZEPERTHREAD(uint32_t val)
+{
+       return ((val) << A6XX_SP_DS_PVT_MEM_PARAM_HWSTACKSIZEPERTHREAD__SHIFT) & A6XX_SP_DS_PVT_MEM_PARAM_HWSTACKSIZEPERTHREAD__MASK;
+}
 
-#define REG_A6XX_SP_DS_OBJ_START_LO                            0x0000a85c
+#define REG_A6XX_SP_DS_PVT_MEM_ADDR                            0x0000a85f
+#define A6XX_SP_DS_PVT_MEM_ADDR__MASK                          0xffffffff
+#define A6XX_SP_DS_PVT_MEM_ADDR__SHIFT                         0
+static inline uint32_t A6XX_SP_DS_PVT_MEM_ADDR(uint32_t val)
+{
+       return ((val) << A6XX_SP_DS_PVT_MEM_ADDR__SHIFT) & A6XX_SP_DS_PVT_MEM_ADDR__MASK;
+}
 
-#define REG_A6XX_SP_DS_OBJ_START_HI                            0x0000a85d
+#define REG_A6XX_SP_DS_PVT_MEM_SIZE                            0x0000a861
+#define A6XX_SP_DS_PVT_MEM_SIZE_TOTALPVTMEMSIZE__MASK          0x0003ffff
+#define A6XX_SP_DS_PVT_MEM_SIZE_TOTALPVTMEMSIZE__SHIFT         0
+static inline uint32_t A6XX_SP_DS_PVT_MEM_SIZE_TOTALPVTMEMSIZE(uint32_t val)
+{
+       return ((val >> 12) << A6XX_SP_DS_PVT_MEM_SIZE_TOTALPVTMEMSIZE__SHIFT) & A6XX_SP_DS_PVT_MEM_SIZE_TOTALPVTMEMSIZE__MASK;
+}
+#define A6XX_SP_DS_PVT_MEM_SIZE_PERWAVEMEMLAYOUT               0x80000000
 
 #define REG_A6XX_SP_DS_TEX_COUNT                               0x0000a862
 
@@ -5890,7 +5369,7 @@ static inline uint32_t A6XX_SP_DS_CONFIG_NSAMP(uint32_t val)
 {
        return ((val) << A6XX_SP_DS_CONFIG_NSAMP__SHIFT) & A6XX_SP_DS_CONFIG_NSAMP__MASK;
 }
-#define A6XX_SP_DS_CONFIG_NIBO__MASK                           0x3fc00000
+#define A6XX_SP_DS_CONFIG_NIBO__MASK                           0x1fc00000
 #define A6XX_SP_DS_CONFIG_NIBO__SHIFT                          22
 static inline uint32_t A6XX_SP_DS_CONFIG_NIBO(uint32_t val)
 {
@@ -5899,7 +5378,22 @@ static inline uint32_t A6XX_SP_DS_CONFIG_NIBO(uint32_t val)
 
 #define REG_A6XX_SP_DS_INSTRLEN                                        0x0000a864
 
+#define REG_A6XX_SP_DS_PVT_MEM_HW_STACK_OFFSET                 0x0000a865
+#define A6XX_SP_DS_PVT_MEM_HW_STACK_OFFSET__MASK               0x0007ffff
+#define A6XX_SP_DS_PVT_MEM_HW_STACK_OFFSET__SHIFT              0
+static inline uint32_t A6XX_SP_DS_PVT_MEM_HW_STACK_OFFSET(uint32_t val)
+{
+       return ((val >> 11) << A6XX_SP_DS_PVT_MEM_HW_STACK_OFFSET__SHIFT) & A6XX_SP_DS_PVT_MEM_HW_STACK_OFFSET__MASK;
+}
+
 #define REG_A6XX_SP_GS_CTRL_REG0                               0x0000a870
+#define A6XX_SP_GS_CTRL_REG0_UNK20                             0x00100000
+#define A6XX_SP_GS_CTRL_REG0_THREADMODE__MASK                  0x00000001
+#define A6XX_SP_GS_CTRL_REG0_THREADMODE__SHIFT                 0
+static inline uint32_t A6XX_SP_GS_CTRL_REG0_THREADMODE(enum a3xx_threadmode val)
+{
+       return ((val) << A6XX_SP_GS_CTRL_REG0_THREADMODE__SHIFT) & A6XX_SP_GS_CTRL_REG0_THREADMODE__MASK;
+}
 #define A6XX_SP_GS_CTRL_REG0_HALFREGFOOTPRINT__MASK            0x0000007e
 #define A6XX_SP_GS_CTRL_REG0_HALFREGFOOTPRINT__SHIFT           1
 static inline uint32_t A6XX_SP_GS_CTRL_REG0_HALFREGFOOTPRINT(uint32_t val)
@@ -5912,22 +5406,13 @@ static inline uint32_t A6XX_SP_GS_CTRL_REG0_FULLREGFOOTPRINT(uint32_t val)
 {
        return ((val) << A6XX_SP_GS_CTRL_REG0_FULLREGFOOTPRINT__SHIFT) & A6XX_SP_GS_CTRL_REG0_FULLREGFOOTPRINT__MASK;
 }
+#define A6XX_SP_GS_CTRL_REG0_UNK13                             0x00002000
 #define A6XX_SP_GS_CTRL_REG0_BRANCHSTACK__MASK                 0x000fc000
 #define A6XX_SP_GS_CTRL_REG0_BRANCHSTACK__SHIFT                        14
 static inline uint32_t A6XX_SP_GS_CTRL_REG0_BRANCHSTACK(uint32_t val)
 {
        return ((val) << A6XX_SP_GS_CTRL_REG0_BRANCHSTACK__SHIFT) & A6XX_SP_GS_CTRL_REG0_BRANCHSTACK__MASK;
 }
-#define A6XX_SP_GS_CTRL_REG0_THREADSIZE__MASK                  0x00100000
-#define A6XX_SP_GS_CTRL_REG0_THREADSIZE__SHIFT                 20
-static inline uint32_t A6XX_SP_GS_CTRL_REG0_THREADSIZE(enum a3xx_threadsize val)
-{
-       return ((val) << A6XX_SP_GS_CTRL_REG0_THREADSIZE__SHIFT) & A6XX_SP_GS_CTRL_REG0_THREADSIZE__MASK;
-}
-#define A6XX_SP_GS_CTRL_REG0_VARYING                           0x00400000
-#define A6XX_SP_GS_CTRL_REG0_DIFF_FINE                         0x00800000
-#define A6XX_SP_GS_CTRL_REG0_PIXLODENABLE                      0x04000000
-#define A6XX_SP_GS_CTRL_REG0_MERGEDREGS                                0x80000000
 
 #define REG_A6XX_SP_GS_PRIM_SIZE                               0x0000a871
 
@@ -6003,9 +5488,46 @@ static inline uint32_t A6XX_SP_GS_VPC_DST_REG_OUTLOC3(uint32_t val)
        return ((val) << A6XX_SP_GS_VPC_DST_REG_OUTLOC3__SHIFT) & A6XX_SP_GS_VPC_DST_REG_OUTLOC3__MASK;
 }
 
-#define REG_A6XX_SP_GS_OBJ_START_LO                            0x0000a88d
-
-#define REG_A6XX_SP_GS_OBJ_START_HI                            0x0000a88e
+#define REG_A6XX_SP_GS_OBJ_FIRST_EXEC_OFFSET                   0x0000a88c
+
+#define REG_A6XX_SP_GS_OBJ_START                               0x0000a88d
+#define A6XX_SP_GS_OBJ_START__MASK                             0xffffffff
+#define A6XX_SP_GS_OBJ_START__SHIFT                            0
+static inline uint32_t A6XX_SP_GS_OBJ_START(uint32_t val)
+{
+       return ((val) << A6XX_SP_GS_OBJ_START__SHIFT) & A6XX_SP_GS_OBJ_START__MASK;
+}
+
+#define REG_A6XX_SP_GS_PVT_MEM_PARAM                           0x0000a88f
+#define A6XX_SP_GS_PVT_MEM_PARAM_MEMSIZEPERITEM__MASK          0x000000ff
+#define A6XX_SP_GS_PVT_MEM_PARAM_MEMSIZEPERITEM__SHIFT         0
+static inline uint32_t A6XX_SP_GS_PVT_MEM_PARAM_MEMSIZEPERITEM(uint32_t val)
+{
+       return ((val >> 9) << A6XX_SP_GS_PVT_MEM_PARAM_MEMSIZEPERITEM__SHIFT) & A6XX_SP_GS_PVT_MEM_PARAM_MEMSIZEPERITEM__MASK;
+}
+#define A6XX_SP_GS_PVT_MEM_PARAM_HWSTACKSIZEPERTHREAD__MASK    0xff000000
+#define A6XX_SP_GS_PVT_MEM_PARAM_HWSTACKSIZEPERTHREAD__SHIFT   24
+static inline uint32_t A6XX_SP_GS_PVT_MEM_PARAM_HWSTACKSIZEPERTHREAD(uint32_t val)
+{
+       return ((val) << A6XX_SP_GS_PVT_MEM_PARAM_HWSTACKSIZEPERTHREAD__SHIFT) & A6XX_SP_GS_PVT_MEM_PARAM_HWSTACKSIZEPERTHREAD__MASK;
+}
+
+#define REG_A6XX_SP_GS_PVT_MEM_ADDR                            0x0000a890
+#define A6XX_SP_GS_PVT_MEM_ADDR__MASK                          0xffffffff
+#define A6XX_SP_GS_PVT_MEM_ADDR__SHIFT                         0
+static inline uint32_t A6XX_SP_GS_PVT_MEM_ADDR(uint32_t val)
+{
+       return ((val) << A6XX_SP_GS_PVT_MEM_ADDR__SHIFT) & A6XX_SP_GS_PVT_MEM_ADDR__MASK;
+}
+
+#define REG_A6XX_SP_GS_PVT_MEM_SIZE                            0x0000a892
+#define A6XX_SP_GS_PVT_MEM_SIZE_TOTALPVTMEMSIZE__MASK          0x0003ffff
+#define A6XX_SP_GS_PVT_MEM_SIZE_TOTALPVTMEMSIZE__SHIFT         0
+static inline uint32_t A6XX_SP_GS_PVT_MEM_SIZE_TOTALPVTMEMSIZE(uint32_t val)
+{
+       return ((val >> 12) << A6XX_SP_GS_PVT_MEM_SIZE_TOTALPVTMEMSIZE__SHIFT) & A6XX_SP_GS_PVT_MEM_SIZE_TOTALPVTMEMSIZE__MASK;
+}
+#define A6XX_SP_GS_PVT_MEM_SIZE_PERWAVEMEMLAYOUT               0x80000000
 
 #define REG_A6XX_SP_GS_TEX_COUNT                               0x0000a893
 
@@ -6027,7 +5549,7 @@ static inline uint32_t A6XX_SP_GS_CONFIG_NSAMP(uint32_t val)
 {
        return ((val) << A6XX_SP_GS_CONFIG_NSAMP__SHIFT) & A6XX_SP_GS_CONFIG_NSAMP__MASK;
 }
-#define A6XX_SP_GS_CONFIG_NIBO__MASK                           0x3fc00000
+#define A6XX_SP_GS_CONFIG_NIBO__MASK                           0x1fc00000
 #define A6XX_SP_GS_CONFIG_NIBO__SHIFT                          22
 static inline uint32_t A6XX_SP_GS_CONFIG_NIBO(uint32_t val)
 {
@@ -6036,39 +5558,104 @@ static inline uint32_t A6XX_SP_GS_CONFIG_NIBO(uint32_t val)
 
 #define REG_A6XX_SP_GS_INSTRLEN                                        0x0000a895
 
-#define REG_A6XX_SP_VS_TEX_SAMP_LO                             0x0000a8a0
-
-#define REG_A6XX_SP_VS_TEX_SAMP_HI                             0x0000a8a1
-
-#define REG_A6XX_SP_HS_TEX_SAMP_LO                             0x0000a8a2
-
-#define REG_A6XX_SP_HS_TEX_SAMP_HI                             0x0000a8a3
-
-#define REG_A6XX_SP_DS_TEX_SAMP_LO                             0x0000a8a4
-
-#define REG_A6XX_SP_DS_TEX_SAMP_HI                             0x0000a8a5
-
-#define REG_A6XX_SP_GS_TEX_SAMP_LO                             0x0000a8a6
-
-#define REG_A6XX_SP_GS_TEX_SAMP_HI                             0x0000a8a7
+#define REG_A6XX_SP_GS_PVT_MEM_HW_STACK_OFFSET                 0x0000a896
+#define A6XX_SP_GS_PVT_MEM_HW_STACK_OFFSET__MASK               0x0007ffff
+#define A6XX_SP_GS_PVT_MEM_HW_STACK_OFFSET__SHIFT              0
+static inline uint32_t A6XX_SP_GS_PVT_MEM_HW_STACK_OFFSET(uint32_t val)
+{
+       return ((val >> 11) << A6XX_SP_GS_PVT_MEM_HW_STACK_OFFSET__SHIFT) & A6XX_SP_GS_PVT_MEM_HW_STACK_OFFSET__MASK;
+}
 
-#define REG_A6XX_SP_VS_TEX_CONST_LO                            0x0000a8a8
+#define REG_A6XX_SP_VS_TEX_SAMP                                        0x0000a8a0
+#define A6XX_SP_VS_TEX_SAMP__MASK                              0xffffffff
+#define A6XX_SP_VS_TEX_SAMP__SHIFT                             0
+static inline uint32_t A6XX_SP_VS_TEX_SAMP(uint32_t val)
+{
+       return ((val) << A6XX_SP_VS_TEX_SAMP__SHIFT) & A6XX_SP_VS_TEX_SAMP__MASK;
+}
 
-#define REG_A6XX_SP_VS_TEX_CONST_HI                            0x0000a8a9
+#define REG_A6XX_SP_HS_TEX_SAMP                                        0x0000a8a2
+#define A6XX_SP_HS_TEX_SAMP__MASK                              0xffffffff
+#define A6XX_SP_HS_TEX_SAMP__SHIFT                             0
+static inline uint32_t A6XX_SP_HS_TEX_SAMP(uint32_t val)
+{
+       return ((val) << A6XX_SP_HS_TEX_SAMP__SHIFT) & A6XX_SP_HS_TEX_SAMP__MASK;
+}
 
-#define REG_A6XX_SP_HS_TEX_CONST_LO                            0x0000a8aa
+#define REG_A6XX_SP_DS_TEX_SAMP                                        0x0000a8a4
+#define A6XX_SP_DS_TEX_SAMP__MASK                              0xffffffff
+#define A6XX_SP_DS_TEX_SAMP__SHIFT                             0
+static inline uint32_t A6XX_SP_DS_TEX_SAMP(uint32_t val)
+{
+       return ((val) << A6XX_SP_DS_TEX_SAMP__SHIFT) & A6XX_SP_DS_TEX_SAMP__MASK;
+}
 
-#define REG_A6XX_SP_HS_TEX_CONST_HI                            0x0000a8ab
+#define REG_A6XX_SP_GS_TEX_SAMP                                        0x0000a8a6
+#define A6XX_SP_GS_TEX_SAMP__MASK                              0xffffffff
+#define A6XX_SP_GS_TEX_SAMP__SHIFT                             0
+static inline uint32_t A6XX_SP_GS_TEX_SAMP(uint32_t val)
+{
+       return ((val) << A6XX_SP_GS_TEX_SAMP__SHIFT) & A6XX_SP_GS_TEX_SAMP__MASK;
+}
 
-#define REG_A6XX_SP_DS_TEX_CONST_LO                            0x0000a8ac
+#define REG_A6XX_SP_VS_TEX_CONST                               0x0000a8a8
+#define A6XX_SP_VS_TEX_CONST__MASK                             0xffffffff
+#define A6XX_SP_VS_TEX_CONST__SHIFT                            0
+static inline uint32_t A6XX_SP_VS_TEX_CONST(uint32_t val)
+{
+       return ((val) << A6XX_SP_VS_TEX_CONST__SHIFT) & A6XX_SP_VS_TEX_CONST__MASK;
+}
 
-#define REG_A6XX_SP_DS_TEX_CONST_HI                            0x0000a8ad
+#define REG_A6XX_SP_HS_TEX_CONST                               0x0000a8aa
+#define A6XX_SP_HS_TEX_CONST__MASK                             0xffffffff
+#define A6XX_SP_HS_TEX_CONST__SHIFT                            0
+static inline uint32_t A6XX_SP_HS_TEX_CONST(uint32_t val)
+{
+       return ((val) << A6XX_SP_HS_TEX_CONST__SHIFT) & A6XX_SP_HS_TEX_CONST__MASK;
+}
 
-#define REG_A6XX_SP_GS_TEX_CONST_LO                            0x0000a8ae
+#define REG_A6XX_SP_DS_TEX_CONST                               0x0000a8ac
+#define A6XX_SP_DS_TEX_CONST__MASK                             0xffffffff
+#define A6XX_SP_DS_TEX_CONST__SHIFT                            0
+static inline uint32_t A6XX_SP_DS_TEX_CONST(uint32_t val)
+{
+       return ((val) << A6XX_SP_DS_TEX_CONST__SHIFT) & A6XX_SP_DS_TEX_CONST__MASK;
+}
 
-#define REG_A6XX_SP_GS_TEX_CONST_HI                            0x0000a8af
+#define REG_A6XX_SP_GS_TEX_CONST                               0x0000a8ae
+#define A6XX_SP_GS_TEX_CONST__MASK                             0xffffffff
+#define A6XX_SP_GS_TEX_CONST__SHIFT                            0
+static inline uint32_t A6XX_SP_GS_TEX_CONST(uint32_t val)
+{
+       return ((val) << A6XX_SP_GS_TEX_CONST__SHIFT) & A6XX_SP_GS_TEX_CONST__MASK;
+}
 
 #define REG_A6XX_SP_FS_CTRL_REG0                               0x0000a980
+#define A6XX_SP_FS_CTRL_REG0_THREADSIZE__MASK                  0x00100000
+#define A6XX_SP_FS_CTRL_REG0_THREADSIZE__SHIFT                 20
+static inline uint32_t A6XX_SP_FS_CTRL_REG0_THREADSIZE(enum a6xx_threadsize val)
+{
+       return ((val) << A6XX_SP_FS_CTRL_REG0_THREADSIZE__SHIFT) & A6XX_SP_FS_CTRL_REG0_THREADSIZE__MASK;
+}
+#define A6XX_SP_FS_CTRL_REG0_UNK21                             0x00200000
+#define A6XX_SP_FS_CTRL_REG0_VARYING                           0x00400000
+#define A6XX_SP_FS_CTRL_REG0_DIFF_FINE                         0x00800000
+#define A6XX_SP_FS_CTRL_REG0_UNK24                             0x01000000
+#define A6XX_SP_FS_CTRL_REG0_UNK25                             0x02000000
+#define A6XX_SP_FS_CTRL_REG0_PIXLODENABLE                      0x04000000
+#define A6XX_SP_FS_CTRL_REG0_UNK27__MASK                       0x18000000
+#define A6XX_SP_FS_CTRL_REG0_UNK27__SHIFT                      27
+static inline uint32_t A6XX_SP_FS_CTRL_REG0_UNK27(uint32_t val)
+{
+       return ((val) << A6XX_SP_FS_CTRL_REG0_UNK27__SHIFT) & A6XX_SP_FS_CTRL_REG0_UNK27__MASK;
+}
+#define A6XX_SP_FS_CTRL_REG0_MERGEDREGS                                0x80000000
+#define A6XX_SP_FS_CTRL_REG0_THREADMODE__MASK                  0x00000001
+#define A6XX_SP_FS_CTRL_REG0_THREADMODE__SHIFT                 0
+static inline uint32_t A6XX_SP_FS_CTRL_REG0_THREADMODE(enum a3xx_threadmode val)
+{
+       return ((val) << A6XX_SP_FS_CTRL_REG0_THREADMODE__SHIFT) & A6XX_SP_FS_CTRL_REG0_THREADMODE__MASK;
+}
 #define A6XX_SP_FS_CTRL_REG0_HALFREGFOOTPRINT__MASK            0x0000007e
 #define A6XX_SP_FS_CTRL_REG0_HALFREGFOOTPRINT__SHIFT           1
 static inline uint32_t A6XX_SP_FS_CTRL_REG0_HALFREGFOOTPRINT(uint32_t val)
@@ -6081,33 +5668,64 @@ static inline uint32_t A6XX_SP_FS_CTRL_REG0_FULLREGFOOTPRINT(uint32_t val)
 {
        return ((val) << A6XX_SP_FS_CTRL_REG0_FULLREGFOOTPRINT__SHIFT) & A6XX_SP_FS_CTRL_REG0_FULLREGFOOTPRINT__MASK;
 }
+#define A6XX_SP_FS_CTRL_REG0_UNK13                             0x00002000
 #define A6XX_SP_FS_CTRL_REG0_BRANCHSTACK__MASK                 0x000fc000
 #define A6XX_SP_FS_CTRL_REG0_BRANCHSTACK__SHIFT                        14
 static inline uint32_t A6XX_SP_FS_CTRL_REG0_BRANCHSTACK(uint32_t val)
 {
        return ((val) << A6XX_SP_FS_CTRL_REG0_BRANCHSTACK__SHIFT) & A6XX_SP_FS_CTRL_REG0_BRANCHSTACK__MASK;
 }
-#define A6XX_SP_FS_CTRL_REG0_THREADSIZE__MASK                  0x00100000
-#define A6XX_SP_FS_CTRL_REG0_THREADSIZE__SHIFT                 20
-static inline uint32_t A6XX_SP_FS_CTRL_REG0_THREADSIZE(enum a3xx_threadsize val)
-{
-       return ((val) << A6XX_SP_FS_CTRL_REG0_THREADSIZE__SHIFT) & A6XX_SP_FS_CTRL_REG0_THREADSIZE__MASK;
-}
-#define A6XX_SP_FS_CTRL_REG0_VARYING                           0x00400000
-#define A6XX_SP_FS_CTRL_REG0_DIFF_FINE                         0x00800000
-#define A6XX_SP_FS_CTRL_REG0_PIXLODENABLE                      0x04000000
-#define A6XX_SP_FS_CTRL_REG0_MERGEDREGS                                0x80000000
 
 #define REG_A6XX_SP_FS_BRANCH_COND                             0x0000a981
 
-#define REG_A6XX_SP_UNKNOWN_A982                               0x0000a982
+#define REG_A6XX_SP_FS_OBJ_FIRST_EXEC_OFFSET                   0x0000a982
+
+#define REG_A6XX_SP_FS_OBJ_START                               0x0000a983
+#define A6XX_SP_FS_OBJ_START__MASK                             0xffffffff
+#define A6XX_SP_FS_OBJ_START__SHIFT                            0
+static inline uint32_t A6XX_SP_FS_OBJ_START(uint32_t val)
+{
+       return ((val) << A6XX_SP_FS_OBJ_START__SHIFT) & A6XX_SP_FS_OBJ_START__MASK;
+}
+
+#define REG_A6XX_SP_FS_PVT_MEM_PARAM                           0x0000a985
+#define A6XX_SP_FS_PVT_MEM_PARAM_MEMSIZEPERITEM__MASK          0x000000ff
+#define A6XX_SP_FS_PVT_MEM_PARAM_MEMSIZEPERITEM__SHIFT         0
+static inline uint32_t A6XX_SP_FS_PVT_MEM_PARAM_MEMSIZEPERITEM(uint32_t val)
+{
+       return ((val >> 9) << A6XX_SP_FS_PVT_MEM_PARAM_MEMSIZEPERITEM__SHIFT) & A6XX_SP_FS_PVT_MEM_PARAM_MEMSIZEPERITEM__MASK;
+}
+#define A6XX_SP_FS_PVT_MEM_PARAM_HWSTACKSIZEPERTHREAD__MASK    0xff000000
+#define A6XX_SP_FS_PVT_MEM_PARAM_HWSTACKSIZEPERTHREAD__SHIFT   24
+static inline uint32_t A6XX_SP_FS_PVT_MEM_PARAM_HWSTACKSIZEPERTHREAD(uint32_t val)
+{
+       return ((val) << A6XX_SP_FS_PVT_MEM_PARAM_HWSTACKSIZEPERTHREAD__SHIFT) & A6XX_SP_FS_PVT_MEM_PARAM_HWSTACKSIZEPERTHREAD__MASK;
+}
 
-#define REG_A6XX_SP_FS_OBJ_START_LO                            0x0000a983
+#define REG_A6XX_SP_FS_PVT_MEM_ADDR                            0x0000a986
+#define A6XX_SP_FS_PVT_MEM_ADDR__MASK                          0xffffffff
+#define A6XX_SP_FS_PVT_MEM_ADDR__SHIFT                         0
+static inline uint32_t A6XX_SP_FS_PVT_MEM_ADDR(uint32_t val)
+{
+       return ((val) << A6XX_SP_FS_PVT_MEM_ADDR__SHIFT) & A6XX_SP_FS_PVT_MEM_ADDR__MASK;
+}
 
-#define REG_A6XX_SP_FS_OBJ_START_HI                            0x0000a984
+#define REG_A6XX_SP_FS_PVT_MEM_SIZE                            0x0000a988
+#define A6XX_SP_FS_PVT_MEM_SIZE_TOTALPVTMEMSIZE__MASK          0x0003ffff
+#define A6XX_SP_FS_PVT_MEM_SIZE_TOTALPVTMEMSIZE__SHIFT         0
+static inline uint32_t A6XX_SP_FS_PVT_MEM_SIZE_TOTALPVTMEMSIZE(uint32_t val)
+{
+       return ((val >> 12) << A6XX_SP_FS_PVT_MEM_SIZE_TOTALPVTMEMSIZE__SHIFT) & A6XX_SP_FS_PVT_MEM_SIZE_TOTALPVTMEMSIZE__MASK;
+}
+#define A6XX_SP_FS_PVT_MEM_SIZE_PERWAVEMEMLAYOUT               0x80000000
 
 #define REG_A6XX_SP_BLEND_CNTL                                 0x0000a989
-#define A6XX_SP_BLEND_CNTL_ENABLED                             0x00000001
+#define A6XX_SP_BLEND_CNTL_ENABLE_BLEND__MASK                  0x000000ff
+#define A6XX_SP_BLEND_CNTL_ENABLE_BLEND__SHIFT                 0
+static inline uint32_t A6XX_SP_BLEND_CNTL_ENABLE_BLEND(uint32_t val)
+{
+       return ((val) << A6XX_SP_BLEND_CNTL_ENABLE_BLEND__SHIFT) & A6XX_SP_BLEND_CNTL_ENABLE_BLEND__MASK;
+}
 #define A6XX_SP_BLEND_CNTL_UNK8                                        0x00000100
 #define A6XX_SP_BLEND_CNTL_DUAL_COLOR_IN_ENABLE                        0x00000200
 #define A6XX_SP_BLEND_CNTL_ALPHA_TO_COVERAGE                   0x00000400
@@ -6201,6 +5819,17 @@ static inline uint32_t A6XX_SP_FS_OUTPUT_CNTL1_MRT(uint32_t val)
        return ((val) << A6XX_SP_FS_OUTPUT_CNTL1_MRT__SHIFT) & A6XX_SP_FS_OUTPUT_CNTL1_MRT__MASK;
 }
 
+static inline uint32_t REG_A6XX_SP_FS_OUTPUT(uint32_t i0) { return 0x0000a98e + 0x1*i0; }
+
+static inline uint32_t REG_A6XX_SP_FS_OUTPUT_REG(uint32_t i0) { return 0x0000a98e + 0x1*i0; }
+#define A6XX_SP_FS_OUTPUT_REG_REGID__MASK                      0x000000ff
+#define A6XX_SP_FS_OUTPUT_REG_REGID__SHIFT                     0
+static inline uint32_t A6XX_SP_FS_OUTPUT_REG_REGID(uint32_t val)
+{
+       return ((val) << A6XX_SP_FS_OUTPUT_REG_REGID__SHIFT) & A6XX_SP_FS_OUTPUT_REG_REGID__MASK;
+}
+#define A6XX_SP_FS_OUTPUT_REG_HALF_PRECISION                   0x00000100
+
 static inline uint32_t REG_A6XX_SP_FS_MRT(uint32_t i0) { return 0x0000a996 + 0x1*i0; }
 
 static inline uint32_t REG_A6XX_SP_FS_MRT_REG(uint32_t i0) { return 0x0000a996 + 0x1*i0; }
@@ -6212,6 +5841,7 @@ static inline uint32_t A6XX_SP_FS_MRT_REG_COLOR_FORMAT(enum a6xx_format val)
 }
 #define A6XX_SP_FS_MRT_REG_COLOR_SINT                          0x00000100
 #define A6XX_SP_FS_MRT_REG_COLOR_UINT                          0x00000200
+#define A6XX_SP_FS_MRT_REG_UNK10                               0x00000400
 
 #define REG_A6XX_SP_FS_PREFETCH_CNTL                           0x0000a99e
 #define A6XX_SP_FS_PREFETCH_CNTL_COUNT__MASK                   0x00000007
@@ -6227,6 +5857,12 @@ static inline uint32_t A6XX_SP_FS_PREFETCH_CNTL_UNK4(uint32_t val)
 {
        return ((val) << A6XX_SP_FS_PREFETCH_CNTL_UNK4__SHIFT) & A6XX_SP_FS_PREFETCH_CNTL_UNK4__MASK;
 }
+#define A6XX_SP_FS_PREFETCH_CNTL_UNK12__MASK                   0x00007000
+#define A6XX_SP_FS_PREFETCH_CNTL_UNK12__SHIFT                  12
+static inline uint32_t A6XX_SP_FS_PREFETCH_CNTL_UNK12(uint32_t val)
+{
+       return ((val) << A6XX_SP_FS_PREFETCH_CNTL_UNK12__SHIFT) & A6XX_SP_FS_PREFETCH_CNTL_UNK12__MASK;
+}
 
 static inline uint32_t REG_A6XX_SP_FS_PREFETCH(uint32_t i0) { return 0x0000a99f + 0x1*i0; }
 
@@ -6272,13 +5908,13 @@ static inline uint32_t A6XX_SP_FS_PREFETCH_CMD_CMD(uint32_t val)
 static inline uint32_t REG_A6XX_SP_FS_BINDLESS_PREFETCH(uint32_t i0) { return 0x0000a9a3 + 0x1*i0; }
 
 static inline uint32_t REG_A6XX_SP_FS_BINDLESS_PREFETCH_CMD(uint32_t i0) { return 0x0000a9a3 + 0x1*i0; }
-#define A6XX_SP_FS_BINDLESS_PREFETCH_CMD_SAMP_ID__MASK         0x000000ff
+#define A6XX_SP_FS_BINDLESS_PREFETCH_CMD_SAMP_ID__MASK         0x0000ffff
 #define A6XX_SP_FS_BINDLESS_PREFETCH_CMD_SAMP_ID__SHIFT                0
 static inline uint32_t A6XX_SP_FS_BINDLESS_PREFETCH_CMD_SAMP_ID(uint32_t val)
 {
        return ((val) << A6XX_SP_FS_BINDLESS_PREFETCH_CMD_SAMP_ID__SHIFT) & A6XX_SP_FS_BINDLESS_PREFETCH_CMD_SAMP_ID__MASK;
 }
-#define A6XX_SP_FS_BINDLESS_PREFETCH_CMD_TEX_ID__MASK          0x00ff0000
+#define A6XX_SP_FS_BINDLESS_PREFETCH_CMD_TEX_ID__MASK          0xffff0000
 #define A6XX_SP_FS_BINDLESS_PREFETCH_CMD_TEX_ID__SHIFT         16
 static inline uint32_t A6XX_SP_FS_BINDLESS_PREFETCH_CMD_TEX_ID(uint32_t val)
 {
@@ -6289,50 +5925,31 @@ static inline uint32_t A6XX_SP_FS_BINDLESS_PREFETCH_CMD_TEX_ID(uint32_t val)
 
 #define REG_A6XX_SP_UNKNOWN_A9A8                               0x0000a9a8
 
-#define REG_A6XX_SP_CS_UNKNOWN_A9B1                            0x0000a9b1
-#define A6XX_SP_CS_UNKNOWN_A9B1_SHARED_SIZE_2K__MASK           0x00000001
-#define A6XX_SP_CS_UNKNOWN_A9B1_SHARED_SIZE_2K__SHIFT          0
-static inline uint32_t A6XX_SP_CS_UNKNOWN_A9B1_SHARED_SIZE_2K(uint32_t val)
+#define REG_A6XX_SP_FS_PVT_MEM_HW_STACK_OFFSET                 0x0000a9a9
+#define A6XX_SP_FS_PVT_MEM_HW_STACK_OFFSET__MASK               0x0007ffff
+#define A6XX_SP_FS_PVT_MEM_HW_STACK_OFFSET__SHIFT              0
+static inline uint32_t A6XX_SP_FS_PVT_MEM_HW_STACK_OFFSET(uint32_t val)
 {
-       return ((val) << A6XX_SP_CS_UNKNOWN_A9B1_SHARED_SIZE_2K__SHIFT) & A6XX_SP_CS_UNKNOWN_A9B1_SHARED_SIZE_2K__MASK;
+       return ((val >> 11) << A6XX_SP_FS_PVT_MEM_HW_STACK_OFFSET__SHIFT) & A6XX_SP_FS_PVT_MEM_HW_STACK_OFFSET__MASK;
 }
 
-#define REG_A6XX_SP_CS_UNKNOWN_A9B3                            0x0000a9b3
-
-#define REG_A6XX_SP_CS_TEX_COUNT                               0x0000a9ba
-
-#define REG_A6XX_SP_FS_TEX_SAMP_LO                             0x0000a9e0
-
-#define REG_A6XX_SP_FS_TEX_SAMP_HI                             0x0000a9e1
-
-#define REG_A6XX_SP_CS_TEX_SAMP_LO                             0x0000a9e2
-
-#define REG_A6XX_SP_CS_TEX_SAMP_HI                             0x0000a9e3
-
-#define REG_A6XX_SP_FS_TEX_CONST_LO                            0x0000a9e4
-
-#define REG_A6XX_SP_FS_TEX_CONST_HI                            0x0000a9e5
-
-#define REG_A6XX_SP_CS_TEX_CONST_LO                            0x0000a9e6
-
-#define REG_A6XX_SP_CS_TEX_CONST_HI                            0x0000a9e7
-
-static inline uint32_t REG_A6XX_SP_CS_BINDLESS_BASE(uint32_t i0) { return 0x0000a9e8 + 0x2*i0; }
-
-static inline uint32_t REG_A6XX_SP_CS_BINDLESS_BASE_ADDR(uint32_t i0) { return 0x0000a9e8 + 0x2*i0; }
-
-static inline uint32_t REG_A6XX_SP_FS_OUTPUT(uint32_t i0) { return 0x0000a98e + 0x1*i0; }
-
-static inline uint32_t REG_A6XX_SP_FS_OUTPUT_REG(uint32_t i0) { return 0x0000a98e + 0x1*i0; }
-#define A6XX_SP_FS_OUTPUT_REG_REGID__MASK                      0x000000ff
-#define A6XX_SP_FS_OUTPUT_REG_REGID__SHIFT                     0
-static inline uint32_t A6XX_SP_FS_OUTPUT_REG_REGID(uint32_t val)
+#define REG_A6XX_SP_CS_CTRL_REG0                               0x0000a9b0
+#define A6XX_SP_CS_CTRL_REG0_THREADSIZE__MASK                  0x00100000
+#define A6XX_SP_CS_CTRL_REG0_THREADSIZE__SHIFT                 20
+static inline uint32_t A6XX_SP_CS_CTRL_REG0_THREADSIZE(enum a6xx_threadsize val)
 {
-       return ((val) << A6XX_SP_FS_OUTPUT_REG_REGID__SHIFT) & A6XX_SP_FS_OUTPUT_REG_REGID__MASK;
+       return ((val) << A6XX_SP_CS_CTRL_REG0_THREADSIZE__SHIFT) & A6XX_SP_CS_CTRL_REG0_THREADSIZE__MASK;
+}
+#define A6XX_SP_CS_CTRL_REG0_UNK21                             0x00200000
+#define A6XX_SP_CS_CTRL_REG0_UNK22                             0x00400000
+#define A6XX_SP_CS_CTRL_REG0_SEPARATEPROLOG                    0x00800000
+#define A6XX_SP_CS_CTRL_REG0_MERGEDREGS                                0x80000000
+#define A6XX_SP_CS_CTRL_REG0_THREADMODE__MASK                  0x00000001
+#define A6XX_SP_CS_CTRL_REG0_THREADMODE__SHIFT                 0
+static inline uint32_t A6XX_SP_CS_CTRL_REG0_THREADMODE(enum a3xx_threadmode val)
+{
+       return ((val) << A6XX_SP_CS_CTRL_REG0_THREADMODE__SHIFT) & A6XX_SP_CS_CTRL_REG0_THREADMODE__MASK;
 }
-#define A6XX_SP_FS_OUTPUT_REG_HALF_PRECISION                   0x00000100
-
-#define REG_A6XX_SP_CS_CTRL_REG0                               0x0000a9b0
 #define A6XX_SP_CS_CTRL_REG0_HALFREGFOOTPRINT__MASK            0x0000007e
 #define A6XX_SP_CS_CTRL_REG0_HALFREGFOOTPRINT__SHIFT           1
 static inline uint32_t A6XX_SP_CS_CTRL_REG0_HALFREGFOOTPRINT(uint32_t val)
@@ -6345,26 +5962,68 @@ static inline uint32_t A6XX_SP_CS_CTRL_REG0_FULLREGFOOTPRINT(uint32_t val)
 {
        return ((val) << A6XX_SP_CS_CTRL_REG0_FULLREGFOOTPRINT__SHIFT) & A6XX_SP_CS_CTRL_REG0_FULLREGFOOTPRINT__MASK;
 }
+#define A6XX_SP_CS_CTRL_REG0_UNK13                             0x00002000
 #define A6XX_SP_CS_CTRL_REG0_BRANCHSTACK__MASK                 0x000fc000
 #define A6XX_SP_CS_CTRL_REG0_BRANCHSTACK__SHIFT                        14
 static inline uint32_t A6XX_SP_CS_CTRL_REG0_BRANCHSTACK(uint32_t val)
 {
        return ((val) << A6XX_SP_CS_CTRL_REG0_BRANCHSTACK__SHIFT) & A6XX_SP_CS_CTRL_REG0_BRANCHSTACK__MASK;
 }
-#define A6XX_SP_CS_CTRL_REG0_THREADSIZE__MASK                  0x00100000
-#define A6XX_SP_CS_CTRL_REG0_THREADSIZE__SHIFT                 20
-static inline uint32_t A6XX_SP_CS_CTRL_REG0_THREADSIZE(enum a3xx_threadsize val)
+
+#define REG_A6XX_SP_CS_UNKNOWN_A9B1                            0x0000a9b1
+#define A6XX_SP_CS_UNKNOWN_A9B1_SHARED_SIZE__MASK              0x0000001f
+#define A6XX_SP_CS_UNKNOWN_A9B1_SHARED_SIZE__SHIFT             0
+static inline uint32_t A6XX_SP_CS_UNKNOWN_A9B1_SHARED_SIZE(uint32_t val)
 {
-       return ((val) << A6XX_SP_CS_CTRL_REG0_THREADSIZE__SHIFT) & A6XX_SP_CS_CTRL_REG0_THREADSIZE__MASK;
+       return ((val) << A6XX_SP_CS_UNKNOWN_A9B1_SHARED_SIZE__SHIFT) & A6XX_SP_CS_UNKNOWN_A9B1_SHARED_SIZE__MASK;
+}
+#define A6XX_SP_CS_UNKNOWN_A9B1_UNK5                           0x00000020
+#define A6XX_SP_CS_UNKNOWN_A9B1_UNK6                           0x00000040
+
+#define REG_A6XX_SP_CS_BRANCH_COND                             0x0000a9b2
+
+#define REG_A6XX_SP_CS_OBJ_FIRST_EXEC_OFFSET                   0x0000a9b3
+
+#define REG_A6XX_SP_CS_OBJ_START                               0x0000a9b4
+#define A6XX_SP_CS_OBJ_START__MASK                             0xffffffff
+#define A6XX_SP_CS_OBJ_START__SHIFT                            0
+static inline uint32_t A6XX_SP_CS_OBJ_START(uint32_t val)
+{
+       return ((val) << A6XX_SP_CS_OBJ_START__SHIFT) & A6XX_SP_CS_OBJ_START__MASK;
+}
+
+#define REG_A6XX_SP_CS_PVT_MEM_PARAM                           0x0000a9b6
+#define A6XX_SP_CS_PVT_MEM_PARAM_MEMSIZEPERITEM__MASK          0x000000ff
+#define A6XX_SP_CS_PVT_MEM_PARAM_MEMSIZEPERITEM__SHIFT         0
+static inline uint32_t A6XX_SP_CS_PVT_MEM_PARAM_MEMSIZEPERITEM(uint32_t val)
+{
+       return ((val >> 9) << A6XX_SP_CS_PVT_MEM_PARAM_MEMSIZEPERITEM__SHIFT) & A6XX_SP_CS_PVT_MEM_PARAM_MEMSIZEPERITEM__MASK;
+}
+#define A6XX_SP_CS_PVT_MEM_PARAM_HWSTACKSIZEPERTHREAD__MASK    0xff000000
+#define A6XX_SP_CS_PVT_MEM_PARAM_HWSTACKSIZEPERTHREAD__SHIFT   24
+static inline uint32_t A6XX_SP_CS_PVT_MEM_PARAM_HWSTACKSIZEPERTHREAD(uint32_t val)
+{
+       return ((val) << A6XX_SP_CS_PVT_MEM_PARAM_HWSTACKSIZEPERTHREAD__SHIFT) & A6XX_SP_CS_PVT_MEM_PARAM_HWSTACKSIZEPERTHREAD__MASK;
+}
+
+#define REG_A6XX_SP_CS_PVT_MEM_ADDR                            0x0000a9b7
+#define A6XX_SP_CS_PVT_MEM_ADDR__MASK                          0xffffffff
+#define A6XX_SP_CS_PVT_MEM_ADDR__SHIFT                         0
+static inline uint32_t A6XX_SP_CS_PVT_MEM_ADDR(uint32_t val)
+{
+       return ((val) << A6XX_SP_CS_PVT_MEM_ADDR__SHIFT) & A6XX_SP_CS_PVT_MEM_ADDR__MASK;
 }
-#define A6XX_SP_CS_CTRL_REG0_VARYING                           0x00400000
-#define A6XX_SP_CS_CTRL_REG0_DIFF_FINE                         0x00800000
-#define A6XX_SP_CS_CTRL_REG0_PIXLODENABLE                      0x04000000
-#define A6XX_SP_CS_CTRL_REG0_MERGEDREGS                                0x80000000
 
-#define REG_A6XX_SP_CS_OBJ_START_LO                            0x0000a9b4
+#define REG_A6XX_SP_CS_PVT_MEM_SIZE                            0x0000a9b9
+#define A6XX_SP_CS_PVT_MEM_SIZE_TOTALPVTMEMSIZE__MASK          0x0003ffff
+#define A6XX_SP_CS_PVT_MEM_SIZE_TOTALPVTMEMSIZE__SHIFT         0
+static inline uint32_t A6XX_SP_CS_PVT_MEM_SIZE_TOTALPVTMEMSIZE(uint32_t val)
+{
+       return ((val >> 12) << A6XX_SP_CS_PVT_MEM_SIZE_TOTALPVTMEMSIZE__SHIFT) & A6XX_SP_CS_PVT_MEM_SIZE_TOTALPVTMEMSIZE__MASK;
+}
+#define A6XX_SP_CS_PVT_MEM_SIZE_PERWAVEMEMLAYOUT               0x80000000
 
-#define REG_A6XX_SP_CS_OBJ_START_HI                            0x0000a9b5
+#define REG_A6XX_SP_CS_TEX_COUNT                               0x0000a9ba
 
 #define REG_A6XX_SP_CS_CONFIG                                  0x0000a9bb
 #define A6XX_SP_CS_CONFIG_BINDLESS_TEX                         0x00000001
@@ -6384,7 +6043,7 @@ static inline uint32_t A6XX_SP_CS_CONFIG_NSAMP(uint32_t val)
 {
        return ((val) << A6XX_SP_CS_CONFIG_NSAMP__SHIFT) & A6XX_SP_CS_CONFIG_NSAMP__MASK;
 }
-#define A6XX_SP_CS_CONFIG_NIBO__MASK                           0x3fc00000
+#define A6XX_SP_CS_CONFIG_NIBO__MASK                           0x1fc00000
 #define A6XX_SP_CS_CONFIG_NIBO__SHIFT                          22
 static inline uint32_t A6XX_SP_CS_CONFIG_NIBO(uint32_t val)
 {
@@ -6393,13 +6052,65 @@ static inline uint32_t A6XX_SP_CS_CONFIG_NIBO(uint32_t val)
 
 #define REG_A6XX_SP_CS_INSTRLEN                                        0x0000a9bc
 
-#define REG_A6XX_SP_CS_IBO_LO                                  0x0000a9f2
+#define REG_A6XX_SP_CS_PVT_MEM_HW_STACK_OFFSET                 0x0000a9bd
+#define A6XX_SP_CS_PVT_MEM_HW_STACK_OFFSET__MASK               0x0007ffff
+#define A6XX_SP_CS_PVT_MEM_HW_STACK_OFFSET__SHIFT              0
+static inline uint32_t A6XX_SP_CS_PVT_MEM_HW_STACK_OFFSET(uint32_t val)
+{
+       return ((val >> 11) << A6XX_SP_CS_PVT_MEM_HW_STACK_OFFSET__SHIFT) & A6XX_SP_CS_PVT_MEM_HW_STACK_OFFSET__MASK;
+}
+
+#define REG_A6XX_SP_FS_TEX_SAMP                                        0x0000a9e0
+#define A6XX_SP_FS_TEX_SAMP__MASK                              0xffffffff
+#define A6XX_SP_FS_TEX_SAMP__SHIFT                             0
+static inline uint32_t A6XX_SP_FS_TEX_SAMP(uint32_t val)
+{
+       return ((val) << A6XX_SP_FS_TEX_SAMP__SHIFT) & A6XX_SP_FS_TEX_SAMP__MASK;
+}
+
+#define REG_A6XX_SP_CS_TEX_SAMP                                        0x0000a9e2
+#define A6XX_SP_CS_TEX_SAMP__MASK                              0xffffffff
+#define A6XX_SP_CS_TEX_SAMP__SHIFT                             0
+static inline uint32_t A6XX_SP_CS_TEX_SAMP(uint32_t val)
+{
+       return ((val) << A6XX_SP_CS_TEX_SAMP__SHIFT) & A6XX_SP_CS_TEX_SAMP__MASK;
+}
+
+#define REG_A6XX_SP_FS_TEX_CONST                               0x0000a9e4
+#define A6XX_SP_FS_TEX_CONST__MASK                             0xffffffff
+#define A6XX_SP_FS_TEX_CONST__SHIFT                            0
+static inline uint32_t A6XX_SP_FS_TEX_CONST(uint32_t val)
+{
+       return ((val) << A6XX_SP_FS_TEX_CONST__SHIFT) & A6XX_SP_FS_TEX_CONST__MASK;
+}
+
+#define REG_A6XX_SP_CS_TEX_CONST                               0x0000a9e6
+#define A6XX_SP_CS_TEX_CONST__MASK                             0xffffffff
+#define A6XX_SP_CS_TEX_CONST__SHIFT                            0
+static inline uint32_t A6XX_SP_CS_TEX_CONST(uint32_t val)
+{
+       return ((val) << A6XX_SP_CS_TEX_CONST__SHIFT) & A6XX_SP_CS_TEX_CONST__MASK;
+}
+
+static inline uint32_t REG_A6XX_SP_CS_BINDLESS_BASE(uint32_t i0) { return 0x0000a9e8 + 0x2*i0; }
 
-#define REG_A6XX_SP_CS_IBO_HI                                  0x0000a9f3
+static inline uint32_t REG_A6XX_SP_CS_BINDLESS_BASE_ADDR(uint32_t i0) { return 0x0000a9e8 + 0x2*i0; }
+
+#define REG_A6XX_SP_CS_IBO                                     0x0000a9f2
+#define A6XX_SP_CS_IBO__MASK                                   0xffffffff
+#define A6XX_SP_CS_IBO__SHIFT                                  0
+static inline uint32_t A6XX_SP_CS_IBO(uint32_t val)
+{
+       return ((val) << A6XX_SP_CS_IBO__SHIFT) & A6XX_SP_CS_IBO__MASK;
+}
 
 #define REG_A6XX_SP_CS_IBO_COUNT                               0x0000aa00
 
-#define REG_A6XX_SP_UNKNOWN_AB00                               0x0000ab00
+#define REG_A6XX_SP_MODE_CONTROL                               0x0000ab00
+#define A6XX_SP_MODE_CONTROL_CONSTANT_DEMOTION_ENABLE          0x00000001
+#define A6XX_SP_MODE_CONTROL_UNK1                              0x00000002
+#define A6XX_SP_MODE_CONTROL_UNK2                              0x00000004
+#define A6XX_SP_MODE_CONTROL_SHARED_CONSTS_ENABLE              0x00000008
 
 #define REG_A6XX_SP_FS_CONFIG                                  0x0000ab04
 #define A6XX_SP_FS_CONFIG_BINDLESS_TEX                         0x00000001
@@ -6419,7 +6130,7 @@ static inline uint32_t A6XX_SP_FS_CONFIG_NSAMP(uint32_t val)
 {
        return ((val) << A6XX_SP_FS_CONFIG_NSAMP__SHIFT) & A6XX_SP_FS_CONFIG_NSAMP__MASK;
 }
-#define A6XX_SP_FS_CONFIG_NIBO__MASK                           0x3fc00000
+#define A6XX_SP_FS_CONFIG_NIBO__MASK                           0x1fc00000
 #define A6XX_SP_FS_CONFIG_NIBO__SHIFT                          22
 static inline uint32_t A6XX_SP_FS_CONFIG_NIBO(uint32_t val)
 {
@@ -6432,9 +6143,13 @@ static inline uint32_t REG_A6XX_SP_BINDLESS_BASE(uint32_t i0) { return 0x0000ab1
 
 static inline uint32_t REG_A6XX_SP_BINDLESS_BASE_ADDR(uint32_t i0) { return 0x0000ab10 + 0x2*i0; }
 
-#define REG_A6XX_SP_IBO_LO                                     0x0000ab1a
-
-#define REG_A6XX_SP_IBO_HI                                     0x0000ab1b
+#define REG_A6XX_SP_IBO                                                0x0000ab1a
+#define A6XX_SP_IBO__MASK                                      0xffffffff
+#define A6XX_SP_IBO__SHIFT                                     0
+static inline uint32_t A6XX_SP_IBO(uint32_t val)
+{
+       return ((val) << A6XX_SP_IBO__SHIFT) & A6XX_SP_IBO__MASK;
+}
 
 #define REG_A6XX_SP_IBO_COUNT                                  0x0000ab20
 
@@ -6458,18 +6173,41 @@ static inline uint32_t A6XX_SP_2D_DST_FORMAT_MASK(uint32_t val)
 
 #define REG_A6XX_SP_UNKNOWN_AE00                               0x0000ae00
 
+#define REG_A6XX_SP_ADDR_MODE_CNTL                             0x0000ae01
+
+#define REG_A6XX_SP_NC_MODE_CNTL                               0x0000ae02
+
 #define REG_A6XX_SP_UNKNOWN_AE03                               0x0000ae03
 
-#define REG_A6XX_SP_UNKNOWN_AE04                               0x0000ae04
+#define REG_A6XX_SP_FLOAT_CNTL                                 0x0000ae04
+#define A6XX_SP_FLOAT_CNTL_F16_NO_INF                          0x00000008
+
+#define REG_A6XX_SP_PERFCTR_ENABLE                             0x0000ae0f
+#define A6XX_SP_PERFCTR_ENABLE_VS                              0x00000001
+#define A6XX_SP_PERFCTR_ENABLE_HS                              0x00000002
+#define A6XX_SP_PERFCTR_ENABLE_DS                              0x00000004
+#define A6XX_SP_PERFCTR_ENABLE_GS                              0x00000008
+#define A6XX_SP_PERFCTR_ENABLE_FS                              0x00000010
+#define A6XX_SP_PERFCTR_ENABLE_CS                              0x00000020
 
-#define REG_A6XX_SP_UNKNOWN_AE0F                               0x0000ae0f
+static inline uint32_t REG_A6XX_SP_PERFCTR_SP_SEL(uint32_t i0) { return 0x0000ae10 + 0x1*i0; }
 
 #define REG_A6XX_SP_PS_TP_BORDER_COLOR_BASE_ADDR               0x0000b180
+#define A6XX_SP_PS_TP_BORDER_COLOR_BASE_ADDR__MASK             0xffffffff
+#define A6XX_SP_PS_TP_BORDER_COLOR_BASE_ADDR__SHIFT            0
+static inline uint32_t A6XX_SP_PS_TP_BORDER_COLOR_BASE_ADDR(uint32_t val)
+{
+       return ((val) << A6XX_SP_PS_TP_BORDER_COLOR_BASE_ADDR__SHIFT) & A6XX_SP_PS_TP_BORDER_COLOR_BASE_ADDR__MASK;
+}
 
 #define REG_A6XX_SP_UNKNOWN_B182                               0x0000b182
 
 #define REG_A6XX_SP_UNKNOWN_B183                               0x0000b183
 
+#define REG_A6XX_SP_UNKNOWN_B190                               0x0000b190
+
+#define REG_A6XX_SP_UNKNOWN_B191                               0x0000b191
+
 #define REG_A6XX_SP_TP_RAS_MSAA_CNTL                           0x0000b300
 #define A6XX_SP_TP_RAS_MSAA_CNTL_SAMPLES__MASK                 0x00000003
 #define A6XX_SP_TP_RAS_MSAA_CNTL_SAMPLES__SHIFT                        0
@@ -6477,6 +6215,12 @@ static inline uint32_t A6XX_SP_TP_RAS_MSAA_CNTL_SAMPLES(enum a3xx_msaa_samples v
 {
        return ((val) << A6XX_SP_TP_RAS_MSAA_CNTL_SAMPLES__SHIFT) & A6XX_SP_TP_RAS_MSAA_CNTL_SAMPLES__MASK;
 }
+#define A6XX_SP_TP_RAS_MSAA_CNTL_UNK2__MASK                    0x0000000c
+#define A6XX_SP_TP_RAS_MSAA_CNTL_UNK2__SHIFT                   2
+static inline uint32_t A6XX_SP_TP_RAS_MSAA_CNTL_UNK2(uint32_t val)
+{
+       return ((val) << A6XX_SP_TP_RAS_MSAA_CNTL_UNK2__SHIFT) & A6XX_SP_TP_RAS_MSAA_CNTL_UNK2__MASK;
+}
 
 #define REG_A6XX_SP_TP_DEST_MSAA_CNTL                          0x0000b301
 #define A6XX_SP_TP_DEST_MSAA_CNTL_SAMPLES__MASK                        0x00000003
@@ -6488,10 +6232,12 @@ static inline uint32_t A6XX_SP_TP_DEST_MSAA_CNTL_SAMPLES(enum a3xx_msaa_samples
 #define A6XX_SP_TP_DEST_MSAA_CNTL_MSAA_DISABLE                 0x00000004
 
 #define REG_A6XX_SP_TP_BORDER_COLOR_BASE_ADDR                  0x0000b302
-
-#define REG_A6XX_SP_TP_BORDER_COLOR_BASE_ADDR_LO               0x0000b302
-
-#define REG_A6XX_SP_TP_BORDER_COLOR_BASE_ADDR_HI               0x0000b303
+#define A6XX_SP_TP_BORDER_COLOR_BASE_ADDR__MASK                        0xffffffff
+#define A6XX_SP_TP_BORDER_COLOR_BASE_ADDR__SHIFT               0
+static inline uint32_t A6XX_SP_TP_BORDER_COLOR_BASE_ADDR(uint32_t val)
+{
+       return ((val) << A6XX_SP_TP_BORDER_COLOR_BASE_ADDR__SHIFT) & A6XX_SP_TP_BORDER_COLOR_BASE_ADDR__MASK;
+}
 
 #define REG_A6XX_SP_TP_SAMPLE_CONFIG                           0x0000b304
 #define A6XX_SP_TP_SAMPLE_CONFIG_UNK0                          0x00000001
@@ -6597,6 +6343,20 @@ static inline uint32_t A6XX_SP_TP_SAMPLE_LOCATION_1_SAMPLE_3_Y(float val)
        return ((((int32_t)(val * 1.0))) << A6XX_SP_TP_SAMPLE_LOCATION_1_SAMPLE_3_Y__SHIFT) & A6XX_SP_TP_SAMPLE_LOCATION_1_SAMPLE_3_Y__MASK;
 }
 
+#define REG_A6XX_SP_TP_WINDOW_OFFSET                           0x0000b307
+#define A6XX_SP_TP_WINDOW_OFFSET_X__MASK                       0x00003fff
+#define A6XX_SP_TP_WINDOW_OFFSET_X__SHIFT                      0
+static inline uint32_t A6XX_SP_TP_WINDOW_OFFSET_X(uint32_t val)
+{
+       return ((val) << A6XX_SP_TP_WINDOW_OFFSET_X__SHIFT) & A6XX_SP_TP_WINDOW_OFFSET_X__MASK;
+}
+#define A6XX_SP_TP_WINDOW_OFFSET_Y__MASK                       0x3fff0000
+#define A6XX_SP_TP_WINDOW_OFFSET_Y__SHIFT                      16
+static inline uint32_t A6XX_SP_TP_WINDOW_OFFSET_Y(uint32_t val)
+{
+       return ((val) << A6XX_SP_TP_WINDOW_OFFSET_Y__SHIFT) & A6XX_SP_TP_WINDOW_OFFSET_Y__MASK;
+}
+
 #define REG_A6XX_SP_TP_UNKNOWN_B309                            0x0000b309
 
 #define REG_A6XX_SP_PS_2D_SRC_INFO                             0x0000b4c0
@@ -6627,9 +6387,19 @@ static inline uint32_t A6XX_SP_PS_2D_SRC_INFO_SAMPLES(enum a3xx_msaa_samples val
        return ((val) << A6XX_SP_PS_2D_SRC_INFO_SAMPLES__SHIFT) & A6XX_SP_PS_2D_SRC_INFO_SAMPLES__MASK;
 }
 #define A6XX_SP_PS_2D_SRC_INFO_FILTER                          0x00010000
+#define A6XX_SP_PS_2D_SRC_INFO_UNK17                           0x00020000
 #define A6XX_SP_PS_2D_SRC_INFO_SAMPLES_AVERAGE                 0x00040000
+#define A6XX_SP_PS_2D_SRC_INFO_UNK19                           0x00080000
 #define A6XX_SP_PS_2D_SRC_INFO_UNK20                           0x00100000
+#define A6XX_SP_PS_2D_SRC_INFO_UNK21                           0x00200000
 #define A6XX_SP_PS_2D_SRC_INFO_UNK22                           0x00400000
+#define A6XX_SP_PS_2D_SRC_INFO_UNK23__MASK                     0x07800000
+#define A6XX_SP_PS_2D_SRC_INFO_UNK23__SHIFT                    23
+static inline uint32_t A6XX_SP_PS_2D_SRC_INFO_UNK23(uint32_t val)
+{
+       return ((val) << A6XX_SP_PS_2D_SRC_INFO_UNK23__SHIFT) & A6XX_SP_PS_2D_SRC_INFO_UNK23__MASK;
+}
+#define A6XX_SP_PS_2D_SRC_INFO_UNK28                           0x10000000
 
 #define REG_A6XX_SP_PS_2D_SRC_SIZE                             0x0000b4c1
 #define A6XX_SP_PS_2D_SRC_SIZE_WIDTH__MASK                     0x00007fff
@@ -6645,43 +6415,131 @@ static inline uint32_t A6XX_SP_PS_2D_SRC_SIZE_HEIGHT(uint32_t val)
        return ((val) << A6XX_SP_PS_2D_SRC_SIZE_HEIGHT__SHIFT) & A6XX_SP_PS_2D_SRC_SIZE_HEIGHT__MASK;
 }
 
-#define REG_A6XX_SP_PS_2D_SRC_LO                               0x0000b4c2
-
-#define REG_A6XX_SP_PS_2D_SRC_HI                               0x0000b4c3
-
 #define REG_A6XX_SP_PS_2D_SRC                                  0x0000b4c2
+#define A6XX_SP_PS_2D_SRC__MASK                                        0xffffffff
+#define A6XX_SP_PS_2D_SRC__SHIFT                               0
+static inline uint32_t A6XX_SP_PS_2D_SRC(uint32_t val)
+{
+       return ((val) << A6XX_SP_PS_2D_SRC__SHIFT) & A6XX_SP_PS_2D_SRC__MASK;
+}
 
 #define REG_A6XX_SP_PS_2D_SRC_PITCH                            0x0000b4c4
-#define A6XX_SP_PS_2D_SRC_PITCH_PITCH__MASK                    0x01fffe00
+#define A6XX_SP_PS_2D_SRC_PITCH_UNK0__MASK                     0x000001ff
+#define A6XX_SP_PS_2D_SRC_PITCH_UNK0__SHIFT                    0
+static inline uint32_t A6XX_SP_PS_2D_SRC_PITCH_UNK0(uint32_t val)
+{
+       return ((val) << A6XX_SP_PS_2D_SRC_PITCH_UNK0__SHIFT) & A6XX_SP_PS_2D_SRC_PITCH_UNK0__MASK;
+}
+#define A6XX_SP_PS_2D_SRC_PITCH_PITCH__MASK                    0x00fffe00
 #define A6XX_SP_PS_2D_SRC_PITCH_PITCH__SHIFT                   9
 static inline uint32_t A6XX_SP_PS_2D_SRC_PITCH_PITCH(uint32_t val)
 {
        return ((val >> 6) << A6XX_SP_PS_2D_SRC_PITCH_PITCH__SHIFT) & A6XX_SP_PS_2D_SRC_PITCH_PITCH__MASK;
 }
 
-#define REG_A6XX_SP_PS_2D_SRC_FLAGS_LO                         0x0000b4ca
+#define REG_A6XX_SP_PS_2D_SRC_PLANE1                           0x0000b4c5
+#define A6XX_SP_PS_2D_SRC_PLANE1__MASK                         0xffffffff
+#define A6XX_SP_PS_2D_SRC_PLANE1__SHIFT                                0
+static inline uint32_t A6XX_SP_PS_2D_SRC_PLANE1(uint32_t val)
+{
+       return ((val) << A6XX_SP_PS_2D_SRC_PLANE1__SHIFT) & A6XX_SP_PS_2D_SRC_PLANE1__MASK;
+}
+
+#define REG_A6XX_SP_PS_2D_SRC_PLANE_PITCH                      0x0000b4c7
+#define A6XX_SP_PS_2D_SRC_PLANE_PITCH__MASK                    0x00000fff
+#define A6XX_SP_PS_2D_SRC_PLANE_PITCH__SHIFT                   0
+static inline uint32_t A6XX_SP_PS_2D_SRC_PLANE_PITCH(uint32_t val)
+{
+       return ((val >> 6) << A6XX_SP_PS_2D_SRC_PLANE_PITCH__SHIFT) & A6XX_SP_PS_2D_SRC_PLANE_PITCH__MASK;
+}
 
-#define REG_A6XX_SP_PS_2D_SRC_FLAGS_HI                         0x0000b4cb
+#define REG_A6XX_SP_PS_2D_SRC_PLANE2                           0x0000b4c8
+#define A6XX_SP_PS_2D_SRC_PLANE2__MASK                         0xffffffff
+#define A6XX_SP_PS_2D_SRC_PLANE2__SHIFT                                0
+static inline uint32_t A6XX_SP_PS_2D_SRC_PLANE2(uint32_t val)
+{
+       return ((val) << A6XX_SP_PS_2D_SRC_PLANE2__SHIFT) & A6XX_SP_PS_2D_SRC_PLANE2__MASK;
+}
 
 #define REG_A6XX_SP_PS_2D_SRC_FLAGS                            0x0000b4ca
+#define A6XX_SP_PS_2D_SRC_FLAGS__MASK                          0xffffffff
+#define A6XX_SP_PS_2D_SRC_FLAGS__SHIFT                         0
+static inline uint32_t A6XX_SP_PS_2D_SRC_FLAGS(uint32_t val)
+{
+       return ((val) << A6XX_SP_PS_2D_SRC_FLAGS__SHIFT) & A6XX_SP_PS_2D_SRC_FLAGS__MASK;
+}
 
 #define REG_A6XX_SP_PS_2D_SRC_FLAGS_PITCH                      0x0000b4cc
-#define A6XX_SP_PS_2D_SRC_FLAGS_PITCH_PITCH__MASK              0x000007ff
-#define A6XX_SP_PS_2D_SRC_FLAGS_PITCH_PITCH__SHIFT             0
-static inline uint32_t A6XX_SP_PS_2D_SRC_FLAGS_PITCH_PITCH(uint32_t val)
+#define A6XX_SP_PS_2D_SRC_FLAGS_PITCH__MASK                    0x000000ff
+#define A6XX_SP_PS_2D_SRC_FLAGS_PITCH__SHIFT                   0
+static inline uint32_t A6XX_SP_PS_2D_SRC_FLAGS_PITCH(uint32_t val)
+{
+       return ((val >> 6) << A6XX_SP_PS_2D_SRC_FLAGS_PITCH__SHIFT) & A6XX_SP_PS_2D_SRC_FLAGS_PITCH__MASK;
+}
+
+#define REG_A6XX_SP_PS_UNKNOWN_B4CD                            0x0000b4cd
+
+#define REG_A6XX_SP_PS_UNKNOWN_B4CE                            0x0000b4ce
+
+#define REG_A6XX_SP_PS_UNKNOWN_B4CF                            0x0000b4cf
+
+#define REG_A6XX_SP_PS_UNKNOWN_B4D0                            0x0000b4d0
+
+#define REG_A6XX_SP_WINDOW_OFFSET                              0x0000b4d1
+#define A6XX_SP_WINDOW_OFFSET_X__MASK                          0x00003fff
+#define A6XX_SP_WINDOW_OFFSET_X__SHIFT                         0
+static inline uint32_t A6XX_SP_WINDOW_OFFSET_X(uint32_t val)
+{
+       return ((val) << A6XX_SP_WINDOW_OFFSET_X__SHIFT) & A6XX_SP_WINDOW_OFFSET_X__MASK;
+}
+#define A6XX_SP_WINDOW_OFFSET_Y__MASK                          0x3fff0000
+#define A6XX_SP_WINDOW_OFFSET_Y__SHIFT                         16
+static inline uint32_t A6XX_SP_WINDOW_OFFSET_Y(uint32_t val)
+{
+       return ((val) << A6XX_SP_WINDOW_OFFSET_Y__SHIFT) & A6XX_SP_WINDOW_OFFSET_Y__MASK;
+}
+
+#define REG_A6XX_TPL1_UNKNOWN_B600                             0x0000b600
+
+#define REG_A6XX_TPL1_ADDR_MODE_CNTL                           0x0000b601
+
+#define REG_A6XX_TPL1_UNKNOWN_B602                             0x0000b602
+
+#define REG_A6XX_TPL1_NC_MODE_CNTL                             0x0000b604
+#define A6XX_TPL1_NC_MODE_CNTL_MODE                            0x00000001
+#define A6XX_TPL1_NC_MODE_CNTL_LOWER_BIT__MASK                 0x00000006
+#define A6XX_TPL1_NC_MODE_CNTL_LOWER_BIT__SHIFT                        1
+static inline uint32_t A6XX_TPL1_NC_MODE_CNTL_LOWER_BIT(uint32_t val)
+{
+       return ((val) << A6XX_TPL1_NC_MODE_CNTL_LOWER_BIT__SHIFT) & A6XX_TPL1_NC_MODE_CNTL_LOWER_BIT__MASK;
+}
+#define A6XX_TPL1_NC_MODE_CNTL_MIN_ACCESS_LENGTH               0x00000008
+#define A6XX_TPL1_NC_MODE_CNTL_UPPER_BIT__MASK                 0x00000010
+#define A6XX_TPL1_NC_MODE_CNTL_UPPER_BIT__SHIFT                        4
+static inline uint32_t A6XX_TPL1_NC_MODE_CNTL_UPPER_BIT(uint32_t val)
 {
-       return ((val >> 6) << A6XX_SP_PS_2D_SRC_FLAGS_PITCH_PITCH__SHIFT) & A6XX_SP_PS_2D_SRC_FLAGS_PITCH_PITCH__MASK;
+       return ((val) << A6XX_TPL1_NC_MODE_CNTL_UPPER_BIT__SHIFT) & A6XX_TPL1_NC_MODE_CNTL_UPPER_BIT__MASK;
 }
-#define A6XX_SP_PS_2D_SRC_FLAGS_PITCH_ARRAY_PITCH__MASK                0x003ff800
-#define A6XX_SP_PS_2D_SRC_FLAGS_PITCH_ARRAY_PITCH__SHIFT       11
-static inline uint32_t A6XX_SP_PS_2D_SRC_FLAGS_PITCH_ARRAY_PITCH(uint32_t val)
+#define A6XX_TPL1_NC_MODE_CNTL_UNK6__MASK                      0x000000c0
+#define A6XX_TPL1_NC_MODE_CNTL_UNK6__SHIFT                     6
+static inline uint32_t A6XX_TPL1_NC_MODE_CNTL_UNK6(uint32_t val)
 {
-       return ((val >> 7) << A6XX_SP_PS_2D_SRC_FLAGS_PITCH_ARRAY_PITCH__SHIFT) & A6XX_SP_PS_2D_SRC_FLAGS_PITCH_ARRAY_PITCH__MASK;
+       return ((val) << A6XX_TPL1_NC_MODE_CNTL_UNK6__SHIFT) & A6XX_TPL1_NC_MODE_CNTL_UNK6__MASK;
 }
 
-#define REG_A6XX_SP_UNKNOWN_B600                               0x0000b600
+#define REG_A6XX_TPL1_UNKNOWN_B605                             0x0000b605
+
+#define REG_A6XX_TPL1_BICUBIC_WEIGHTS_TABLE_0                  0x0000b608
+
+#define REG_A6XX_TPL1_BICUBIC_WEIGHTS_TABLE_1                  0x0000b609
+
+#define REG_A6XX_TPL1_BICUBIC_WEIGHTS_TABLE_2                  0x0000b60a
+
+#define REG_A6XX_TPL1_BICUBIC_WEIGHTS_TABLE_3                  0x0000b60b
+
+#define REG_A6XX_TPL1_BICUBIC_WEIGHTS_TABLE_4                  0x0000b60c
 
-#define REG_A6XX_SP_UNKNOWN_B605                               0x0000b605
+static inline uint32_t REG_A6XX_TPL1_PERFCTR_TP_SEL(uint32_t i0) { return 0x0000b610 + 0x1*i0; }
 
 #define REG_A6XX_HLSQ_VS_CNTL                                  0x0000b800
 #define A6XX_HLSQ_VS_CNTL_CONSTLEN__MASK                       0x000000ff
@@ -6722,10 +6580,31 @@ static inline uint32_t A6XX_HLSQ_GS_CNTL_CONSTLEN(uint32_t val)
 #define REG_A6XX_HLSQ_LOAD_STATE_GEOM_CMD                      0x0000b820
 
 #define REG_A6XX_HLSQ_LOAD_STATE_GEOM_EXT_SRC_ADDR             0x0000b821
+#define A6XX_HLSQ_LOAD_STATE_GEOM_EXT_SRC_ADDR__MASK           0xffffffff
+#define A6XX_HLSQ_LOAD_STATE_GEOM_EXT_SRC_ADDR__SHIFT          0
+static inline uint32_t A6XX_HLSQ_LOAD_STATE_GEOM_EXT_SRC_ADDR(uint32_t val)
+{
+       return ((val) << A6XX_HLSQ_LOAD_STATE_GEOM_EXT_SRC_ADDR__SHIFT) & A6XX_HLSQ_LOAD_STATE_GEOM_EXT_SRC_ADDR__MASK;
+}
 
 #define REG_A6XX_HLSQ_LOAD_STATE_GEOM_DATA                     0x0000b823
 
-#define REG_A6XX_HLSQ_UNKNOWN_B980                             0x0000b980
+#define REG_A6XX_HLSQ_FS_CNTL_0                                        0x0000b980
+#define A6XX_HLSQ_FS_CNTL_0_THREADSIZE__MASK                   0x00000001
+#define A6XX_HLSQ_FS_CNTL_0_THREADSIZE__SHIFT                  0
+static inline uint32_t A6XX_HLSQ_FS_CNTL_0_THREADSIZE(enum a6xx_threadsize val)
+{
+       return ((val) << A6XX_HLSQ_FS_CNTL_0_THREADSIZE__SHIFT) & A6XX_HLSQ_FS_CNTL_0_THREADSIZE__MASK;
+}
+#define A6XX_HLSQ_FS_CNTL_0_VARYINGS                           0x00000002
+#define A6XX_HLSQ_FS_CNTL_0_UNK2__MASK                         0x00000ffc
+#define A6XX_HLSQ_FS_CNTL_0_UNK2__SHIFT                                2
+static inline uint32_t A6XX_HLSQ_FS_CNTL_0_UNK2(uint32_t val)
+{
+       return ((val) << A6XX_HLSQ_FS_CNTL_0_UNK2__SHIFT) & A6XX_HLSQ_FS_CNTL_0_UNK2__MASK;
+}
+
+#define REG_A6XX_HLSQ_UNKNOWN_B981                             0x0000b981
 
 #define REG_A6XX_HLSQ_CONTROL_1_REG                            0x0000b982
 
@@ -6808,6 +6687,18 @@ static inline uint32_t A6XX_HLSQ_CONTROL_4_REG_ZWCOORDREGID(uint32_t val)
 }
 
 #define REG_A6XX_HLSQ_CONTROL_5_REG                            0x0000b986
+#define A6XX_HLSQ_CONTROL_5_REG_UNK0__MASK                     0x000000ff
+#define A6XX_HLSQ_CONTROL_5_REG_UNK0__SHIFT                    0
+static inline uint32_t A6XX_HLSQ_CONTROL_5_REG_UNK0(uint32_t val)
+{
+       return ((val) << A6XX_HLSQ_CONTROL_5_REG_UNK0__SHIFT) & A6XX_HLSQ_CONTROL_5_REG_UNK0__MASK;
+}
+#define A6XX_HLSQ_CONTROL_5_REG_UNK8__MASK                     0x0000ff00
+#define A6XX_HLSQ_CONTROL_5_REG_UNK8__SHIFT                    8
+static inline uint32_t A6XX_HLSQ_CONTROL_5_REG_UNK8(uint32_t val)
+{
+       return ((val) << A6XX_HLSQ_CONTROL_5_REG_UNK8__SHIFT) & A6XX_HLSQ_CONTROL_5_REG_UNK8__MASK;
+}
 
 #define REG_A6XX_HLSQ_CS_CNTL                                  0x0000b987
 #define A6XX_HLSQ_CS_CNTL_CONSTLEN__MASK                       0x000000ff
@@ -6899,17 +6790,17 @@ static inline uint32_t A6XX_HLSQ_CS_CNTL_0_WGIDCONSTID(uint32_t val)
 {
        return ((val) << A6XX_HLSQ_CS_CNTL_0_WGIDCONSTID__SHIFT) & A6XX_HLSQ_CS_CNTL_0_WGIDCONSTID__MASK;
 }
-#define A6XX_HLSQ_CS_CNTL_0_UNK0__MASK                         0x0000ff00
-#define A6XX_HLSQ_CS_CNTL_0_UNK0__SHIFT                                8
-static inline uint32_t A6XX_HLSQ_CS_CNTL_0_UNK0(uint32_t val)
+#define A6XX_HLSQ_CS_CNTL_0_WGSIZECONSTID__MASK                        0x0000ff00
+#define A6XX_HLSQ_CS_CNTL_0_WGSIZECONSTID__SHIFT               8
+static inline uint32_t A6XX_HLSQ_CS_CNTL_0_WGSIZECONSTID(uint32_t val)
 {
-       return ((val) << A6XX_HLSQ_CS_CNTL_0_UNK0__SHIFT) & A6XX_HLSQ_CS_CNTL_0_UNK0__MASK;
+       return ((val) << A6XX_HLSQ_CS_CNTL_0_WGSIZECONSTID__SHIFT) & A6XX_HLSQ_CS_CNTL_0_WGSIZECONSTID__MASK;
 }
-#define A6XX_HLSQ_CS_CNTL_0_UNK1__MASK                         0x00ff0000
-#define A6XX_HLSQ_CS_CNTL_0_UNK1__SHIFT                                16
-static inline uint32_t A6XX_HLSQ_CS_CNTL_0_UNK1(uint32_t val)
+#define A6XX_HLSQ_CS_CNTL_0_WGOFFSETCONSTID__MASK              0x00ff0000
+#define A6XX_HLSQ_CS_CNTL_0_WGOFFSETCONSTID__SHIFT             16
+static inline uint32_t A6XX_HLSQ_CS_CNTL_0_WGOFFSETCONSTID(uint32_t val)
 {
-       return ((val) << A6XX_HLSQ_CS_CNTL_0_UNK1__SHIFT) & A6XX_HLSQ_CS_CNTL_0_UNK1__MASK;
+       return ((val) << A6XX_HLSQ_CS_CNTL_0_WGOFFSETCONSTID__SHIFT) & A6XX_HLSQ_CS_CNTL_0_WGOFFSETCONSTID__MASK;
 }
 #define A6XX_HLSQ_CS_CNTL_0_LOCALIDREGID__MASK                 0xff000000
 #define A6XX_HLSQ_CS_CNTL_0_LOCALIDREGID__SHIFT                        24
@@ -6918,7 +6809,21 @@ static inline uint32_t A6XX_HLSQ_CS_CNTL_0_LOCALIDREGID(uint32_t val)
        return ((val) << A6XX_HLSQ_CS_CNTL_0_LOCALIDREGID__SHIFT) & A6XX_HLSQ_CS_CNTL_0_LOCALIDREGID__MASK;
 }
 
-#define REG_A6XX_HLSQ_CS_UNKNOWN_B998                          0x0000b998
+#define REG_A6XX_HLSQ_CS_CNTL_1                                        0x0000b998
+#define A6XX_HLSQ_CS_CNTL_1_LINEARLOCALIDREGID__MASK           0x000000ff
+#define A6XX_HLSQ_CS_CNTL_1_LINEARLOCALIDREGID__SHIFT          0
+static inline uint32_t A6XX_HLSQ_CS_CNTL_1_LINEARLOCALIDREGID(uint32_t val)
+{
+       return ((val) << A6XX_HLSQ_CS_CNTL_1_LINEARLOCALIDREGID__SHIFT) & A6XX_HLSQ_CS_CNTL_1_LINEARLOCALIDREGID__MASK;
+}
+#define A6XX_HLSQ_CS_CNTL_1_SINGLE_SP_CORE                     0x00000100
+#define A6XX_HLSQ_CS_CNTL_1_THREADSIZE__MASK                   0x00000200
+#define A6XX_HLSQ_CS_CNTL_1_THREADSIZE__SHIFT                  9
+static inline uint32_t A6XX_HLSQ_CS_CNTL_1_THREADSIZE(enum a6xx_threadsize val)
+{
+       return ((val) << A6XX_HLSQ_CS_CNTL_1_THREADSIZE__SHIFT) & A6XX_HLSQ_CS_CNTL_1_THREADSIZE__MASK;
+}
+#define A6XX_HLSQ_CS_CNTL_1_THREADSIZE_SCALAR                  0x00000400
 
 #define REG_A6XX_HLSQ_CS_KERNEL_GROUP_X                                0x0000b999
 
@@ -6929,6 +6834,12 @@ static inline uint32_t A6XX_HLSQ_CS_CNTL_0_LOCALIDREGID(uint32_t val)
 #define REG_A6XX_HLSQ_LOAD_STATE_FRAG_CMD                      0x0000b9a0
 
 #define REG_A6XX_HLSQ_LOAD_STATE_FRAG_EXT_SRC_ADDR             0x0000b9a1
+#define A6XX_HLSQ_LOAD_STATE_FRAG_EXT_SRC_ADDR__MASK           0xffffffff
+#define A6XX_HLSQ_LOAD_STATE_FRAG_EXT_SRC_ADDR__SHIFT          0
+static inline uint32_t A6XX_HLSQ_LOAD_STATE_FRAG_EXT_SRC_ADDR(uint32_t val)
+{
+       return ((val) << A6XX_HLSQ_LOAD_STATE_FRAG_EXT_SRC_ADDR__SHIFT) & A6XX_HLSQ_LOAD_STATE_FRAG_EXT_SRC_ADDR__MASK;
+}
 
 #define REG_A6XX_HLSQ_LOAD_STATE_FRAG_DATA                     0x0000b9a3
 
@@ -7026,6 +6937,12 @@ static inline uint32_t A6XX_HLSQ_2D_EVENT_CMD_EVENT(enum vgt_event_type val)
 
 #define REG_A6XX_HLSQ_UNKNOWN_BE04                             0x0000be04
 
+#define REG_A6XX_HLSQ_ADDR_MODE_CNTL                           0x0000be05
+
+#define REG_A6XX_HLSQ_UNKNOWN_BE08                             0x0000be08
+
+static inline uint32_t REG_A6XX_HLSQ_PERFCTR_HLSQ_SEL(uint32_t i0) { return 0x0000be10 + 0x1*i0; }
+
 #define REG_A6XX_CP_EVENT_START                                        0x0000d600
 #define A6XX_CP_EVENT_START_STATE_ID__MASK                     0x000000ff
 #define A6XX_CP_EVENT_START_STATE_ID__SHIFT                    0
@@ -7135,11 +7052,11 @@ static inline uint32_t A6XX_TEX_SAMP_2_REDUCTION_MODE(enum a6xx_reduction_mode v
        return ((val) << A6XX_TEX_SAMP_2_REDUCTION_MODE__SHIFT) & A6XX_TEX_SAMP_2_REDUCTION_MODE__MASK;
 }
 #define A6XX_TEX_SAMP_2_CHROMA_LINEAR                          0x00000020
-#define A6XX_TEX_SAMP_2_BCOLOR_OFFSET__MASK                    0xffffff80
-#define A6XX_TEX_SAMP_2_BCOLOR_OFFSET__SHIFT                   7
-static inline uint32_t A6XX_TEX_SAMP_2_BCOLOR_OFFSET(uint32_t val)
+#define A6XX_TEX_SAMP_2_BCOLOR__MASK                           0xffffff80
+#define A6XX_TEX_SAMP_2_BCOLOR__SHIFT                          7
+static inline uint32_t A6XX_TEX_SAMP_2_BCOLOR(uint32_t val)
 {
-       return ((val >> 7) << A6XX_TEX_SAMP_2_BCOLOR_OFFSET__SHIFT) & A6XX_TEX_SAMP_2_BCOLOR_OFFSET__MASK;
+       return ((val) << A6XX_TEX_SAMP_2_BCOLOR__SHIFT) & A6XX_TEX_SAMP_2_BCOLOR__MASK;
 }
 
 #define REG_A6XX_TEX_SAMP_3                                    0x00000003
index 5a43d3090b0c0414211963793bec93663a0e44b1..81158921583475749b82b1f17cc7566c23841a95 100644 (file)
@@ -8,21 +8,21 @@ http://github.com/freedreno/envytools/
 git clone https://github.com/freedreno/envytools.git
 
 The rules-ng-ng source files this header was generated from are:
-- /home/robclark/src/envytools/rnndb/adreno.xml                     (    594 bytes, from 2020-07-23 21:58:14)
-- /home/robclark/src/envytools/rnndb/freedreno_copyright.xml        (   1572 bytes, from 2020-07-23 21:58:14)
-- /home/robclark/src/envytools/rnndb/adreno/a2xx.xml                (  90159 bytes, from 2020-07-23 21:58:14)
-- /home/robclark/src/envytools/rnndb/adreno/adreno_common.xml       (  14386 bytes, from 2020-07-23 21:58:14)
-- /home/robclark/src/envytools/rnndb/adreno/adreno_pm4.xml          (  65048 bytes, from 2020-07-23 21:58:14)
-- /home/robclark/src/envytools/rnndb/adreno/a3xx.xml                (  84226 bytes, from 2020-07-23 21:58:14)
-- /home/robclark/src/envytools/rnndb/adreno/a4xx.xml                ( 112556 bytes, from 2020-07-23 21:58:14)
-- /home/robclark/src/envytools/rnndb/adreno/a5xx.xml                ( 149461 bytes, from 2020-07-23 21:58:14)
-- /home/robclark/src/envytools/rnndb/adreno/a6xx.xml                ( 184695 bytes, from 2020-07-23 21:58:14)
-- /home/robclark/src/envytools/rnndb/adreno/a6xx_gmu.xml            (  11218 bytes, from 2020-07-23 21:58:14)
-- /home/robclark/src/envytools/rnndb/adreno/ocmem.xml               (   1773 bytes, from 2020-07-23 21:58:14)
-- /home/robclark/src/envytools/rnndb/adreno/adreno_control_regs.xml (   4559 bytes, from 2020-07-23 21:58:14)
-- /home/robclark/src/envytools/rnndb/adreno/adreno_pipe_regs.xml    (   2872 bytes, from 2020-07-23 21:58:14)
-
-Copyright (C) 2013-2020 by the following authors:
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/adreno.xml                     (    594 bytes, from 2021-02-18 16:45:44)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/freedreno_copyright.xml        (   1572 bytes, from 2021-02-18 16:45:44)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/adreno/a2xx.xml                (  90810 bytes, from 2021-02-18 16:45:44)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/adreno/adreno_common.xml       (  14386 bytes, from 2021-02-18 16:45:44)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/adreno/adreno_pm4.xml          (  67699 bytes, from 2021-05-31 20:21:57)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/adreno/a3xx.xml                (  84226 bytes, from 2021-02-18 16:45:44)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/adreno/a4xx.xml                ( 112551 bytes, from 2021-02-18 16:45:44)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/adreno/a5xx.xml                ( 150713 bytes, from 2021-06-10 22:34:02)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/adreno/a6xx.xml                ( 180049 bytes, from 2021-06-02 21:44:19)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/adreno/a6xx_gmu.xml            (  11331 bytes, from 2021-05-21 19:18:08)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/adreno/ocmem.xml               (   1773 bytes, from 2021-02-18 16:45:44)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/adreno/adreno_control_regs.xml (   6038 bytes, from 2021-05-27 20:22:36)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/adreno/adreno_pipe_regs.xml    (   2924 bytes, from 2021-05-27 20:18:13)
+
+Copyright (C) 2013-2021 by the following authors:
 - Rob Clark <robdclark@gmail.com> (robclark)
 - Ilia Mirkin <imirkin@alum.mit.edu> (imirkin)
 
@@ -292,6 +292,8 @@ static inline uint32_t A6XX_GMU_GPU_NAP_CTRL_SID(uint32_t val)
 
 #define REG_A6XX_GPU_GMU_CX_GMU_CX_FAL_INTF                    0x000050f0
 
+#define REG_A6XX_GPU_GMU_CX_GMU_CX_FALNEXT_INTF                        0x000050f1
+
 #define REG_A6XX_GPU_GMU_CX_GMU_PWR_COL_CP_MSG                 0x00005100
 
 #define REG_A6XX_GPU_GMU_CX_GMU_PWR_COL_CP_RESP                        0x00005101
@@ -439,6 +441,8 @@ static inline uint32_t A6XX_GMU_GPU_NAP_CTRL_SID(uint32_t val)
 
 #define REG_A6XX_GPU_CC_GX_DOMAIN_MISC                         0x00009d42
 
+#define REG_A6XX_GPU_CPR_FSM_CTL                               0x0000c001
+
 #define REG_A6XX_GPU_RSCC_RSC_STATUS0_DRV0                     0x00000004
 
 #define REG_A6XX_RSCC_PDC_SEQ_START_ADDR                       0x00000008
index 540d14e7cdae613a66b0915fd525eb5e9cd87d21..a69150cb75d870466efc3c68c9b4a6f913d51b6e 100644 (file)
@@ -149,7 +149,7 @@ static void a6xx_submit(struct msm_gpu *gpu, struct msm_gem_submit *submit)
 
        a6xx_set_pagetable(a6xx_gpu, ring, submit->queue->ctx);
 
-       get_stats_counter(ring, REG_A6XX_RBBM_PERFCTR_CP_0_LO,
+       get_stats_counter(ring, REG_A6XX_RBBM_PERFCTR_CP(0),
                rbmemptr_stats(ring, index, cpcycles_start));
 
        /*
@@ -185,7 +185,7 @@ static void a6xx_submit(struct msm_gpu *gpu, struct msm_gem_submit *submit)
                }
        }
 
-       get_stats_counter(ring, REG_A6XX_RBBM_PERFCTR_CP_0_LO,
+       get_stats_counter(ring, REG_A6XX_RBBM_PERFCTR_CP(0),
                rbmemptr_stats(ring, index, cpcycles_end));
        get_stats_counter(ring, REG_A6XX_CP_ALWAYS_ON_COUNTER_LO,
                rbmemptr_stats(ring, index, alwayson_end));
@@ -727,8 +727,8 @@ static int a6xx_ucode_init(struct msm_gpu *gpu)
                }
        }
 
-       gpu_write64(gpu, REG_A6XX_CP_SQE_INSTR_BASE_LO,
-               REG_A6XX_CP_SQE_INSTR_BASE_HI, a6xx_gpu->sqe_iova);
+       gpu_write64(gpu, REG_A6XX_CP_SQE_INSTR_BASE,
+               REG_A6XX_CP_SQE_INSTR_BASE+1, a6xx_gpu->sqe_iova);
 
        return 0;
 }
@@ -859,7 +859,7 @@ static int a6xx_hw_init(struct msm_gpu *gpu)
        gpu_write(gpu, REG_A6XX_RBBM_PERFCTR_CNTL, 0x1);
 
        /* Select CP0 to always count cycles */
-       gpu_write(gpu, REG_A6XX_CP_PERFCTR_CP_SEL_0, PERF_CP_ALWAYS_COUNT);
+       gpu_write(gpu, REG_A6XX_CP_PERFCTR_CP_SEL(0), PERF_CP_ALWAYS_COUNT);
 
        a6xx_set_ubwc_config(gpu);
 
index 548f532417d17c93f0e255ef4923e69645cd1cd0..c9389d9fb5998282407f39393fc98ce04785bfae 100644 (file)
@@ -8,21 +8,21 @@ http://github.com/freedreno/envytools/
 git clone https://github.com/freedreno/envytools.git
 
 The rules-ng-ng source files this header was generated from are:
-- /home/robclark/src/envytools/rnndb/adreno.xml                     (    594 bytes, from 2020-07-23 21:58:14)
-- /home/robclark/src/envytools/rnndb/freedreno_copyright.xml        (   1572 bytes, from 2020-07-23 21:58:14)
-- /home/robclark/src/envytools/rnndb/adreno/a2xx.xml                (  90159 bytes, from 2020-07-23 21:58:14)
-- /home/robclark/src/envytools/rnndb/adreno/adreno_common.xml       (  14386 bytes, from 2020-07-23 21:58:14)
-- /home/robclark/src/envytools/rnndb/adreno/adreno_pm4.xml          (  65048 bytes, from 2020-07-23 21:58:14)
-- /home/robclark/src/envytools/rnndb/adreno/a3xx.xml                (  84226 bytes, from 2020-07-23 21:58:14)
-- /home/robclark/src/envytools/rnndb/adreno/a4xx.xml                ( 112556 bytes, from 2020-07-23 21:58:14)
-- /home/robclark/src/envytools/rnndb/adreno/a5xx.xml                ( 149461 bytes, from 2020-07-23 21:58:14)
-- /home/robclark/src/envytools/rnndb/adreno/a6xx.xml                ( 184695 bytes, from 2020-07-23 21:58:14)
-- /home/robclark/src/envytools/rnndb/adreno/a6xx_gmu.xml            (  11218 bytes, from 2020-07-23 21:58:14)
-- /home/robclark/src/envytools/rnndb/adreno/ocmem.xml               (   1773 bytes, from 2020-07-23 21:58:14)
-- /home/robclark/src/envytools/rnndb/adreno/adreno_control_regs.xml (   4559 bytes, from 2020-07-23 21:58:14)
-- /home/robclark/src/envytools/rnndb/adreno/adreno_pipe_regs.xml    (   2872 bytes, from 2020-07-23 21:58:14)
-
-Copyright (C) 2013-2020 by the following authors:
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/adreno.xml                     (    594 bytes, from 2021-02-18 16:45:44)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/freedreno_copyright.xml        (   1572 bytes, from 2021-02-18 16:45:44)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/adreno/a2xx.xml                (  90810 bytes, from 2021-02-18 16:45:44)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/adreno/adreno_common.xml       (  14386 bytes, from 2021-02-18 16:45:44)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/adreno/adreno_pm4.xml          (  67699 bytes, from 2021-05-31 20:21:57)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/adreno/a3xx.xml                (  84226 bytes, from 2021-02-18 16:45:44)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/adreno/a4xx.xml                ( 112551 bytes, from 2021-02-18 16:45:44)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/adreno/a5xx.xml                ( 150713 bytes, from 2021-06-10 22:34:02)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/adreno/a6xx.xml                ( 180049 bytes, from 2021-06-02 21:44:19)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/adreno/a6xx_gmu.xml            (  11331 bytes, from 2021-05-21 19:18:08)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/adreno/ocmem.xml               (   1773 bytes, from 2021-02-18 16:45:44)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/adreno/adreno_control_regs.xml (   6038 bytes, from 2021-05-27 20:22:36)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/adreno/adreno_pipe_regs.xml    (   2924 bytes, from 2021-05-27 20:18:13)
+
+Copyright (C) 2013-2021 by the following authors:
 - Rob Clark <robdclark@gmail.com> (robclark)
 - Ilia Mirkin <imirkin@alum.mit.edu> (imirkin)
 
index 59bb8c1ffce66582d038c877154c88c1fd9f0485..e832ae4b937af5891b6f447e111ccddf573bde8b 100644 (file)
@@ -8,21 +8,21 @@ http://github.com/freedreno/envytools/
 git clone https://github.com/freedreno/envytools.git
 
 The rules-ng-ng source files this header was generated from are:
-- /home/robclark/src/envytools/rnndb/adreno.xml                     (    594 bytes, from 2020-07-23 21:58:14)
-- /home/robclark/src/envytools/rnndb/freedreno_copyright.xml        (   1572 bytes, from 2020-07-23 21:58:14)
-- /home/robclark/src/envytools/rnndb/adreno/a2xx.xml                (  90159 bytes, from 2020-07-23 21:58:14)
-- /home/robclark/src/envytools/rnndb/adreno/adreno_common.xml       (  14386 bytes, from 2020-07-23 21:58:14)
-- /home/robclark/src/envytools/rnndb/adreno/adreno_pm4.xml          (  65048 bytes, from 2020-07-23 21:58:14)
-- /home/robclark/src/envytools/rnndb/adreno/a3xx.xml                (  84226 bytes, from 2020-07-23 21:58:14)
-- /home/robclark/src/envytools/rnndb/adreno/a4xx.xml                ( 112556 bytes, from 2020-07-23 21:58:14)
-- /home/robclark/src/envytools/rnndb/adreno/a5xx.xml                ( 149461 bytes, from 2020-07-23 21:58:14)
-- /home/robclark/src/envytools/rnndb/adreno/a6xx.xml                ( 184695 bytes, from 2020-07-23 21:58:14)
-- /home/robclark/src/envytools/rnndb/adreno/a6xx_gmu.xml            (  11218 bytes, from 2020-07-23 21:58:14)
-- /home/robclark/src/envytools/rnndb/adreno/ocmem.xml               (   1773 bytes, from 2020-07-23 21:58:14)
-- /home/robclark/src/envytools/rnndb/adreno/adreno_control_regs.xml (   4559 bytes, from 2020-07-23 21:58:14)
-- /home/robclark/src/envytools/rnndb/adreno/adreno_pipe_regs.xml    (   2872 bytes, from 2020-07-23 21:58:14)
-
-Copyright (C) 2013-2020 by the following authors:
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/adreno.xml                     (    594 bytes, from 2021-02-18 16:45:44)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/freedreno_copyright.xml        (   1572 bytes, from 2021-02-18 16:45:44)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/adreno/a2xx.xml                (  90810 bytes, from 2021-02-18 16:45:44)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/adreno/adreno_common.xml       (  14386 bytes, from 2021-02-18 16:45:44)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/adreno/adreno_pm4.xml          (  67699 bytes, from 2021-05-31 20:21:57)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/adreno/a3xx.xml                (  84226 bytes, from 2021-02-18 16:45:44)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/adreno/a4xx.xml                ( 112551 bytes, from 2021-02-18 16:45:44)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/adreno/a5xx.xml                ( 150713 bytes, from 2021-06-10 22:34:02)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/adreno/a6xx.xml                ( 180049 bytes, from 2021-06-02 21:44:19)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/adreno/a6xx_gmu.xml            (  11331 bytes, from 2021-05-21 19:18:08)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/adreno/ocmem.xml               (   1773 bytes, from 2021-02-18 16:45:44)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/adreno/adreno_control_regs.xml (   6038 bytes, from 2021-05-27 20:22:36)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/adreno/adreno_pipe_regs.xml    (   2924 bytes, from 2021-05-27 20:18:13)
+
+Copyright (C) 2013-2021 by the following authors:
 - Rob Clark <robdclark@gmail.com> (robclark)
 - Ilia Mirkin <imirkin@alum.mit.edu> (imirkin)
 
@@ -247,9 +247,9 @@ enum adreno_pm4_type3_packets {
        CP_DRAW_INDX_INDIRECT = 41,
        CP_DRAW_INDIRECT_MULTI = 42,
        CP_DRAW_AUTO = 36,
-       CP_UNKNOWN_19 = 25,
-       CP_UNKNOWN_1A = 26,
-       CP_UNKNOWN_4E = 78,
+       CP_DRAW_PRED_ENABLE_GLOBAL = 25,
+       CP_DRAW_PRED_ENABLE_LOCAL = 26,
+       CP_DRAW_PRED_SET = 78,
        CP_WIDE_REG_WRITE = 116,
        CP_SCRATCH_TO_REG = 77,
        CP_REG_TO_SCRATCH = 74,
@@ -267,6 +267,7 @@ enum adreno_pm4_type3_packets {
        CP_SKIP_IB2_ENABLE_GLOBAL = 29,
        CP_SKIP_IB2_ENABLE_LOCAL = 35,
        CP_SET_SUBDRAW_SIZE = 53,
+       CP_WHERE_AM_I = 98,
        CP_SET_VISIBILITY_OVERRIDE = 100,
        CP_PREEMPT_ENABLE_GLOBAL = 105,
        CP_PREEMPT_ENABLE_LOCAL = 106,
@@ -298,7 +299,6 @@ enum adreno_pm4_type3_packets {
        CP_SET_BIN_DATA5_OFFSET = 46,
        CP_SET_CTXSWITCH_IB = 85,
        CP_REG_WRITE = 109,
-       CP_WHERE_AM_I = 98,
 };
 
 enum adreno_state_block {
@@ -400,6 +400,17 @@ enum a6xx_patch_type {
 enum a6xx_draw_indirect_opcode {
        INDIRECT_OP_NORMAL = 2,
        INDIRECT_OP_INDEXED = 4,
+       INDIRECT_OP_INDIRECT_COUNT = 6,
+       INDIRECT_OP_INDIRECT_COUNT_INDEXED = 7,
+};
+
+enum cp_draw_pred_src {
+       PRED_SRC_MEM = 5,
+};
+
+enum cp_draw_pred_test {
+       NE_0_PASS = 0,
+       EQ_0_PASS = 1,
 };
 
 enum cp_cond_function {
@@ -1040,33 +1051,61 @@ static inline uint32_t A6XX_CP_DRAW_INDIRECT_MULTI_1_DST_OFF(uint32_t val)
        return ((val) << A6XX_CP_DRAW_INDIRECT_MULTI_1_DST_OFF__SHIFT) & A6XX_CP_DRAW_INDIRECT_MULTI_1_DST_OFF__MASK;
 }
 
-#define REG_A6XX_CP_DRAW_INDIRECT_MULTI_2                      0x00000002
-#define A6XX_CP_DRAW_INDIRECT_MULTI_2_DRAW_COUNT__MASK         0xffffffff
-#define A6XX_CP_DRAW_INDIRECT_MULTI_2_DRAW_COUNT__SHIFT                0
-static inline uint32_t A6XX_CP_DRAW_INDIRECT_MULTI_2_DRAW_COUNT(uint32_t val)
-{
-       return ((val) << A6XX_CP_DRAW_INDIRECT_MULTI_2_DRAW_COUNT__SHIFT) & A6XX_CP_DRAW_INDIRECT_MULTI_2_DRAW_COUNT__MASK;
-}
+#define REG_A6XX_CP_DRAW_INDIRECT_MULTI_DRAW_COUNT             0x00000002
 
-#define REG_A6XX_CP_DRAW_INDIRECT_MULTI_ADDRESS_0              0x00000003
 
-#define REG_A6XX_CP_DRAW_INDIRECT_MULTI_5                      0x00000005
-#define A6XX_CP_DRAW_INDIRECT_MULTI_5_PARAM_0__MASK            0xffffffff
-#define A6XX_CP_DRAW_INDIRECT_MULTI_5_PARAM_0__SHIFT           0
-static inline uint32_t A6XX_CP_DRAW_INDIRECT_MULTI_5_PARAM_0(uint32_t val)
-{
-       return ((val) << A6XX_CP_DRAW_INDIRECT_MULTI_5_PARAM_0__SHIFT) & A6XX_CP_DRAW_INDIRECT_MULTI_5_PARAM_0__MASK;
-}
+#define REG_A6XX_CP_DRAW_INDIRECT_MULTI_INDIRECT               0x00000003
+
+#define REG_A6XX_CP_DRAW_INDIRECT_MULTI_STRIDE                 0x00000005
+
+
+#define REG_CP_DRAW_INDIRECT_MULTI_INDEX_INDEXED               0x00000003
+
+#define REG_CP_DRAW_INDIRECT_MULTI_MAX_INDICES_INDEXED         0x00000005
+
+#define REG_CP_DRAW_INDIRECT_MULTI_INDIRECT_INDEXED            0x00000006
 
-#define REG_A6XX_CP_DRAW_INDIRECT_MULTI_INDIRECT               0x00000006
+#define REG_CP_DRAW_INDIRECT_MULTI_STRIDE_INDEXED              0x00000008
 
-#define REG_A6XX_CP_DRAW_INDIRECT_MULTI_8                      0x00000008
-#define A6XX_CP_DRAW_INDIRECT_MULTI_8_STRIDE__MASK             0xffffffff
-#define A6XX_CP_DRAW_INDIRECT_MULTI_8_STRIDE__SHIFT            0
-static inline uint32_t A6XX_CP_DRAW_INDIRECT_MULTI_8_STRIDE(uint32_t val)
+
+#define REG_CP_DRAW_INDIRECT_MULTI_INDIRECT_INDIRECT           0x00000003
+
+#define REG_CP_DRAW_INDIRECT_MULTI_INDIRECT_COUNT_INDIRECT     0x00000005
+
+#define REG_CP_DRAW_INDIRECT_MULTI_STRIDE_INDIRECT             0x00000007
+
+
+#define REG_CP_DRAW_INDIRECT_MULTI_INDEX_INDIRECT_INDEXED      0x00000003
+
+#define REG_CP_DRAW_INDIRECT_MULTI_MAX_INDICES_INDIRECT_INDEXED        0x00000005
+
+#define REG_CP_DRAW_INDIRECT_MULTI_INDIRECT_INDIRECT_INDEXED   0x00000006
+
+#define REG_CP_DRAW_INDIRECT_MULTI_INDIRECT_COUNT_INDIRECT_INDEXED     0x00000008
+
+#define REG_CP_DRAW_INDIRECT_MULTI_STRIDE_INDIRECT_INDEXED     0x0000000a
+
+#define REG_CP_DRAW_PRED_ENABLE_GLOBAL_0                       0x00000000
+#define CP_DRAW_PRED_ENABLE_GLOBAL_0_ENABLE                    0x00000001
+
+#define REG_CP_DRAW_PRED_ENABLE_LOCAL_0                                0x00000000
+#define CP_DRAW_PRED_ENABLE_LOCAL_0_ENABLE                     0x00000001
+
+#define REG_CP_DRAW_PRED_SET_0                                 0x00000000
+#define CP_DRAW_PRED_SET_0_SRC__MASK                           0x000000f0
+#define CP_DRAW_PRED_SET_0_SRC__SHIFT                          4
+static inline uint32_t CP_DRAW_PRED_SET_0_SRC(enum cp_draw_pred_src val)
 {
-       return ((val) << A6XX_CP_DRAW_INDIRECT_MULTI_8_STRIDE__SHIFT) & A6XX_CP_DRAW_INDIRECT_MULTI_8_STRIDE__MASK;
+       return ((val) << CP_DRAW_PRED_SET_0_SRC__SHIFT) & CP_DRAW_PRED_SET_0_SRC__MASK;
 }
+#define CP_DRAW_PRED_SET_0_TEST__MASK                          0x00000100
+#define CP_DRAW_PRED_SET_0_TEST__SHIFT                         8
+static inline uint32_t CP_DRAW_PRED_SET_0_TEST(enum cp_draw_pred_test val)
+{
+       return ((val) << CP_DRAW_PRED_SET_0_TEST__SHIFT) & CP_DRAW_PRED_SET_0_TEST__MASK;
+}
+
+#define REG_CP_DRAW_PRED_SET_MEM_ADDR                          0x00000001
 
 static inline uint32_t REG_CP_SET_DRAW_STATE_(uint32_t i0) { return 0x00000000 + 0x3*i0; }
 
index f1d1de578e4c74f1ebb1e9af02235cb632e7bd9b..c82d1bd093597056ad8dedc2366a1327ee538f81 100644 (file)
@@ -8,19 +8,27 @@ http://github.com/freedreno/envytools/
 git clone https://github.com/freedreno/envytools.git
 
 The rules-ng-ng source files this header was generated from are:
-- /home/robclark/src/envytools/rnndb/msm.xml                 (    676 bytes, from 2020-07-23 21:58:14)
-- /home/robclark/src/envytools/rnndb/freedreno_copyright.xml (   1572 bytes, from 2020-07-23 21:58:14)
-- /home/robclark/src/envytools/rnndb/mdp/mdp4.xml            (  20915 bytes, from 2020-07-23 21:58:14)
-- /home/robclark/src/envytools/rnndb/mdp/mdp_common.xml      (   2849 bytes, from 2020-07-23 21:58:14)
-- /home/robclark/src/envytools/rnndb/mdp/mdp5.xml            (  37411 bytes, from 2020-07-23 21:58:14)
-- /home/robclark/src/envytools/rnndb/dsi/dsi.xml             (  42301 bytes, from 2020-07-23 21:58:14)
-- /home/robclark/src/envytools/rnndb/dsi/sfpb.xml            (    602 bytes, from 2020-07-23 21:58:14)
-- /home/robclark/src/envytools/rnndb/dsi/mmss_cc.xml         (   1686 bytes, from 2020-07-23 21:58:14)
-- /home/robclark/src/envytools/rnndb/hdmi/qfprom.xml         (    600 bytes, from 2020-07-23 21:58:14)
-- /home/robclark/src/envytools/rnndb/hdmi/hdmi.xml           (  41874 bytes, from 2020-07-23 21:58:14)
-- /home/robclark/src/envytools/rnndb/edp/edp.xml             (  10416 bytes, from 2020-07-23 21:58:14)
-
-Copyright (C) 2013-2020 by the following authors:
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/msm.xml                   (    981 bytes, from 2021-06-05 21:37:42)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/freedreno_copyright.xml   (   1572 bytes, from 2021-02-18 16:45:44)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/mdp/mdp4.xml              (  20912 bytes, from 2021-02-18 16:45:44)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/mdp/mdp_common.xml        (   2849 bytes, from 2021-02-18 16:45:44)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/mdp/mdp5.xml              (  37461 bytes, from 2021-02-18 16:45:44)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/dsi/dsi.xml               (  15291 bytes, from 2021-06-15 22:36:13)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/dsi/dsi_phy_v2.xml        (   3236 bytes, from 2021-06-05 21:37:42)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/dsi/dsi_phy_28nm_8960.xml (   4935 bytes, from 2021-05-21 19:18:08)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/dsi/dsi_phy_28nm.xml      (   7004 bytes, from 2021-05-21 19:18:08)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/dsi/dsi_phy_20nm.xml      (   3712 bytes, from 2021-05-21 19:18:08)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/dsi/dsi_phy_14nm.xml      (   5381 bytes, from 2021-05-21 19:18:08)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/dsi/dsi_phy_10nm.xml      (   4499 bytes, from 2021-05-21 19:18:08)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/dsi/dsi_phy_7nm.xml       (  10953 bytes, from 2021-05-21 19:18:08)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/dsi/dsi_phy_5nm.xml       (  10900 bytes, from 2021-05-21 19:18:08)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/dsi/sfpb.xml              (    602 bytes, from 2021-02-18 16:45:44)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/dsi/mmss_cc.xml           (   1686 bytes, from 2021-02-18 16:45:44)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/hdmi/qfprom.xml           (    600 bytes, from 2021-02-18 16:45:44)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/hdmi/hdmi.xml             (  41874 bytes, from 2021-02-18 16:45:44)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/edp/edp.xml               (  10416 bytes, from 2021-02-18 16:45:44)
+
+Copyright (C) 2013-2021 by the following authors:
 - Rob Clark <robdclark@gmail.com> (robclark)
 - Ilia Mirkin <imirkin@alum.mit.edu> (imirkin)
 
index 4cf0953009f7acdecdddd9b09c27e8503c293f1b..0e21cf3f9e2edacf0e8c9cf7cc70203f79e9e293 100644 (file)
@@ -8,19 +8,27 @@ http://github.com/freedreno/envytools/
 git clone https://github.com/freedreno/envytools.git
 
 The rules-ng-ng source files this header was generated from are:
-- /home/robclark/src/envytools/rnndb/msm.xml                 (    676 bytes, from 2020-07-23 21:58:14)
-- /home/robclark/src/envytools/rnndb/freedreno_copyright.xml (   1572 bytes, from 2020-07-23 21:58:14)
-- /home/robclark/src/envytools/rnndb/mdp/mdp4.xml            (  20915 bytes, from 2020-07-23 21:58:14)
-- /home/robclark/src/envytools/rnndb/mdp/mdp_common.xml      (   2849 bytes, from 2020-07-23 21:58:14)
-- /home/robclark/src/envytools/rnndb/mdp/mdp5.xml            (  37411 bytes, from 2020-07-23 21:58:14)
-- /home/robclark/src/envytools/rnndb/dsi/dsi.xml             (  42301 bytes, from 2020-07-23 21:58:14)
-- /home/robclark/src/envytools/rnndb/dsi/sfpb.xml            (    602 bytes, from 2020-07-23 21:58:14)
-- /home/robclark/src/envytools/rnndb/dsi/mmss_cc.xml         (   1686 bytes, from 2020-07-23 21:58:14)
-- /home/robclark/src/envytools/rnndb/hdmi/qfprom.xml         (    600 bytes, from 2020-07-23 21:58:14)
-- /home/robclark/src/envytools/rnndb/hdmi/hdmi.xml           (  41874 bytes, from 2020-07-23 21:58:14)
-- /home/robclark/src/envytools/rnndb/edp/edp.xml             (  10416 bytes, from 2020-07-23 21:58:14)
-
-Copyright (C) 2013-2020 by the following authors:
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/msm.xml                   (    981 bytes, from 2021-06-05 21:37:42)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/freedreno_copyright.xml   (   1572 bytes, from 2021-02-18 16:45:44)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/mdp/mdp4.xml              (  20912 bytes, from 2021-02-18 16:45:44)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/mdp/mdp_common.xml        (   2849 bytes, from 2021-02-18 16:45:44)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/mdp/mdp5.xml              (  37461 bytes, from 2021-02-18 16:45:44)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/dsi/dsi.xml               (  15291 bytes, from 2021-06-15 22:36:13)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/dsi/dsi_phy_v2.xml        (   3236 bytes, from 2021-06-05 21:37:42)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/dsi/dsi_phy_28nm_8960.xml (   4935 bytes, from 2021-05-21 19:18:08)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/dsi/dsi_phy_28nm.xml      (   7004 bytes, from 2021-05-21 19:18:08)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/dsi/dsi_phy_20nm.xml      (   3712 bytes, from 2021-05-21 19:18:08)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/dsi/dsi_phy_14nm.xml      (   5381 bytes, from 2021-05-21 19:18:08)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/dsi/dsi_phy_10nm.xml      (   4499 bytes, from 2021-05-21 19:18:08)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/dsi/dsi_phy_7nm.xml       (  10953 bytes, from 2021-05-21 19:18:08)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/dsi/dsi_phy_5nm.xml       (  10900 bytes, from 2021-05-21 19:18:08)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/dsi/sfpb.xml              (    602 bytes, from 2021-02-18 16:45:44)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/dsi/mmss_cc.xml           (   1686 bytes, from 2021-02-18 16:45:44)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/hdmi/qfprom.xml           (    600 bytes, from 2021-02-18 16:45:44)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/hdmi/hdmi.xml             (  41874 bytes, from 2021-02-18 16:45:44)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/edp/edp.xml               (  10416 bytes, from 2021-02-18 16:45:44)
+
+Copyright (C) 2013-2021 by the following authors:
 - Rob Clark <robdclark@gmail.com> (robclark)
 - Ilia Mirkin <imirkin@alum.mit.edu> (imirkin)
 
@@ -80,6 +88,10 @@ enum mdp5_pipe {
        SSPP_CURSOR1 = 12,
 };
 
+enum mdp5_format {
+       DUMMY = 0,
+};
+
 enum mdp5_ctl_mode {
        MODE_NONE = 0,
        MODE_WB_0_BLOCK = 1,
index 4f51bea8fd3f9da4dfcec5af1bc3ed05e1f9eaa8..bb0066a637324a95a17512c4aa00939a6778d669 100644 (file)
@@ -8,19 +8,27 @@ http://github.com/freedreno/envytools/
 git clone https://github.com/freedreno/envytools.git
 
 The rules-ng-ng source files this header was generated from are:
-- /home/robclark/src/envytools/rnndb/msm.xml                 (    676 bytes, from 2020-07-23 21:58:14)
-- /home/robclark/src/envytools/rnndb/freedreno_copyright.xml (   1572 bytes, from 2020-07-23 21:58:14)
-- /home/robclark/src/envytools/rnndb/mdp/mdp4.xml            (  20915 bytes, from 2020-07-23 21:58:14)
-- /home/robclark/src/envytools/rnndb/mdp/mdp_common.xml      (   2849 bytes, from 2020-07-23 21:58:14)
-- /home/robclark/src/envytools/rnndb/mdp/mdp5.xml            (  37411 bytes, from 2020-07-23 21:58:14)
-- /home/robclark/src/envytools/rnndb/dsi/dsi.xml             (  42301 bytes, from 2020-07-23 21:58:14)
-- /home/robclark/src/envytools/rnndb/dsi/sfpb.xml            (    602 bytes, from 2020-07-23 21:58:14)
-- /home/robclark/src/envytools/rnndb/dsi/mmss_cc.xml         (   1686 bytes, from 2020-07-23 21:58:14)
-- /home/robclark/src/envytools/rnndb/hdmi/qfprom.xml         (    600 bytes, from 2020-07-23 21:58:14)
-- /home/robclark/src/envytools/rnndb/hdmi/hdmi.xml           (  41874 bytes, from 2020-07-23 21:58:14)
-- /home/robclark/src/envytools/rnndb/edp/edp.xml             (  10416 bytes, from 2020-07-23 21:58:14)
-
-Copyright (C) 2013-2020 by the following authors:
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/msm.xml                   (    981 bytes, from 2021-06-05 21:37:42)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/freedreno_copyright.xml   (   1572 bytes, from 2021-02-18 16:45:44)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/mdp/mdp4.xml              (  20912 bytes, from 2021-02-18 16:45:44)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/mdp/mdp_common.xml        (   2849 bytes, from 2021-02-18 16:45:44)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/mdp/mdp5.xml              (  37461 bytes, from 2021-02-18 16:45:44)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/dsi/dsi.xml               (  15291 bytes, from 2021-06-15 22:36:13)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/dsi/dsi_phy_v2.xml        (   3236 bytes, from 2021-06-05 21:37:42)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/dsi/dsi_phy_28nm_8960.xml (   4935 bytes, from 2021-05-21 19:18:08)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/dsi/dsi_phy_28nm.xml      (   7004 bytes, from 2021-05-21 19:18:08)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/dsi/dsi_phy_20nm.xml      (   3712 bytes, from 2021-05-21 19:18:08)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/dsi/dsi_phy_14nm.xml      (   5381 bytes, from 2021-05-21 19:18:08)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/dsi/dsi_phy_10nm.xml      (   4499 bytes, from 2021-05-21 19:18:08)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/dsi/dsi_phy_7nm.xml       (  10953 bytes, from 2021-05-21 19:18:08)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/dsi/dsi_phy_5nm.xml       (  10900 bytes, from 2021-05-21 19:18:08)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/dsi/sfpb.xml              (    602 bytes, from 2021-02-18 16:45:44)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/dsi/mmss_cc.xml           (   1686 bytes, from 2021-02-18 16:45:44)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/hdmi/qfprom.xml           (    600 bytes, from 2021-02-18 16:45:44)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/hdmi/hdmi.xml             (  41874 bytes, from 2021-02-18 16:45:44)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/edp/edp.xml               (  10416 bytes, from 2021-02-18 16:45:44)
+
+Copyright (C) 2013-2021 by the following authors:
 - Rob Clark <robdclark@gmail.com> (robclark)
 - Ilia Mirkin <imirkin@alum.mit.edu> (imirkin)
 
index 50eb4d1b8fddf8877e5047ca051630da9da37741..eadbcc78fd72d112321122be0fb4f654e9f7f579 100644 (file)
@@ -8,19 +8,27 @@ http://github.com/freedreno/envytools/
 git clone https://github.com/freedreno/envytools.git
 
 The rules-ng-ng source files this header was generated from are:
-- /home/robclark/src/envytools/rnndb/msm.xml                 (    676 bytes, from 2020-07-23 21:58:14)
-- /home/robclark/src/envytools/rnndb/freedreno_copyright.xml (   1572 bytes, from 2020-07-23 21:58:14)
-- /home/robclark/src/envytools/rnndb/mdp/mdp4.xml            (  20915 bytes, from 2020-07-23 21:58:14)
-- /home/robclark/src/envytools/rnndb/mdp/mdp_common.xml      (   2849 bytes, from 2020-07-23 21:58:14)
-- /home/robclark/src/envytools/rnndb/mdp/mdp5.xml            (  37411 bytes, from 2020-07-23 21:58:14)
-- /home/robclark/src/envytools/rnndb/dsi/dsi.xml             (  42301 bytes, from 2020-07-23 21:58:14)
-- /home/robclark/src/envytools/rnndb/dsi/sfpb.xml            (    602 bytes, from 2020-07-23 21:58:14)
-- /home/robclark/src/envytools/rnndb/dsi/mmss_cc.xml         (   1686 bytes, from 2020-07-23 21:58:14)
-- /home/robclark/src/envytools/rnndb/hdmi/qfprom.xml         (    600 bytes, from 2020-07-23 21:58:14)
-- /home/robclark/src/envytools/rnndb/hdmi/hdmi.xml           (  41874 bytes, from 2020-07-23 21:58:14)
-- /home/robclark/src/envytools/rnndb/edp/edp.xml             (  10416 bytes, from 2020-07-23 21:58:14)
-
-Copyright (C) 2013-2020 by the following authors:
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/msm.xml                   (    981 bytes, from 2021-06-05 21:37:42)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/freedreno_copyright.xml   (   1572 bytes, from 2021-02-18 16:45:44)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/mdp/mdp4.xml              (  20912 bytes, from 2021-02-18 16:45:44)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/mdp/mdp_common.xml        (   2849 bytes, from 2021-02-18 16:45:44)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/mdp/mdp5.xml              (  37461 bytes, from 2021-02-18 16:45:44)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/dsi/dsi.xml               (  15291 bytes, from 2021-06-15 22:36:13)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/dsi/dsi_phy_v2.xml        (   3236 bytes, from 2021-06-05 21:37:42)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/dsi/dsi_phy_28nm_8960.xml (   4935 bytes, from 2021-05-21 19:18:08)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/dsi/dsi_phy_28nm.xml      (   7004 bytes, from 2021-05-21 19:18:08)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/dsi/dsi_phy_20nm.xml      (   3712 bytes, from 2021-05-21 19:18:08)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/dsi/dsi_phy_14nm.xml      (   5381 bytes, from 2021-05-21 19:18:08)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/dsi/dsi_phy_10nm.xml      (   4499 bytes, from 2021-05-21 19:18:08)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/dsi/dsi_phy_7nm.xml       (  10953 bytes, from 2021-05-21 19:18:08)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/dsi/dsi_phy_5nm.xml       (  10900 bytes, from 2021-05-21 19:18:08)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/dsi/sfpb.xml              (    602 bytes, from 2021-02-18 16:45:44)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/dsi/mmss_cc.xml           (   1686 bytes, from 2021-02-18 16:45:44)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/hdmi/qfprom.xml           (    600 bytes, from 2021-02-18 16:45:44)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/hdmi/hdmi.xml             (  41874 bytes, from 2021-02-18 16:45:44)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/edp/edp.xml               (  10416 bytes, from 2021-02-18 16:45:44)
+
+Copyright (C) 2013-2021 by the following authors:
 - Rob Clark <robdclark@gmail.com> (robclark)
 - Ilia Mirkin <imirkin@alum.mit.edu> (imirkin)
 
@@ -621,1693 +629,7 @@ static inline uint32_t DSI_VERSION_MAJOR(uint32_t val)
        return ((val) << DSI_VERSION_MAJOR__SHIFT) & DSI_VERSION_MAJOR__MASK;
 }
 
-#define REG_DSI_PHY_PLL_CTRL_0                                 0x00000200
-#define DSI_PHY_PLL_CTRL_0_ENABLE                              0x00000001
-
-#define REG_DSI_PHY_PLL_CTRL_1                                 0x00000204
-
-#define REG_DSI_PHY_PLL_CTRL_2                                 0x00000208
-
-#define REG_DSI_PHY_PLL_CTRL_3                                 0x0000020c
-
-#define REG_DSI_PHY_PLL_CTRL_4                                 0x00000210
-
-#define REG_DSI_PHY_PLL_CTRL_5                                 0x00000214
-
-#define REG_DSI_PHY_PLL_CTRL_6                                 0x00000218
-
-#define REG_DSI_PHY_PLL_CTRL_7                                 0x0000021c
-
-#define REG_DSI_PHY_PLL_CTRL_8                                 0x00000220
-
-#define REG_DSI_PHY_PLL_CTRL_9                                 0x00000224
-
-#define REG_DSI_PHY_PLL_CTRL_10                                        0x00000228
-
-#define REG_DSI_PHY_PLL_CTRL_11                                        0x0000022c
-
-#define REG_DSI_PHY_PLL_CTRL_12                                        0x00000230
-
-#define REG_DSI_PHY_PLL_CTRL_13                                        0x00000234
-
-#define REG_DSI_PHY_PLL_CTRL_14                                        0x00000238
-
-#define REG_DSI_PHY_PLL_CTRL_15                                        0x0000023c
-
-#define REG_DSI_PHY_PLL_CTRL_16                                        0x00000240
-
-#define REG_DSI_PHY_PLL_CTRL_17                                        0x00000244
-
-#define REG_DSI_PHY_PLL_CTRL_18                                        0x00000248
-
-#define REG_DSI_PHY_PLL_CTRL_19                                        0x0000024c
-
-#define REG_DSI_PHY_PLL_CTRL_20                                        0x00000250
-
-#define REG_DSI_PHY_PLL_STATUS                                 0x00000280
-#define DSI_PHY_PLL_STATUS_PLL_BUSY                            0x00000001
-
-#define REG_DSI_8x60_PHY_TPA_CTRL_1                            0x00000258
-
-#define REG_DSI_8x60_PHY_TPA_CTRL_2                            0x0000025c
-
-#define REG_DSI_8x60_PHY_TIMING_CTRL_0                         0x00000260
-
-#define REG_DSI_8x60_PHY_TIMING_CTRL_1                         0x00000264
-
-#define REG_DSI_8x60_PHY_TIMING_CTRL_2                         0x00000268
-
-#define REG_DSI_8x60_PHY_TIMING_CTRL_3                         0x0000026c
-
-#define REG_DSI_8x60_PHY_TIMING_CTRL_4                         0x00000270
-
-#define REG_DSI_8x60_PHY_TIMING_CTRL_5                         0x00000274
-
-#define REG_DSI_8x60_PHY_TIMING_CTRL_6                         0x00000278
-
-#define REG_DSI_8x60_PHY_TIMING_CTRL_7                         0x0000027c
-
-#define REG_DSI_8x60_PHY_TIMING_CTRL_8                         0x00000280
-
-#define REG_DSI_8x60_PHY_TIMING_CTRL_9                         0x00000284
-
-#define REG_DSI_8x60_PHY_TIMING_CTRL_10                                0x00000288
-
-#define REG_DSI_8x60_PHY_TIMING_CTRL_11                                0x0000028c
-
-#define REG_DSI_8x60_PHY_CTRL_0                                        0x00000290
-
-#define REG_DSI_8x60_PHY_CTRL_1                                        0x00000294
-
-#define REG_DSI_8x60_PHY_CTRL_2                                        0x00000298
-
-#define REG_DSI_8x60_PHY_CTRL_3                                        0x0000029c
-
-#define REG_DSI_8x60_PHY_STRENGTH_0                            0x000002a0
-
-#define REG_DSI_8x60_PHY_STRENGTH_1                            0x000002a4
-
-#define REG_DSI_8x60_PHY_STRENGTH_2                            0x000002a8
-
-#define REG_DSI_8x60_PHY_STRENGTH_3                            0x000002ac
-
-#define REG_DSI_8x60_PHY_REGULATOR_CTRL_0                      0x000002cc
-
-#define REG_DSI_8x60_PHY_REGULATOR_CTRL_1                      0x000002d0
-
-#define REG_DSI_8x60_PHY_REGULATOR_CTRL_2                      0x000002d4
-
-#define REG_DSI_8x60_PHY_REGULATOR_CTRL_3                      0x000002d8
-
-#define REG_DSI_8x60_PHY_REGULATOR_CTRL_4                      0x000002dc
-
-#define REG_DSI_8x60_PHY_CAL_HW_TRIGGER                                0x000000f0
-
-#define REG_DSI_8x60_PHY_CAL_CTRL                              0x000000f4
-
-#define REG_DSI_8x60_PHY_CAL_STATUS                            0x000000fc
-#define DSI_8x60_PHY_CAL_STATUS_CAL_BUSY                       0x10000000
-
-static inline uint32_t REG_DSI_28nm_8960_PHY_LN(uint32_t i0) { return 0x00000000 + 0x40*i0; }
-
-static inline uint32_t REG_DSI_28nm_8960_PHY_LN_CFG_0(uint32_t i0) { return 0x00000000 + 0x40*i0; }
-
-static inline uint32_t REG_DSI_28nm_8960_PHY_LN_CFG_1(uint32_t i0) { return 0x00000004 + 0x40*i0; }
-
-static inline uint32_t REG_DSI_28nm_8960_PHY_LN_CFG_2(uint32_t i0) { return 0x00000008 + 0x40*i0; }
-
-static inline uint32_t REG_DSI_28nm_8960_PHY_LN_TEST_DATAPATH(uint32_t i0) { return 0x0000000c + 0x40*i0; }
-
-static inline uint32_t REG_DSI_28nm_8960_PHY_LN_TEST_STR_0(uint32_t i0) { return 0x00000014 + 0x40*i0; }
-
-static inline uint32_t REG_DSI_28nm_8960_PHY_LN_TEST_STR_1(uint32_t i0) { return 0x00000018 + 0x40*i0; }
-
-#define REG_DSI_28nm_8960_PHY_LNCK_CFG_0                       0x00000100
-
-#define REG_DSI_28nm_8960_PHY_LNCK_CFG_1                       0x00000104
-
-#define REG_DSI_28nm_8960_PHY_LNCK_CFG_2                       0x00000108
-
-#define REG_DSI_28nm_8960_PHY_LNCK_TEST_DATAPATH               0x0000010c
-
-#define REG_DSI_28nm_8960_PHY_LNCK_TEST_STR0                   0x00000114
-
-#define REG_DSI_28nm_8960_PHY_LNCK_TEST_STR1                   0x00000118
-
-#define REG_DSI_28nm_8960_PHY_TIMING_CTRL_0                    0x00000140
-#define DSI_28nm_8960_PHY_TIMING_CTRL_0_CLK_ZERO__MASK         0x000000ff
-#define DSI_28nm_8960_PHY_TIMING_CTRL_0_CLK_ZERO__SHIFT                0
-static inline uint32_t DSI_28nm_8960_PHY_TIMING_CTRL_0_CLK_ZERO(uint32_t val)
-{
-       return ((val) << DSI_28nm_8960_PHY_TIMING_CTRL_0_CLK_ZERO__SHIFT) & DSI_28nm_8960_PHY_TIMING_CTRL_0_CLK_ZERO__MASK;
-}
-
-#define REG_DSI_28nm_8960_PHY_TIMING_CTRL_1                    0x00000144
-#define DSI_28nm_8960_PHY_TIMING_CTRL_1_CLK_TRAIL__MASK                0x000000ff
-#define DSI_28nm_8960_PHY_TIMING_CTRL_1_CLK_TRAIL__SHIFT       0
-static inline uint32_t DSI_28nm_8960_PHY_TIMING_CTRL_1_CLK_TRAIL(uint32_t val)
-{
-       return ((val) << DSI_28nm_8960_PHY_TIMING_CTRL_1_CLK_TRAIL__SHIFT) & DSI_28nm_8960_PHY_TIMING_CTRL_1_CLK_TRAIL__MASK;
-}
-
-#define REG_DSI_28nm_8960_PHY_TIMING_CTRL_2                    0x00000148
-#define DSI_28nm_8960_PHY_TIMING_CTRL_2_CLK_PREPARE__MASK      0x000000ff
-#define DSI_28nm_8960_PHY_TIMING_CTRL_2_CLK_PREPARE__SHIFT     0
-static inline uint32_t DSI_28nm_8960_PHY_TIMING_CTRL_2_CLK_PREPARE(uint32_t val)
-{
-       return ((val) << DSI_28nm_8960_PHY_TIMING_CTRL_2_CLK_PREPARE__SHIFT) & DSI_28nm_8960_PHY_TIMING_CTRL_2_CLK_PREPARE__MASK;
-}
-
-#define REG_DSI_28nm_8960_PHY_TIMING_CTRL_3                    0x0000014c
-
-#define REG_DSI_28nm_8960_PHY_TIMING_CTRL_4                    0x00000150
-#define DSI_28nm_8960_PHY_TIMING_CTRL_4_HS_EXIT__MASK          0x000000ff
-#define DSI_28nm_8960_PHY_TIMING_CTRL_4_HS_EXIT__SHIFT         0
-static inline uint32_t DSI_28nm_8960_PHY_TIMING_CTRL_4_HS_EXIT(uint32_t val)
-{
-       return ((val) << DSI_28nm_8960_PHY_TIMING_CTRL_4_HS_EXIT__SHIFT) & DSI_28nm_8960_PHY_TIMING_CTRL_4_HS_EXIT__MASK;
-}
-
-#define REG_DSI_28nm_8960_PHY_TIMING_CTRL_5                    0x00000154
-#define DSI_28nm_8960_PHY_TIMING_CTRL_5_HS_ZERO__MASK          0x000000ff
-#define DSI_28nm_8960_PHY_TIMING_CTRL_5_HS_ZERO__SHIFT         0
-static inline uint32_t DSI_28nm_8960_PHY_TIMING_CTRL_5_HS_ZERO(uint32_t val)
-{
-       return ((val) << DSI_28nm_8960_PHY_TIMING_CTRL_5_HS_ZERO__SHIFT) & DSI_28nm_8960_PHY_TIMING_CTRL_5_HS_ZERO__MASK;
-}
-
-#define REG_DSI_28nm_8960_PHY_TIMING_CTRL_6                    0x00000158
-#define DSI_28nm_8960_PHY_TIMING_CTRL_6_HS_PREPARE__MASK       0x000000ff
-#define DSI_28nm_8960_PHY_TIMING_CTRL_6_HS_PREPARE__SHIFT      0
-static inline uint32_t DSI_28nm_8960_PHY_TIMING_CTRL_6_HS_PREPARE(uint32_t val)
-{
-       return ((val) << DSI_28nm_8960_PHY_TIMING_CTRL_6_HS_PREPARE__SHIFT) & DSI_28nm_8960_PHY_TIMING_CTRL_6_HS_PREPARE__MASK;
-}
-
-#define REG_DSI_28nm_8960_PHY_TIMING_CTRL_7                    0x0000015c
-#define DSI_28nm_8960_PHY_TIMING_CTRL_7_HS_TRAIL__MASK         0x000000ff
-#define DSI_28nm_8960_PHY_TIMING_CTRL_7_HS_TRAIL__SHIFT                0
-static inline uint32_t DSI_28nm_8960_PHY_TIMING_CTRL_7_HS_TRAIL(uint32_t val)
-{
-       return ((val) << DSI_28nm_8960_PHY_TIMING_CTRL_7_HS_TRAIL__SHIFT) & DSI_28nm_8960_PHY_TIMING_CTRL_7_HS_TRAIL__MASK;
-}
-
-#define REG_DSI_28nm_8960_PHY_TIMING_CTRL_8                    0x00000160
-#define DSI_28nm_8960_PHY_TIMING_CTRL_8_HS_RQST__MASK          0x000000ff
-#define DSI_28nm_8960_PHY_TIMING_CTRL_8_HS_RQST__SHIFT         0
-static inline uint32_t DSI_28nm_8960_PHY_TIMING_CTRL_8_HS_RQST(uint32_t val)
-{
-       return ((val) << DSI_28nm_8960_PHY_TIMING_CTRL_8_HS_RQST__SHIFT) & DSI_28nm_8960_PHY_TIMING_CTRL_8_HS_RQST__MASK;
-}
-
-#define REG_DSI_28nm_8960_PHY_TIMING_CTRL_9                    0x00000164
-#define DSI_28nm_8960_PHY_TIMING_CTRL_9_TA_GO__MASK            0x00000007
-#define DSI_28nm_8960_PHY_TIMING_CTRL_9_TA_GO__SHIFT           0
-static inline uint32_t DSI_28nm_8960_PHY_TIMING_CTRL_9_TA_GO(uint32_t val)
-{
-       return ((val) << DSI_28nm_8960_PHY_TIMING_CTRL_9_TA_GO__SHIFT) & DSI_28nm_8960_PHY_TIMING_CTRL_9_TA_GO__MASK;
-}
-#define DSI_28nm_8960_PHY_TIMING_CTRL_9_TA_SURE__MASK          0x00000070
-#define DSI_28nm_8960_PHY_TIMING_CTRL_9_TA_SURE__SHIFT         4
-static inline uint32_t DSI_28nm_8960_PHY_TIMING_CTRL_9_TA_SURE(uint32_t val)
-{
-       return ((val) << DSI_28nm_8960_PHY_TIMING_CTRL_9_TA_SURE__SHIFT) & DSI_28nm_8960_PHY_TIMING_CTRL_9_TA_SURE__MASK;
-}
-
-#define REG_DSI_28nm_8960_PHY_TIMING_CTRL_10                   0x00000168
-#define DSI_28nm_8960_PHY_TIMING_CTRL_10_TA_GET__MASK          0x00000007
-#define DSI_28nm_8960_PHY_TIMING_CTRL_10_TA_GET__SHIFT         0
-static inline uint32_t DSI_28nm_8960_PHY_TIMING_CTRL_10_TA_GET(uint32_t val)
-{
-       return ((val) << DSI_28nm_8960_PHY_TIMING_CTRL_10_TA_GET__SHIFT) & DSI_28nm_8960_PHY_TIMING_CTRL_10_TA_GET__MASK;
-}
-
-#define REG_DSI_28nm_8960_PHY_TIMING_CTRL_11                   0x0000016c
-#define DSI_28nm_8960_PHY_TIMING_CTRL_11_TRIG3_CMD__MASK       0x000000ff
-#define DSI_28nm_8960_PHY_TIMING_CTRL_11_TRIG3_CMD__SHIFT      0
-static inline uint32_t DSI_28nm_8960_PHY_TIMING_CTRL_11_TRIG3_CMD(uint32_t val)
-{
-       return ((val) << DSI_28nm_8960_PHY_TIMING_CTRL_11_TRIG3_CMD__SHIFT) & DSI_28nm_8960_PHY_TIMING_CTRL_11_TRIG3_CMD__MASK;
-}
-
-#define REG_DSI_28nm_8960_PHY_CTRL_0                           0x00000170
-
-#define REG_DSI_28nm_8960_PHY_CTRL_1                           0x00000174
-
-#define REG_DSI_28nm_8960_PHY_CTRL_2                           0x00000178
-
-#define REG_DSI_28nm_8960_PHY_CTRL_3                           0x0000017c
-
-#define REG_DSI_28nm_8960_PHY_STRENGTH_0                       0x00000180
-
-#define REG_DSI_28nm_8960_PHY_STRENGTH_1                       0x00000184
-
-#define REG_DSI_28nm_8960_PHY_STRENGTH_2                       0x00000188
-
-#define REG_DSI_28nm_8960_PHY_BIST_CTRL_0                      0x0000018c
-
-#define REG_DSI_28nm_8960_PHY_BIST_CTRL_1                      0x00000190
-
-#define REG_DSI_28nm_8960_PHY_BIST_CTRL_2                      0x00000194
-
-#define REG_DSI_28nm_8960_PHY_BIST_CTRL_3                      0x00000198
-
-#define REG_DSI_28nm_8960_PHY_BIST_CTRL_4                      0x0000019c
-
-#define REG_DSI_28nm_8960_PHY_LDO_CTRL                         0x000001b0
-
-#define REG_DSI_28nm_8960_PHY_MISC_REGULATOR_CTRL_0            0x00000000
-
-#define REG_DSI_28nm_8960_PHY_MISC_REGULATOR_CTRL_1            0x00000004
-
-#define REG_DSI_28nm_8960_PHY_MISC_REGULATOR_CTRL_2            0x00000008
-
-#define REG_DSI_28nm_8960_PHY_MISC_REGULATOR_CTRL_3            0x0000000c
-
-#define REG_DSI_28nm_8960_PHY_MISC_REGULATOR_CTRL_4            0x00000010
-
-#define REG_DSI_28nm_8960_PHY_MISC_REGULATOR_CTRL_5            0x00000014
-
-#define REG_DSI_28nm_8960_PHY_MISC_REGULATOR_CAL_PWR_CFG       0x00000018
-
-#define REG_DSI_28nm_8960_PHY_MISC_CAL_HW_TRIGGER              0x00000028
-
-#define REG_DSI_28nm_8960_PHY_MISC_CAL_SW_CFG_0                        0x0000002c
-
-#define REG_DSI_28nm_8960_PHY_MISC_CAL_SW_CFG_1                        0x00000030
-
-#define REG_DSI_28nm_8960_PHY_MISC_CAL_SW_CFG_2                        0x00000034
-
-#define REG_DSI_28nm_8960_PHY_MISC_CAL_HW_CFG_0                        0x00000038
-
-#define REG_DSI_28nm_8960_PHY_MISC_CAL_HW_CFG_1                        0x0000003c
-
-#define REG_DSI_28nm_8960_PHY_MISC_CAL_HW_CFG_2                        0x00000040
-
-#define REG_DSI_28nm_8960_PHY_MISC_CAL_HW_CFG_3                        0x00000044
-
-#define REG_DSI_28nm_8960_PHY_MISC_CAL_HW_CFG_4                        0x00000048
-
-#define REG_DSI_28nm_8960_PHY_MISC_CAL_STATUS                  0x00000050
-#define DSI_28nm_8960_PHY_MISC_CAL_STATUS_CAL_BUSY             0x00000010
-
-#define REG_DSI_28nm_8960_PHY_PLL_CTRL_0                       0x00000000
-#define DSI_28nm_8960_PHY_PLL_CTRL_0_ENABLE                    0x00000001
-
-#define REG_DSI_28nm_8960_PHY_PLL_CTRL_1                       0x00000004
-
-#define REG_DSI_28nm_8960_PHY_PLL_CTRL_2                       0x00000008
-
-#define REG_DSI_28nm_8960_PHY_PLL_CTRL_3                       0x0000000c
-
-#define REG_DSI_28nm_8960_PHY_PLL_CTRL_4                       0x00000010
-
-#define REG_DSI_28nm_8960_PHY_PLL_CTRL_5                       0x00000014
-
-#define REG_DSI_28nm_8960_PHY_PLL_CTRL_6                       0x00000018
-
-#define REG_DSI_28nm_8960_PHY_PLL_CTRL_7                       0x0000001c
-
-#define REG_DSI_28nm_8960_PHY_PLL_CTRL_8                       0x00000020
-
-#define REG_DSI_28nm_8960_PHY_PLL_CTRL_9                       0x00000024
-
-#define REG_DSI_28nm_8960_PHY_PLL_CTRL_10                      0x00000028
-
-#define REG_DSI_28nm_8960_PHY_PLL_CTRL_11                      0x0000002c
-
-#define REG_DSI_28nm_8960_PHY_PLL_CTRL_12                      0x00000030
-
-#define REG_DSI_28nm_8960_PHY_PLL_CTRL_13                      0x00000034
-
-#define REG_DSI_28nm_8960_PHY_PLL_CTRL_14                      0x00000038
-
-#define REG_DSI_28nm_8960_PHY_PLL_CTRL_15                      0x0000003c
-
-#define REG_DSI_28nm_8960_PHY_PLL_CTRL_16                      0x00000040
-
-#define REG_DSI_28nm_8960_PHY_PLL_CTRL_17                      0x00000044
-
-#define REG_DSI_28nm_8960_PHY_PLL_CTRL_18                      0x00000048
-
-#define REG_DSI_28nm_8960_PHY_PLL_CTRL_19                      0x0000004c
-
-#define REG_DSI_28nm_8960_PHY_PLL_CTRL_20                      0x00000050
-
-#define REG_DSI_28nm_8960_PHY_PLL_RDY                          0x00000080
-#define DSI_28nm_8960_PHY_PLL_RDY_PLL_RDY                      0x00000001
-
-static inline uint32_t REG_DSI_28nm_PHY_LN(uint32_t i0) { return 0x00000000 + 0x40*i0; }
-
-static inline uint32_t REG_DSI_28nm_PHY_LN_CFG_0(uint32_t i0) { return 0x00000000 + 0x40*i0; }
-
-static inline uint32_t REG_DSI_28nm_PHY_LN_CFG_1(uint32_t i0) { return 0x00000004 + 0x40*i0; }
-
-static inline uint32_t REG_DSI_28nm_PHY_LN_CFG_2(uint32_t i0) { return 0x00000008 + 0x40*i0; }
-
-static inline uint32_t REG_DSI_28nm_PHY_LN_CFG_3(uint32_t i0) { return 0x0000000c + 0x40*i0; }
-
-static inline uint32_t REG_DSI_28nm_PHY_LN_CFG_4(uint32_t i0) { return 0x00000010 + 0x40*i0; }
-
-static inline uint32_t REG_DSI_28nm_PHY_LN_TEST_DATAPATH(uint32_t i0) { return 0x00000014 + 0x40*i0; }
-
-static inline uint32_t REG_DSI_28nm_PHY_LN_DEBUG_SEL(uint32_t i0) { return 0x00000018 + 0x40*i0; }
-
-static inline uint32_t REG_DSI_28nm_PHY_LN_TEST_STR_0(uint32_t i0) { return 0x0000001c + 0x40*i0; }
-
-static inline uint32_t REG_DSI_28nm_PHY_LN_TEST_STR_1(uint32_t i0) { return 0x00000020 + 0x40*i0; }
-
-#define REG_DSI_28nm_PHY_LNCK_CFG_0                            0x00000100
-
-#define REG_DSI_28nm_PHY_LNCK_CFG_1                            0x00000104
-
-#define REG_DSI_28nm_PHY_LNCK_CFG_2                            0x00000108
-
-#define REG_DSI_28nm_PHY_LNCK_CFG_3                            0x0000010c
-
-#define REG_DSI_28nm_PHY_LNCK_CFG_4                            0x00000110
-
-#define REG_DSI_28nm_PHY_LNCK_TEST_DATAPATH                    0x00000114
-
-#define REG_DSI_28nm_PHY_LNCK_DEBUG_SEL                                0x00000118
-
-#define REG_DSI_28nm_PHY_LNCK_TEST_STR0                                0x0000011c
-
-#define REG_DSI_28nm_PHY_LNCK_TEST_STR1                                0x00000120
-
-#define REG_DSI_28nm_PHY_TIMING_CTRL_0                         0x00000140
-#define DSI_28nm_PHY_TIMING_CTRL_0_CLK_ZERO__MASK              0x000000ff
-#define DSI_28nm_PHY_TIMING_CTRL_0_CLK_ZERO__SHIFT             0
-static inline uint32_t DSI_28nm_PHY_TIMING_CTRL_0_CLK_ZERO(uint32_t val)
-{
-       return ((val) << DSI_28nm_PHY_TIMING_CTRL_0_CLK_ZERO__SHIFT) & DSI_28nm_PHY_TIMING_CTRL_0_CLK_ZERO__MASK;
-}
-
-#define REG_DSI_28nm_PHY_TIMING_CTRL_1                         0x00000144
-#define DSI_28nm_PHY_TIMING_CTRL_1_CLK_TRAIL__MASK             0x000000ff
-#define DSI_28nm_PHY_TIMING_CTRL_1_CLK_TRAIL__SHIFT            0
-static inline uint32_t DSI_28nm_PHY_TIMING_CTRL_1_CLK_TRAIL(uint32_t val)
-{
-       return ((val) << DSI_28nm_PHY_TIMING_CTRL_1_CLK_TRAIL__SHIFT) & DSI_28nm_PHY_TIMING_CTRL_1_CLK_TRAIL__MASK;
-}
-
-#define REG_DSI_28nm_PHY_TIMING_CTRL_2                         0x00000148
-#define DSI_28nm_PHY_TIMING_CTRL_2_CLK_PREPARE__MASK           0x000000ff
-#define DSI_28nm_PHY_TIMING_CTRL_2_CLK_PREPARE__SHIFT          0
-static inline uint32_t DSI_28nm_PHY_TIMING_CTRL_2_CLK_PREPARE(uint32_t val)
-{
-       return ((val) << DSI_28nm_PHY_TIMING_CTRL_2_CLK_PREPARE__SHIFT) & DSI_28nm_PHY_TIMING_CTRL_2_CLK_PREPARE__MASK;
-}
-
-#define REG_DSI_28nm_PHY_TIMING_CTRL_3                         0x0000014c
-#define DSI_28nm_PHY_TIMING_CTRL_3_CLK_ZERO_8                  0x00000001
-
-#define REG_DSI_28nm_PHY_TIMING_CTRL_4                         0x00000150
-#define DSI_28nm_PHY_TIMING_CTRL_4_HS_EXIT__MASK               0x000000ff
-#define DSI_28nm_PHY_TIMING_CTRL_4_HS_EXIT__SHIFT              0
-static inline uint32_t DSI_28nm_PHY_TIMING_CTRL_4_HS_EXIT(uint32_t val)
-{
-       return ((val) << DSI_28nm_PHY_TIMING_CTRL_4_HS_EXIT__SHIFT) & DSI_28nm_PHY_TIMING_CTRL_4_HS_EXIT__MASK;
-}
-
-#define REG_DSI_28nm_PHY_TIMING_CTRL_5                         0x00000154
-#define DSI_28nm_PHY_TIMING_CTRL_5_HS_ZERO__MASK               0x000000ff
-#define DSI_28nm_PHY_TIMING_CTRL_5_HS_ZERO__SHIFT              0
-static inline uint32_t DSI_28nm_PHY_TIMING_CTRL_5_HS_ZERO(uint32_t val)
-{
-       return ((val) << DSI_28nm_PHY_TIMING_CTRL_5_HS_ZERO__SHIFT) & DSI_28nm_PHY_TIMING_CTRL_5_HS_ZERO__MASK;
-}
-
-#define REG_DSI_28nm_PHY_TIMING_CTRL_6                         0x00000158
-#define DSI_28nm_PHY_TIMING_CTRL_6_HS_PREPARE__MASK            0x000000ff
-#define DSI_28nm_PHY_TIMING_CTRL_6_HS_PREPARE__SHIFT           0
-static inline uint32_t DSI_28nm_PHY_TIMING_CTRL_6_HS_PREPARE(uint32_t val)
-{
-       return ((val) << DSI_28nm_PHY_TIMING_CTRL_6_HS_PREPARE__SHIFT) & DSI_28nm_PHY_TIMING_CTRL_6_HS_PREPARE__MASK;
-}
-
-#define REG_DSI_28nm_PHY_TIMING_CTRL_7                         0x0000015c
-#define DSI_28nm_PHY_TIMING_CTRL_7_HS_TRAIL__MASK              0x000000ff
-#define DSI_28nm_PHY_TIMING_CTRL_7_HS_TRAIL__SHIFT             0
-static inline uint32_t DSI_28nm_PHY_TIMING_CTRL_7_HS_TRAIL(uint32_t val)
-{
-       return ((val) << DSI_28nm_PHY_TIMING_CTRL_7_HS_TRAIL__SHIFT) & DSI_28nm_PHY_TIMING_CTRL_7_HS_TRAIL__MASK;
-}
-
-#define REG_DSI_28nm_PHY_TIMING_CTRL_8                         0x00000160
-#define DSI_28nm_PHY_TIMING_CTRL_8_HS_RQST__MASK               0x000000ff
-#define DSI_28nm_PHY_TIMING_CTRL_8_HS_RQST__SHIFT              0
-static inline uint32_t DSI_28nm_PHY_TIMING_CTRL_8_HS_RQST(uint32_t val)
-{
-       return ((val) << DSI_28nm_PHY_TIMING_CTRL_8_HS_RQST__SHIFT) & DSI_28nm_PHY_TIMING_CTRL_8_HS_RQST__MASK;
-}
-
-#define REG_DSI_28nm_PHY_TIMING_CTRL_9                         0x00000164
-#define DSI_28nm_PHY_TIMING_CTRL_9_TA_GO__MASK                 0x00000007
-#define DSI_28nm_PHY_TIMING_CTRL_9_TA_GO__SHIFT                        0
-static inline uint32_t DSI_28nm_PHY_TIMING_CTRL_9_TA_GO(uint32_t val)
-{
-       return ((val) << DSI_28nm_PHY_TIMING_CTRL_9_TA_GO__SHIFT) & DSI_28nm_PHY_TIMING_CTRL_9_TA_GO__MASK;
-}
-#define DSI_28nm_PHY_TIMING_CTRL_9_TA_SURE__MASK               0x00000070
-#define DSI_28nm_PHY_TIMING_CTRL_9_TA_SURE__SHIFT              4
-static inline uint32_t DSI_28nm_PHY_TIMING_CTRL_9_TA_SURE(uint32_t val)
-{
-       return ((val) << DSI_28nm_PHY_TIMING_CTRL_9_TA_SURE__SHIFT) & DSI_28nm_PHY_TIMING_CTRL_9_TA_SURE__MASK;
-}
-
-#define REG_DSI_28nm_PHY_TIMING_CTRL_10                                0x00000168
-#define DSI_28nm_PHY_TIMING_CTRL_10_TA_GET__MASK               0x00000007
-#define DSI_28nm_PHY_TIMING_CTRL_10_TA_GET__SHIFT              0
-static inline uint32_t DSI_28nm_PHY_TIMING_CTRL_10_TA_GET(uint32_t val)
-{
-       return ((val) << DSI_28nm_PHY_TIMING_CTRL_10_TA_GET__SHIFT) & DSI_28nm_PHY_TIMING_CTRL_10_TA_GET__MASK;
-}
-
-#define REG_DSI_28nm_PHY_TIMING_CTRL_11                                0x0000016c
-#define DSI_28nm_PHY_TIMING_CTRL_11_TRIG3_CMD__MASK            0x000000ff
-#define DSI_28nm_PHY_TIMING_CTRL_11_TRIG3_CMD__SHIFT           0
-static inline uint32_t DSI_28nm_PHY_TIMING_CTRL_11_TRIG3_CMD(uint32_t val)
-{
-       return ((val) << DSI_28nm_PHY_TIMING_CTRL_11_TRIG3_CMD__SHIFT) & DSI_28nm_PHY_TIMING_CTRL_11_TRIG3_CMD__MASK;
-}
-
-#define REG_DSI_28nm_PHY_CTRL_0                                        0x00000170
-
-#define REG_DSI_28nm_PHY_CTRL_1                                        0x00000174
-
-#define REG_DSI_28nm_PHY_CTRL_2                                        0x00000178
-
-#define REG_DSI_28nm_PHY_CTRL_3                                        0x0000017c
-
-#define REG_DSI_28nm_PHY_CTRL_4                                        0x00000180
-
-#define REG_DSI_28nm_PHY_STRENGTH_0                            0x00000184
-
-#define REG_DSI_28nm_PHY_STRENGTH_1                            0x00000188
-
-#define REG_DSI_28nm_PHY_BIST_CTRL_0                           0x000001b4
-
-#define REG_DSI_28nm_PHY_BIST_CTRL_1                           0x000001b8
-
-#define REG_DSI_28nm_PHY_BIST_CTRL_2                           0x000001bc
-
-#define REG_DSI_28nm_PHY_BIST_CTRL_3                           0x000001c0
-
-#define REG_DSI_28nm_PHY_BIST_CTRL_4                           0x000001c4
-
-#define REG_DSI_28nm_PHY_BIST_CTRL_5                           0x000001c8
-
-#define REG_DSI_28nm_PHY_GLBL_TEST_CTRL                                0x000001d4
-#define DSI_28nm_PHY_GLBL_TEST_CTRL_BITCLK_HS_SEL              0x00000001
-
-#define REG_DSI_28nm_PHY_LDO_CNTRL                             0x000001dc
-
-#define REG_DSI_28nm_PHY_REGULATOR_CTRL_0                      0x00000000
-
-#define REG_DSI_28nm_PHY_REGULATOR_CTRL_1                      0x00000004
-
-#define REG_DSI_28nm_PHY_REGULATOR_CTRL_2                      0x00000008
-
-#define REG_DSI_28nm_PHY_REGULATOR_CTRL_3                      0x0000000c
-
-#define REG_DSI_28nm_PHY_REGULATOR_CTRL_4                      0x00000010
-
-#define REG_DSI_28nm_PHY_REGULATOR_CTRL_5                      0x00000014
-
-#define REG_DSI_28nm_PHY_REGULATOR_CAL_PWR_CFG                 0x00000018
-
-#define REG_DSI_28nm_PHY_PLL_REFCLK_CFG                                0x00000000
-#define DSI_28nm_PHY_PLL_REFCLK_CFG_DBLR                       0x00000001
-
-#define REG_DSI_28nm_PHY_PLL_POSTDIV1_CFG                      0x00000004
-
-#define REG_DSI_28nm_PHY_PLL_CHGPUMP_CFG                       0x00000008
-
-#define REG_DSI_28nm_PHY_PLL_VCOLPF_CFG                                0x0000000c
-
-#define REG_DSI_28nm_PHY_PLL_VREG_CFG                          0x00000010
-#define DSI_28nm_PHY_PLL_VREG_CFG_POSTDIV1_BYPASS_B            0x00000002
-
-#define REG_DSI_28nm_PHY_PLL_PWRGEN_CFG                                0x00000014
-
-#define REG_DSI_28nm_PHY_PLL_DMUX_CFG                          0x00000018
-
-#define REG_DSI_28nm_PHY_PLL_AMUX_CFG                          0x0000001c
-
-#define REG_DSI_28nm_PHY_PLL_GLB_CFG                           0x00000020
-#define DSI_28nm_PHY_PLL_GLB_CFG_PLL_PWRDN_B                   0x00000001
-#define DSI_28nm_PHY_PLL_GLB_CFG_PLL_LDO_PWRDN_B               0x00000002
-#define DSI_28nm_PHY_PLL_GLB_CFG_PLL_PWRGEN_PWRDN_B            0x00000004
-#define DSI_28nm_PHY_PLL_GLB_CFG_PLL_ENABLE                    0x00000008
-
-#define REG_DSI_28nm_PHY_PLL_POSTDIV2_CFG                      0x00000024
-
-#define REG_DSI_28nm_PHY_PLL_POSTDIV3_CFG                      0x00000028
-
-#define REG_DSI_28nm_PHY_PLL_LPFR_CFG                          0x0000002c
-
-#define REG_DSI_28nm_PHY_PLL_LPFC1_CFG                         0x00000030
-
-#define REG_DSI_28nm_PHY_PLL_LPFC2_CFG                         0x00000034
-
-#define REG_DSI_28nm_PHY_PLL_SDM_CFG0                          0x00000038
-#define DSI_28nm_PHY_PLL_SDM_CFG0_BYP_DIV__MASK                        0x0000003f
-#define DSI_28nm_PHY_PLL_SDM_CFG0_BYP_DIV__SHIFT               0
-static inline uint32_t DSI_28nm_PHY_PLL_SDM_CFG0_BYP_DIV(uint32_t val)
-{
-       return ((val) << DSI_28nm_PHY_PLL_SDM_CFG0_BYP_DIV__SHIFT) & DSI_28nm_PHY_PLL_SDM_CFG0_BYP_DIV__MASK;
-}
-#define DSI_28nm_PHY_PLL_SDM_CFG0_BYP                          0x00000040
-
-#define REG_DSI_28nm_PHY_PLL_SDM_CFG1                          0x0000003c
-#define DSI_28nm_PHY_PLL_SDM_CFG1_DC_OFFSET__MASK              0x0000003f
-#define DSI_28nm_PHY_PLL_SDM_CFG1_DC_OFFSET__SHIFT             0
-static inline uint32_t DSI_28nm_PHY_PLL_SDM_CFG1_DC_OFFSET(uint32_t val)
-{
-       return ((val) << DSI_28nm_PHY_PLL_SDM_CFG1_DC_OFFSET__SHIFT) & DSI_28nm_PHY_PLL_SDM_CFG1_DC_OFFSET__MASK;
-}
-#define DSI_28nm_PHY_PLL_SDM_CFG1_DITHER_EN__MASK              0x00000040
-#define DSI_28nm_PHY_PLL_SDM_CFG1_DITHER_EN__SHIFT             6
-static inline uint32_t DSI_28nm_PHY_PLL_SDM_CFG1_DITHER_EN(uint32_t val)
-{
-       return ((val) << DSI_28nm_PHY_PLL_SDM_CFG1_DITHER_EN__SHIFT) & DSI_28nm_PHY_PLL_SDM_CFG1_DITHER_EN__MASK;
-}
-
-#define REG_DSI_28nm_PHY_PLL_SDM_CFG2                          0x00000040
-#define DSI_28nm_PHY_PLL_SDM_CFG2_FREQ_SEED_7_0__MASK          0x000000ff
-#define DSI_28nm_PHY_PLL_SDM_CFG2_FREQ_SEED_7_0__SHIFT         0
-static inline uint32_t DSI_28nm_PHY_PLL_SDM_CFG2_FREQ_SEED_7_0(uint32_t val)
-{
-       return ((val) << DSI_28nm_PHY_PLL_SDM_CFG2_FREQ_SEED_7_0__SHIFT) & DSI_28nm_PHY_PLL_SDM_CFG2_FREQ_SEED_7_0__MASK;
-}
-
-#define REG_DSI_28nm_PHY_PLL_SDM_CFG3                          0x00000044
-#define DSI_28nm_PHY_PLL_SDM_CFG3_FREQ_SEED_15_8__MASK         0x000000ff
-#define DSI_28nm_PHY_PLL_SDM_CFG3_FREQ_SEED_15_8__SHIFT                0
-static inline uint32_t DSI_28nm_PHY_PLL_SDM_CFG3_FREQ_SEED_15_8(uint32_t val)
-{
-       return ((val) << DSI_28nm_PHY_PLL_SDM_CFG3_FREQ_SEED_15_8__SHIFT) & DSI_28nm_PHY_PLL_SDM_CFG3_FREQ_SEED_15_8__MASK;
-}
-
-#define REG_DSI_28nm_PHY_PLL_SDM_CFG4                          0x00000048
-
-#define REG_DSI_28nm_PHY_PLL_SSC_CFG0                          0x0000004c
-
-#define REG_DSI_28nm_PHY_PLL_SSC_CFG1                          0x00000050
-
-#define REG_DSI_28nm_PHY_PLL_SSC_CFG2                          0x00000054
-
-#define REG_DSI_28nm_PHY_PLL_SSC_CFG3                          0x00000058
-
-#define REG_DSI_28nm_PHY_PLL_LKDET_CFG0                                0x0000005c
-
-#define REG_DSI_28nm_PHY_PLL_LKDET_CFG1                                0x00000060
-
-#define REG_DSI_28nm_PHY_PLL_LKDET_CFG2                                0x00000064
-
-#define REG_DSI_28nm_PHY_PLL_TEST_CFG                          0x00000068
-#define DSI_28nm_PHY_PLL_TEST_CFG_PLL_SW_RESET                 0x00000001
-
-#define REG_DSI_28nm_PHY_PLL_CAL_CFG0                          0x0000006c
-
-#define REG_DSI_28nm_PHY_PLL_CAL_CFG1                          0x00000070
-
-#define REG_DSI_28nm_PHY_PLL_CAL_CFG2                          0x00000074
-
-#define REG_DSI_28nm_PHY_PLL_CAL_CFG3                          0x00000078
-
-#define REG_DSI_28nm_PHY_PLL_CAL_CFG4                          0x0000007c
-
-#define REG_DSI_28nm_PHY_PLL_CAL_CFG5                          0x00000080
-
-#define REG_DSI_28nm_PHY_PLL_CAL_CFG6                          0x00000084
-
-#define REG_DSI_28nm_PHY_PLL_CAL_CFG7                          0x00000088
-
-#define REG_DSI_28nm_PHY_PLL_CAL_CFG8                          0x0000008c
-
-#define REG_DSI_28nm_PHY_PLL_CAL_CFG9                          0x00000090
-
-#define REG_DSI_28nm_PHY_PLL_CAL_CFG10                         0x00000094
-
-#define REG_DSI_28nm_PHY_PLL_CAL_CFG11                         0x00000098
-
-#define REG_DSI_28nm_PHY_PLL_EFUSE_CFG                         0x0000009c
-
-#define REG_DSI_28nm_PHY_PLL_DEBUG_BUS_SEL                     0x000000a0
-
-#define REG_DSI_28nm_PHY_PLL_CTRL_42                           0x000000a4
-
-#define REG_DSI_28nm_PHY_PLL_CTRL_43                           0x000000a8
-
-#define REG_DSI_28nm_PHY_PLL_CTRL_44                           0x000000ac
-
-#define REG_DSI_28nm_PHY_PLL_CTRL_45                           0x000000b0
-
-#define REG_DSI_28nm_PHY_PLL_CTRL_46                           0x000000b4
-
-#define REG_DSI_28nm_PHY_PLL_CTRL_47                           0x000000b8
-
-#define REG_DSI_28nm_PHY_PLL_CTRL_48                           0x000000bc
-
-#define REG_DSI_28nm_PHY_PLL_STATUS                            0x000000c0
-#define DSI_28nm_PHY_PLL_STATUS_PLL_RDY                                0x00000001
-
-#define REG_DSI_28nm_PHY_PLL_DEBUG_BUS0                                0x000000c4
-
-#define REG_DSI_28nm_PHY_PLL_DEBUG_BUS1                                0x000000c8
-
-#define REG_DSI_28nm_PHY_PLL_DEBUG_BUS2                                0x000000cc
-
-#define REG_DSI_28nm_PHY_PLL_DEBUG_BUS3                                0x000000d0
-
-#define REG_DSI_28nm_PHY_PLL_CTRL_54                           0x000000d4
-
-static inline uint32_t REG_DSI_20nm_PHY_LN(uint32_t i0) { return 0x00000000 + 0x40*i0; }
-
-static inline uint32_t REG_DSI_20nm_PHY_LN_CFG_0(uint32_t i0) { return 0x00000000 + 0x40*i0; }
-
-static inline uint32_t REG_DSI_20nm_PHY_LN_CFG_1(uint32_t i0) { return 0x00000004 + 0x40*i0; }
-
-static inline uint32_t REG_DSI_20nm_PHY_LN_CFG_2(uint32_t i0) { return 0x00000008 + 0x40*i0; }
-
-static inline uint32_t REG_DSI_20nm_PHY_LN_CFG_3(uint32_t i0) { return 0x0000000c + 0x40*i0; }
-
-static inline uint32_t REG_DSI_20nm_PHY_LN_CFG_4(uint32_t i0) { return 0x00000010 + 0x40*i0; }
-
-static inline uint32_t REG_DSI_20nm_PHY_LN_TEST_DATAPATH(uint32_t i0) { return 0x00000014 + 0x40*i0; }
-
-static inline uint32_t REG_DSI_20nm_PHY_LN_DEBUG_SEL(uint32_t i0) { return 0x00000018 + 0x40*i0; }
-
-static inline uint32_t REG_DSI_20nm_PHY_LN_TEST_STR_0(uint32_t i0) { return 0x0000001c + 0x40*i0; }
-
-static inline uint32_t REG_DSI_20nm_PHY_LN_TEST_STR_1(uint32_t i0) { return 0x00000020 + 0x40*i0; }
-
-#define REG_DSI_20nm_PHY_LNCK_CFG_0                            0x00000100
-
-#define REG_DSI_20nm_PHY_LNCK_CFG_1                            0x00000104
-
-#define REG_DSI_20nm_PHY_LNCK_CFG_2                            0x00000108
-
-#define REG_DSI_20nm_PHY_LNCK_CFG_3                            0x0000010c
-
-#define REG_DSI_20nm_PHY_LNCK_CFG_4                            0x00000110
-
-#define REG_DSI_20nm_PHY_LNCK_TEST_DATAPATH                    0x00000114
-
-#define REG_DSI_20nm_PHY_LNCK_DEBUG_SEL                                0x00000118
-
-#define REG_DSI_20nm_PHY_LNCK_TEST_STR0                                0x0000011c
-
-#define REG_DSI_20nm_PHY_LNCK_TEST_STR1                                0x00000120
-
-#define REG_DSI_20nm_PHY_TIMING_CTRL_0                         0x00000140
-#define DSI_20nm_PHY_TIMING_CTRL_0_CLK_ZERO__MASK              0x000000ff
-#define DSI_20nm_PHY_TIMING_CTRL_0_CLK_ZERO__SHIFT             0
-static inline uint32_t DSI_20nm_PHY_TIMING_CTRL_0_CLK_ZERO(uint32_t val)
-{
-       return ((val) << DSI_20nm_PHY_TIMING_CTRL_0_CLK_ZERO__SHIFT) & DSI_20nm_PHY_TIMING_CTRL_0_CLK_ZERO__MASK;
-}
-
-#define REG_DSI_20nm_PHY_TIMING_CTRL_1                         0x00000144
-#define DSI_20nm_PHY_TIMING_CTRL_1_CLK_TRAIL__MASK             0x000000ff
-#define DSI_20nm_PHY_TIMING_CTRL_1_CLK_TRAIL__SHIFT            0
-static inline uint32_t DSI_20nm_PHY_TIMING_CTRL_1_CLK_TRAIL(uint32_t val)
-{
-       return ((val) << DSI_20nm_PHY_TIMING_CTRL_1_CLK_TRAIL__SHIFT) & DSI_20nm_PHY_TIMING_CTRL_1_CLK_TRAIL__MASK;
-}
-
-#define REG_DSI_20nm_PHY_TIMING_CTRL_2                         0x00000148
-#define DSI_20nm_PHY_TIMING_CTRL_2_CLK_PREPARE__MASK           0x000000ff
-#define DSI_20nm_PHY_TIMING_CTRL_2_CLK_PREPARE__SHIFT          0
-static inline uint32_t DSI_20nm_PHY_TIMING_CTRL_2_CLK_PREPARE(uint32_t val)
-{
-       return ((val) << DSI_20nm_PHY_TIMING_CTRL_2_CLK_PREPARE__SHIFT) & DSI_20nm_PHY_TIMING_CTRL_2_CLK_PREPARE__MASK;
-}
-
-#define REG_DSI_20nm_PHY_TIMING_CTRL_3                         0x0000014c
-#define DSI_20nm_PHY_TIMING_CTRL_3_CLK_ZERO_8                  0x00000001
-
-#define REG_DSI_20nm_PHY_TIMING_CTRL_4                         0x00000150
-#define DSI_20nm_PHY_TIMING_CTRL_4_HS_EXIT__MASK               0x000000ff
-#define DSI_20nm_PHY_TIMING_CTRL_4_HS_EXIT__SHIFT              0
-static inline uint32_t DSI_20nm_PHY_TIMING_CTRL_4_HS_EXIT(uint32_t val)
-{
-       return ((val) << DSI_20nm_PHY_TIMING_CTRL_4_HS_EXIT__SHIFT) & DSI_20nm_PHY_TIMING_CTRL_4_HS_EXIT__MASK;
-}
-
-#define REG_DSI_20nm_PHY_TIMING_CTRL_5                         0x00000154
-#define DSI_20nm_PHY_TIMING_CTRL_5_HS_ZERO__MASK               0x000000ff
-#define DSI_20nm_PHY_TIMING_CTRL_5_HS_ZERO__SHIFT              0
-static inline uint32_t DSI_20nm_PHY_TIMING_CTRL_5_HS_ZERO(uint32_t val)
-{
-       return ((val) << DSI_20nm_PHY_TIMING_CTRL_5_HS_ZERO__SHIFT) & DSI_20nm_PHY_TIMING_CTRL_5_HS_ZERO__MASK;
-}
-
-#define REG_DSI_20nm_PHY_TIMING_CTRL_6                         0x00000158
-#define DSI_20nm_PHY_TIMING_CTRL_6_HS_PREPARE__MASK            0x000000ff
-#define DSI_20nm_PHY_TIMING_CTRL_6_HS_PREPARE__SHIFT           0
-static inline uint32_t DSI_20nm_PHY_TIMING_CTRL_6_HS_PREPARE(uint32_t val)
-{
-       return ((val) << DSI_20nm_PHY_TIMING_CTRL_6_HS_PREPARE__SHIFT) & DSI_20nm_PHY_TIMING_CTRL_6_HS_PREPARE__MASK;
-}
-
-#define REG_DSI_20nm_PHY_TIMING_CTRL_7                         0x0000015c
-#define DSI_20nm_PHY_TIMING_CTRL_7_HS_TRAIL__MASK              0x000000ff
-#define DSI_20nm_PHY_TIMING_CTRL_7_HS_TRAIL__SHIFT             0
-static inline uint32_t DSI_20nm_PHY_TIMING_CTRL_7_HS_TRAIL(uint32_t val)
-{
-       return ((val) << DSI_20nm_PHY_TIMING_CTRL_7_HS_TRAIL__SHIFT) & DSI_20nm_PHY_TIMING_CTRL_7_HS_TRAIL__MASK;
-}
-
-#define REG_DSI_20nm_PHY_TIMING_CTRL_8                         0x00000160
-#define DSI_20nm_PHY_TIMING_CTRL_8_HS_RQST__MASK               0x000000ff
-#define DSI_20nm_PHY_TIMING_CTRL_8_HS_RQST__SHIFT              0
-static inline uint32_t DSI_20nm_PHY_TIMING_CTRL_8_HS_RQST(uint32_t val)
-{
-       return ((val) << DSI_20nm_PHY_TIMING_CTRL_8_HS_RQST__SHIFT) & DSI_20nm_PHY_TIMING_CTRL_8_HS_RQST__MASK;
-}
-
-#define REG_DSI_20nm_PHY_TIMING_CTRL_9                         0x00000164
-#define DSI_20nm_PHY_TIMING_CTRL_9_TA_GO__MASK                 0x00000007
-#define DSI_20nm_PHY_TIMING_CTRL_9_TA_GO__SHIFT                        0
-static inline uint32_t DSI_20nm_PHY_TIMING_CTRL_9_TA_GO(uint32_t val)
-{
-       return ((val) << DSI_20nm_PHY_TIMING_CTRL_9_TA_GO__SHIFT) & DSI_20nm_PHY_TIMING_CTRL_9_TA_GO__MASK;
-}
-#define DSI_20nm_PHY_TIMING_CTRL_9_TA_SURE__MASK               0x00000070
-#define DSI_20nm_PHY_TIMING_CTRL_9_TA_SURE__SHIFT              4
-static inline uint32_t DSI_20nm_PHY_TIMING_CTRL_9_TA_SURE(uint32_t val)
-{
-       return ((val) << DSI_20nm_PHY_TIMING_CTRL_9_TA_SURE__SHIFT) & DSI_20nm_PHY_TIMING_CTRL_9_TA_SURE__MASK;
-}
-
-#define REG_DSI_20nm_PHY_TIMING_CTRL_10                                0x00000168
-#define DSI_20nm_PHY_TIMING_CTRL_10_TA_GET__MASK               0x00000007
-#define DSI_20nm_PHY_TIMING_CTRL_10_TA_GET__SHIFT              0
-static inline uint32_t DSI_20nm_PHY_TIMING_CTRL_10_TA_GET(uint32_t val)
-{
-       return ((val) << DSI_20nm_PHY_TIMING_CTRL_10_TA_GET__SHIFT) & DSI_20nm_PHY_TIMING_CTRL_10_TA_GET__MASK;
-}
-
-#define REG_DSI_20nm_PHY_TIMING_CTRL_11                                0x0000016c
-#define DSI_20nm_PHY_TIMING_CTRL_11_TRIG3_CMD__MASK            0x000000ff
-#define DSI_20nm_PHY_TIMING_CTRL_11_TRIG3_CMD__SHIFT           0
-static inline uint32_t DSI_20nm_PHY_TIMING_CTRL_11_TRIG3_CMD(uint32_t val)
-{
-       return ((val) << DSI_20nm_PHY_TIMING_CTRL_11_TRIG3_CMD__SHIFT) & DSI_20nm_PHY_TIMING_CTRL_11_TRIG3_CMD__MASK;
-}
-
-#define REG_DSI_20nm_PHY_CTRL_0                                        0x00000170
-
-#define REG_DSI_20nm_PHY_CTRL_1                                        0x00000174
-
-#define REG_DSI_20nm_PHY_CTRL_2                                        0x00000178
-
-#define REG_DSI_20nm_PHY_CTRL_3                                        0x0000017c
-
-#define REG_DSI_20nm_PHY_CTRL_4                                        0x00000180
-
-#define REG_DSI_20nm_PHY_STRENGTH_0                            0x00000184
-
-#define REG_DSI_20nm_PHY_STRENGTH_1                            0x00000188
-
-#define REG_DSI_20nm_PHY_BIST_CTRL_0                           0x000001b4
-
-#define REG_DSI_20nm_PHY_BIST_CTRL_1                           0x000001b8
-
-#define REG_DSI_20nm_PHY_BIST_CTRL_2                           0x000001bc
-
-#define REG_DSI_20nm_PHY_BIST_CTRL_3                           0x000001c0
-
-#define REG_DSI_20nm_PHY_BIST_CTRL_4                           0x000001c4
-
-#define REG_DSI_20nm_PHY_BIST_CTRL_5                           0x000001c8
-
-#define REG_DSI_20nm_PHY_GLBL_TEST_CTRL                                0x000001d4
-#define DSI_20nm_PHY_GLBL_TEST_CTRL_BITCLK_HS_SEL              0x00000001
-
-#define REG_DSI_20nm_PHY_LDO_CNTRL                             0x000001dc
-
-#define REG_DSI_20nm_PHY_REGULATOR_CTRL_0                      0x00000000
-
-#define REG_DSI_20nm_PHY_REGULATOR_CTRL_1                      0x00000004
-
-#define REG_DSI_20nm_PHY_REGULATOR_CTRL_2                      0x00000008
-
-#define REG_DSI_20nm_PHY_REGULATOR_CTRL_3                      0x0000000c
-
-#define REG_DSI_20nm_PHY_REGULATOR_CTRL_4                      0x00000010
-
-#define REG_DSI_20nm_PHY_REGULATOR_CTRL_5                      0x00000014
-
-#define REG_DSI_20nm_PHY_REGULATOR_CAL_PWR_CFG                 0x00000018
-
-#define REG_DSI_14nm_PHY_CMN_REVISION_ID0                      0x00000000
-
-#define REG_DSI_14nm_PHY_CMN_REVISION_ID1                      0x00000004
-
-#define REG_DSI_14nm_PHY_CMN_REVISION_ID2                      0x00000008
-
-#define REG_DSI_14nm_PHY_CMN_REVISION_ID3                      0x0000000c
-
-#define REG_DSI_14nm_PHY_CMN_CLK_CFG0                          0x00000010
-#define DSI_14nm_PHY_CMN_CLK_CFG0_DIV_CTRL_3_0__MASK           0x000000f0
-#define DSI_14nm_PHY_CMN_CLK_CFG0_DIV_CTRL_3_0__SHIFT          4
-static inline uint32_t DSI_14nm_PHY_CMN_CLK_CFG0_DIV_CTRL_3_0(uint32_t val)
-{
-       return ((val) << DSI_14nm_PHY_CMN_CLK_CFG0_DIV_CTRL_3_0__SHIFT) & DSI_14nm_PHY_CMN_CLK_CFG0_DIV_CTRL_3_0__MASK;
-}
-#define DSI_14nm_PHY_CMN_CLK_CFG0_DIV_CTRL_7_4__MASK           0x000000f0
-#define DSI_14nm_PHY_CMN_CLK_CFG0_DIV_CTRL_7_4__SHIFT          4
-static inline uint32_t DSI_14nm_PHY_CMN_CLK_CFG0_DIV_CTRL_7_4(uint32_t val)
-{
-       return ((val) << DSI_14nm_PHY_CMN_CLK_CFG0_DIV_CTRL_7_4__SHIFT) & DSI_14nm_PHY_CMN_CLK_CFG0_DIV_CTRL_7_4__MASK;
-}
-
-#define REG_DSI_14nm_PHY_CMN_CLK_CFG1                          0x00000014
-#define DSI_14nm_PHY_CMN_CLK_CFG1_DSICLK_SEL                   0x00000001
-
-#define REG_DSI_14nm_PHY_CMN_GLBL_TEST_CTRL                    0x00000018
-#define DSI_14nm_PHY_CMN_GLBL_TEST_CTRL_BITCLK_HS_SEL          0x00000004
-
-#define REG_DSI_14nm_PHY_CMN_CTRL_0                            0x0000001c
-
-#define REG_DSI_14nm_PHY_CMN_CTRL_1                            0x00000020
-
-#define REG_DSI_14nm_PHY_CMN_HW_TRIGGER                                0x00000024
-
-#define REG_DSI_14nm_PHY_CMN_SW_CFG0                           0x00000028
-
-#define REG_DSI_14nm_PHY_CMN_SW_CFG1                           0x0000002c
-
-#define REG_DSI_14nm_PHY_CMN_SW_CFG2                           0x00000030
-
-#define REG_DSI_14nm_PHY_CMN_HW_CFG0                           0x00000034
-
-#define REG_DSI_14nm_PHY_CMN_HW_CFG1                           0x00000038
-
-#define REG_DSI_14nm_PHY_CMN_HW_CFG2                           0x0000003c
-
-#define REG_DSI_14nm_PHY_CMN_HW_CFG3                           0x00000040
-
-#define REG_DSI_14nm_PHY_CMN_HW_CFG4                           0x00000044
-
-#define REG_DSI_14nm_PHY_CMN_PLL_CNTRL                         0x00000048
-#define DSI_14nm_PHY_CMN_PLL_CNTRL_PLL_START                   0x00000001
-
-#define REG_DSI_14nm_PHY_CMN_LDO_CNTRL                         0x0000004c
-#define DSI_14nm_PHY_CMN_LDO_CNTRL_VREG_CTRL__MASK             0x0000003f
-#define DSI_14nm_PHY_CMN_LDO_CNTRL_VREG_CTRL__SHIFT            0
-static inline uint32_t DSI_14nm_PHY_CMN_LDO_CNTRL_VREG_CTRL(uint32_t val)
-{
-       return ((val) << DSI_14nm_PHY_CMN_LDO_CNTRL_VREG_CTRL__SHIFT) & DSI_14nm_PHY_CMN_LDO_CNTRL_VREG_CTRL__MASK;
-}
-
-static inline uint32_t REG_DSI_14nm_PHY_LN(uint32_t i0) { return 0x00000000 + 0x80*i0; }
-
-static inline uint32_t REG_DSI_14nm_PHY_LN_CFG0(uint32_t i0) { return 0x00000000 + 0x80*i0; }
-#define DSI_14nm_PHY_LN_CFG0_PREPARE_DLY__MASK                 0x000000c0
-#define DSI_14nm_PHY_LN_CFG0_PREPARE_DLY__SHIFT                        6
-static inline uint32_t DSI_14nm_PHY_LN_CFG0_PREPARE_DLY(uint32_t val)
-{
-       return ((val) << DSI_14nm_PHY_LN_CFG0_PREPARE_DLY__SHIFT) & DSI_14nm_PHY_LN_CFG0_PREPARE_DLY__MASK;
-}
-
-static inline uint32_t REG_DSI_14nm_PHY_LN_CFG1(uint32_t i0) { return 0x00000004 + 0x80*i0; }
-#define DSI_14nm_PHY_LN_CFG1_HALFBYTECLK_EN                    0x00000001
-
-static inline uint32_t REG_DSI_14nm_PHY_LN_CFG2(uint32_t i0) { return 0x00000008 + 0x80*i0; }
-
-static inline uint32_t REG_DSI_14nm_PHY_LN_CFG3(uint32_t i0) { return 0x0000000c + 0x80*i0; }
-
-static inline uint32_t REG_DSI_14nm_PHY_LN_TEST_DATAPATH(uint32_t i0) { return 0x00000010 + 0x80*i0; }
-
-static inline uint32_t REG_DSI_14nm_PHY_LN_TEST_STR(uint32_t i0) { return 0x00000014 + 0x80*i0; }
-
-static inline uint32_t REG_DSI_14nm_PHY_LN_TIMING_CTRL_4(uint32_t i0) { return 0x00000018 + 0x80*i0; }
-#define DSI_14nm_PHY_LN_TIMING_CTRL_4_HS_EXIT__MASK            0x000000ff
-#define DSI_14nm_PHY_LN_TIMING_CTRL_4_HS_EXIT__SHIFT           0
-static inline uint32_t DSI_14nm_PHY_LN_TIMING_CTRL_4_HS_EXIT(uint32_t val)
-{
-       return ((val) << DSI_14nm_PHY_LN_TIMING_CTRL_4_HS_EXIT__SHIFT) & DSI_14nm_PHY_LN_TIMING_CTRL_4_HS_EXIT__MASK;
-}
-
-static inline uint32_t REG_DSI_14nm_PHY_LN_TIMING_CTRL_5(uint32_t i0) { return 0x0000001c + 0x80*i0; }
-#define DSI_14nm_PHY_LN_TIMING_CTRL_5_HS_ZERO__MASK            0x000000ff
-#define DSI_14nm_PHY_LN_TIMING_CTRL_5_HS_ZERO__SHIFT           0
-static inline uint32_t DSI_14nm_PHY_LN_TIMING_CTRL_5_HS_ZERO(uint32_t val)
-{
-       return ((val) << DSI_14nm_PHY_LN_TIMING_CTRL_5_HS_ZERO__SHIFT) & DSI_14nm_PHY_LN_TIMING_CTRL_5_HS_ZERO__MASK;
-}
-
-static inline uint32_t REG_DSI_14nm_PHY_LN_TIMING_CTRL_6(uint32_t i0) { return 0x00000020 + 0x80*i0; }
-#define DSI_14nm_PHY_LN_TIMING_CTRL_6_HS_PREPARE__MASK         0x000000ff
-#define DSI_14nm_PHY_LN_TIMING_CTRL_6_HS_PREPARE__SHIFT                0
-static inline uint32_t DSI_14nm_PHY_LN_TIMING_CTRL_6_HS_PREPARE(uint32_t val)
-{
-       return ((val) << DSI_14nm_PHY_LN_TIMING_CTRL_6_HS_PREPARE__SHIFT) & DSI_14nm_PHY_LN_TIMING_CTRL_6_HS_PREPARE__MASK;
-}
-
-static inline uint32_t REG_DSI_14nm_PHY_LN_TIMING_CTRL_7(uint32_t i0) { return 0x00000024 + 0x80*i0; }
-#define DSI_14nm_PHY_LN_TIMING_CTRL_7_HS_TRAIL__MASK           0x000000ff
-#define DSI_14nm_PHY_LN_TIMING_CTRL_7_HS_TRAIL__SHIFT          0
-static inline uint32_t DSI_14nm_PHY_LN_TIMING_CTRL_7_HS_TRAIL(uint32_t val)
-{
-       return ((val) << DSI_14nm_PHY_LN_TIMING_CTRL_7_HS_TRAIL__SHIFT) & DSI_14nm_PHY_LN_TIMING_CTRL_7_HS_TRAIL__MASK;
-}
-
-static inline uint32_t REG_DSI_14nm_PHY_LN_TIMING_CTRL_8(uint32_t i0) { return 0x00000028 + 0x80*i0; }
-#define DSI_14nm_PHY_LN_TIMING_CTRL_8_HS_RQST__MASK            0x000000ff
-#define DSI_14nm_PHY_LN_TIMING_CTRL_8_HS_RQST__SHIFT           0
-static inline uint32_t DSI_14nm_PHY_LN_TIMING_CTRL_8_HS_RQST(uint32_t val)
-{
-       return ((val) << DSI_14nm_PHY_LN_TIMING_CTRL_8_HS_RQST__SHIFT) & DSI_14nm_PHY_LN_TIMING_CTRL_8_HS_RQST__MASK;
-}
-
-static inline uint32_t REG_DSI_14nm_PHY_LN_TIMING_CTRL_9(uint32_t i0) { return 0x0000002c + 0x80*i0; }
-#define DSI_14nm_PHY_LN_TIMING_CTRL_9_TA_GO__MASK              0x00000007
-#define DSI_14nm_PHY_LN_TIMING_CTRL_9_TA_GO__SHIFT             0
-static inline uint32_t DSI_14nm_PHY_LN_TIMING_CTRL_9_TA_GO(uint32_t val)
-{
-       return ((val) << DSI_14nm_PHY_LN_TIMING_CTRL_9_TA_GO__SHIFT) & DSI_14nm_PHY_LN_TIMING_CTRL_9_TA_GO__MASK;
-}
-#define DSI_14nm_PHY_LN_TIMING_CTRL_9_TA_SURE__MASK            0x00000070
-#define DSI_14nm_PHY_LN_TIMING_CTRL_9_TA_SURE__SHIFT           4
-static inline uint32_t DSI_14nm_PHY_LN_TIMING_CTRL_9_TA_SURE(uint32_t val)
-{
-       return ((val) << DSI_14nm_PHY_LN_TIMING_CTRL_9_TA_SURE__SHIFT) & DSI_14nm_PHY_LN_TIMING_CTRL_9_TA_SURE__MASK;
-}
-
-static inline uint32_t REG_DSI_14nm_PHY_LN_TIMING_CTRL_10(uint32_t i0) { return 0x00000030 + 0x80*i0; }
-#define DSI_14nm_PHY_LN_TIMING_CTRL_10_TA_GET__MASK            0x00000007
-#define DSI_14nm_PHY_LN_TIMING_CTRL_10_TA_GET__SHIFT           0
-static inline uint32_t DSI_14nm_PHY_LN_TIMING_CTRL_10_TA_GET(uint32_t val)
-{
-       return ((val) << DSI_14nm_PHY_LN_TIMING_CTRL_10_TA_GET__SHIFT) & DSI_14nm_PHY_LN_TIMING_CTRL_10_TA_GET__MASK;
-}
-
-static inline uint32_t REG_DSI_14nm_PHY_LN_TIMING_CTRL_11(uint32_t i0) { return 0x00000034 + 0x80*i0; }
-#define DSI_14nm_PHY_LN_TIMING_CTRL_11_TRIG3_CMD__MASK         0x000000ff
-#define DSI_14nm_PHY_LN_TIMING_CTRL_11_TRIG3_CMD__SHIFT                0
-static inline uint32_t DSI_14nm_PHY_LN_TIMING_CTRL_11_TRIG3_CMD(uint32_t val)
-{
-       return ((val) << DSI_14nm_PHY_LN_TIMING_CTRL_11_TRIG3_CMD__SHIFT) & DSI_14nm_PHY_LN_TIMING_CTRL_11_TRIG3_CMD__MASK;
-}
-
-static inline uint32_t REG_DSI_14nm_PHY_LN_STRENGTH_CTRL_0(uint32_t i0) { return 0x00000038 + 0x80*i0; }
-
-static inline uint32_t REG_DSI_14nm_PHY_LN_STRENGTH_CTRL_1(uint32_t i0) { return 0x0000003c + 0x80*i0; }
-
-static inline uint32_t REG_DSI_14nm_PHY_LN_VREG_CNTRL(uint32_t i0) { return 0x00000064 + 0x80*i0; }
-
-#define REG_DSI_14nm_PHY_PLL_IE_TRIM                           0x00000000
-
-#define REG_DSI_14nm_PHY_PLL_IP_TRIM                           0x00000004
-
-#define REG_DSI_14nm_PHY_PLL_IPTAT_TRIM                                0x00000010
-
-#define REG_DSI_14nm_PHY_PLL_CLKBUFLR_EN                       0x0000001c
-
-#define REG_DSI_14nm_PHY_PLL_SYSCLK_EN_RESET                   0x00000028
-
-#define REG_DSI_14nm_PHY_PLL_RESETSM_CNTRL                     0x0000002c
-
-#define REG_DSI_14nm_PHY_PLL_RESETSM_CNTRL2                    0x00000030
-
-#define REG_DSI_14nm_PHY_PLL_RESETSM_CNTRL3                    0x00000034
-
-#define REG_DSI_14nm_PHY_PLL_RESETSM_CNTRL4                    0x00000038
-
-#define REG_DSI_14nm_PHY_PLL_RESETSM_CNTRL5                    0x0000003c
-
-#define REG_DSI_14nm_PHY_PLL_KVCO_DIV_REF1                     0x00000040
-
-#define REG_DSI_14nm_PHY_PLL_KVCO_DIV_REF2                     0x00000044
-
-#define REG_DSI_14nm_PHY_PLL_KVCO_COUNT1                       0x00000048
-
-#define REG_DSI_14nm_PHY_PLL_KVCO_COUNT2                       0x0000004c
-
-#define REG_DSI_14nm_PHY_PLL_VREF_CFG1                         0x0000005c
-
-#define REG_DSI_14nm_PHY_PLL_KVCO_CODE                         0x00000058
-
-#define REG_DSI_14nm_PHY_PLL_VCO_DIV_REF1                      0x0000006c
-
-#define REG_DSI_14nm_PHY_PLL_VCO_DIV_REF2                      0x00000070
-
-#define REG_DSI_14nm_PHY_PLL_VCO_COUNT1                                0x00000074
-
-#define REG_DSI_14nm_PHY_PLL_VCO_COUNT2                                0x00000078
-
-#define REG_DSI_14nm_PHY_PLL_PLLLOCK_CMP1                      0x0000007c
-
-#define REG_DSI_14nm_PHY_PLL_PLLLOCK_CMP2                      0x00000080
-
-#define REG_DSI_14nm_PHY_PLL_PLLLOCK_CMP3                      0x00000084
-
-#define REG_DSI_14nm_PHY_PLL_PLLLOCK_CMP_EN                    0x00000088
-
-#define REG_DSI_14nm_PHY_PLL_PLL_VCO_TUNE                      0x0000008c
-
-#define REG_DSI_14nm_PHY_PLL_DEC_START                         0x00000090
-
-#define REG_DSI_14nm_PHY_PLL_SSC_EN_CENTER                     0x00000094
-
-#define REG_DSI_14nm_PHY_PLL_SSC_ADJ_PER1                      0x00000098
-
-#define REG_DSI_14nm_PHY_PLL_SSC_ADJ_PER2                      0x0000009c
-
-#define REG_DSI_14nm_PHY_PLL_SSC_PER1                          0x000000a0
-
-#define REG_DSI_14nm_PHY_PLL_SSC_PER2                          0x000000a4
-
-#define REG_DSI_14nm_PHY_PLL_SSC_STEP_SIZE1                    0x000000a8
-
-#define REG_DSI_14nm_PHY_PLL_SSC_STEP_SIZE2                    0x000000ac
-
-#define REG_DSI_14nm_PHY_PLL_DIV_FRAC_START1                   0x000000b4
-
-#define REG_DSI_14nm_PHY_PLL_DIV_FRAC_START2                   0x000000b8
-
-#define REG_DSI_14nm_PHY_PLL_DIV_FRAC_START3                   0x000000bc
-
-#define REG_DSI_14nm_PHY_PLL_TXCLK_EN                          0x000000c0
-
-#define REG_DSI_14nm_PHY_PLL_PLL_CRCTRL                                0x000000c4
-
-#define REG_DSI_14nm_PHY_PLL_RESET_SM_READY_STATUS             0x000000cc
-
-#define REG_DSI_14nm_PHY_PLL_PLL_MISC1                         0x000000e8
-
-#define REG_DSI_14nm_PHY_PLL_CP_SET_CUR                                0x000000f0
-
-#define REG_DSI_14nm_PHY_PLL_PLL_ICPMSET                       0x000000f4
-
-#define REG_DSI_14nm_PHY_PLL_PLL_ICPCSET                       0x000000f8
-
-#define REG_DSI_14nm_PHY_PLL_PLL_ICP_SET                       0x000000fc
-
-#define REG_DSI_14nm_PHY_PLL_PLL_LPF1                          0x00000100
-
-#define REG_DSI_14nm_PHY_PLL_PLL_LPF2_POSTDIV                  0x00000104
-
-#define REG_DSI_14nm_PHY_PLL_PLL_BANDGAP                       0x00000108
-
-#define REG_DSI_10nm_PHY_CMN_REVISION_ID0                      0x00000000
-
-#define REG_DSI_10nm_PHY_CMN_REVISION_ID1                      0x00000004
-
-#define REG_DSI_10nm_PHY_CMN_REVISION_ID2                      0x00000008
-
-#define REG_DSI_10nm_PHY_CMN_REVISION_ID3                      0x0000000c
-
-#define REG_DSI_10nm_PHY_CMN_CLK_CFG0                          0x00000010
-
-#define REG_DSI_10nm_PHY_CMN_CLK_CFG1                          0x00000014
-
-#define REG_DSI_10nm_PHY_CMN_GLBL_CTRL                         0x00000018
-
-#define REG_DSI_10nm_PHY_CMN_RBUF_CTRL                         0x0000001c
-
-#define REG_DSI_10nm_PHY_CMN_VREG_CTRL                         0x00000020
-
-#define REG_DSI_10nm_PHY_CMN_CTRL_0                            0x00000024
-
-#define REG_DSI_10nm_PHY_CMN_CTRL_1                            0x00000028
-
-#define REG_DSI_10nm_PHY_CMN_CTRL_2                            0x0000002c
-
-#define REG_DSI_10nm_PHY_CMN_LANE_CFG0                         0x00000030
-
-#define REG_DSI_10nm_PHY_CMN_LANE_CFG1                         0x00000034
-
-#define REG_DSI_10nm_PHY_CMN_PLL_CNTRL                         0x00000038
-
-#define REG_DSI_10nm_PHY_CMN_LANE_CTRL0                                0x00000098
-
-#define REG_DSI_10nm_PHY_CMN_LANE_CTRL1                                0x0000009c
-
-#define REG_DSI_10nm_PHY_CMN_LANE_CTRL2                                0x000000a0
-
-#define REG_DSI_10nm_PHY_CMN_LANE_CTRL3                                0x000000a4
-
-#define REG_DSI_10nm_PHY_CMN_LANE_CTRL4                                0x000000a8
-
-#define REG_DSI_10nm_PHY_CMN_TIMING_CTRL_0                     0x000000ac
-
-#define REG_DSI_10nm_PHY_CMN_TIMING_CTRL_1                     0x000000b0
-
-#define REG_DSI_10nm_PHY_CMN_TIMING_CTRL_2                     0x000000b4
-
-#define REG_DSI_10nm_PHY_CMN_TIMING_CTRL_3                     0x000000b8
-
-#define REG_DSI_10nm_PHY_CMN_TIMING_CTRL_4                     0x000000bc
-
-#define REG_DSI_10nm_PHY_CMN_TIMING_CTRL_5                     0x000000c0
-
-#define REG_DSI_10nm_PHY_CMN_TIMING_CTRL_6                     0x000000c4
-
-#define REG_DSI_10nm_PHY_CMN_TIMING_CTRL_7                     0x000000c8
-
-#define REG_DSI_10nm_PHY_CMN_TIMING_CTRL_8                     0x000000cc
-
-#define REG_DSI_10nm_PHY_CMN_TIMING_CTRL_9                     0x000000d0
-
-#define REG_DSI_10nm_PHY_CMN_TIMING_CTRL_10                    0x000000d4
-
-#define REG_DSI_10nm_PHY_CMN_TIMING_CTRL_11                    0x000000d8
-
-#define REG_DSI_10nm_PHY_CMN_PHY_STATUS                                0x000000ec
-
-#define REG_DSI_10nm_PHY_CMN_LANE_STATUS0                      0x000000f4
-
-#define REG_DSI_10nm_PHY_CMN_LANE_STATUS1                      0x000000f8
-
-static inline uint32_t REG_DSI_10nm_PHY_LN(uint32_t i0) { return 0x00000000 + 0x80*i0; }
-
-static inline uint32_t REG_DSI_10nm_PHY_LN_CFG0(uint32_t i0) { return 0x00000000 + 0x80*i0; }
-
-static inline uint32_t REG_DSI_10nm_PHY_LN_CFG1(uint32_t i0) { return 0x00000004 + 0x80*i0; }
-
-static inline uint32_t REG_DSI_10nm_PHY_LN_CFG2(uint32_t i0) { return 0x00000008 + 0x80*i0; }
-
-static inline uint32_t REG_DSI_10nm_PHY_LN_CFG3(uint32_t i0) { return 0x0000000c + 0x80*i0; }
-
-static inline uint32_t REG_DSI_10nm_PHY_LN_TEST_DATAPATH(uint32_t i0) { return 0x00000010 + 0x80*i0; }
-
-static inline uint32_t REG_DSI_10nm_PHY_LN_PIN_SWAP(uint32_t i0) { return 0x00000014 + 0x80*i0; }
-
-static inline uint32_t REG_DSI_10nm_PHY_LN_HSTX_STR_CTRL(uint32_t i0) { return 0x00000018 + 0x80*i0; }
-
-static inline uint32_t REG_DSI_10nm_PHY_LN_OFFSET_TOP_CTRL(uint32_t i0) { return 0x0000001c + 0x80*i0; }
-
-static inline uint32_t REG_DSI_10nm_PHY_LN_OFFSET_BOT_CTRL(uint32_t i0) { return 0x00000020 + 0x80*i0; }
-
-static inline uint32_t REG_DSI_10nm_PHY_LN_LPTX_STR_CTRL(uint32_t i0) { return 0x00000024 + 0x80*i0; }
-
-static inline uint32_t REG_DSI_10nm_PHY_LN_LPRX_CTRL(uint32_t i0) { return 0x00000028 + 0x80*i0; }
-
-static inline uint32_t REG_DSI_10nm_PHY_LN_TX_DCTRL(uint32_t i0) { return 0x0000002c + 0x80*i0; }
-
-#define REG_DSI_10nm_PHY_PLL_ANALOG_CONTROLS_ONE               0x00000000
-
-#define REG_DSI_10nm_PHY_PLL_ANALOG_CONTROLS_TWO               0x00000004
-
-#define REG_DSI_10nm_PHY_PLL_ANALOG_CONTROLS_THREE             0x00000010
-
-#define REG_DSI_10nm_PHY_PLL_DSM_DIVIDER                       0x0000001c
-
-#define REG_DSI_10nm_PHY_PLL_FEEDBACK_DIVIDER                  0x00000020
-
-#define REG_DSI_10nm_PHY_PLL_SYSTEM_MUXES                      0x00000024
-
-#define REG_DSI_10nm_PHY_PLL_CMODE                             0x0000002c
-
-#define REG_DSI_10nm_PHY_PLL_CALIBRATION_SETTINGS              0x00000030
-
-#define REG_DSI_10nm_PHY_PLL_BAND_SEL_CAL_SETTINGS_THREE       0x00000054
-
-#define REG_DSI_10nm_PHY_PLL_FREQ_DETECT_SETTINGS_ONE          0x00000064
-
-#define REG_DSI_10nm_PHY_PLL_PFILT                             0x0000007c
-
-#define REG_DSI_10nm_PHY_PLL_IFILT                             0x00000080
-
-#define REG_DSI_10nm_PHY_PLL_OUTDIV                            0x00000094
-
-#define REG_DSI_10nm_PHY_PLL_CORE_OVERRIDE                     0x000000a4
-
-#define REG_DSI_10nm_PHY_PLL_CORE_INPUT_OVERRIDE               0x000000a8
-
-#define REG_DSI_10nm_PHY_PLL_PLL_DIGITAL_TIMERS_TWO            0x000000b4
-
-#define REG_DSI_10nm_PHY_PLL_DECIMAL_DIV_START_1               0x000000cc
-
-#define REG_DSI_10nm_PHY_PLL_FRAC_DIV_START_LOW_1              0x000000d0
-
-#define REG_DSI_10nm_PHY_PLL_FRAC_DIV_START_MID_1              0x000000d4
-
-#define REG_DSI_10nm_PHY_PLL_FRAC_DIV_START_HIGH_1             0x000000d8
-
-#define REG_DSI_10nm_PHY_PLL_SSC_STEPSIZE_LOW_1                        0x0000010c
-
-#define REG_DSI_10nm_PHY_PLL_SSC_STEPSIZE_HIGH_1               0x00000110
-
-#define REG_DSI_10nm_PHY_PLL_SSC_DIV_PER_LOW_1                 0x00000114
-
-#define REG_DSI_10nm_PHY_PLL_SSC_DIV_PER_HIGH_1                        0x00000118
-
-#define REG_DSI_10nm_PHY_PLL_SSC_DIV_ADJPER_LOW_1              0x0000011c
-
-#define REG_DSI_10nm_PHY_PLL_SSC_DIV_ADJPER_HIGH_1             0x00000120
-
-#define REG_DSI_10nm_PHY_PLL_SSC_CONTROL                       0x0000013c
-
-#define REG_DSI_10nm_PHY_PLL_PLL_OUTDIV_RATE                   0x00000140
-
-#define REG_DSI_10nm_PHY_PLL_PLL_LOCKDET_RATE_1                        0x00000144
-
-#define REG_DSI_10nm_PHY_PLL_PLL_PROP_GAIN_RATE_1              0x0000014c
-
-#define REG_DSI_10nm_PHY_PLL_PLL_BAND_SET_RATE_1               0x00000154
-
-#define REG_DSI_10nm_PHY_PLL_PLL_INT_GAIN_IFILT_BAND_1         0x0000015c
-
-#define REG_DSI_10nm_PHY_PLL_PLL_FL_INT_GAIN_PFILT_BAND_1      0x00000164
-
-#define REG_DSI_10nm_PHY_PLL_PLL_LOCK_OVERRIDE                 0x00000180
-
-#define REG_DSI_10nm_PHY_PLL_PLL_LOCK_DELAY                    0x00000184
-
-#define REG_DSI_10nm_PHY_PLL_CLOCK_INVERTERS                   0x0000018c
-
-#define REG_DSI_10nm_PHY_PLL_COMMON_STATUS_ONE                 0x000001a0
-
-#define REG_DSI_7nm_PHY_CMN_REVISION_ID0                       0x00000000
-
-#define REG_DSI_7nm_PHY_CMN_REVISION_ID1                       0x00000004
-
-#define REG_DSI_7nm_PHY_CMN_REVISION_ID2                       0x00000008
-
-#define REG_DSI_7nm_PHY_CMN_REVISION_ID3                       0x0000000c
-
-#define REG_DSI_7nm_PHY_CMN_CLK_CFG0                           0x00000010
-
-#define REG_DSI_7nm_PHY_CMN_CLK_CFG1                           0x00000014
-
-#define REG_DSI_7nm_PHY_CMN_GLBL_CTRL                          0x00000018
-
-#define REG_DSI_7nm_PHY_CMN_RBUF_CTRL                          0x0000001c
-
-#define REG_DSI_7nm_PHY_CMN_VREG_CTRL_0                                0x00000020
-
-#define REG_DSI_7nm_PHY_CMN_CTRL_0                             0x00000024
-
-#define REG_DSI_7nm_PHY_CMN_CTRL_1                             0x00000028
-
-#define REG_DSI_7nm_PHY_CMN_CTRL_2                             0x0000002c
-
-#define REG_DSI_7nm_PHY_CMN_CTRL_3                             0x00000030
-
-#define REG_DSI_7nm_PHY_CMN_LANE_CFG0                          0x00000034
-
-#define REG_DSI_7nm_PHY_CMN_LANE_CFG1                          0x00000038
-
-#define REG_DSI_7nm_PHY_CMN_PLL_CNTRL                          0x0000003c
-
-#define REG_DSI_7nm_PHY_CMN_DPHY_SOT                           0x00000040
-
-#define REG_DSI_7nm_PHY_CMN_LANE_CTRL0                         0x000000a0
-
-#define REG_DSI_7nm_PHY_CMN_LANE_CTRL1                         0x000000a4
-
-#define REG_DSI_7nm_PHY_CMN_LANE_CTRL2                         0x000000a8
-
-#define REG_DSI_7nm_PHY_CMN_LANE_CTRL3                         0x000000ac
-
-#define REG_DSI_7nm_PHY_CMN_LANE_CTRL4                         0x000000b0
-
-#define REG_DSI_7nm_PHY_CMN_TIMING_CTRL_0                      0x000000b4
-
-#define REG_DSI_7nm_PHY_CMN_TIMING_CTRL_1                      0x000000b8
-
-#define REG_DSI_7nm_PHY_CMN_TIMING_CTRL_2                      0x000000bc
-
-#define REG_DSI_7nm_PHY_CMN_TIMING_CTRL_3                      0x000000c0
-
-#define REG_DSI_7nm_PHY_CMN_TIMING_CTRL_4                      0x000000c4
-
-#define REG_DSI_7nm_PHY_CMN_TIMING_CTRL_5                      0x000000c8
-
-#define REG_DSI_7nm_PHY_CMN_TIMING_CTRL_6                      0x000000cc
-
-#define REG_DSI_7nm_PHY_CMN_TIMING_CTRL_7                      0x000000d0
-
-#define REG_DSI_7nm_PHY_CMN_TIMING_CTRL_8                      0x000000d4
-
-#define REG_DSI_7nm_PHY_CMN_TIMING_CTRL_9                      0x000000d8
-
-#define REG_DSI_7nm_PHY_CMN_TIMING_CTRL_10                     0x000000dc
-
-#define REG_DSI_7nm_PHY_CMN_TIMING_CTRL_11                     0x000000e0
-
-#define REG_DSI_7nm_PHY_CMN_TIMING_CTRL_12                     0x000000e4
-
-#define REG_DSI_7nm_PHY_CMN_TIMING_CTRL_13                     0x000000e8
-
-#define REG_DSI_7nm_PHY_CMN_GLBL_HSTX_STR_CTRL_0               0x000000ec
-
-#define REG_DSI_7nm_PHY_CMN_GLBL_HSTX_STR_CTRL_1               0x000000f0
-
-#define REG_DSI_7nm_PHY_CMN_GLBL_RESCODE_OFFSET_TOP_CTRL       0x000000f4
-
-#define REG_DSI_7nm_PHY_CMN_GLBL_RESCODE_OFFSET_BOT_CTRL       0x000000f8
-
-#define REG_DSI_7nm_PHY_CMN_GLBL_RESCODE_OFFSET_MID_CTRL       0x000000fc
-
-#define REG_DSI_7nm_PHY_CMN_GLBL_LPTX_STR_CTRL                 0x00000100
-
-#define REG_DSI_7nm_PHY_CMN_GLBL_PEMPH_CTRL_0                  0x00000104
-
-#define REG_DSI_7nm_PHY_CMN_GLBL_PEMPH_CTRL_1                  0x00000108
-
-#define REG_DSI_7nm_PHY_CMN_GLBL_STR_SWI_CAL_SEL_CTRL          0x0000010c
-
-#define REG_DSI_7nm_PHY_CMN_VREG_CTRL_1                                0x00000110
-
-#define REG_DSI_7nm_PHY_CMN_CTRL_4                             0x00000114
-
-#define REG_DSI_7nm_PHY_CMN_GLBL_DIGTOP_SPARE4                 0x00000128
-
-#define REG_DSI_7nm_PHY_CMN_PHY_STATUS                         0x00000140
-
-#define REG_DSI_7nm_PHY_CMN_LANE_STATUS0                       0x00000148
-
-#define REG_DSI_7nm_PHY_CMN_LANE_STATUS1                       0x0000014c
-
-static inline uint32_t REG_DSI_7nm_PHY_LN(uint32_t i0) { return 0x00000000 + 0x80*i0; }
-
-static inline uint32_t REG_DSI_7nm_PHY_LN_CFG0(uint32_t i0) { return 0x00000000 + 0x80*i0; }
-
-static inline uint32_t REG_DSI_7nm_PHY_LN_CFG1(uint32_t i0) { return 0x00000004 + 0x80*i0; }
-
-static inline uint32_t REG_DSI_7nm_PHY_LN_CFG2(uint32_t i0) { return 0x00000008 + 0x80*i0; }
-
-static inline uint32_t REG_DSI_7nm_PHY_LN_TEST_DATAPATH(uint32_t i0) { return 0x0000000c + 0x80*i0; }
-
-static inline uint32_t REG_DSI_7nm_PHY_LN_PIN_SWAP(uint32_t i0) { return 0x00000010 + 0x80*i0; }
-
-static inline uint32_t REG_DSI_7nm_PHY_LN_LPRX_CTRL(uint32_t i0) { return 0x00000014 + 0x80*i0; }
-
-static inline uint32_t REG_DSI_7nm_PHY_LN_TX_DCTRL(uint32_t i0) { return 0x00000018 + 0x80*i0; }
-
-#define REG_DSI_7nm_PHY_PLL_ANALOG_CONTROLS_ONE                        0x00000000
-
-#define REG_DSI_7nm_PHY_PLL_ANALOG_CONTROLS_TWO                        0x00000004
-
-#define REG_DSI_7nm_PHY_PLL_INT_LOOP_SETTINGS                  0x00000008
-
-#define REG_DSI_7nm_PHY_PLL_INT_LOOP_SETTINGS_TWO              0x0000000c
-
-#define REG_DSI_7nm_PHY_PLL_ANALOG_CONTROLS_THREE              0x00000010
-
-#define REG_DSI_7nm_PHY_PLL_ANALOG_CONTROLS_FOUR               0x00000014
-
-#define REG_DSI_7nm_PHY_PLL_ANALOG_CONTROLS_FIVE               0x00000018
-
-#define REG_DSI_7nm_PHY_PLL_INT_LOOP_CONTROLS                  0x0000001c
-
-#define REG_DSI_7nm_PHY_PLL_DSM_DIVIDER                                0x00000020
-
-#define REG_DSI_7nm_PHY_PLL_FEEDBACK_DIVIDER                   0x00000024
-
-#define REG_DSI_7nm_PHY_PLL_SYSTEM_MUXES                       0x00000028
-
-#define REG_DSI_7nm_PHY_PLL_FREQ_UPDATE_CONTROL_OVERRIDES      0x0000002c
-
-#define REG_DSI_7nm_PHY_PLL_CMODE                              0x00000030
-
-#define REG_DSI_7nm_PHY_PLL_PSM_CTRL                           0x00000034
-
-#define REG_DSI_7nm_PHY_PLL_RSM_CTRL                           0x00000038
-
-#define REG_DSI_7nm_PHY_PLL_VCO_TUNE_MAP                       0x0000003c
-
-#define REG_DSI_7nm_PHY_PLL_PLL_CNTRL                          0x00000040
-
-#define REG_DSI_7nm_PHY_PLL_CALIBRATION_SETTINGS               0x00000044
-
-#define REG_DSI_7nm_PHY_PLL_BAND_SEL_CAL_TIMER_LOW             0x00000048
-
-#define REG_DSI_7nm_PHY_PLL_BAND_SEL_CAL_TIMER_HIGH            0x0000004c
-
-#define REG_DSI_7nm_PHY_PLL_BAND_SEL_CAL_SETTINGS              0x00000050
-
-#define REG_DSI_7nm_PHY_PLL_BAND_SEL_MIN                       0x00000054
-
-#define REG_DSI_7nm_PHY_PLL_BAND_SEL_MAX                       0x00000058
-
-#define REG_DSI_7nm_PHY_PLL_BAND_SEL_PFILT                     0x0000005c
-
-#define REG_DSI_7nm_PHY_PLL_BAND_SEL_IFILT                     0x00000060
-
-#define REG_DSI_7nm_PHY_PLL_BAND_SEL_CAL_SETTINGS_TWO          0x00000064
-
-#define REG_DSI_7nm_PHY_PLL_BAND_SEL_CAL_SETTINGS_THREE                0x00000068
-
-#define REG_DSI_7nm_PHY_PLL_BAND_SEL_CAL_SETTINGS_FOUR         0x0000006c
-
-#define REG_DSI_7nm_PHY_PLL_BAND_SEL_ICODE_HIGH                        0x00000070
-
-#define REG_DSI_7nm_PHY_PLL_BAND_SEL_ICODE_LOW                 0x00000074
-
-#define REG_DSI_7nm_PHY_PLL_FREQ_DETECT_SETTINGS_ONE           0x00000078
-
-#define REG_DSI_7nm_PHY_PLL_FREQ_DETECT_THRESH                 0x0000007c
-
-#define REG_DSI_7nm_PHY_PLL_FREQ_DET_REFCLK_HIGH               0x00000080
-
-#define REG_DSI_7nm_PHY_PLL_FREQ_DET_REFCLK_LOW                        0x00000084
-
-#define REG_DSI_7nm_PHY_PLL_FREQ_DET_PLLCLK_HIGH               0x00000088
-
-#define REG_DSI_7nm_PHY_PLL_FREQ_DET_PLLCLK_LOW                        0x0000008c
-
-#define REG_DSI_7nm_PHY_PLL_PFILT                              0x00000090
-
-#define REG_DSI_7nm_PHY_PLL_IFILT                              0x00000094
-
-#define REG_DSI_7nm_PHY_PLL_PLL_GAIN                           0x00000098
-
-#define REG_DSI_7nm_PHY_PLL_ICODE_LOW                          0x0000009c
-
-#define REG_DSI_7nm_PHY_PLL_ICODE_HIGH                         0x000000a0
-
-#define REG_DSI_7nm_PHY_PLL_LOCKDET                            0x000000a4
-
-#define REG_DSI_7nm_PHY_PLL_OUTDIV                             0x000000a8
-
-#define REG_DSI_7nm_PHY_PLL_FASTLOCK_CONTROL                   0x000000ac
-
-#define REG_DSI_7nm_PHY_PLL_PASS_OUT_OVERRIDE_ONE              0x000000b0
-
-#define REG_DSI_7nm_PHY_PLL_PASS_OUT_OVERRIDE_TWO              0x000000b4
-
-#define REG_DSI_7nm_PHY_PLL_CORE_OVERRIDE                      0x000000b8
-
-#define REG_DSI_7nm_PHY_PLL_CORE_INPUT_OVERRIDE                        0x000000bc
-
-#define REG_DSI_7nm_PHY_PLL_RATE_CHANGE                                0x000000c0
-
-#define REG_DSI_7nm_PHY_PLL_PLL_DIGITAL_TIMERS                 0x000000c4
-
-#define REG_DSI_7nm_PHY_PLL_PLL_DIGITAL_TIMERS_TWO             0x000000c8
-
-#define REG_DSI_7nm_PHY_PLL_DECIMAL_DIV_START                  0x000000cc
-
-#define REG_DSI_7nm_PHY_PLL_FRAC_DIV_START_LOW                 0x000000d0
-
-#define REG_DSI_7nm_PHY_PLL_FRAC_DIV_START_MID                 0x000000d4
-
-#define REG_DSI_7nm_PHY_PLL_FRAC_DIV_START_HIGH                        0x000000d8
-
-#define REG_DSI_7nm_PHY_PLL_DEC_FRAC_MUXES                     0x000000dc
-
-#define REG_DSI_7nm_PHY_PLL_DECIMAL_DIV_START_1                        0x000000e0
-
-#define REG_DSI_7nm_PHY_PLL_FRAC_DIV_START_LOW_1               0x000000e4
-
-#define REG_DSI_7nm_PHY_PLL_FRAC_DIV_START_MID_1               0x000000e8
-
-#define REG_DSI_7nm_PHY_PLL_FRAC_DIV_START_HIGH_1              0x000000ec
-
-#define REG_DSI_7nm_PHY_PLL_DECIMAL_DIV_START_2                        0x000000f0
-
-#define REG_DSI_7nm_PHY_PLL_FRAC_DIV_START_LOW_2               0x000000f4
-
-#define REG_DSI_7nm_PHY_PLL_FRAC_DIV_START_MID_2               0x000000f8
-
-#define REG_DSI_7nm_PHY_PLL_FRAC_DIV_START_HIGH_2              0x000000fc
-
-#define REG_DSI_7nm_PHY_PLL_MASH_CONTROL                       0x00000100
-
-#define REG_DSI_7nm_PHY_PLL_SSC_STEPSIZE_LOW                   0x00000104
-
-#define REG_DSI_7nm_PHY_PLL_SSC_STEPSIZE_HIGH                  0x00000108
-
-#define REG_DSI_7nm_PHY_PLL_SSC_DIV_PER_LOW                    0x0000010c
-
-#define REG_DSI_7nm_PHY_PLL_SSC_DIV_PER_HIGH                   0x00000110
-
-#define REG_DSI_7nm_PHY_PLL_SSC_ADJPER_LOW                     0x00000114
-
-#define REG_DSI_7nm_PHY_PLL_SSC_ADJPER_HIGH                    0x00000118
-
-#define REG_DSI_7nm_PHY_PLL_SSC_MUX_CONTROL                    0x0000011c
-
-#define REG_DSI_7nm_PHY_PLL_SSC_STEPSIZE_LOW_1                 0x00000120
-
-#define REG_DSI_7nm_PHY_PLL_SSC_STEPSIZE_HIGH_1                        0x00000124
-
-#define REG_DSI_7nm_PHY_PLL_SSC_DIV_PER_LOW_1                  0x00000128
-
-#define REG_DSI_7nm_PHY_PLL_SSC_DIV_PER_HIGH_1                 0x0000012c
-
-#define REG_DSI_7nm_PHY_PLL_SSC_ADJPER_LOW_1                   0x00000130
-
-#define REG_DSI_7nm_PHY_PLL_SSC_ADJPER_HIGH_1                  0x00000134
-
-#define REG_DSI_7nm_PHY_PLL_SSC_STEPSIZE_LOW_2                 0x00000138
-
-#define REG_DSI_7nm_PHY_PLL_SSC_STEPSIZE_HIGH_2                        0x0000013c
-
-#define REG_DSI_7nm_PHY_PLL_SSC_DIV_PER_LOW_2                  0x00000140
-
-#define REG_DSI_7nm_PHY_PLL_SSC_DIV_PER_HIGH_2                 0x00000144
-
-#define REG_DSI_7nm_PHY_PLL_SSC_ADJPER_LOW_2                   0x00000148
-
-#define REG_DSI_7nm_PHY_PLL_SSC_ADJPER_HIGH_2                  0x0000014c
-
-#define REG_DSI_7nm_PHY_PLL_SSC_CONTROL                                0x00000150
-
-#define REG_DSI_7nm_PHY_PLL_PLL_OUTDIV_RATE                    0x00000154
-
-#define REG_DSI_7nm_PHY_PLL_PLL_LOCKDET_RATE_1                 0x00000158
-
-#define REG_DSI_7nm_PHY_PLL_PLL_LOCKDET_RATE_2                 0x0000015c
-
-#define REG_DSI_7nm_PHY_PLL_PLL_PROP_GAIN_RATE_1               0x00000160
-
-#define REG_DSI_7nm_PHY_PLL_PLL_PROP_GAIN_RATE_2               0x00000164
-
-#define REG_DSI_7nm_PHY_PLL_PLL_BAND_SEL_RATE_1                        0x00000168
-
-#define REG_DSI_7nm_PHY_PLL_PLL_BAND_SEL_RATE_2                        0x0000016c
-
-#define REG_DSI_7nm_PHY_PLL_PLL_INT_GAIN_IFILT_BAND_1          0x00000170
-
-#define REG_DSI_7nm_PHY_PLL_PLL_INT_GAIN_IFILT_BAND_2          0x00000174
-
-#define REG_DSI_7nm_PHY_PLL_PLL_FL_INT_GAIN_PFILT_BAND_1       0x00000178
-
-#define REG_DSI_7nm_PHY_PLL_PLL_FL_INT_GAIN_PFILT_BAND_2       0x0000017c
-
-#define REG_DSI_7nm_PHY_PLL_PLL_FASTLOCK_EN_BAND               0x00000180
-
-#define REG_DSI_7nm_PHY_PLL_FREQ_TUNE_ACCUM_INIT_MID           0x00000184
-
-#define REG_DSI_7nm_PHY_PLL_FREQ_TUNE_ACCUM_INIT_HIGH          0x00000188
-
-#define REG_DSI_7nm_PHY_PLL_FREQ_TUNE_ACCUM_INIT_MUX           0x0000018c
-
-#define REG_DSI_7nm_PHY_PLL_PLL_LOCK_OVERRIDE                  0x00000190
-
-#define REG_DSI_7nm_PHY_PLL_PLL_LOCK_DELAY                     0x00000194
-
-#define REG_DSI_7nm_PHY_PLL_PLL_LOCK_MIN_DELAY                 0x00000198
-
-#define REG_DSI_7nm_PHY_PLL_CLOCK_INVERTERS                    0x0000019c
-
-#define REG_DSI_7nm_PHY_PLL_SPARE_AND_JPC_OVERRIDES            0x000001a0
-
-#define REG_DSI_7nm_PHY_PLL_BIAS_CONTROL_1                     0x000001a4
-
-#define REG_DSI_7nm_PHY_PLL_BIAS_CONTROL_2                     0x000001a8
-
-#define REG_DSI_7nm_PHY_PLL_ALOG_OBSV_BUS_CTRL_1               0x000001ac
-
-#define REG_DSI_7nm_PHY_PLL_COMMON_STATUS_ONE                  0x000001b0
-
-#define REG_DSI_7nm_PHY_PLL_COMMON_STATUS_TWO                  0x000001b4
-
-#define REG_DSI_7nm_PHY_PLL_BAND_SEL_CAL                       0x000001b8
-
-#define REG_DSI_7nm_PHY_PLL_ICODE_ACCUM_STATUS_LOW             0x000001bc
-
-#define REG_DSI_7nm_PHY_PLL_ICODE_ACCUM_STATUS_HIGH            0x000001c0
-
-#define REG_DSI_7nm_PHY_PLL_FD_OUT_LOW                         0x000001c4
-
-#define REG_DSI_7nm_PHY_PLL_FD_OUT_HIGH                                0x000001c8
-
-#define REG_DSI_7nm_PHY_PLL_ALOG_OBSV_BUS_STATUS_1             0x000001cc
-
-#define REG_DSI_7nm_PHY_PLL_PLL_MISC_CONFIG                    0x000001d0
-
-#define REG_DSI_7nm_PHY_PLL_FLL_CONFIG                         0x000001d4
-
-#define REG_DSI_7nm_PHY_PLL_FLL_FREQ_ACQ_TIME                  0x000001d8
-
-#define REG_DSI_7nm_PHY_PLL_FLL_CODE0                          0x000001dc
-
-#define REG_DSI_7nm_PHY_PLL_FLL_CODE1                          0x000001e0
-
-#define REG_DSI_7nm_PHY_PLL_FLL_GAIN0                          0x000001e4
-
-#define REG_DSI_7nm_PHY_PLL_FLL_GAIN1                          0x000001e8
-
-#define REG_DSI_7nm_PHY_PLL_SW_RESET                           0x000001ec
-
-#define REG_DSI_7nm_PHY_PLL_FAST_PWRUP                         0x000001f0
-
-#define REG_DSI_7nm_PHY_PLL_LOCKTIME0                          0x000001f4
-
-#define REG_DSI_7nm_PHY_PLL_LOCKTIME1                          0x000001f8
-
-#define REG_DSI_7nm_PHY_PLL_DEBUG_BUS_SEL                      0x000001fc
-
-#define REG_DSI_7nm_PHY_PLL_DEBUG_BUS0                         0x00000200
-
-#define REG_DSI_7nm_PHY_PLL_DEBUG_BUS1                         0x00000204
-
-#define REG_DSI_7nm_PHY_PLL_DEBUG_BUS2                         0x00000208
-
-#define REG_DSI_7nm_PHY_PLL_DEBUG_BUS3                         0x0000020c
-
-#define REG_DSI_7nm_PHY_PLL_ANALOG_FLL_CONTROL_OVERRIDES       0x00000210
-
-#define REG_DSI_7nm_PHY_PLL_VCO_CONFIG                         0x00000214
-
-#define REG_DSI_7nm_PHY_PLL_VCO_CAL_CODE1_MODE0_STATUS         0x00000218
-
-#define REG_DSI_7nm_PHY_PLL_VCO_CAL_CODE1_MODE1_STATUS         0x0000021c
-
-#define REG_DSI_7nm_PHY_PLL_RESET_SM_STATUS                    0x00000220
-
-#define REG_DSI_7nm_PHY_PLL_TDC_OFFSET                         0x00000224
-
-#define REG_DSI_7nm_PHY_PLL_PS3_PWRDOWN_CONTROLS               0x00000228
-
-#define REG_DSI_7nm_PHY_PLL_PS4_PWRDOWN_CONTROLS               0x0000022c
-
-#define REG_DSI_7nm_PHY_PLL_PLL_RST_CONTROLS                   0x00000230
-
-#define REG_DSI_7nm_PHY_PLL_GEAR_BAND_SELECT_CONTROLS          0x00000234
-
-#define REG_DSI_7nm_PHY_PLL_PSM_CLK_CONTROLS                   0x00000238
-
-#define REG_DSI_7nm_PHY_PLL_SYSTEM_MUXES_2                     0x0000023c
-
-#define REG_DSI_7nm_PHY_PLL_VCO_CONFIG_1                       0x00000240
-
-#define REG_DSI_7nm_PHY_PLL_VCO_CONFIG_2                       0x00000244
-
-#define REG_DSI_7nm_PHY_PLL_CLOCK_INVERTERS_1                  0x00000248
-
-#define REG_DSI_7nm_PHY_PLL_CLOCK_INVERTERS_2                  0x0000024c
-
-#define REG_DSI_7nm_PHY_PLL_CMODE_1                            0x00000250
-
-#define REG_DSI_7nm_PHY_PLL_CMODE_2                            0x00000254
-
-#define REG_DSI_7nm_PHY_PLL_ANALOG_CONTROLS_FIVE_1             0x00000258
-
-#define REG_DSI_7nm_PHY_PLL_ANALOG_CONTROLS_FIVE_2             0x0000025c
+#define REG_DSI_CPHY_MODE_CTRL                                 0x000002d4
 
-#define REG_DSI_7nm_PHY_PLL_PERF_OPTIMIZE                      0x00000260
 
 #endif /* DSI_XML */
diff --git a/drivers/gpu/drm/msm/dsi/dsi_phy_10nm.xml.h b/drivers/gpu/drm/msm/dsi/dsi_phy_10nm.xml.h
new file mode 100644 (file)
index 0000000..8872d77
--- /dev/null
@@ -0,0 +1,228 @@
+#ifndef DSI_PHY_10NM_XML
+#define DSI_PHY_10NM_XML
+
+/* Autogenerated file, DO NOT EDIT manually!
+
+This file was generated by the rules-ng-ng headergen tool in this git repository:
+http://github.com/freedreno/envytools/
+git clone https://github.com/freedreno/envytools.git
+
+The rules-ng-ng source files this header was generated from are:
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/msm.xml                   (    981 bytes, from 2021-06-05 21:37:42)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/freedreno_copyright.xml   (   1572 bytes, from 2021-02-18 16:45:44)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/mdp/mdp4.xml              (  20912 bytes, from 2021-02-18 16:45:44)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/mdp/mdp_common.xml        (   2849 bytes, from 2021-02-18 16:45:44)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/mdp/mdp5.xml              (  37461 bytes, from 2021-02-18 16:45:44)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/dsi/dsi.xml               (  15291 bytes, from 2021-06-15 22:36:13)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/dsi/dsi_phy_v2.xml        (   3236 bytes, from 2021-06-05 21:37:42)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/dsi/dsi_phy_28nm_8960.xml (   4935 bytes, from 2021-05-21 19:18:08)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/dsi/dsi_phy_28nm.xml      (   7004 bytes, from 2021-05-21 19:18:08)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/dsi/dsi_phy_20nm.xml      (   3712 bytes, from 2021-05-21 19:18:08)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/dsi/dsi_phy_14nm.xml      (   5381 bytes, from 2021-05-21 19:18:08)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/dsi/dsi_phy_10nm.xml      (   4499 bytes, from 2021-05-21 19:18:08)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/dsi/dsi_phy_7nm.xml       (  10953 bytes, from 2021-05-21 19:18:08)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/dsi/dsi_phy_5nm.xml       (  10900 bytes, from 2021-05-21 19:18:08)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/dsi/sfpb.xml              (    602 bytes, from 2021-02-18 16:45:44)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/dsi/mmss_cc.xml           (   1686 bytes, from 2021-02-18 16:45:44)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/hdmi/qfprom.xml           (    600 bytes, from 2021-02-18 16:45:44)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/hdmi/hdmi.xml             (  41874 bytes, from 2021-02-18 16:45:44)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/edp/edp.xml               (  10416 bytes, from 2021-02-18 16:45:44)
+
+Copyright (C) 2013-2021 by the following authors:
+- Rob Clark <robdclark@gmail.com> (robclark)
+- Ilia Mirkin <imirkin@alum.mit.edu> (imirkin)
+
+Permission is hereby granted, free of charge, to any person obtaining
+a copy of this software and associated documentation files (the
+"Software"), to deal in the Software without restriction, including
+without limitation the rights to use, copy, modify, merge, publish,
+distribute, sublicense, and/or sell copies of the Software, and to
+permit persons to whom the Software is furnished to do so, subject to
+the following conditions:
+
+The above copyright notice and this permission notice (including the
+next paragraph) shall be included in all copies or substantial
+portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
+IN NO EVENT SHALL THE COPYRIGHT OWNER(S) AND/OR ITS SUPPLIERS BE
+LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+*/
+
+
+#define REG_DSI_10nm_PHY_CMN_REVISION_ID0                      0x00000000
+
+#define REG_DSI_10nm_PHY_CMN_REVISION_ID1                      0x00000004
+
+#define REG_DSI_10nm_PHY_CMN_REVISION_ID2                      0x00000008
+
+#define REG_DSI_10nm_PHY_CMN_REVISION_ID3                      0x0000000c
+
+#define REG_DSI_10nm_PHY_CMN_CLK_CFG0                          0x00000010
+
+#define REG_DSI_10nm_PHY_CMN_CLK_CFG1                          0x00000014
+
+#define REG_DSI_10nm_PHY_CMN_GLBL_CTRL                         0x00000018
+
+#define REG_DSI_10nm_PHY_CMN_RBUF_CTRL                         0x0000001c
+
+#define REG_DSI_10nm_PHY_CMN_VREG_CTRL                         0x00000020
+
+#define REG_DSI_10nm_PHY_CMN_CTRL_0                            0x00000024
+
+#define REG_DSI_10nm_PHY_CMN_CTRL_1                            0x00000028
+
+#define REG_DSI_10nm_PHY_CMN_CTRL_2                            0x0000002c
+
+#define REG_DSI_10nm_PHY_CMN_LANE_CFG0                         0x00000030
+
+#define REG_DSI_10nm_PHY_CMN_LANE_CFG1                         0x00000034
+
+#define REG_DSI_10nm_PHY_CMN_PLL_CNTRL                         0x00000038
+
+#define REG_DSI_10nm_PHY_CMN_LANE_CTRL0                                0x00000098
+
+#define REG_DSI_10nm_PHY_CMN_LANE_CTRL1                                0x0000009c
+
+#define REG_DSI_10nm_PHY_CMN_LANE_CTRL2                                0x000000a0
+
+#define REG_DSI_10nm_PHY_CMN_LANE_CTRL3                                0x000000a4
+
+#define REG_DSI_10nm_PHY_CMN_LANE_CTRL4                                0x000000a8
+
+#define REG_DSI_10nm_PHY_CMN_TIMING_CTRL_0                     0x000000ac
+
+#define REG_DSI_10nm_PHY_CMN_TIMING_CTRL_1                     0x000000b0
+
+#define REG_DSI_10nm_PHY_CMN_TIMING_CTRL_2                     0x000000b4
+
+#define REG_DSI_10nm_PHY_CMN_TIMING_CTRL_3                     0x000000b8
+
+#define REG_DSI_10nm_PHY_CMN_TIMING_CTRL_4                     0x000000bc
+
+#define REG_DSI_10nm_PHY_CMN_TIMING_CTRL_5                     0x000000c0
+
+#define REG_DSI_10nm_PHY_CMN_TIMING_CTRL_6                     0x000000c4
+
+#define REG_DSI_10nm_PHY_CMN_TIMING_CTRL_7                     0x000000c8
+
+#define REG_DSI_10nm_PHY_CMN_TIMING_CTRL_8                     0x000000cc
+
+#define REG_DSI_10nm_PHY_CMN_TIMING_CTRL_9                     0x000000d0
+
+#define REG_DSI_10nm_PHY_CMN_TIMING_CTRL_10                    0x000000d4
+
+#define REG_DSI_10nm_PHY_CMN_TIMING_CTRL_11                    0x000000d8
+
+#define REG_DSI_10nm_PHY_CMN_PHY_STATUS                                0x000000ec
+
+#define REG_DSI_10nm_PHY_CMN_LANE_STATUS0                      0x000000f4
+
+#define REG_DSI_10nm_PHY_CMN_LANE_STATUS1                      0x000000f8
+
+static inline uint32_t REG_DSI_10nm_PHY_LN(uint32_t i0) { return 0x00000000 + 0x80*i0; }
+
+static inline uint32_t REG_DSI_10nm_PHY_LN_CFG0(uint32_t i0) { return 0x00000000 + 0x80*i0; }
+
+static inline uint32_t REG_DSI_10nm_PHY_LN_CFG1(uint32_t i0) { return 0x00000004 + 0x80*i0; }
+
+static inline uint32_t REG_DSI_10nm_PHY_LN_CFG2(uint32_t i0) { return 0x00000008 + 0x80*i0; }
+
+static inline uint32_t REG_DSI_10nm_PHY_LN_CFG3(uint32_t i0) { return 0x0000000c + 0x80*i0; }
+
+static inline uint32_t REG_DSI_10nm_PHY_LN_TEST_DATAPATH(uint32_t i0) { return 0x00000010 + 0x80*i0; }
+
+static inline uint32_t REG_DSI_10nm_PHY_LN_PIN_SWAP(uint32_t i0) { return 0x00000014 + 0x80*i0; }
+
+static inline uint32_t REG_DSI_10nm_PHY_LN_HSTX_STR_CTRL(uint32_t i0) { return 0x00000018 + 0x80*i0; }
+
+static inline uint32_t REG_DSI_10nm_PHY_LN_OFFSET_TOP_CTRL(uint32_t i0) { return 0x0000001c + 0x80*i0; }
+
+static inline uint32_t REG_DSI_10nm_PHY_LN_OFFSET_BOT_CTRL(uint32_t i0) { return 0x00000020 + 0x80*i0; }
+
+static inline uint32_t REG_DSI_10nm_PHY_LN_LPTX_STR_CTRL(uint32_t i0) { return 0x00000024 + 0x80*i0; }
+
+static inline uint32_t REG_DSI_10nm_PHY_LN_LPRX_CTRL(uint32_t i0) { return 0x00000028 + 0x80*i0; }
+
+static inline uint32_t REG_DSI_10nm_PHY_LN_TX_DCTRL(uint32_t i0) { return 0x0000002c + 0x80*i0; }
+
+#define REG_DSI_10nm_PHY_PLL_ANALOG_CONTROLS_ONE               0x00000000
+
+#define REG_DSI_10nm_PHY_PLL_ANALOG_CONTROLS_TWO               0x00000004
+
+#define REG_DSI_10nm_PHY_PLL_ANALOG_CONTROLS_THREE             0x00000010
+
+#define REG_DSI_10nm_PHY_PLL_DSM_DIVIDER                       0x0000001c
+
+#define REG_DSI_10nm_PHY_PLL_FEEDBACK_DIVIDER                  0x00000020
+
+#define REG_DSI_10nm_PHY_PLL_SYSTEM_MUXES                      0x00000024
+
+#define REG_DSI_10nm_PHY_PLL_CMODE                             0x0000002c
+
+#define REG_DSI_10nm_PHY_PLL_CALIBRATION_SETTINGS              0x00000030
+
+#define REG_DSI_10nm_PHY_PLL_BAND_SEL_CAL_SETTINGS_THREE       0x00000054
+
+#define REG_DSI_10nm_PHY_PLL_FREQ_DETECT_SETTINGS_ONE          0x00000064
+
+#define REG_DSI_10nm_PHY_PLL_PFILT                             0x0000007c
+
+#define REG_DSI_10nm_PHY_PLL_IFILT                             0x00000080
+
+#define REG_DSI_10nm_PHY_PLL_OUTDIV                            0x00000094
+
+#define REG_DSI_10nm_PHY_PLL_CORE_OVERRIDE                     0x000000a4
+
+#define REG_DSI_10nm_PHY_PLL_CORE_INPUT_OVERRIDE               0x000000a8
+
+#define REG_DSI_10nm_PHY_PLL_PLL_DIGITAL_TIMERS_TWO            0x000000b4
+
+#define REG_DSI_10nm_PHY_PLL_DECIMAL_DIV_START_1               0x000000cc
+
+#define REG_DSI_10nm_PHY_PLL_FRAC_DIV_START_LOW_1              0x000000d0
+
+#define REG_DSI_10nm_PHY_PLL_FRAC_DIV_START_MID_1              0x000000d4
+
+#define REG_DSI_10nm_PHY_PLL_FRAC_DIV_START_HIGH_1             0x000000d8
+
+#define REG_DSI_10nm_PHY_PLL_SSC_STEPSIZE_LOW_1                        0x0000010c
+
+#define REG_DSI_10nm_PHY_PLL_SSC_STEPSIZE_HIGH_1               0x00000110
+
+#define REG_DSI_10nm_PHY_PLL_SSC_DIV_PER_LOW_1                 0x00000114
+
+#define REG_DSI_10nm_PHY_PLL_SSC_DIV_PER_HIGH_1                        0x00000118
+
+#define REG_DSI_10nm_PHY_PLL_SSC_DIV_ADJPER_LOW_1              0x0000011c
+
+#define REG_DSI_10nm_PHY_PLL_SSC_DIV_ADJPER_HIGH_1             0x00000120
+
+#define REG_DSI_10nm_PHY_PLL_SSC_CONTROL                       0x0000013c
+
+#define REG_DSI_10nm_PHY_PLL_PLL_OUTDIV_RATE                   0x00000140
+
+#define REG_DSI_10nm_PHY_PLL_PLL_LOCKDET_RATE_1                        0x00000144
+
+#define REG_DSI_10nm_PHY_PLL_PLL_PROP_GAIN_RATE_1              0x0000014c
+
+#define REG_DSI_10nm_PHY_PLL_PLL_BAND_SET_RATE_1               0x00000154
+
+#define REG_DSI_10nm_PHY_PLL_PLL_INT_GAIN_IFILT_BAND_1         0x0000015c
+
+#define REG_DSI_10nm_PHY_PLL_PLL_FL_INT_GAIN_PFILT_BAND_1      0x00000164
+
+#define REG_DSI_10nm_PHY_PLL_PLL_LOCK_OVERRIDE                 0x00000180
+
+#define REG_DSI_10nm_PHY_PLL_PLL_LOCK_DELAY                    0x00000184
+
+#define REG_DSI_10nm_PHY_PLL_CLOCK_INVERTERS                   0x0000018c
+
+#define REG_DSI_10nm_PHY_PLL_COMMON_STATUS_ONE                 0x000001a0
+
+
+#endif /* DSI_PHY_10NM_XML */
diff --git a/drivers/gpu/drm/msm/dsi/dsi_phy_14nm.xml.h b/drivers/gpu/drm/msm/dsi/dsi_phy_14nm.xml.h
new file mode 100644 (file)
index 0000000..0d9a5cc
--- /dev/null
@@ -0,0 +1,310 @@
+#ifndef DSI_PHY_14NM_XML
+#define DSI_PHY_14NM_XML
+
+/* Autogenerated file, DO NOT EDIT manually!
+
+This file was generated by the rules-ng-ng headergen tool in this git repository:
+http://github.com/freedreno/envytools/
+git clone https://github.com/freedreno/envytools.git
+
+The rules-ng-ng source files this header was generated from are:
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/msm.xml                   (    981 bytes, from 2021-06-05 21:37:42)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/freedreno_copyright.xml   (   1572 bytes, from 2021-02-18 16:45:44)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/mdp/mdp4.xml              (  20912 bytes, from 2021-02-18 16:45:44)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/mdp/mdp_common.xml        (   2849 bytes, from 2021-02-18 16:45:44)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/mdp/mdp5.xml              (  37461 bytes, from 2021-02-18 16:45:44)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/dsi/dsi.xml               (  15291 bytes, from 2021-06-15 22:36:13)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/dsi/dsi_phy_v2.xml        (   3236 bytes, from 2021-06-05 21:37:42)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/dsi/dsi_phy_28nm_8960.xml (   4935 bytes, from 2021-05-21 19:18:08)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/dsi/dsi_phy_28nm.xml      (   7004 bytes, from 2021-05-21 19:18:08)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/dsi/dsi_phy_20nm.xml      (   3712 bytes, from 2021-05-21 19:18:08)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/dsi/dsi_phy_14nm.xml      (   5381 bytes, from 2021-05-21 19:18:08)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/dsi/dsi_phy_10nm.xml      (   4499 bytes, from 2021-05-21 19:18:08)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/dsi/dsi_phy_7nm.xml       (  10953 bytes, from 2021-05-21 19:18:08)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/dsi/dsi_phy_5nm.xml       (  10900 bytes, from 2021-05-21 19:18:08)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/dsi/sfpb.xml              (    602 bytes, from 2021-02-18 16:45:44)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/dsi/mmss_cc.xml           (   1686 bytes, from 2021-02-18 16:45:44)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/hdmi/qfprom.xml           (    600 bytes, from 2021-02-18 16:45:44)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/hdmi/hdmi.xml             (  41874 bytes, from 2021-02-18 16:45:44)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/edp/edp.xml               (  10416 bytes, from 2021-02-18 16:45:44)
+
+Copyright (C) 2013-2021 by the following authors:
+- Rob Clark <robdclark@gmail.com> (robclark)
+- Ilia Mirkin <imirkin@alum.mit.edu> (imirkin)
+
+Permission is hereby granted, free of charge, to any person obtaining
+a copy of this software and associated documentation files (the
+"Software"), to deal in the Software without restriction, including
+without limitation the rights to use, copy, modify, merge, publish,
+distribute, sublicense, and/or sell copies of the Software, and to
+permit persons to whom the Software is furnished to do so, subject to
+the following conditions:
+
+The above copyright notice and this permission notice (including the
+next paragraph) shall be included in all copies or substantial
+portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
+IN NO EVENT SHALL THE COPYRIGHT OWNER(S) AND/OR ITS SUPPLIERS BE
+LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+*/
+
+
+#define REG_DSI_14nm_PHY_CMN_REVISION_ID0                      0x00000000
+
+#define REG_DSI_14nm_PHY_CMN_REVISION_ID1                      0x00000004
+
+#define REG_DSI_14nm_PHY_CMN_REVISION_ID2                      0x00000008
+
+#define REG_DSI_14nm_PHY_CMN_REVISION_ID3                      0x0000000c
+
+#define REG_DSI_14nm_PHY_CMN_CLK_CFG0                          0x00000010
+#define DSI_14nm_PHY_CMN_CLK_CFG0_DIV_CTRL_3_0__MASK           0x000000f0
+#define DSI_14nm_PHY_CMN_CLK_CFG0_DIV_CTRL_3_0__SHIFT          4
+static inline uint32_t DSI_14nm_PHY_CMN_CLK_CFG0_DIV_CTRL_3_0(uint32_t val)
+{
+       return ((val) << DSI_14nm_PHY_CMN_CLK_CFG0_DIV_CTRL_3_0__SHIFT) & DSI_14nm_PHY_CMN_CLK_CFG0_DIV_CTRL_3_0__MASK;
+}
+#define DSI_14nm_PHY_CMN_CLK_CFG0_DIV_CTRL_7_4__MASK           0x000000f0
+#define DSI_14nm_PHY_CMN_CLK_CFG0_DIV_CTRL_7_4__SHIFT          4
+static inline uint32_t DSI_14nm_PHY_CMN_CLK_CFG0_DIV_CTRL_7_4(uint32_t val)
+{
+       return ((val) << DSI_14nm_PHY_CMN_CLK_CFG0_DIV_CTRL_7_4__SHIFT) & DSI_14nm_PHY_CMN_CLK_CFG0_DIV_CTRL_7_4__MASK;
+}
+
+#define REG_DSI_14nm_PHY_CMN_CLK_CFG1                          0x00000014
+#define DSI_14nm_PHY_CMN_CLK_CFG1_DSICLK_SEL                   0x00000001
+
+#define REG_DSI_14nm_PHY_CMN_GLBL_TEST_CTRL                    0x00000018
+#define DSI_14nm_PHY_CMN_GLBL_TEST_CTRL_BITCLK_HS_SEL          0x00000004
+
+#define REG_DSI_14nm_PHY_CMN_CTRL_0                            0x0000001c
+
+#define REG_DSI_14nm_PHY_CMN_CTRL_1                            0x00000020
+
+#define REG_DSI_14nm_PHY_CMN_HW_TRIGGER                                0x00000024
+
+#define REG_DSI_14nm_PHY_CMN_SW_CFG0                           0x00000028
+
+#define REG_DSI_14nm_PHY_CMN_SW_CFG1                           0x0000002c
+
+#define REG_DSI_14nm_PHY_CMN_SW_CFG2                           0x00000030
+
+#define REG_DSI_14nm_PHY_CMN_HW_CFG0                           0x00000034
+
+#define REG_DSI_14nm_PHY_CMN_HW_CFG1                           0x00000038
+
+#define REG_DSI_14nm_PHY_CMN_HW_CFG2                           0x0000003c
+
+#define REG_DSI_14nm_PHY_CMN_HW_CFG3                           0x00000040
+
+#define REG_DSI_14nm_PHY_CMN_HW_CFG4                           0x00000044
+
+#define REG_DSI_14nm_PHY_CMN_PLL_CNTRL                         0x00000048
+#define DSI_14nm_PHY_CMN_PLL_CNTRL_PLL_START                   0x00000001
+
+#define REG_DSI_14nm_PHY_CMN_LDO_CNTRL                         0x0000004c
+#define DSI_14nm_PHY_CMN_LDO_CNTRL_VREG_CTRL__MASK             0x0000003f
+#define DSI_14nm_PHY_CMN_LDO_CNTRL_VREG_CTRL__SHIFT            0
+static inline uint32_t DSI_14nm_PHY_CMN_LDO_CNTRL_VREG_CTRL(uint32_t val)
+{
+       return ((val) << DSI_14nm_PHY_CMN_LDO_CNTRL_VREG_CTRL__SHIFT) & DSI_14nm_PHY_CMN_LDO_CNTRL_VREG_CTRL__MASK;
+}
+
+static inline uint32_t REG_DSI_14nm_PHY_LN(uint32_t i0) { return 0x00000000 + 0x80*i0; }
+
+static inline uint32_t REG_DSI_14nm_PHY_LN_CFG0(uint32_t i0) { return 0x00000000 + 0x80*i0; }
+#define DSI_14nm_PHY_LN_CFG0_PREPARE_DLY__MASK                 0x000000c0
+#define DSI_14nm_PHY_LN_CFG0_PREPARE_DLY__SHIFT                        6
+static inline uint32_t DSI_14nm_PHY_LN_CFG0_PREPARE_DLY(uint32_t val)
+{
+       return ((val) << DSI_14nm_PHY_LN_CFG0_PREPARE_DLY__SHIFT) & DSI_14nm_PHY_LN_CFG0_PREPARE_DLY__MASK;
+}
+
+static inline uint32_t REG_DSI_14nm_PHY_LN_CFG1(uint32_t i0) { return 0x00000004 + 0x80*i0; }
+#define DSI_14nm_PHY_LN_CFG1_HALFBYTECLK_EN                    0x00000001
+
+static inline uint32_t REG_DSI_14nm_PHY_LN_CFG2(uint32_t i0) { return 0x00000008 + 0x80*i0; }
+
+static inline uint32_t REG_DSI_14nm_PHY_LN_CFG3(uint32_t i0) { return 0x0000000c + 0x80*i0; }
+
+static inline uint32_t REG_DSI_14nm_PHY_LN_TEST_DATAPATH(uint32_t i0) { return 0x00000010 + 0x80*i0; }
+
+static inline uint32_t REG_DSI_14nm_PHY_LN_TEST_STR(uint32_t i0) { return 0x00000014 + 0x80*i0; }
+
+static inline uint32_t REG_DSI_14nm_PHY_LN_TIMING_CTRL_4(uint32_t i0) { return 0x00000018 + 0x80*i0; }
+#define DSI_14nm_PHY_LN_TIMING_CTRL_4_HS_EXIT__MASK            0x000000ff
+#define DSI_14nm_PHY_LN_TIMING_CTRL_4_HS_EXIT__SHIFT           0
+static inline uint32_t DSI_14nm_PHY_LN_TIMING_CTRL_4_HS_EXIT(uint32_t val)
+{
+       return ((val) << DSI_14nm_PHY_LN_TIMING_CTRL_4_HS_EXIT__SHIFT) & DSI_14nm_PHY_LN_TIMING_CTRL_4_HS_EXIT__MASK;
+}
+
+static inline uint32_t REG_DSI_14nm_PHY_LN_TIMING_CTRL_5(uint32_t i0) { return 0x0000001c + 0x80*i0; }
+#define DSI_14nm_PHY_LN_TIMING_CTRL_5_HS_ZERO__MASK            0x000000ff
+#define DSI_14nm_PHY_LN_TIMING_CTRL_5_HS_ZERO__SHIFT           0
+static inline uint32_t DSI_14nm_PHY_LN_TIMING_CTRL_5_HS_ZERO(uint32_t val)
+{
+       return ((val) << DSI_14nm_PHY_LN_TIMING_CTRL_5_HS_ZERO__SHIFT) & DSI_14nm_PHY_LN_TIMING_CTRL_5_HS_ZERO__MASK;
+}
+
+static inline uint32_t REG_DSI_14nm_PHY_LN_TIMING_CTRL_6(uint32_t i0) { return 0x00000020 + 0x80*i0; }
+#define DSI_14nm_PHY_LN_TIMING_CTRL_6_HS_PREPARE__MASK         0x000000ff
+#define DSI_14nm_PHY_LN_TIMING_CTRL_6_HS_PREPARE__SHIFT                0
+static inline uint32_t DSI_14nm_PHY_LN_TIMING_CTRL_6_HS_PREPARE(uint32_t val)
+{
+       return ((val) << DSI_14nm_PHY_LN_TIMING_CTRL_6_HS_PREPARE__SHIFT) & DSI_14nm_PHY_LN_TIMING_CTRL_6_HS_PREPARE__MASK;
+}
+
+static inline uint32_t REG_DSI_14nm_PHY_LN_TIMING_CTRL_7(uint32_t i0) { return 0x00000024 + 0x80*i0; }
+#define DSI_14nm_PHY_LN_TIMING_CTRL_7_HS_TRAIL__MASK           0x000000ff
+#define DSI_14nm_PHY_LN_TIMING_CTRL_7_HS_TRAIL__SHIFT          0
+static inline uint32_t DSI_14nm_PHY_LN_TIMING_CTRL_7_HS_TRAIL(uint32_t val)
+{
+       return ((val) << DSI_14nm_PHY_LN_TIMING_CTRL_7_HS_TRAIL__SHIFT) & DSI_14nm_PHY_LN_TIMING_CTRL_7_HS_TRAIL__MASK;
+}
+
+static inline uint32_t REG_DSI_14nm_PHY_LN_TIMING_CTRL_8(uint32_t i0) { return 0x00000028 + 0x80*i0; }
+#define DSI_14nm_PHY_LN_TIMING_CTRL_8_HS_RQST__MASK            0x000000ff
+#define DSI_14nm_PHY_LN_TIMING_CTRL_8_HS_RQST__SHIFT           0
+static inline uint32_t DSI_14nm_PHY_LN_TIMING_CTRL_8_HS_RQST(uint32_t val)
+{
+       return ((val) << DSI_14nm_PHY_LN_TIMING_CTRL_8_HS_RQST__SHIFT) & DSI_14nm_PHY_LN_TIMING_CTRL_8_HS_RQST__MASK;
+}
+
+static inline uint32_t REG_DSI_14nm_PHY_LN_TIMING_CTRL_9(uint32_t i0) { return 0x0000002c + 0x80*i0; }
+#define DSI_14nm_PHY_LN_TIMING_CTRL_9_TA_GO__MASK              0x00000007
+#define DSI_14nm_PHY_LN_TIMING_CTRL_9_TA_GO__SHIFT             0
+static inline uint32_t DSI_14nm_PHY_LN_TIMING_CTRL_9_TA_GO(uint32_t val)
+{
+       return ((val) << DSI_14nm_PHY_LN_TIMING_CTRL_9_TA_GO__SHIFT) & DSI_14nm_PHY_LN_TIMING_CTRL_9_TA_GO__MASK;
+}
+#define DSI_14nm_PHY_LN_TIMING_CTRL_9_TA_SURE__MASK            0x00000070
+#define DSI_14nm_PHY_LN_TIMING_CTRL_9_TA_SURE__SHIFT           4
+static inline uint32_t DSI_14nm_PHY_LN_TIMING_CTRL_9_TA_SURE(uint32_t val)
+{
+       return ((val) << DSI_14nm_PHY_LN_TIMING_CTRL_9_TA_SURE__SHIFT) & DSI_14nm_PHY_LN_TIMING_CTRL_9_TA_SURE__MASK;
+}
+
+static inline uint32_t REG_DSI_14nm_PHY_LN_TIMING_CTRL_10(uint32_t i0) { return 0x00000030 + 0x80*i0; }
+#define DSI_14nm_PHY_LN_TIMING_CTRL_10_TA_GET__MASK            0x00000007
+#define DSI_14nm_PHY_LN_TIMING_CTRL_10_TA_GET__SHIFT           0
+static inline uint32_t DSI_14nm_PHY_LN_TIMING_CTRL_10_TA_GET(uint32_t val)
+{
+       return ((val) << DSI_14nm_PHY_LN_TIMING_CTRL_10_TA_GET__SHIFT) & DSI_14nm_PHY_LN_TIMING_CTRL_10_TA_GET__MASK;
+}
+
+static inline uint32_t REG_DSI_14nm_PHY_LN_TIMING_CTRL_11(uint32_t i0) { return 0x00000034 + 0x80*i0; }
+#define DSI_14nm_PHY_LN_TIMING_CTRL_11_TRIG3_CMD__MASK         0x000000ff
+#define DSI_14nm_PHY_LN_TIMING_CTRL_11_TRIG3_CMD__SHIFT                0
+static inline uint32_t DSI_14nm_PHY_LN_TIMING_CTRL_11_TRIG3_CMD(uint32_t val)
+{
+       return ((val) << DSI_14nm_PHY_LN_TIMING_CTRL_11_TRIG3_CMD__SHIFT) & DSI_14nm_PHY_LN_TIMING_CTRL_11_TRIG3_CMD__MASK;
+}
+
+static inline uint32_t REG_DSI_14nm_PHY_LN_STRENGTH_CTRL_0(uint32_t i0) { return 0x00000038 + 0x80*i0; }
+
+static inline uint32_t REG_DSI_14nm_PHY_LN_STRENGTH_CTRL_1(uint32_t i0) { return 0x0000003c + 0x80*i0; }
+
+static inline uint32_t REG_DSI_14nm_PHY_LN_VREG_CNTRL(uint32_t i0) { return 0x00000064 + 0x80*i0; }
+
+#define REG_DSI_14nm_PHY_PLL_IE_TRIM                           0x00000000
+
+#define REG_DSI_14nm_PHY_PLL_IP_TRIM                           0x00000004
+
+#define REG_DSI_14nm_PHY_PLL_IPTAT_TRIM                                0x00000010
+
+#define REG_DSI_14nm_PHY_PLL_CLKBUFLR_EN                       0x0000001c
+
+#define REG_DSI_14nm_PHY_PLL_SYSCLK_EN_RESET                   0x00000028
+
+#define REG_DSI_14nm_PHY_PLL_RESETSM_CNTRL                     0x0000002c
+
+#define REG_DSI_14nm_PHY_PLL_RESETSM_CNTRL2                    0x00000030
+
+#define REG_DSI_14nm_PHY_PLL_RESETSM_CNTRL3                    0x00000034
+
+#define REG_DSI_14nm_PHY_PLL_RESETSM_CNTRL4                    0x00000038
+
+#define REG_DSI_14nm_PHY_PLL_RESETSM_CNTRL5                    0x0000003c
+
+#define REG_DSI_14nm_PHY_PLL_KVCO_DIV_REF1                     0x00000040
+
+#define REG_DSI_14nm_PHY_PLL_KVCO_DIV_REF2                     0x00000044
+
+#define REG_DSI_14nm_PHY_PLL_KVCO_COUNT1                       0x00000048
+
+#define REG_DSI_14nm_PHY_PLL_KVCO_COUNT2                       0x0000004c
+
+#define REG_DSI_14nm_PHY_PLL_VREF_CFG1                         0x0000005c
+
+#define REG_DSI_14nm_PHY_PLL_KVCO_CODE                         0x00000058
+
+#define REG_DSI_14nm_PHY_PLL_VCO_DIV_REF1                      0x0000006c
+
+#define REG_DSI_14nm_PHY_PLL_VCO_DIV_REF2                      0x00000070
+
+#define REG_DSI_14nm_PHY_PLL_VCO_COUNT1                                0x00000074
+
+#define REG_DSI_14nm_PHY_PLL_VCO_COUNT2                                0x00000078
+
+#define REG_DSI_14nm_PHY_PLL_PLLLOCK_CMP1                      0x0000007c
+
+#define REG_DSI_14nm_PHY_PLL_PLLLOCK_CMP2                      0x00000080
+
+#define REG_DSI_14nm_PHY_PLL_PLLLOCK_CMP3                      0x00000084
+
+#define REG_DSI_14nm_PHY_PLL_PLLLOCK_CMP_EN                    0x00000088
+
+#define REG_DSI_14nm_PHY_PLL_PLL_VCO_TUNE                      0x0000008c
+
+#define REG_DSI_14nm_PHY_PLL_DEC_START                         0x00000090
+
+#define REG_DSI_14nm_PHY_PLL_SSC_EN_CENTER                     0x00000094
+
+#define REG_DSI_14nm_PHY_PLL_SSC_ADJ_PER1                      0x00000098
+
+#define REG_DSI_14nm_PHY_PLL_SSC_ADJ_PER2                      0x0000009c
+
+#define REG_DSI_14nm_PHY_PLL_SSC_PER1                          0x000000a0
+
+#define REG_DSI_14nm_PHY_PLL_SSC_PER2                          0x000000a4
+
+#define REG_DSI_14nm_PHY_PLL_SSC_STEP_SIZE1                    0x000000a8
+
+#define REG_DSI_14nm_PHY_PLL_SSC_STEP_SIZE2                    0x000000ac
+
+#define REG_DSI_14nm_PHY_PLL_DIV_FRAC_START1                   0x000000b4
+
+#define REG_DSI_14nm_PHY_PLL_DIV_FRAC_START2                   0x000000b8
+
+#define REG_DSI_14nm_PHY_PLL_DIV_FRAC_START3                   0x000000bc
+
+#define REG_DSI_14nm_PHY_PLL_TXCLK_EN                          0x000000c0
+
+#define REG_DSI_14nm_PHY_PLL_PLL_CRCTRL                                0x000000c4
+
+#define REG_DSI_14nm_PHY_PLL_RESET_SM_READY_STATUS             0x000000cc
+
+#define REG_DSI_14nm_PHY_PLL_PLL_MISC1                         0x000000e8
+
+#define REG_DSI_14nm_PHY_PLL_CP_SET_CUR                                0x000000f0
+
+#define REG_DSI_14nm_PHY_PLL_PLL_ICPMSET                       0x000000f4
+
+#define REG_DSI_14nm_PHY_PLL_PLL_ICPCSET                       0x000000f8
+
+#define REG_DSI_14nm_PHY_PLL_PLL_ICP_SET                       0x000000fc
+
+#define REG_DSI_14nm_PHY_PLL_PLL_LPF1                          0x00000100
+
+#define REG_DSI_14nm_PHY_PLL_PLL_LPF2_POSTDIV                  0x00000104
+
+#define REG_DSI_14nm_PHY_PLL_PLL_BANDGAP                       0x00000108
+
+
+#endif /* DSI_PHY_14NM_XML */
diff --git a/drivers/gpu/drm/msm/dsi/dsi_phy_20nm.xml.h b/drivers/gpu/drm/msm/dsi/dsi_phy_20nm.xml.h
new file mode 100644 (file)
index 0000000..15c7a58
--- /dev/null
@@ -0,0 +1,238 @@
+#ifndef DSI_PHY_20NM_XML
+#define DSI_PHY_20NM_XML
+
+/* Autogenerated file, DO NOT EDIT manually!
+
+This file was generated by the rules-ng-ng headergen tool in this git repository:
+http://github.com/freedreno/envytools/
+git clone https://github.com/freedreno/envytools.git
+
+The rules-ng-ng source files this header was generated from are:
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/msm.xml                   (    981 bytes, from 2021-06-05 21:37:42)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/freedreno_copyright.xml   (   1572 bytes, from 2021-02-18 16:45:44)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/mdp/mdp4.xml              (  20912 bytes, from 2021-02-18 16:45:44)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/mdp/mdp_common.xml        (   2849 bytes, from 2021-02-18 16:45:44)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/mdp/mdp5.xml              (  37461 bytes, from 2021-02-18 16:45:44)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/dsi/dsi.xml               (  15291 bytes, from 2021-06-15 22:36:13)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/dsi/dsi_phy_v2.xml        (   3236 bytes, from 2021-06-05 21:37:42)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/dsi/dsi_phy_28nm_8960.xml (   4935 bytes, from 2021-05-21 19:18:08)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/dsi/dsi_phy_28nm.xml      (   7004 bytes, from 2021-05-21 19:18:08)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/dsi/dsi_phy_20nm.xml      (   3712 bytes, from 2021-05-21 19:18:08)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/dsi/dsi_phy_14nm.xml      (   5381 bytes, from 2021-05-21 19:18:08)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/dsi/dsi_phy_10nm.xml      (   4499 bytes, from 2021-05-21 19:18:08)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/dsi/dsi_phy_7nm.xml       (  10953 bytes, from 2021-05-21 19:18:08)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/dsi/dsi_phy_5nm.xml       (  10900 bytes, from 2021-05-21 19:18:08)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/dsi/sfpb.xml              (    602 bytes, from 2021-02-18 16:45:44)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/dsi/mmss_cc.xml           (   1686 bytes, from 2021-02-18 16:45:44)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/hdmi/qfprom.xml           (    600 bytes, from 2021-02-18 16:45:44)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/hdmi/hdmi.xml             (  41874 bytes, from 2021-02-18 16:45:44)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/edp/edp.xml               (  10416 bytes, from 2021-02-18 16:45:44)
+
+Copyright (C) 2013-2021 by the following authors:
+- Rob Clark <robdclark@gmail.com> (robclark)
+- Ilia Mirkin <imirkin@alum.mit.edu> (imirkin)
+
+Permission is hereby granted, free of charge, to any person obtaining
+a copy of this software and associated documentation files (the
+"Software"), to deal in the Software without restriction, including
+without limitation the rights to use, copy, modify, merge, publish,
+distribute, sublicense, and/or sell copies of the Software, and to
+permit persons to whom the Software is furnished to do so, subject to
+the following conditions:
+
+The above copyright notice and this permission notice (including the
+next paragraph) shall be included in all copies or substantial
+portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
+IN NO EVENT SHALL THE COPYRIGHT OWNER(S) AND/OR ITS SUPPLIERS BE
+LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+*/
+
+
+static inline uint32_t REG_DSI_20nm_PHY_LN(uint32_t i0) { return 0x00000000 + 0x40*i0; }
+
+static inline uint32_t REG_DSI_20nm_PHY_LN_CFG_0(uint32_t i0) { return 0x00000000 + 0x40*i0; }
+
+static inline uint32_t REG_DSI_20nm_PHY_LN_CFG_1(uint32_t i0) { return 0x00000004 + 0x40*i0; }
+
+static inline uint32_t REG_DSI_20nm_PHY_LN_CFG_2(uint32_t i0) { return 0x00000008 + 0x40*i0; }
+
+static inline uint32_t REG_DSI_20nm_PHY_LN_CFG_3(uint32_t i0) { return 0x0000000c + 0x40*i0; }
+
+static inline uint32_t REG_DSI_20nm_PHY_LN_CFG_4(uint32_t i0) { return 0x00000010 + 0x40*i0; }
+
+static inline uint32_t REG_DSI_20nm_PHY_LN_TEST_DATAPATH(uint32_t i0) { return 0x00000014 + 0x40*i0; }
+
+static inline uint32_t REG_DSI_20nm_PHY_LN_DEBUG_SEL(uint32_t i0) { return 0x00000018 + 0x40*i0; }
+
+static inline uint32_t REG_DSI_20nm_PHY_LN_TEST_STR_0(uint32_t i0) { return 0x0000001c + 0x40*i0; }
+
+static inline uint32_t REG_DSI_20nm_PHY_LN_TEST_STR_1(uint32_t i0) { return 0x00000020 + 0x40*i0; }
+
+#define REG_DSI_20nm_PHY_LNCK_CFG_0                            0x00000100
+
+#define REG_DSI_20nm_PHY_LNCK_CFG_1                            0x00000104
+
+#define REG_DSI_20nm_PHY_LNCK_CFG_2                            0x00000108
+
+#define REG_DSI_20nm_PHY_LNCK_CFG_3                            0x0000010c
+
+#define REG_DSI_20nm_PHY_LNCK_CFG_4                            0x00000110
+
+#define REG_DSI_20nm_PHY_LNCK_TEST_DATAPATH                    0x00000114
+
+#define REG_DSI_20nm_PHY_LNCK_DEBUG_SEL                                0x00000118
+
+#define REG_DSI_20nm_PHY_LNCK_TEST_STR0                                0x0000011c
+
+#define REG_DSI_20nm_PHY_LNCK_TEST_STR1                                0x00000120
+
+#define REG_DSI_20nm_PHY_TIMING_CTRL_0                         0x00000140
+#define DSI_20nm_PHY_TIMING_CTRL_0_CLK_ZERO__MASK              0x000000ff
+#define DSI_20nm_PHY_TIMING_CTRL_0_CLK_ZERO__SHIFT             0
+static inline uint32_t DSI_20nm_PHY_TIMING_CTRL_0_CLK_ZERO(uint32_t val)
+{
+       return ((val) << DSI_20nm_PHY_TIMING_CTRL_0_CLK_ZERO__SHIFT) & DSI_20nm_PHY_TIMING_CTRL_0_CLK_ZERO__MASK;
+}
+
+#define REG_DSI_20nm_PHY_TIMING_CTRL_1                         0x00000144
+#define DSI_20nm_PHY_TIMING_CTRL_1_CLK_TRAIL__MASK             0x000000ff
+#define DSI_20nm_PHY_TIMING_CTRL_1_CLK_TRAIL__SHIFT            0
+static inline uint32_t DSI_20nm_PHY_TIMING_CTRL_1_CLK_TRAIL(uint32_t val)
+{
+       return ((val) << DSI_20nm_PHY_TIMING_CTRL_1_CLK_TRAIL__SHIFT) & DSI_20nm_PHY_TIMING_CTRL_1_CLK_TRAIL__MASK;
+}
+
+#define REG_DSI_20nm_PHY_TIMING_CTRL_2                         0x00000148
+#define DSI_20nm_PHY_TIMING_CTRL_2_CLK_PREPARE__MASK           0x000000ff
+#define DSI_20nm_PHY_TIMING_CTRL_2_CLK_PREPARE__SHIFT          0
+static inline uint32_t DSI_20nm_PHY_TIMING_CTRL_2_CLK_PREPARE(uint32_t val)
+{
+       return ((val) << DSI_20nm_PHY_TIMING_CTRL_2_CLK_PREPARE__SHIFT) & DSI_20nm_PHY_TIMING_CTRL_2_CLK_PREPARE__MASK;
+}
+
+#define REG_DSI_20nm_PHY_TIMING_CTRL_3                         0x0000014c
+#define DSI_20nm_PHY_TIMING_CTRL_3_CLK_ZERO_8                  0x00000001
+
+#define REG_DSI_20nm_PHY_TIMING_CTRL_4                         0x00000150
+#define DSI_20nm_PHY_TIMING_CTRL_4_HS_EXIT__MASK               0x000000ff
+#define DSI_20nm_PHY_TIMING_CTRL_4_HS_EXIT__SHIFT              0
+static inline uint32_t DSI_20nm_PHY_TIMING_CTRL_4_HS_EXIT(uint32_t val)
+{
+       return ((val) << DSI_20nm_PHY_TIMING_CTRL_4_HS_EXIT__SHIFT) & DSI_20nm_PHY_TIMING_CTRL_4_HS_EXIT__MASK;
+}
+
+#define REG_DSI_20nm_PHY_TIMING_CTRL_5                         0x00000154
+#define DSI_20nm_PHY_TIMING_CTRL_5_HS_ZERO__MASK               0x000000ff
+#define DSI_20nm_PHY_TIMING_CTRL_5_HS_ZERO__SHIFT              0
+static inline uint32_t DSI_20nm_PHY_TIMING_CTRL_5_HS_ZERO(uint32_t val)
+{
+       return ((val) << DSI_20nm_PHY_TIMING_CTRL_5_HS_ZERO__SHIFT) & DSI_20nm_PHY_TIMING_CTRL_5_HS_ZERO__MASK;
+}
+
+#define REG_DSI_20nm_PHY_TIMING_CTRL_6                         0x00000158
+#define DSI_20nm_PHY_TIMING_CTRL_6_HS_PREPARE__MASK            0x000000ff
+#define DSI_20nm_PHY_TIMING_CTRL_6_HS_PREPARE__SHIFT           0
+static inline uint32_t DSI_20nm_PHY_TIMING_CTRL_6_HS_PREPARE(uint32_t val)
+{
+       return ((val) << DSI_20nm_PHY_TIMING_CTRL_6_HS_PREPARE__SHIFT) & DSI_20nm_PHY_TIMING_CTRL_6_HS_PREPARE__MASK;
+}
+
+#define REG_DSI_20nm_PHY_TIMING_CTRL_7                         0x0000015c
+#define DSI_20nm_PHY_TIMING_CTRL_7_HS_TRAIL__MASK              0x000000ff
+#define DSI_20nm_PHY_TIMING_CTRL_7_HS_TRAIL__SHIFT             0
+static inline uint32_t DSI_20nm_PHY_TIMING_CTRL_7_HS_TRAIL(uint32_t val)
+{
+       return ((val) << DSI_20nm_PHY_TIMING_CTRL_7_HS_TRAIL__SHIFT) & DSI_20nm_PHY_TIMING_CTRL_7_HS_TRAIL__MASK;
+}
+
+#define REG_DSI_20nm_PHY_TIMING_CTRL_8                         0x00000160
+#define DSI_20nm_PHY_TIMING_CTRL_8_HS_RQST__MASK               0x000000ff
+#define DSI_20nm_PHY_TIMING_CTRL_8_HS_RQST__SHIFT              0
+static inline uint32_t DSI_20nm_PHY_TIMING_CTRL_8_HS_RQST(uint32_t val)
+{
+       return ((val) << DSI_20nm_PHY_TIMING_CTRL_8_HS_RQST__SHIFT) & DSI_20nm_PHY_TIMING_CTRL_8_HS_RQST__MASK;
+}
+
+#define REG_DSI_20nm_PHY_TIMING_CTRL_9                         0x00000164
+#define DSI_20nm_PHY_TIMING_CTRL_9_TA_GO__MASK                 0x00000007
+#define DSI_20nm_PHY_TIMING_CTRL_9_TA_GO__SHIFT                        0
+static inline uint32_t DSI_20nm_PHY_TIMING_CTRL_9_TA_GO(uint32_t val)
+{
+       return ((val) << DSI_20nm_PHY_TIMING_CTRL_9_TA_GO__SHIFT) & DSI_20nm_PHY_TIMING_CTRL_9_TA_GO__MASK;
+}
+#define DSI_20nm_PHY_TIMING_CTRL_9_TA_SURE__MASK               0x00000070
+#define DSI_20nm_PHY_TIMING_CTRL_9_TA_SURE__SHIFT              4
+static inline uint32_t DSI_20nm_PHY_TIMING_CTRL_9_TA_SURE(uint32_t val)
+{
+       return ((val) << DSI_20nm_PHY_TIMING_CTRL_9_TA_SURE__SHIFT) & DSI_20nm_PHY_TIMING_CTRL_9_TA_SURE__MASK;
+}
+
+#define REG_DSI_20nm_PHY_TIMING_CTRL_10                                0x00000168
+#define DSI_20nm_PHY_TIMING_CTRL_10_TA_GET__MASK               0x00000007
+#define DSI_20nm_PHY_TIMING_CTRL_10_TA_GET__SHIFT              0
+static inline uint32_t DSI_20nm_PHY_TIMING_CTRL_10_TA_GET(uint32_t val)
+{
+       return ((val) << DSI_20nm_PHY_TIMING_CTRL_10_TA_GET__SHIFT) & DSI_20nm_PHY_TIMING_CTRL_10_TA_GET__MASK;
+}
+
+#define REG_DSI_20nm_PHY_TIMING_CTRL_11                                0x0000016c
+#define DSI_20nm_PHY_TIMING_CTRL_11_TRIG3_CMD__MASK            0x000000ff
+#define DSI_20nm_PHY_TIMING_CTRL_11_TRIG3_CMD__SHIFT           0
+static inline uint32_t DSI_20nm_PHY_TIMING_CTRL_11_TRIG3_CMD(uint32_t val)
+{
+       return ((val) << DSI_20nm_PHY_TIMING_CTRL_11_TRIG3_CMD__SHIFT) & DSI_20nm_PHY_TIMING_CTRL_11_TRIG3_CMD__MASK;
+}
+
+#define REG_DSI_20nm_PHY_CTRL_0                                        0x00000170
+
+#define REG_DSI_20nm_PHY_CTRL_1                                        0x00000174
+
+#define REG_DSI_20nm_PHY_CTRL_2                                        0x00000178
+
+#define REG_DSI_20nm_PHY_CTRL_3                                        0x0000017c
+
+#define REG_DSI_20nm_PHY_CTRL_4                                        0x00000180
+
+#define REG_DSI_20nm_PHY_STRENGTH_0                            0x00000184
+
+#define REG_DSI_20nm_PHY_STRENGTH_1                            0x00000188
+
+#define REG_DSI_20nm_PHY_BIST_CTRL_0                           0x000001b4
+
+#define REG_DSI_20nm_PHY_BIST_CTRL_1                           0x000001b8
+
+#define REG_DSI_20nm_PHY_BIST_CTRL_2                           0x000001bc
+
+#define REG_DSI_20nm_PHY_BIST_CTRL_3                           0x000001c0
+
+#define REG_DSI_20nm_PHY_BIST_CTRL_4                           0x000001c4
+
+#define REG_DSI_20nm_PHY_BIST_CTRL_5                           0x000001c8
+
+#define REG_DSI_20nm_PHY_GLBL_TEST_CTRL                                0x000001d4
+#define DSI_20nm_PHY_GLBL_TEST_CTRL_BITCLK_HS_SEL              0x00000001
+
+#define REG_DSI_20nm_PHY_LDO_CNTRL                             0x000001dc
+
+#define REG_DSI_20nm_PHY_REGULATOR_CTRL_0                      0x00000000
+
+#define REG_DSI_20nm_PHY_REGULATOR_CTRL_1                      0x00000004
+
+#define REG_DSI_20nm_PHY_REGULATOR_CTRL_2                      0x00000008
+
+#define REG_DSI_20nm_PHY_REGULATOR_CTRL_3                      0x0000000c
+
+#define REG_DSI_20nm_PHY_REGULATOR_CTRL_4                      0x00000010
+
+#define REG_DSI_20nm_PHY_REGULATOR_CTRL_5                      0x00000014
+
+#define REG_DSI_20nm_PHY_REGULATOR_CAL_PWR_CFG                 0x00000018
+
+
+#endif /* DSI_PHY_20NM_XML */
diff --git a/drivers/gpu/drm/msm/dsi/dsi_phy_28nm.xml.h b/drivers/gpu/drm/msm/dsi/dsi_phy_28nm.xml.h
new file mode 100644 (file)
index 0000000..5148f4d
--- /dev/null
@@ -0,0 +1,385 @@
+#ifndef DSI_PHY_28NM_XML
+#define DSI_PHY_28NM_XML
+
+/* Autogenerated file, DO NOT EDIT manually!
+
+This file was generated by the rules-ng-ng headergen tool in this git repository:
+http://github.com/freedreno/envytools/
+git clone https://github.com/freedreno/envytools.git
+
+The rules-ng-ng source files this header was generated from are:
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/msm.xml                   (    981 bytes, from 2021-06-05 21:37:42)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/freedreno_copyright.xml   (   1572 bytes, from 2021-02-18 16:45:44)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/mdp/mdp4.xml              (  20912 bytes, from 2021-02-18 16:45:44)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/mdp/mdp_common.xml        (   2849 bytes, from 2021-02-18 16:45:44)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/mdp/mdp5.xml              (  37461 bytes, from 2021-02-18 16:45:44)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/dsi/dsi.xml               (  15291 bytes, from 2021-06-15 22:36:13)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/dsi/dsi_phy_v2.xml        (   3236 bytes, from 2021-06-05 21:37:42)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/dsi/dsi_phy_28nm_8960.xml (   4935 bytes, from 2021-05-21 19:18:08)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/dsi/dsi_phy_28nm.xml      (   7004 bytes, from 2021-05-21 19:18:08)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/dsi/dsi_phy_20nm.xml      (   3712 bytes, from 2021-05-21 19:18:08)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/dsi/dsi_phy_14nm.xml      (   5381 bytes, from 2021-05-21 19:18:08)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/dsi/dsi_phy_10nm.xml      (   4499 bytes, from 2021-05-21 19:18:08)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/dsi/dsi_phy_7nm.xml       (  10953 bytes, from 2021-05-21 19:18:08)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/dsi/dsi_phy_5nm.xml       (  10900 bytes, from 2021-05-21 19:18:08)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/dsi/sfpb.xml              (    602 bytes, from 2021-02-18 16:45:44)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/dsi/mmss_cc.xml           (   1686 bytes, from 2021-02-18 16:45:44)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/hdmi/qfprom.xml           (    600 bytes, from 2021-02-18 16:45:44)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/hdmi/hdmi.xml             (  41874 bytes, from 2021-02-18 16:45:44)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/edp/edp.xml               (  10416 bytes, from 2021-02-18 16:45:44)
+
+Copyright (C) 2013-2021 by the following authors:
+- Rob Clark <robdclark@gmail.com> (robclark)
+- Ilia Mirkin <imirkin@alum.mit.edu> (imirkin)
+
+Permission is hereby granted, free of charge, to any person obtaining
+a copy of this software and associated documentation files (the
+"Software"), to deal in the Software without restriction, including
+without limitation the rights to use, copy, modify, merge, publish,
+distribute, sublicense, and/or sell copies of the Software, and to
+permit persons to whom the Software is furnished to do so, subject to
+the following conditions:
+
+The above copyright notice and this permission notice (including the
+next paragraph) shall be included in all copies or substantial
+portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
+IN NO EVENT SHALL THE COPYRIGHT OWNER(S) AND/OR ITS SUPPLIERS BE
+LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+*/
+
+
+static inline uint32_t REG_DSI_28nm_PHY_LN(uint32_t i0) { return 0x00000000 + 0x40*i0; }
+
+static inline uint32_t REG_DSI_28nm_PHY_LN_CFG_0(uint32_t i0) { return 0x00000000 + 0x40*i0; }
+
+static inline uint32_t REG_DSI_28nm_PHY_LN_CFG_1(uint32_t i0) { return 0x00000004 + 0x40*i0; }
+
+static inline uint32_t REG_DSI_28nm_PHY_LN_CFG_2(uint32_t i0) { return 0x00000008 + 0x40*i0; }
+
+static inline uint32_t REG_DSI_28nm_PHY_LN_CFG_3(uint32_t i0) { return 0x0000000c + 0x40*i0; }
+
+static inline uint32_t REG_DSI_28nm_PHY_LN_CFG_4(uint32_t i0) { return 0x00000010 + 0x40*i0; }
+
+static inline uint32_t REG_DSI_28nm_PHY_LN_TEST_DATAPATH(uint32_t i0) { return 0x00000014 + 0x40*i0; }
+
+static inline uint32_t REG_DSI_28nm_PHY_LN_DEBUG_SEL(uint32_t i0) { return 0x00000018 + 0x40*i0; }
+
+static inline uint32_t REG_DSI_28nm_PHY_LN_TEST_STR_0(uint32_t i0) { return 0x0000001c + 0x40*i0; }
+
+static inline uint32_t REG_DSI_28nm_PHY_LN_TEST_STR_1(uint32_t i0) { return 0x00000020 + 0x40*i0; }
+
+#define REG_DSI_28nm_PHY_LNCK_CFG_0                            0x00000100
+
+#define REG_DSI_28nm_PHY_LNCK_CFG_1                            0x00000104
+
+#define REG_DSI_28nm_PHY_LNCK_CFG_2                            0x00000108
+
+#define REG_DSI_28nm_PHY_LNCK_CFG_3                            0x0000010c
+
+#define REG_DSI_28nm_PHY_LNCK_CFG_4                            0x00000110
+
+#define REG_DSI_28nm_PHY_LNCK_TEST_DATAPATH                    0x00000114
+
+#define REG_DSI_28nm_PHY_LNCK_DEBUG_SEL                                0x00000118
+
+#define REG_DSI_28nm_PHY_LNCK_TEST_STR0                                0x0000011c
+
+#define REG_DSI_28nm_PHY_LNCK_TEST_STR1                                0x00000120
+
+#define REG_DSI_28nm_PHY_TIMING_CTRL_0                         0x00000140
+#define DSI_28nm_PHY_TIMING_CTRL_0_CLK_ZERO__MASK              0x000000ff
+#define DSI_28nm_PHY_TIMING_CTRL_0_CLK_ZERO__SHIFT             0
+static inline uint32_t DSI_28nm_PHY_TIMING_CTRL_0_CLK_ZERO(uint32_t val)
+{
+       return ((val) << DSI_28nm_PHY_TIMING_CTRL_0_CLK_ZERO__SHIFT) & DSI_28nm_PHY_TIMING_CTRL_0_CLK_ZERO__MASK;
+}
+
+#define REG_DSI_28nm_PHY_TIMING_CTRL_1                         0x00000144
+#define DSI_28nm_PHY_TIMING_CTRL_1_CLK_TRAIL__MASK             0x000000ff
+#define DSI_28nm_PHY_TIMING_CTRL_1_CLK_TRAIL__SHIFT            0
+static inline uint32_t DSI_28nm_PHY_TIMING_CTRL_1_CLK_TRAIL(uint32_t val)
+{
+       return ((val) << DSI_28nm_PHY_TIMING_CTRL_1_CLK_TRAIL__SHIFT) & DSI_28nm_PHY_TIMING_CTRL_1_CLK_TRAIL__MASK;
+}
+
+#define REG_DSI_28nm_PHY_TIMING_CTRL_2                         0x00000148
+#define DSI_28nm_PHY_TIMING_CTRL_2_CLK_PREPARE__MASK           0x000000ff
+#define DSI_28nm_PHY_TIMING_CTRL_2_CLK_PREPARE__SHIFT          0
+static inline uint32_t DSI_28nm_PHY_TIMING_CTRL_2_CLK_PREPARE(uint32_t val)
+{
+       return ((val) << DSI_28nm_PHY_TIMING_CTRL_2_CLK_PREPARE__SHIFT) & DSI_28nm_PHY_TIMING_CTRL_2_CLK_PREPARE__MASK;
+}
+
+#define REG_DSI_28nm_PHY_TIMING_CTRL_3                         0x0000014c
+#define DSI_28nm_PHY_TIMING_CTRL_3_CLK_ZERO_8                  0x00000001
+
+#define REG_DSI_28nm_PHY_TIMING_CTRL_4                         0x00000150
+#define DSI_28nm_PHY_TIMING_CTRL_4_HS_EXIT__MASK               0x000000ff
+#define DSI_28nm_PHY_TIMING_CTRL_4_HS_EXIT__SHIFT              0
+static inline uint32_t DSI_28nm_PHY_TIMING_CTRL_4_HS_EXIT(uint32_t val)
+{
+       return ((val) << DSI_28nm_PHY_TIMING_CTRL_4_HS_EXIT__SHIFT) & DSI_28nm_PHY_TIMING_CTRL_4_HS_EXIT__MASK;
+}
+
+#define REG_DSI_28nm_PHY_TIMING_CTRL_5                         0x00000154
+#define DSI_28nm_PHY_TIMING_CTRL_5_HS_ZERO__MASK               0x000000ff
+#define DSI_28nm_PHY_TIMING_CTRL_5_HS_ZERO__SHIFT              0
+static inline uint32_t DSI_28nm_PHY_TIMING_CTRL_5_HS_ZERO(uint32_t val)
+{
+       return ((val) << DSI_28nm_PHY_TIMING_CTRL_5_HS_ZERO__SHIFT) & DSI_28nm_PHY_TIMING_CTRL_5_HS_ZERO__MASK;
+}
+
+#define REG_DSI_28nm_PHY_TIMING_CTRL_6                         0x00000158
+#define DSI_28nm_PHY_TIMING_CTRL_6_HS_PREPARE__MASK            0x000000ff
+#define DSI_28nm_PHY_TIMING_CTRL_6_HS_PREPARE__SHIFT           0
+static inline uint32_t DSI_28nm_PHY_TIMING_CTRL_6_HS_PREPARE(uint32_t val)
+{
+       return ((val) << DSI_28nm_PHY_TIMING_CTRL_6_HS_PREPARE__SHIFT) & DSI_28nm_PHY_TIMING_CTRL_6_HS_PREPARE__MASK;
+}
+
+#define REG_DSI_28nm_PHY_TIMING_CTRL_7                         0x0000015c
+#define DSI_28nm_PHY_TIMING_CTRL_7_HS_TRAIL__MASK              0x000000ff
+#define DSI_28nm_PHY_TIMING_CTRL_7_HS_TRAIL__SHIFT             0
+static inline uint32_t DSI_28nm_PHY_TIMING_CTRL_7_HS_TRAIL(uint32_t val)
+{
+       return ((val) << DSI_28nm_PHY_TIMING_CTRL_7_HS_TRAIL__SHIFT) & DSI_28nm_PHY_TIMING_CTRL_7_HS_TRAIL__MASK;
+}
+
+#define REG_DSI_28nm_PHY_TIMING_CTRL_8                         0x00000160
+#define DSI_28nm_PHY_TIMING_CTRL_8_HS_RQST__MASK               0x000000ff
+#define DSI_28nm_PHY_TIMING_CTRL_8_HS_RQST__SHIFT              0
+static inline uint32_t DSI_28nm_PHY_TIMING_CTRL_8_HS_RQST(uint32_t val)
+{
+       return ((val) << DSI_28nm_PHY_TIMING_CTRL_8_HS_RQST__SHIFT) & DSI_28nm_PHY_TIMING_CTRL_8_HS_RQST__MASK;
+}
+
+#define REG_DSI_28nm_PHY_TIMING_CTRL_9                         0x00000164
+#define DSI_28nm_PHY_TIMING_CTRL_9_TA_GO__MASK                 0x00000007
+#define DSI_28nm_PHY_TIMING_CTRL_9_TA_GO__SHIFT                        0
+static inline uint32_t DSI_28nm_PHY_TIMING_CTRL_9_TA_GO(uint32_t val)
+{
+       return ((val) << DSI_28nm_PHY_TIMING_CTRL_9_TA_GO__SHIFT) & DSI_28nm_PHY_TIMING_CTRL_9_TA_GO__MASK;
+}
+#define DSI_28nm_PHY_TIMING_CTRL_9_TA_SURE__MASK               0x00000070
+#define DSI_28nm_PHY_TIMING_CTRL_9_TA_SURE__SHIFT              4
+static inline uint32_t DSI_28nm_PHY_TIMING_CTRL_9_TA_SURE(uint32_t val)
+{
+       return ((val) << DSI_28nm_PHY_TIMING_CTRL_9_TA_SURE__SHIFT) & DSI_28nm_PHY_TIMING_CTRL_9_TA_SURE__MASK;
+}
+
+#define REG_DSI_28nm_PHY_TIMING_CTRL_10                                0x00000168
+#define DSI_28nm_PHY_TIMING_CTRL_10_TA_GET__MASK               0x00000007
+#define DSI_28nm_PHY_TIMING_CTRL_10_TA_GET__SHIFT              0
+static inline uint32_t DSI_28nm_PHY_TIMING_CTRL_10_TA_GET(uint32_t val)
+{
+       return ((val) << DSI_28nm_PHY_TIMING_CTRL_10_TA_GET__SHIFT) & DSI_28nm_PHY_TIMING_CTRL_10_TA_GET__MASK;
+}
+
+#define REG_DSI_28nm_PHY_TIMING_CTRL_11                                0x0000016c
+#define DSI_28nm_PHY_TIMING_CTRL_11_TRIG3_CMD__MASK            0x000000ff
+#define DSI_28nm_PHY_TIMING_CTRL_11_TRIG3_CMD__SHIFT           0
+static inline uint32_t DSI_28nm_PHY_TIMING_CTRL_11_TRIG3_CMD(uint32_t val)
+{
+       return ((val) << DSI_28nm_PHY_TIMING_CTRL_11_TRIG3_CMD__SHIFT) & DSI_28nm_PHY_TIMING_CTRL_11_TRIG3_CMD__MASK;
+}
+
+#define REG_DSI_28nm_PHY_CTRL_0                                        0x00000170
+
+#define REG_DSI_28nm_PHY_CTRL_1                                        0x00000174
+
+#define REG_DSI_28nm_PHY_CTRL_2                                        0x00000178
+
+#define REG_DSI_28nm_PHY_CTRL_3                                        0x0000017c
+
+#define REG_DSI_28nm_PHY_CTRL_4                                        0x00000180
+
+#define REG_DSI_28nm_PHY_STRENGTH_0                            0x00000184
+
+#define REG_DSI_28nm_PHY_STRENGTH_1                            0x00000188
+
+#define REG_DSI_28nm_PHY_BIST_CTRL_0                           0x000001b4
+
+#define REG_DSI_28nm_PHY_BIST_CTRL_1                           0x000001b8
+
+#define REG_DSI_28nm_PHY_BIST_CTRL_2                           0x000001bc
+
+#define REG_DSI_28nm_PHY_BIST_CTRL_3                           0x000001c0
+
+#define REG_DSI_28nm_PHY_BIST_CTRL_4                           0x000001c4
+
+#define REG_DSI_28nm_PHY_BIST_CTRL_5                           0x000001c8
+
+#define REG_DSI_28nm_PHY_GLBL_TEST_CTRL                                0x000001d4
+#define DSI_28nm_PHY_GLBL_TEST_CTRL_BITCLK_HS_SEL              0x00000001
+
+#define REG_DSI_28nm_PHY_LDO_CNTRL                             0x000001dc
+
+#define REG_DSI_28nm_PHY_REGULATOR_CTRL_0                      0x00000000
+
+#define REG_DSI_28nm_PHY_REGULATOR_CTRL_1                      0x00000004
+
+#define REG_DSI_28nm_PHY_REGULATOR_CTRL_2                      0x00000008
+
+#define REG_DSI_28nm_PHY_REGULATOR_CTRL_3                      0x0000000c
+
+#define REG_DSI_28nm_PHY_REGULATOR_CTRL_4                      0x00000010
+
+#define REG_DSI_28nm_PHY_REGULATOR_CTRL_5                      0x00000014
+
+#define REG_DSI_28nm_PHY_REGULATOR_CAL_PWR_CFG                 0x00000018
+
+#define REG_DSI_28nm_PHY_PLL_REFCLK_CFG                                0x00000000
+#define DSI_28nm_PHY_PLL_REFCLK_CFG_DBLR                       0x00000001
+
+#define REG_DSI_28nm_PHY_PLL_POSTDIV1_CFG                      0x00000004
+
+#define REG_DSI_28nm_PHY_PLL_CHGPUMP_CFG                       0x00000008
+
+#define REG_DSI_28nm_PHY_PLL_VCOLPF_CFG                                0x0000000c
+
+#define REG_DSI_28nm_PHY_PLL_VREG_CFG                          0x00000010
+#define DSI_28nm_PHY_PLL_VREG_CFG_POSTDIV1_BYPASS_B            0x00000002
+
+#define REG_DSI_28nm_PHY_PLL_PWRGEN_CFG                                0x00000014
+
+#define REG_DSI_28nm_PHY_PLL_DMUX_CFG                          0x00000018
+
+#define REG_DSI_28nm_PHY_PLL_AMUX_CFG                          0x0000001c
+
+#define REG_DSI_28nm_PHY_PLL_GLB_CFG                           0x00000020
+#define DSI_28nm_PHY_PLL_GLB_CFG_PLL_PWRDN_B                   0x00000001
+#define DSI_28nm_PHY_PLL_GLB_CFG_PLL_LDO_PWRDN_B               0x00000002
+#define DSI_28nm_PHY_PLL_GLB_CFG_PLL_PWRGEN_PWRDN_B            0x00000004
+#define DSI_28nm_PHY_PLL_GLB_CFG_PLL_ENABLE                    0x00000008
+
+#define REG_DSI_28nm_PHY_PLL_POSTDIV2_CFG                      0x00000024
+
+#define REG_DSI_28nm_PHY_PLL_POSTDIV3_CFG                      0x00000028
+
+#define REG_DSI_28nm_PHY_PLL_LPFR_CFG                          0x0000002c
+
+#define REG_DSI_28nm_PHY_PLL_LPFC1_CFG                         0x00000030
+
+#define REG_DSI_28nm_PHY_PLL_LPFC2_CFG                         0x00000034
+
+#define REG_DSI_28nm_PHY_PLL_SDM_CFG0                          0x00000038
+#define DSI_28nm_PHY_PLL_SDM_CFG0_BYP_DIV__MASK                        0x0000003f
+#define DSI_28nm_PHY_PLL_SDM_CFG0_BYP_DIV__SHIFT               0
+static inline uint32_t DSI_28nm_PHY_PLL_SDM_CFG0_BYP_DIV(uint32_t val)
+{
+       return ((val) << DSI_28nm_PHY_PLL_SDM_CFG0_BYP_DIV__SHIFT) & DSI_28nm_PHY_PLL_SDM_CFG0_BYP_DIV__MASK;
+}
+#define DSI_28nm_PHY_PLL_SDM_CFG0_BYP                          0x00000040
+
+#define REG_DSI_28nm_PHY_PLL_SDM_CFG1                          0x0000003c
+#define DSI_28nm_PHY_PLL_SDM_CFG1_DC_OFFSET__MASK              0x0000003f
+#define DSI_28nm_PHY_PLL_SDM_CFG1_DC_OFFSET__SHIFT             0
+static inline uint32_t DSI_28nm_PHY_PLL_SDM_CFG1_DC_OFFSET(uint32_t val)
+{
+       return ((val) << DSI_28nm_PHY_PLL_SDM_CFG1_DC_OFFSET__SHIFT) & DSI_28nm_PHY_PLL_SDM_CFG1_DC_OFFSET__MASK;
+}
+#define DSI_28nm_PHY_PLL_SDM_CFG1_DITHER_EN__MASK              0x00000040
+#define DSI_28nm_PHY_PLL_SDM_CFG1_DITHER_EN__SHIFT             6
+static inline uint32_t DSI_28nm_PHY_PLL_SDM_CFG1_DITHER_EN(uint32_t val)
+{
+       return ((val) << DSI_28nm_PHY_PLL_SDM_CFG1_DITHER_EN__SHIFT) & DSI_28nm_PHY_PLL_SDM_CFG1_DITHER_EN__MASK;
+}
+
+#define REG_DSI_28nm_PHY_PLL_SDM_CFG2                          0x00000040
+#define DSI_28nm_PHY_PLL_SDM_CFG2_FREQ_SEED_7_0__MASK          0x000000ff
+#define DSI_28nm_PHY_PLL_SDM_CFG2_FREQ_SEED_7_0__SHIFT         0
+static inline uint32_t DSI_28nm_PHY_PLL_SDM_CFG2_FREQ_SEED_7_0(uint32_t val)
+{
+       return ((val) << DSI_28nm_PHY_PLL_SDM_CFG2_FREQ_SEED_7_0__SHIFT) & DSI_28nm_PHY_PLL_SDM_CFG2_FREQ_SEED_7_0__MASK;
+}
+
+#define REG_DSI_28nm_PHY_PLL_SDM_CFG3                          0x00000044
+#define DSI_28nm_PHY_PLL_SDM_CFG3_FREQ_SEED_15_8__MASK         0x000000ff
+#define DSI_28nm_PHY_PLL_SDM_CFG3_FREQ_SEED_15_8__SHIFT                0
+static inline uint32_t DSI_28nm_PHY_PLL_SDM_CFG3_FREQ_SEED_15_8(uint32_t val)
+{
+       return ((val) << DSI_28nm_PHY_PLL_SDM_CFG3_FREQ_SEED_15_8__SHIFT) & DSI_28nm_PHY_PLL_SDM_CFG3_FREQ_SEED_15_8__MASK;
+}
+
+#define REG_DSI_28nm_PHY_PLL_SDM_CFG4                          0x00000048
+
+#define REG_DSI_28nm_PHY_PLL_SSC_CFG0                          0x0000004c
+
+#define REG_DSI_28nm_PHY_PLL_SSC_CFG1                          0x00000050
+
+#define REG_DSI_28nm_PHY_PLL_SSC_CFG2                          0x00000054
+
+#define REG_DSI_28nm_PHY_PLL_SSC_CFG3                          0x00000058
+
+#define REG_DSI_28nm_PHY_PLL_LKDET_CFG0                                0x0000005c
+
+#define REG_DSI_28nm_PHY_PLL_LKDET_CFG1                                0x00000060
+
+#define REG_DSI_28nm_PHY_PLL_LKDET_CFG2                                0x00000064
+
+#define REG_DSI_28nm_PHY_PLL_TEST_CFG                          0x00000068
+#define DSI_28nm_PHY_PLL_TEST_CFG_PLL_SW_RESET                 0x00000001
+
+#define REG_DSI_28nm_PHY_PLL_CAL_CFG0                          0x0000006c
+
+#define REG_DSI_28nm_PHY_PLL_CAL_CFG1                          0x00000070
+
+#define REG_DSI_28nm_PHY_PLL_CAL_CFG2                          0x00000074
+
+#define REG_DSI_28nm_PHY_PLL_CAL_CFG3                          0x00000078
+
+#define REG_DSI_28nm_PHY_PLL_CAL_CFG4                          0x0000007c
+
+#define REG_DSI_28nm_PHY_PLL_CAL_CFG5                          0x00000080
+
+#define REG_DSI_28nm_PHY_PLL_CAL_CFG6                          0x00000084
+
+#define REG_DSI_28nm_PHY_PLL_CAL_CFG7                          0x00000088
+
+#define REG_DSI_28nm_PHY_PLL_CAL_CFG8                          0x0000008c
+
+#define REG_DSI_28nm_PHY_PLL_CAL_CFG9                          0x00000090
+
+#define REG_DSI_28nm_PHY_PLL_CAL_CFG10                         0x00000094
+
+#define REG_DSI_28nm_PHY_PLL_CAL_CFG11                         0x00000098
+
+#define REG_DSI_28nm_PHY_PLL_EFUSE_CFG                         0x0000009c
+
+#define REG_DSI_28nm_PHY_PLL_DEBUG_BUS_SEL                     0x000000a0
+
+#define REG_DSI_28nm_PHY_PLL_CTRL_42                           0x000000a4
+
+#define REG_DSI_28nm_PHY_PLL_CTRL_43                           0x000000a8
+
+#define REG_DSI_28nm_PHY_PLL_CTRL_44                           0x000000ac
+
+#define REG_DSI_28nm_PHY_PLL_CTRL_45                           0x000000b0
+
+#define REG_DSI_28nm_PHY_PLL_CTRL_46                           0x000000b4
+
+#define REG_DSI_28nm_PHY_PLL_CTRL_47                           0x000000b8
+
+#define REG_DSI_28nm_PHY_PLL_CTRL_48                           0x000000bc
+
+#define REG_DSI_28nm_PHY_PLL_STATUS                            0x000000c0
+#define DSI_28nm_PHY_PLL_STATUS_PLL_RDY                                0x00000001
+
+#define REG_DSI_28nm_PHY_PLL_DEBUG_BUS0                                0x000000c4
+
+#define REG_DSI_28nm_PHY_PLL_DEBUG_BUS1                                0x000000c8
+
+#define REG_DSI_28nm_PHY_PLL_DEBUG_BUS2                                0x000000cc
+
+#define REG_DSI_28nm_PHY_PLL_DEBUG_BUS3                                0x000000d0
+
+#define REG_DSI_28nm_PHY_PLL_CTRL_54                           0x000000d4
+
+
+#endif /* DSI_PHY_28NM_XML */
diff --git a/drivers/gpu/drm/msm/dsi/dsi_phy_28nm_8960.xml.h b/drivers/gpu/drm/msm/dsi/dsi_phy_28nm_8960.xml.h
new file mode 100644 (file)
index 0000000..446fe9f
--- /dev/null
@@ -0,0 +1,287 @@
+#ifndef DSI_PHY_28NM_8960_XML
+#define DSI_PHY_28NM_8960_XML
+
+/* Autogenerated file, DO NOT EDIT manually!
+
+This file was generated by the rules-ng-ng headergen tool in this git repository:
+http://github.com/freedreno/envytools/
+git clone https://github.com/freedreno/envytools.git
+
+The rules-ng-ng source files this header was generated from are:
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/msm.xml                   (    981 bytes, from 2021-06-05 21:37:42)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/freedreno_copyright.xml   (   1572 bytes, from 2021-02-18 16:45:44)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/mdp/mdp4.xml              (  20912 bytes, from 2021-02-18 16:45:44)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/mdp/mdp_common.xml        (   2849 bytes, from 2021-02-18 16:45:44)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/mdp/mdp5.xml              (  37461 bytes, from 2021-02-18 16:45:44)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/dsi/dsi.xml               (  15291 bytes, from 2021-06-15 22:36:13)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/dsi/dsi_phy_v2.xml        (   3236 bytes, from 2021-06-05 21:37:42)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/dsi/dsi_phy_28nm_8960.xml (   4935 bytes, from 2021-05-21 19:18:08)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/dsi/dsi_phy_28nm.xml      (   7004 bytes, from 2021-05-21 19:18:08)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/dsi/dsi_phy_20nm.xml      (   3712 bytes, from 2021-05-21 19:18:08)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/dsi/dsi_phy_14nm.xml      (   5381 bytes, from 2021-05-21 19:18:08)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/dsi/dsi_phy_10nm.xml      (   4499 bytes, from 2021-05-21 19:18:08)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/dsi/dsi_phy_7nm.xml       (  10953 bytes, from 2021-05-21 19:18:08)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/dsi/dsi_phy_5nm.xml       (  10900 bytes, from 2021-05-21 19:18:08)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/dsi/sfpb.xml              (    602 bytes, from 2021-02-18 16:45:44)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/dsi/mmss_cc.xml           (   1686 bytes, from 2021-02-18 16:45:44)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/hdmi/qfprom.xml           (    600 bytes, from 2021-02-18 16:45:44)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/hdmi/hdmi.xml             (  41874 bytes, from 2021-02-18 16:45:44)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/edp/edp.xml               (  10416 bytes, from 2021-02-18 16:45:44)
+
+Copyright (C) 2013-2021 by the following authors:
+- Rob Clark <robdclark@gmail.com> (robclark)
+- Ilia Mirkin <imirkin@alum.mit.edu> (imirkin)
+
+Permission is hereby granted, free of charge, to any person obtaining
+a copy of this software and associated documentation files (the
+"Software"), to deal in the Software without restriction, including
+without limitation the rights to use, copy, modify, merge, publish,
+distribute, sublicense, and/or sell copies of the Software, and to
+permit persons to whom the Software is furnished to do so, subject to
+the following conditions:
+
+The above copyright notice and this permission notice (including the
+next paragraph) shall be included in all copies or substantial
+portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
+IN NO EVENT SHALL THE COPYRIGHT OWNER(S) AND/OR ITS SUPPLIERS BE
+LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+*/
+
+
+static inline uint32_t REG_DSI_28nm_8960_PHY_LN(uint32_t i0) { return 0x00000000 + 0x40*i0; }
+
+static inline uint32_t REG_DSI_28nm_8960_PHY_LN_CFG_0(uint32_t i0) { return 0x00000000 + 0x40*i0; }
+
+static inline uint32_t REG_DSI_28nm_8960_PHY_LN_CFG_1(uint32_t i0) { return 0x00000004 + 0x40*i0; }
+
+static inline uint32_t REG_DSI_28nm_8960_PHY_LN_CFG_2(uint32_t i0) { return 0x00000008 + 0x40*i0; }
+
+static inline uint32_t REG_DSI_28nm_8960_PHY_LN_TEST_DATAPATH(uint32_t i0) { return 0x0000000c + 0x40*i0; }
+
+static inline uint32_t REG_DSI_28nm_8960_PHY_LN_TEST_STR_0(uint32_t i0) { return 0x00000014 + 0x40*i0; }
+
+static inline uint32_t REG_DSI_28nm_8960_PHY_LN_TEST_STR_1(uint32_t i0) { return 0x00000018 + 0x40*i0; }
+
+#define REG_DSI_28nm_8960_PHY_LNCK_CFG_0                       0x00000100
+
+#define REG_DSI_28nm_8960_PHY_LNCK_CFG_1                       0x00000104
+
+#define REG_DSI_28nm_8960_PHY_LNCK_CFG_2                       0x00000108
+
+#define REG_DSI_28nm_8960_PHY_LNCK_TEST_DATAPATH               0x0000010c
+
+#define REG_DSI_28nm_8960_PHY_LNCK_TEST_STR0                   0x00000114
+
+#define REG_DSI_28nm_8960_PHY_LNCK_TEST_STR1                   0x00000118
+
+#define REG_DSI_28nm_8960_PHY_TIMING_CTRL_0                    0x00000140
+#define DSI_28nm_8960_PHY_TIMING_CTRL_0_CLK_ZERO__MASK         0x000000ff
+#define DSI_28nm_8960_PHY_TIMING_CTRL_0_CLK_ZERO__SHIFT                0
+static inline uint32_t DSI_28nm_8960_PHY_TIMING_CTRL_0_CLK_ZERO(uint32_t val)
+{
+       return ((val) << DSI_28nm_8960_PHY_TIMING_CTRL_0_CLK_ZERO__SHIFT) & DSI_28nm_8960_PHY_TIMING_CTRL_0_CLK_ZERO__MASK;
+}
+
+#define REG_DSI_28nm_8960_PHY_TIMING_CTRL_1                    0x00000144
+#define DSI_28nm_8960_PHY_TIMING_CTRL_1_CLK_TRAIL__MASK                0x000000ff
+#define DSI_28nm_8960_PHY_TIMING_CTRL_1_CLK_TRAIL__SHIFT       0
+static inline uint32_t DSI_28nm_8960_PHY_TIMING_CTRL_1_CLK_TRAIL(uint32_t val)
+{
+       return ((val) << DSI_28nm_8960_PHY_TIMING_CTRL_1_CLK_TRAIL__SHIFT) & DSI_28nm_8960_PHY_TIMING_CTRL_1_CLK_TRAIL__MASK;
+}
+
+#define REG_DSI_28nm_8960_PHY_TIMING_CTRL_2                    0x00000148
+#define DSI_28nm_8960_PHY_TIMING_CTRL_2_CLK_PREPARE__MASK      0x000000ff
+#define DSI_28nm_8960_PHY_TIMING_CTRL_2_CLK_PREPARE__SHIFT     0
+static inline uint32_t DSI_28nm_8960_PHY_TIMING_CTRL_2_CLK_PREPARE(uint32_t val)
+{
+       return ((val) << DSI_28nm_8960_PHY_TIMING_CTRL_2_CLK_PREPARE__SHIFT) & DSI_28nm_8960_PHY_TIMING_CTRL_2_CLK_PREPARE__MASK;
+}
+
+#define REG_DSI_28nm_8960_PHY_TIMING_CTRL_3                    0x0000014c
+
+#define REG_DSI_28nm_8960_PHY_TIMING_CTRL_4                    0x00000150
+#define DSI_28nm_8960_PHY_TIMING_CTRL_4_HS_EXIT__MASK          0x000000ff
+#define DSI_28nm_8960_PHY_TIMING_CTRL_4_HS_EXIT__SHIFT         0
+static inline uint32_t DSI_28nm_8960_PHY_TIMING_CTRL_4_HS_EXIT(uint32_t val)
+{
+       return ((val) << DSI_28nm_8960_PHY_TIMING_CTRL_4_HS_EXIT__SHIFT) & DSI_28nm_8960_PHY_TIMING_CTRL_4_HS_EXIT__MASK;
+}
+
+#define REG_DSI_28nm_8960_PHY_TIMING_CTRL_5                    0x00000154
+#define DSI_28nm_8960_PHY_TIMING_CTRL_5_HS_ZERO__MASK          0x000000ff
+#define DSI_28nm_8960_PHY_TIMING_CTRL_5_HS_ZERO__SHIFT         0
+static inline uint32_t DSI_28nm_8960_PHY_TIMING_CTRL_5_HS_ZERO(uint32_t val)
+{
+       return ((val) << DSI_28nm_8960_PHY_TIMING_CTRL_5_HS_ZERO__SHIFT) & DSI_28nm_8960_PHY_TIMING_CTRL_5_HS_ZERO__MASK;
+}
+
+#define REG_DSI_28nm_8960_PHY_TIMING_CTRL_6                    0x00000158
+#define DSI_28nm_8960_PHY_TIMING_CTRL_6_HS_PREPARE__MASK       0x000000ff
+#define DSI_28nm_8960_PHY_TIMING_CTRL_6_HS_PREPARE__SHIFT      0
+static inline uint32_t DSI_28nm_8960_PHY_TIMING_CTRL_6_HS_PREPARE(uint32_t val)
+{
+       return ((val) << DSI_28nm_8960_PHY_TIMING_CTRL_6_HS_PREPARE__SHIFT) & DSI_28nm_8960_PHY_TIMING_CTRL_6_HS_PREPARE__MASK;
+}
+
+#define REG_DSI_28nm_8960_PHY_TIMING_CTRL_7                    0x0000015c
+#define DSI_28nm_8960_PHY_TIMING_CTRL_7_HS_TRAIL__MASK         0x000000ff
+#define DSI_28nm_8960_PHY_TIMING_CTRL_7_HS_TRAIL__SHIFT                0
+static inline uint32_t DSI_28nm_8960_PHY_TIMING_CTRL_7_HS_TRAIL(uint32_t val)
+{
+       return ((val) << DSI_28nm_8960_PHY_TIMING_CTRL_7_HS_TRAIL__SHIFT) & DSI_28nm_8960_PHY_TIMING_CTRL_7_HS_TRAIL__MASK;
+}
+
+#define REG_DSI_28nm_8960_PHY_TIMING_CTRL_8                    0x00000160
+#define DSI_28nm_8960_PHY_TIMING_CTRL_8_HS_RQST__MASK          0x000000ff
+#define DSI_28nm_8960_PHY_TIMING_CTRL_8_HS_RQST__SHIFT         0
+static inline uint32_t DSI_28nm_8960_PHY_TIMING_CTRL_8_HS_RQST(uint32_t val)
+{
+       return ((val) << DSI_28nm_8960_PHY_TIMING_CTRL_8_HS_RQST__SHIFT) & DSI_28nm_8960_PHY_TIMING_CTRL_8_HS_RQST__MASK;
+}
+
+#define REG_DSI_28nm_8960_PHY_TIMING_CTRL_9                    0x00000164
+#define DSI_28nm_8960_PHY_TIMING_CTRL_9_TA_GO__MASK            0x00000007
+#define DSI_28nm_8960_PHY_TIMING_CTRL_9_TA_GO__SHIFT           0
+static inline uint32_t DSI_28nm_8960_PHY_TIMING_CTRL_9_TA_GO(uint32_t val)
+{
+       return ((val) << DSI_28nm_8960_PHY_TIMING_CTRL_9_TA_GO__SHIFT) & DSI_28nm_8960_PHY_TIMING_CTRL_9_TA_GO__MASK;
+}
+#define DSI_28nm_8960_PHY_TIMING_CTRL_9_TA_SURE__MASK          0x00000070
+#define DSI_28nm_8960_PHY_TIMING_CTRL_9_TA_SURE__SHIFT         4
+static inline uint32_t DSI_28nm_8960_PHY_TIMING_CTRL_9_TA_SURE(uint32_t val)
+{
+       return ((val) << DSI_28nm_8960_PHY_TIMING_CTRL_9_TA_SURE__SHIFT) & DSI_28nm_8960_PHY_TIMING_CTRL_9_TA_SURE__MASK;
+}
+
+#define REG_DSI_28nm_8960_PHY_TIMING_CTRL_10                   0x00000168
+#define DSI_28nm_8960_PHY_TIMING_CTRL_10_TA_GET__MASK          0x00000007
+#define DSI_28nm_8960_PHY_TIMING_CTRL_10_TA_GET__SHIFT         0
+static inline uint32_t DSI_28nm_8960_PHY_TIMING_CTRL_10_TA_GET(uint32_t val)
+{
+       return ((val) << DSI_28nm_8960_PHY_TIMING_CTRL_10_TA_GET__SHIFT) & DSI_28nm_8960_PHY_TIMING_CTRL_10_TA_GET__MASK;
+}
+
+#define REG_DSI_28nm_8960_PHY_TIMING_CTRL_11                   0x0000016c
+#define DSI_28nm_8960_PHY_TIMING_CTRL_11_TRIG3_CMD__MASK       0x000000ff
+#define DSI_28nm_8960_PHY_TIMING_CTRL_11_TRIG3_CMD__SHIFT      0
+static inline uint32_t DSI_28nm_8960_PHY_TIMING_CTRL_11_TRIG3_CMD(uint32_t val)
+{
+       return ((val) << DSI_28nm_8960_PHY_TIMING_CTRL_11_TRIG3_CMD__SHIFT) & DSI_28nm_8960_PHY_TIMING_CTRL_11_TRIG3_CMD__MASK;
+}
+
+#define REG_DSI_28nm_8960_PHY_CTRL_0                           0x00000170
+
+#define REG_DSI_28nm_8960_PHY_CTRL_1                           0x00000174
+
+#define REG_DSI_28nm_8960_PHY_CTRL_2                           0x00000178
+
+#define REG_DSI_28nm_8960_PHY_CTRL_3                           0x0000017c
+
+#define REG_DSI_28nm_8960_PHY_STRENGTH_0                       0x00000180
+
+#define REG_DSI_28nm_8960_PHY_STRENGTH_1                       0x00000184
+
+#define REG_DSI_28nm_8960_PHY_STRENGTH_2                       0x00000188
+
+#define REG_DSI_28nm_8960_PHY_BIST_CTRL_0                      0x0000018c
+
+#define REG_DSI_28nm_8960_PHY_BIST_CTRL_1                      0x00000190
+
+#define REG_DSI_28nm_8960_PHY_BIST_CTRL_2                      0x00000194
+
+#define REG_DSI_28nm_8960_PHY_BIST_CTRL_3                      0x00000198
+
+#define REG_DSI_28nm_8960_PHY_BIST_CTRL_4                      0x0000019c
+
+#define REG_DSI_28nm_8960_PHY_LDO_CTRL                         0x000001b0
+
+#define REG_DSI_28nm_8960_PHY_MISC_REGULATOR_CTRL_0            0x00000000
+
+#define REG_DSI_28nm_8960_PHY_MISC_REGULATOR_CTRL_1            0x00000004
+
+#define REG_DSI_28nm_8960_PHY_MISC_REGULATOR_CTRL_2            0x00000008
+
+#define REG_DSI_28nm_8960_PHY_MISC_REGULATOR_CTRL_3            0x0000000c
+
+#define REG_DSI_28nm_8960_PHY_MISC_REGULATOR_CTRL_4            0x00000010
+
+#define REG_DSI_28nm_8960_PHY_MISC_REGULATOR_CTRL_5            0x00000014
+
+#define REG_DSI_28nm_8960_PHY_MISC_REGULATOR_CAL_PWR_CFG       0x00000018
+
+#define REG_DSI_28nm_8960_PHY_MISC_CAL_HW_TRIGGER              0x00000028
+
+#define REG_DSI_28nm_8960_PHY_MISC_CAL_SW_CFG_0                        0x0000002c
+
+#define REG_DSI_28nm_8960_PHY_MISC_CAL_SW_CFG_1                        0x00000030
+
+#define REG_DSI_28nm_8960_PHY_MISC_CAL_SW_CFG_2                        0x00000034
+
+#define REG_DSI_28nm_8960_PHY_MISC_CAL_HW_CFG_0                        0x00000038
+
+#define REG_DSI_28nm_8960_PHY_MISC_CAL_HW_CFG_1                        0x0000003c
+
+#define REG_DSI_28nm_8960_PHY_MISC_CAL_HW_CFG_2                        0x00000040
+
+#define REG_DSI_28nm_8960_PHY_MISC_CAL_HW_CFG_3                        0x00000044
+
+#define REG_DSI_28nm_8960_PHY_MISC_CAL_HW_CFG_4                        0x00000048
+
+#define REG_DSI_28nm_8960_PHY_MISC_CAL_STATUS                  0x00000050
+#define DSI_28nm_8960_PHY_MISC_CAL_STATUS_CAL_BUSY             0x00000010
+
+#define REG_DSI_28nm_8960_PHY_PLL_CTRL_0                       0x00000000
+#define DSI_28nm_8960_PHY_PLL_CTRL_0_ENABLE                    0x00000001
+
+#define REG_DSI_28nm_8960_PHY_PLL_CTRL_1                       0x00000004
+
+#define REG_DSI_28nm_8960_PHY_PLL_CTRL_2                       0x00000008
+
+#define REG_DSI_28nm_8960_PHY_PLL_CTRL_3                       0x0000000c
+
+#define REG_DSI_28nm_8960_PHY_PLL_CTRL_4                       0x00000010
+
+#define REG_DSI_28nm_8960_PHY_PLL_CTRL_5                       0x00000014
+
+#define REG_DSI_28nm_8960_PHY_PLL_CTRL_6                       0x00000018
+
+#define REG_DSI_28nm_8960_PHY_PLL_CTRL_7                       0x0000001c
+
+#define REG_DSI_28nm_8960_PHY_PLL_CTRL_8                       0x00000020
+
+#define REG_DSI_28nm_8960_PHY_PLL_CTRL_9                       0x00000024
+
+#define REG_DSI_28nm_8960_PHY_PLL_CTRL_10                      0x00000028
+
+#define REG_DSI_28nm_8960_PHY_PLL_CTRL_11                      0x0000002c
+
+#define REG_DSI_28nm_8960_PHY_PLL_CTRL_12                      0x00000030
+
+#define REG_DSI_28nm_8960_PHY_PLL_CTRL_13                      0x00000034
+
+#define REG_DSI_28nm_8960_PHY_PLL_CTRL_14                      0x00000038
+
+#define REG_DSI_28nm_8960_PHY_PLL_CTRL_15                      0x0000003c
+
+#define REG_DSI_28nm_8960_PHY_PLL_CTRL_16                      0x00000040
+
+#define REG_DSI_28nm_8960_PHY_PLL_CTRL_17                      0x00000044
+
+#define REG_DSI_28nm_8960_PHY_PLL_CTRL_18                      0x00000048
+
+#define REG_DSI_28nm_8960_PHY_PLL_CTRL_19                      0x0000004c
+
+#define REG_DSI_28nm_8960_PHY_PLL_CTRL_20                      0x00000050
+
+#define REG_DSI_28nm_8960_PHY_PLL_RDY                          0x00000080
+#define DSI_28nm_8960_PHY_PLL_RDY_PLL_RDY                      0x00000001
+
+
+#endif /* DSI_PHY_28NM_8960_XML */
diff --git a/drivers/gpu/drm/msm/dsi/dsi_phy_5nm.xml.h b/drivers/gpu/drm/msm/dsi/dsi_phy_5nm.xml.h
new file mode 100644 (file)
index 0000000..404c890
--- /dev/null
@@ -0,0 +1,480 @@
+#ifndef DSI_PHY_5NM_XML
+#define DSI_PHY_5NM_XML
+
+/* Autogenerated file, DO NOT EDIT manually!
+
+This file was generated by the rules-ng-ng headergen tool in this git repository:
+http://github.com/freedreno/envytools/
+git clone https://github.com/freedreno/envytools.git
+
+The rules-ng-ng source files this header was generated from are:
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/msm.xml                   (    981 bytes, from 2021-06-05 21:37:42)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/freedreno_copyright.xml   (   1572 bytes, from 2021-02-18 16:45:44)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/mdp/mdp4.xml              (  20912 bytes, from 2021-02-18 16:45:44)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/mdp/mdp_common.xml        (   2849 bytes, from 2021-02-18 16:45:44)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/mdp/mdp5.xml              (  37461 bytes, from 2021-02-18 16:45:44)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/dsi/dsi.xml               (  15291 bytes, from 2021-06-15 22:36:13)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/dsi/dsi_phy_v2.xml        (   3236 bytes, from 2021-06-05 21:37:42)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/dsi/dsi_phy_28nm_8960.xml (   4935 bytes, from 2021-05-21 19:18:08)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/dsi/dsi_phy_28nm.xml      (   7004 bytes, from 2021-05-21 19:18:08)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/dsi/dsi_phy_20nm.xml      (   3712 bytes, from 2021-05-21 19:18:08)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/dsi/dsi_phy_14nm.xml      (   5381 bytes, from 2021-05-21 19:18:08)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/dsi/dsi_phy_10nm.xml      (   4499 bytes, from 2021-05-21 19:18:08)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/dsi/dsi_phy_7nm.xml       (  10953 bytes, from 2021-05-21 19:18:08)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/dsi/dsi_phy_5nm.xml       (  10900 bytes, from 2021-05-21 19:18:08)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/dsi/sfpb.xml              (    602 bytes, from 2021-02-18 16:45:44)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/dsi/mmss_cc.xml           (   1686 bytes, from 2021-02-18 16:45:44)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/hdmi/qfprom.xml           (    600 bytes, from 2021-02-18 16:45:44)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/hdmi/hdmi.xml             (  41874 bytes, from 2021-02-18 16:45:44)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/edp/edp.xml               (  10416 bytes, from 2021-02-18 16:45:44)
+
+Copyright (C) 2013-2021 by the following authors:
+- Rob Clark <robdclark@gmail.com> (robclark)
+- Ilia Mirkin <imirkin@alum.mit.edu> (imirkin)
+
+Permission is hereby granted, free of charge, to any person obtaining
+a copy of this software and associated documentation files (the
+"Software"), to deal in the Software without restriction, including
+without limitation the rights to use, copy, modify, merge, publish,
+distribute, sublicense, and/or sell copies of the Software, and to
+permit persons to whom the Software is furnished to do so, subject to
+the following conditions:
+
+The above copyright notice and this permission notice (including the
+next paragraph) shall be included in all copies or substantial
+portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
+IN NO EVENT SHALL THE COPYRIGHT OWNER(S) AND/OR ITS SUPPLIERS BE
+LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+*/
+
+
+#define REG_DSI_5nm_PHY_CMN_REVISION_ID0                       0x00000000
+
+#define REG_DSI_5nm_PHY_CMN_REVISION_ID1                       0x00000004
+
+#define REG_DSI_5nm_PHY_CMN_REVISION_ID2                       0x00000008
+
+#define REG_DSI_5nm_PHY_CMN_REVISION_ID3                       0x0000000c
+
+#define REG_DSI_5nm_PHY_CMN_CLK_CFG0                           0x00000010
+
+#define REG_DSI_5nm_PHY_CMN_CLK_CFG1                           0x00000014
+
+#define REG_DSI_5nm_PHY_CMN_GLBL_CTRL                          0x00000018
+
+#define REG_DSI_5nm_PHY_CMN_RBUF_CTRL                          0x0000001c
+
+#define REG_DSI_5nm_PHY_CMN_VREG_CTRL_0                                0x00000020
+
+#define REG_DSI_5nm_PHY_CMN_CTRL_0                             0x00000024
+
+#define REG_DSI_5nm_PHY_CMN_CTRL_1                             0x00000028
+
+#define REG_DSI_5nm_PHY_CMN_CTRL_2                             0x0000002c
+
+#define REG_DSI_5nm_PHY_CMN_CTRL_3                             0x00000030
+
+#define REG_DSI_5nm_PHY_CMN_LANE_CFG0                          0x00000034
+
+#define REG_DSI_5nm_PHY_CMN_LANE_CFG1                          0x00000038
+
+#define REG_DSI_5nm_PHY_CMN_PLL_CNTRL                          0x0000003c
+
+#define REG_DSI_5nm_PHY_CMN_DPHY_SOT                           0x00000040
+
+#define REG_DSI_5nm_PHY_CMN_LANE_CTRL0                         0x000000a0
+
+#define REG_DSI_5nm_PHY_CMN_LANE_CTRL1                         0x000000a4
+
+#define REG_DSI_5nm_PHY_CMN_LANE_CTRL2                         0x000000a8
+
+#define REG_DSI_5nm_PHY_CMN_LANE_CTRL3                         0x000000ac
+
+#define REG_DSI_5nm_PHY_CMN_LANE_CTRL4                         0x000000b0
+
+#define REG_DSI_5nm_PHY_CMN_TIMING_CTRL_0                      0x000000b4
+
+#define REG_DSI_5nm_PHY_CMN_TIMING_CTRL_1                      0x000000b8
+
+#define REG_DSI_5nm_PHY_CMN_TIMING_CTRL_2                      0x000000bc
+
+#define REG_DSI_5nm_PHY_CMN_TIMING_CTRL_3                      0x000000c0
+
+#define REG_DSI_5nm_PHY_CMN_TIMING_CTRL_4                      0x000000c4
+
+#define REG_DSI_5nm_PHY_CMN_TIMING_CTRL_5                      0x000000c8
+
+#define REG_DSI_5nm_PHY_CMN_TIMING_CTRL_6                      0x000000cc
+
+#define REG_DSI_5nm_PHY_CMN_TIMING_CTRL_7                      0x000000d0
+
+#define REG_DSI_5nm_PHY_CMN_TIMING_CTRL_8                      0x000000d4
+
+#define REG_DSI_5nm_PHY_CMN_TIMING_CTRL_9                      0x000000d8
+
+#define REG_DSI_5nm_PHY_CMN_TIMING_CTRL_10                     0x000000dc
+
+#define REG_DSI_5nm_PHY_CMN_TIMING_CTRL_11                     0x000000e0
+
+#define REG_DSI_5nm_PHY_CMN_TIMING_CTRL_12                     0x000000e4
+
+#define REG_DSI_5nm_PHY_CMN_TIMING_CTRL_13                     0x000000e8
+
+#define REG_DSI_5nm_PHY_CMN_GLBL_HSTX_STR_CTRL_0               0x000000ec
+
+#define REG_DSI_5nm_PHY_CMN_GLBL_HSTX_STR_CTRL_1               0x000000f0
+
+#define REG_DSI_5nm_PHY_CMN_GLBL_RESCODE_OFFSET_TOP_CTRL       0x000000f4
+
+#define REG_DSI_5nm_PHY_CMN_GLBL_RESCODE_OFFSET_BOT_CTRL       0x000000f8
+
+#define REG_DSI_5nm_PHY_CMN_GLBL_RESCODE_OFFSET_MID_CTRL       0x000000fc
+
+#define REG_DSI_5nm_PHY_CMN_GLBL_LPTX_STR_CTRL                 0x00000100
+
+#define REG_DSI_5nm_PHY_CMN_GLBL_PEMPH_CTRL_0                  0x00000104
+
+#define REG_DSI_5nm_PHY_CMN_GLBL_PEMPH_CTRL_1                  0x00000108
+
+#define REG_DSI_5nm_PHY_CMN_GLBL_STR_SWI_CAL_SEL_CTRL          0x0000010c
+
+#define REG_DSI_5nm_PHY_CMN_VREG_CTRL_1                                0x00000110
+
+#define REG_DSI_5nm_PHY_CMN_CTRL_4                             0x00000114
+
+#define REG_DSI_5nm_PHY_CMN_PHY_STATUS                         0x00000140
+
+#define REG_DSI_5nm_PHY_CMN_LANE_STATUS0                       0x00000148
+
+#define REG_DSI_5nm_PHY_CMN_LANE_STATUS1                       0x0000014c
+
+static inline uint32_t REG_DSI_5nm_PHY_LN(uint32_t i0) { return 0x00000000 + 0x80*i0; }
+
+static inline uint32_t REG_DSI_5nm_PHY_LN_CFG0(uint32_t i0) { return 0x00000000 + 0x80*i0; }
+
+static inline uint32_t REG_DSI_5nm_PHY_LN_CFG1(uint32_t i0) { return 0x00000004 + 0x80*i0; }
+
+static inline uint32_t REG_DSI_5nm_PHY_LN_CFG2(uint32_t i0) { return 0x00000008 + 0x80*i0; }
+
+static inline uint32_t REG_DSI_5nm_PHY_LN_TEST_DATAPATH(uint32_t i0) { return 0x0000000c + 0x80*i0; }
+
+static inline uint32_t REG_DSI_5nm_PHY_LN_PIN_SWAP(uint32_t i0) { return 0x00000010 + 0x80*i0; }
+
+static inline uint32_t REG_DSI_5nm_PHY_LN_LPRX_CTRL(uint32_t i0) { return 0x00000014 + 0x80*i0; }
+
+static inline uint32_t REG_DSI_5nm_PHY_LN_TX_DCTRL(uint32_t i0) { return 0x00000018 + 0x80*i0; }
+
+#define REG_DSI_5nm_PHY_PLL_ANALOG_CONTROLS_ONE                        0x00000000
+
+#define REG_DSI_5nm_PHY_PLL_ANALOG_CONTROLS_TWO                        0x00000004
+
+#define REG_DSI_5nm_PHY_PLL_INT_LOOP_SETTINGS                  0x00000008
+
+#define REG_DSI_5nm_PHY_PLL_INT_LOOP_SETTINGS_TWO              0x0000000c
+
+#define REG_DSI_5nm_PHY_PLL_ANALOG_CONTROLS_THREE              0x00000010
+
+#define REG_DSI_5nm_PHY_PLL_ANALOG_CONTROLS_FOUR               0x00000014
+
+#define REG_DSI_5nm_PHY_PLL_ANALOG_CONTROLS_FIVE               0x00000018
+
+#define REG_DSI_5nm_PHY_PLL_INT_LOOP_CONTROLS                  0x0000001c
+
+#define REG_DSI_5nm_PHY_PLL_DSM_DIVIDER                                0x00000020
+
+#define REG_DSI_5nm_PHY_PLL_FEEDBACK_DIVIDER                   0x00000024
+
+#define REG_DSI_5nm_PHY_PLL_SYSTEM_MUXES                       0x00000028
+
+#define REG_DSI_5nm_PHY_PLL_FREQ_UPDATE_CONTROL_OVERRIDES      0x0000002c
+
+#define REG_DSI_5nm_PHY_PLL_CMODE                              0x00000030
+
+#define REG_DSI_5nm_PHY_PLL_PSM_CTRL                           0x00000034
+
+#define REG_DSI_5nm_PHY_PLL_RSM_CTRL                           0x00000038
+
+#define REG_DSI_5nm_PHY_PLL_VCO_TUNE_MAP                       0x0000003c
+
+#define REG_DSI_5nm_PHY_PLL_PLL_CNTRL                          0x00000040
+
+#define REG_DSI_5nm_PHY_PLL_CALIBRATION_SETTINGS               0x00000044
+
+#define REG_DSI_5nm_PHY_PLL_BAND_SEL_CAL_TIMER_LOW             0x00000048
+
+#define REG_DSI_5nm_PHY_PLL_BAND_SEL_CAL_TIMER_HIGH            0x0000004c
+
+#define REG_DSI_5nm_PHY_PLL_BAND_SEL_CAL_SETTINGS              0x00000050
+
+#define REG_DSI_5nm_PHY_PLL_BAND_SEL_MIN                       0x00000054
+
+#define REG_DSI_5nm_PHY_PLL_BAND_SEL_MAX                       0x00000058
+
+#define REG_DSI_5nm_PHY_PLL_BAND_SEL_PFILT                     0x0000005c
+
+#define REG_DSI_5nm_PHY_PLL_BAND_SEL_IFILT                     0x00000060
+
+#define REG_DSI_5nm_PHY_PLL_BAND_SEL_CAL_SETTINGS_TWO          0x00000064
+
+#define REG_DSI_5nm_PHY_PLL_BAND_SEL_CAL_SETTINGS_THREE                0x00000068
+
+#define REG_DSI_5nm_PHY_PLL_BAND_SEL_CAL_SETTINGS_FOUR         0x0000006c
+
+#define REG_DSI_5nm_PHY_PLL_BAND_SEL_ICODE_HIGH                        0x00000070
+
+#define REG_DSI_5nm_PHY_PLL_BAND_SEL_ICODE_LOW                 0x00000074
+
+#define REG_DSI_5nm_PHY_PLL_FREQ_DETECT_SETTINGS_ONE           0x00000078
+
+#define REG_DSI_5nm_PHY_PLL_FREQ_DETECT_THRESH                 0x0000007c
+
+#define REG_DSI_5nm_PHY_PLL_FREQ_DET_REFCLK_HIGH               0x00000080
+
+#define REG_DSI_5nm_PHY_PLL_FREQ_DET_REFCLK_LOW                        0x00000084
+
+#define REG_DSI_5nm_PHY_PLL_FREQ_DET_PLLCLK_HIGH               0x00000088
+
+#define REG_DSI_5nm_PHY_PLL_FREQ_DET_PLLCLK_LOW                        0x0000008c
+
+#define REG_DSI_5nm_PHY_PLL_PFILT                              0x00000090
+
+#define REG_DSI_5nm_PHY_PLL_IFILT                              0x00000094
+
+#define REG_DSI_5nm_PHY_PLL_PLL_GAIN                           0x00000098
+
+#define REG_DSI_5nm_PHY_PLL_ICODE_LOW                          0x0000009c
+
+#define REG_DSI_5nm_PHY_PLL_ICODE_HIGH                         0x000000a0
+
+#define REG_DSI_5nm_PHY_PLL_LOCKDET                            0x000000a4
+
+#define REG_DSI_5nm_PHY_PLL_OUTDIV                             0x000000a8
+
+#define REG_DSI_5nm_PHY_PLL_FASTLOCK_CONTROL                   0x000000ac
+
+#define REG_DSI_5nm_PHY_PLL_PASS_OUT_OVERRIDE_ONE              0x000000b0
+
+#define REG_DSI_5nm_PHY_PLL_PASS_OUT_OVERRIDE_TWO              0x000000b4
+
+#define REG_DSI_5nm_PHY_PLL_CORE_OVERRIDE                      0x000000b8
+
+#define REG_DSI_5nm_PHY_PLL_CORE_INPUT_OVERRIDE                        0x000000bc
+
+#define REG_DSI_5nm_PHY_PLL_RATE_CHANGE                                0x000000c0
+
+#define REG_DSI_5nm_PHY_PLL_PLL_DIGITAL_TIMERS                 0x000000c4
+
+#define REG_DSI_5nm_PHY_PLL_PLL_DIGITAL_TIMERS_TWO             0x000000c8
+
+#define REG_DSI_5nm_PHY_PLL_DECIMAL_DIV_START                  0x000000cc
+
+#define REG_DSI_5nm_PHY_PLL_FRAC_DIV_START_LOW                 0x000000d0
+
+#define REG_DSI_5nm_PHY_PLL_FRAC_DIV_START_MID                 0x000000d4
+
+#define REG_DSI_5nm_PHY_PLL_FRAC_DIV_START_HIGH                        0x000000d8
+
+#define REG_DSI_5nm_PHY_PLL_DEC_FRAC_MUXES                     0x000000dc
+
+#define REG_DSI_5nm_PHY_PLL_DECIMAL_DIV_START_1                        0x000000e0
+
+#define REG_DSI_5nm_PHY_PLL_FRAC_DIV_START_LOW_1               0x000000e4
+
+#define REG_DSI_5nm_PHY_PLL_FRAC_DIV_START_MID_1               0x000000e8
+
+#define REG_DSI_5nm_PHY_PLL_FRAC_DIV_START_HIGH_1              0x000000ec
+
+#define REG_DSI_5nm_PHY_PLL_DECIMAL_DIV_START_2                        0x000000f0
+
+#define REG_DSI_5nm_PHY_PLL_FRAC_DIV_START_LOW_2               0x000000f4
+
+#define REG_DSI_5nm_PHY_PLL_FRAC_DIV_START_MID_2               0x000000f8
+
+#define REG_DSI_5nm_PHY_PLL_FRAC_DIV_START_HIGH_2              0x000000fc
+
+#define REG_DSI_5nm_PHY_PLL_MASH_CONTROL                       0x00000100
+
+#define REG_DSI_5nm_PHY_PLL_SSC_STEPSIZE_LOW                   0x00000104
+
+#define REG_DSI_5nm_PHY_PLL_SSC_STEPSIZE_HIGH                  0x00000108
+
+#define REG_DSI_5nm_PHY_PLL_SSC_DIV_PER_LOW                    0x0000010c
+
+#define REG_DSI_5nm_PHY_PLL_SSC_DIV_PER_HIGH                   0x00000110
+
+#define REG_DSI_5nm_PHY_PLL_SSC_ADJPER_LOW                     0x00000114
+
+#define REG_DSI_5nm_PHY_PLL_SSC_ADJPER_HIGH                    0x00000118
+
+#define REG_DSI_5nm_PHY_PLL_SSC_MUX_CONTROL                    0x0000011c
+
+#define REG_DSI_5nm_PHY_PLL_SSC_STEPSIZE_LOW_1                 0x00000120
+
+#define REG_DSI_5nm_PHY_PLL_SSC_STEPSIZE_HIGH_1                        0x00000124
+
+#define REG_DSI_5nm_PHY_PLL_SSC_DIV_PER_LOW_1                  0x00000128
+
+#define REG_DSI_5nm_PHY_PLL_SSC_DIV_PER_HIGH_1                 0x0000012c
+
+#define REG_DSI_5nm_PHY_PLL_SSC_ADJPER_LOW_1                   0x00000130
+
+#define REG_DSI_5nm_PHY_PLL_SSC_ADJPER_HIGH_1                  0x00000134
+
+#define REG_DSI_5nm_PHY_PLL_SSC_STEPSIZE_LOW_2                 0x00000138
+
+#define REG_DSI_5nm_PHY_PLL_SSC_STEPSIZE_HIGH_2                        0x0000013c
+
+#define REG_DSI_5nm_PHY_PLL_SSC_DIV_PER_LOW_2                  0x00000140
+
+#define REG_DSI_5nm_PHY_PLL_SSC_DIV_PER_HIGH_2                 0x00000144
+
+#define REG_DSI_5nm_PHY_PLL_SSC_ADJPER_LOW_2                   0x00000148
+
+#define REG_DSI_5nm_PHY_PLL_SSC_ADJPER_HIGH_2                  0x0000014c
+
+#define REG_DSI_5nm_PHY_PLL_SSC_CONTROL                                0x00000150
+
+#define REG_DSI_5nm_PHY_PLL_PLL_OUTDIV_RATE                    0x00000154
+
+#define REG_DSI_5nm_PHY_PLL_PLL_LOCKDET_RATE_1                 0x00000158
+
+#define REG_DSI_5nm_PHY_PLL_PLL_LOCKDET_RATE_2                 0x0000015c
+
+#define REG_DSI_5nm_PHY_PLL_PLL_PROP_GAIN_RATE_1               0x00000160
+
+#define REG_DSI_5nm_PHY_PLL_PLL_PROP_GAIN_RATE_2               0x00000164
+
+#define REG_DSI_5nm_PHY_PLL_PLL_BAND_SEL_RATE_1                        0x00000168
+
+#define REG_DSI_5nm_PHY_PLL_PLL_BAND_SEL_RATE_2                        0x0000016c
+
+#define REG_DSI_5nm_PHY_PLL_PLL_INT_GAIN_IFILT_BAND_1          0x00000170
+
+#define REG_DSI_5nm_PHY_PLL_PLL_INT_GAIN_IFILT_BAND_2          0x00000174
+
+#define REG_DSI_5nm_PHY_PLL_PLL_FL_INT_GAIN_PFILT_BAND_1       0x00000178
+
+#define REG_DSI_5nm_PHY_PLL_PLL_FL_INT_GAIN_PFILT_BAND_2       0x0000017c
+
+#define REG_DSI_5nm_PHY_PLL_PLL_FASTLOCK_EN_BAND               0x00000180
+
+#define REG_DSI_5nm_PHY_PLL_FREQ_TUNE_ACCUM_INIT_MID           0x00000184
+
+#define REG_DSI_5nm_PHY_PLL_FREQ_TUNE_ACCUM_INIT_HIGH          0x00000188
+
+#define REG_DSI_5nm_PHY_PLL_FREQ_TUNE_ACCUM_INIT_MUX           0x0000018c
+
+#define REG_DSI_5nm_PHY_PLL_PLL_LOCK_OVERRIDE                  0x00000190
+
+#define REG_DSI_5nm_PHY_PLL_PLL_LOCK_DELAY                     0x00000194
+
+#define REG_DSI_5nm_PHY_PLL_PLL_LOCK_MIN_DELAY                 0x00000198
+
+#define REG_DSI_5nm_PHY_PLL_CLOCK_INVERTERS                    0x0000019c
+
+#define REG_DSI_5nm_PHY_PLL_SPARE_AND_JPC_OVERRIDES            0x000001a0
+
+#define REG_DSI_5nm_PHY_PLL_BIAS_CONTROL_1                     0x000001a4
+
+#define REG_DSI_5nm_PHY_PLL_BIAS_CONTROL_2                     0x000001a8
+
+#define REG_DSI_5nm_PHY_PLL_ALOG_OBSV_BUS_CTRL_1               0x000001ac
+
+#define REG_DSI_5nm_PHY_PLL_COMMON_STATUS_ONE                  0x000001b0
+
+#define REG_DSI_5nm_PHY_PLL_COMMON_STATUS_TWO                  0x000001b4
+
+#define REG_DSI_5nm_PHY_PLL_BAND_SEL_CAL                       0x000001b8
+
+#define REG_DSI_5nm_PHY_PLL_ICODE_ACCUM_STATUS_LOW             0x000001bc
+
+#define REG_DSI_5nm_PHY_PLL_ICODE_ACCUM_STATUS_HIGH            0x000001c0
+
+#define REG_DSI_5nm_PHY_PLL_FD_OUT_LOW                         0x000001c4
+
+#define REG_DSI_5nm_PHY_PLL_FD_OUT_HIGH                                0x000001c8
+
+#define REG_DSI_5nm_PHY_PLL_ALOG_OBSV_BUS_STATUS_1             0x000001cc
+
+#define REG_DSI_5nm_PHY_PLL_PLL_MISC_CONFIG                    0x000001d0
+
+#define REG_DSI_5nm_PHY_PLL_FLL_CONFIG                         0x000001d4
+
+#define REG_DSI_5nm_PHY_PLL_FLL_FREQ_ACQ_TIME                  0x000001d8
+
+#define REG_DSI_5nm_PHY_PLL_FLL_CODE0                          0x000001dc
+
+#define REG_DSI_5nm_PHY_PLL_FLL_CODE1                          0x000001e0
+
+#define REG_DSI_5nm_PHY_PLL_FLL_GAIN0                          0x000001e4
+
+#define REG_DSI_5nm_PHY_PLL_FLL_GAIN1                          0x000001e8
+
+#define REG_DSI_5nm_PHY_PLL_SW_RESET                           0x000001ec
+
+#define REG_DSI_5nm_PHY_PLL_FAST_PWRUP                         0x000001f0
+
+#define REG_DSI_5nm_PHY_PLL_LOCKTIME0                          0x000001f4
+
+#define REG_DSI_5nm_PHY_PLL_LOCKTIME1                          0x000001f8
+
+#define REG_DSI_5nm_PHY_PLL_DEBUG_BUS_SEL                      0x000001fc
+
+#define REG_DSI_5nm_PHY_PLL_DEBUG_BUS0                         0x00000200
+
+#define REG_DSI_5nm_PHY_PLL_DEBUG_BUS1                         0x00000204
+
+#define REG_DSI_5nm_PHY_PLL_DEBUG_BUS2                         0x00000208
+
+#define REG_DSI_5nm_PHY_PLL_DEBUG_BUS3                         0x0000020c
+
+#define REG_DSI_5nm_PHY_PLL_ANALOG_FLL_CONTROL_OVERRIDES       0x00000210
+
+#define REG_DSI_5nm_PHY_PLL_VCO_CONFIG                         0x00000214
+
+#define REG_DSI_5nm_PHY_PLL_VCO_CAL_CODE1_MODE0_STATUS         0x00000218
+
+#define REG_DSI_5nm_PHY_PLL_VCO_CAL_CODE1_MODE1_STATUS         0x0000021c
+
+#define REG_DSI_5nm_PHY_PLL_RESET_SM_STATUS                    0x00000220
+
+#define REG_DSI_5nm_PHY_PLL_TDC_OFFSET                         0x00000224
+
+#define REG_DSI_5nm_PHY_PLL_PS3_PWRDOWN_CONTROLS               0x00000228
+
+#define REG_DSI_5nm_PHY_PLL_PS4_PWRDOWN_CONTROLS               0x0000022c
+
+#define REG_DSI_5nm_PHY_PLL_PLL_RST_CONTROLS                   0x00000230
+
+#define REG_DSI_5nm_PHY_PLL_GEAR_BAND_SELECT_CONTROLS          0x00000234
+
+#define REG_DSI_5nm_PHY_PLL_PSM_CLK_CONTROLS                   0x00000238
+
+#define REG_DSI_5nm_PHY_PLL_SYSTEM_MUXES_2                     0x0000023c
+
+#define REG_DSI_5nm_PHY_PLL_VCO_CONFIG_1                       0x00000240
+
+#define REG_DSI_5nm_PHY_PLL_VCO_CONFIG_2                       0x00000244
+
+#define REG_DSI_5nm_PHY_PLL_CLOCK_INVERTERS_1                  0x00000248
+
+#define REG_DSI_5nm_PHY_PLL_CLOCK_INVERTERS_2                  0x0000024c
+
+#define REG_DSI_5nm_PHY_PLL_CMODE_1                            0x00000250
+
+#define REG_DSI_5nm_PHY_PLL_CMODE_2                            0x00000254
+
+#define REG_DSI_5nm_PHY_PLL_ANALOG_CONTROLS_FIVE_1             0x00000258
+
+#define REG_DSI_5nm_PHY_PLL_ANALOG_CONTROLS_FIVE_2             0x0000025c
+
+#define REG_DSI_5nm_PHY_PLL_PERF_OPTIMIZE                      0x00000260
+
+
+#endif /* DSI_PHY_5NM_XML */
diff --git a/drivers/gpu/drm/msm/dsi/dsi_phy_7nm.xml.h b/drivers/gpu/drm/msm/dsi/dsi_phy_7nm.xml.h
new file mode 100644 (file)
index 0000000..782f6b3
--- /dev/null
@@ -0,0 +1,482 @@
+#ifndef DSI_PHY_7NM_XML
+#define DSI_PHY_7NM_XML
+
+/* Autogenerated file, DO NOT EDIT manually!
+
+This file was generated by the rules-ng-ng headergen tool in this git repository:
+http://github.com/freedreno/envytools/
+git clone https://github.com/freedreno/envytools.git
+
+The rules-ng-ng source files this header was generated from are:
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/msm.xml                   (    981 bytes, from 2021-06-05 21:37:42)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/freedreno_copyright.xml   (   1572 bytes, from 2021-02-18 16:45:44)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/mdp/mdp4.xml              (  20912 bytes, from 2021-02-18 16:45:44)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/mdp/mdp_common.xml        (   2849 bytes, from 2021-02-18 16:45:44)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/mdp/mdp5.xml              (  37461 bytes, from 2021-02-18 16:45:44)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/dsi/dsi.xml               (  15291 bytes, from 2021-06-15 22:36:13)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/dsi/dsi_phy_v2.xml        (   3236 bytes, from 2021-06-05 21:37:42)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/dsi/dsi_phy_28nm_8960.xml (   4935 bytes, from 2021-05-21 19:18:08)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/dsi/dsi_phy_28nm.xml      (   7004 bytes, from 2021-05-21 19:18:08)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/dsi/dsi_phy_20nm.xml      (   3712 bytes, from 2021-05-21 19:18:08)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/dsi/dsi_phy_14nm.xml      (   5381 bytes, from 2021-05-21 19:18:08)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/dsi/dsi_phy_10nm.xml      (   4499 bytes, from 2021-05-21 19:18:08)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/dsi/dsi_phy_7nm.xml       (  10953 bytes, from 2021-05-21 19:18:08)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/dsi/dsi_phy_5nm.xml       (  10900 bytes, from 2021-05-21 19:18:08)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/dsi/sfpb.xml              (    602 bytes, from 2021-02-18 16:45:44)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/dsi/mmss_cc.xml           (   1686 bytes, from 2021-02-18 16:45:44)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/hdmi/qfprom.xml           (    600 bytes, from 2021-02-18 16:45:44)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/hdmi/hdmi.xml             (  41874 bytes, from 2021-02-18 16:45:44)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/edp/edp.xml               (  10416 bytes, from 2021-02-18 16:45:44)
+
+Copyright (C) 2013-2021 by the following authors:
+- Rob Clark <robdclark@gmail.com> (robclark)
+- Ilia Mirkin <imirkin@alum.mit.edu> (imirkin)
+
+Permission is hereby granted, free of charge, to any person obtaining
+a copy of this software and associated documentation files (the
+"Software"), to deal in the Software without restriction, including
+without limitation the rights to use, copy, modify, merge, publish,
+distribute, sublicense, and/or sell copies of the Software, and to
+permit persons to whom the Software is furnished to do so, subject to
+the following conditions:
+
+The above copyright notice and this permission notice (including the
+next paragraph) shall be included in all copies or substantial
+portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
+IN NO EVENT SHALL THE COPYRIGHT OWNER(S) AND/OR ITS SUPPLIERS BE
+LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+*/
+
+
+#define REG_DSI_7nm_PHY_CMN_REVISION_ID0                       0x00000000
+
+#define REG_DSI_7nm_PHY_CMN_REVISION_ID1                       0x00000004
+
+#define REG_DSI_7nm_PHY_CMN_REVISION_ID2                       0x00000008
+
+#define REG_DSI_7nm_PHY_CMN_REVISION_ID3                       0x0000000c
+
+#define REG_DSI_7nm_PHY_CMN_CLK_CFG0                           0x00000010
+
+#define REG_DSI_7nm_PHY_CMN_CLK_CFG1                           0x00000014
+
+#define REG_DSI_7nm_PHY_CMN_GLBL_CTRL                          0x00000018
+
+#define REG_DSI_7nm_PHY_CMN_RBUF_CTRL                          0x0000001c
+
+#define REG_DSI_7nm_PHY_CMN_VREG_CTRL_0                                0x00000020
+
+#define REG_DSI_7nm_PHY_CMN_CTRL_0                             0x00000024
+
+#define REG_DSI_7nm_PHY_CMN_CTRL_1                             0x00000028
+
+#define REG_DSI_7nm_PHY_CMN_CTRL_2                             0x0000002c
+
+#define REG_DSI_7nm_PHY_CMN_CTRL_3                             0x00000030
+
+#define REG_DSI_7nm_PHY_CMN_LANE_CFG0                          0x00000034
+
+#define REG_DSI_7nm_PHY_CMN_LANE_CFG1                          0x00000038
+
+#define REG_DSI_7nm_PHY_CMN_PLL_CNTRL                          0x0000003c
+
+#define REG_DSI_7nm_PHY_CMN_DPHY_SOT                           0x00000040
+
+#define REG_DSI_7nm_PHY_CMN_LANE_CTRL0                         0x000000a0
+
+#define REG_DSI_7nm_PHY_CMN_LANE_CTRL1                         0x000000a4
+
+#define REG_DSI_7nm_PHY_CMN_LANE_CTRL2                         0x000000a8
+
+#define REG_DSI_7nm_PHY_CMN_LANE_CTRL3                         0x000000ac
+
+#define REG_DSI_7nm_PHY_CMN_LANE_CTRL4                         0x000000b0
+
+#define REG_DSI_7nm_PHY_CMN_TIMING_CTRL_0                      0x000000b4
+
+#define REG_DSI_7nm_PHY_CMN_TIMING_CTRL_1                      0x000000b8
+
+#define REG_DSI_7nm_PHY_CMN_TIMING_CTRL_2                      0x000000bc
+
+#define REG_DSI_7nm_PHY_CMN_TIMING_CTRL_3                      0x000000c0
+
+#define REG_DSI_7nm_PHY_CMN_TIMING_CTRL_4                      0x000000c4
+
+#define REG_DSI_7nm_PHY_CMN_TIMING_CTRL_5                      0x000000c8
+
+#define REG_DSI_7nm_PHY_CMN_TIMING_CTRL_6                      0x000000cc
+
+#define REG_DSI_7nm_PHY_CMN_TIMING_CTRL_7                      0x000000d0
+
+#define REG_DSI_7nm_PHY_CMN_TIMING_CTRL_8                      0x000000d4
+
+#define REG_DSI_7nm_PHY_CMN_TIMING_CTRL_9                      0x000000d8
+
+#define REG_DSI_7nm_PHY_CMN_TIMING_CTRL_10                     0x000000dc
+
+#define REG_DSI_7nm_PHY_CMN_TIMING_CTRL_11                     0x000000e0
+
+#define REG_DSI_7nm_PHY_CMN_TIMING_CTRL_12                     0x000000e4
+
+#define REG_DSI_7nm_PHY_CMN_TIMING_CTRL_13                     0x000000e8
+
+#define REG_DSI_7nm_PHY_CMN_GLBL_HSTX_STR_CTRL_0               0x000000ec
+
+#define REG_DSI_7nm_PHY_CMN_GLBL_HSTX_STR_CTRL_1               0x000000f0
+
+#define REG_DSI_7nm_PHY_CMN_GLBL_RESCODE_OFFSET_TOP_CTRL       0x000000f4
+
+#define REG_DSI_7nm_PHY_CMN_GLBL_RESCODE_OFFSET_BOT_CTRL       0x000000f8
+
+#define REG_DSI_7nm_PHY_CMN_GLBL_RESCODE_OFFSET_MID_CTRL       0x000000fc
+
+#define REG_DSI_7nm_PHY_CMN_GLBL_LPTX_STR_CTRL                 0x00000100
+
+#define REG_DSI_7nm_PHY_CMN_GLBL_PEMPH_CTRL_0                  0x00000104
+
+#define REG_DSI_7nm_PHY_CMN_GLBL_PEMPH_CTRL_1                  0x00000108
+
+#define REG_DSI_7nm_PHY_CMN_GLBL_STR_SWI_CAL_SEL_CTRL          0x0000010c
+
+#define REG_DSI_7nm_PHY_CMN_VREG_CTRL_1                                0x00000110
+
+#define REG_DSI_7nm_PHY_CMN_CTRL_4                             0x00000114
+
+#define REG_DSI_7nm_PHY_CMN_GLBL_DIGTOP_SPARE4                 0x00000128
+
+#define REG_DSI_7nm_PHY_CMN_PHY_STATUS                         0x00000140
+
+#define REG_DSI_7nm_PHY_CMN_LANE_STATUS0                       0x00000148
+
+#define REG_DSI_7nm_PHY_CMN_LANE_STATUS1                       0x0000014c
+
+static inline uint32_t REG_DSI_7nm_PHY_LN(uint32_t i0) { return 0x00000000 + 0x80*i0; }
+
+static inline uint32_t REG_DSI_7nm_PHY_LN_CFG0(uint32_t i0) { return 0x00000000 + 0x80*i0; }
+
+static inline uint32_t REG_DSI_7nm_PHY_LN_CFG1(uint32_t i0) { return 0x00000004 + 0x80*i0; }
+
+static inline uint32_t REG_DSI_7nm_PHY_LN_CFG2(uint32_t i0) { return 0x00000008 + 0x80*i0; }
+
+static inline uint32_t REG_DSI_7nm_PHY_LN_TEST_DATAPATH(uint32_t i0) { return 0x0000000c + 0x80*i0; }
+
+static inline uint32_t REG_DSI_7nm_PHY_LN_PIN_SWAP(uint32_t i0) { return 0x00000010 + 0x80*i0; }
+
+static inline uint32_t REG_DSI_7nm_PHY_LN_LPRX_CTRL(uint32_t i0) { return 0x00000014 + 0x80*i0; }
+
+static inline uint32_t REG_DSI_7nm_PHY_LN_TX_DCTRL(uint32_t i0) { return 0x00000018 + 0x80*i0; }
+
+#define REG_DSI_7nm_PHY_PLL_ANALOG_CONTROLS_ONE                        0x00000000
+
+#define REG_DSI_7nm_PHY_PLL_ANALOG_CONTROLS_TWO                        0x00000004
+
+#define REG_DSI_7nm_PHY_PLL_INT_LOOP_SETTINGS                  0x00000008
+
+#define REG_DSI_7nm_PHY_PLL_INT_LOOP_SETTINGS_TWO              0x0000000c
+
+#define REG_DSI_7nm_PHY_PLL_ANALOG_CONTROLS_THREE              0x00000010
+
+#define REG_DSI_7nm_PHY_PLL_ANALOG_CONTROLS_FOUR               0x00000014
+
+#define REG_DSI_7nm_PHY_PLL_ANALOG_CONTROLS_FIVE               0x00000018
+
+#define REG_DSI_7nm_PHY_PLL_INT_LOOP_CONTROLS                  0x0000001c
+
+#define REG_DSI_7nm_PHY_PLL_DSM_DIVIDER                                0x00000020
+
+#define REG_DSI_7nm_PHY_PLL_FEEDBACK_DIVIDER                   0x00000024
+
+#define REG_DSI_7nm_PHY_PLL_SYSTEM_MUXES                       0x00000028
+
+#define REG_DSI_7nm_PHY_PLL_FREQ_UPDATE_CONTROL_OVERRIDES      0x0000002c
+
+#define REG_DSI_7nm_PHY_PLL_CMODE                              0x00000030
+
+#define REG_DSI_7nm_PHY_PLL_PSM_CTRL                           0x00000034
+
+#define REG_DSI_7nm_PHY_PLL_RSM_CTRL                           0x00000038
+
+#define REG_DSI_7nm_PHY_PLL_VCO_TUNE_MAP                       0x0000003c
+
+#define REG_DSI_7nm_PHY_PLL_PLL_CNTRL                          0x00000040
+
+#define REG_DSI_7nm_PHY_PLL_CALIBRATION_SETTINGS               0x00000044
+
+#define REG_DSI_7nm_PHY_PLL_BAND_SEL_CAL_TIMER_LOW             0x00000048
+
+#define REG_DSI_7nm_PHY_PLL_BAND_SEL_CAL_TIMER_HIGH            0x0000004c
+
+#define REG_DSI_7nm_PHY_PLL_BAND_SEL_CAL_SETTINGS              0x00000050
+
+#define REG_DSI_7nm_PHY_PLL_BAND_SEL_MIN                       0x00000054
+
+#define REG_DSI_7nm_PHY_PLL_BAND_SEL_MAX                       0x00000058
+
+#define REG_DSI_7nm_PHY_PLL_BAND_SEL_PFILT                     0x0000005c
+
+#define REG_DSI_7nm_PHY_PLL_BAND_SEL_IFILT                     0x00000060
+
+#define REG_DSI_7nm_PHY_PLL_BAND_SEL_CAL_SETTINGS_TWO          0x00000064
+
+#define REG_DSI_7nm_PHY_PLL_BAND_SEL_CAL_SETTINGS_THREE                0x00000068
+
+#define REG_DSI_7nm_PHY_PLL_BAND_SEL_CAL_SETTINGS_FOUR         0x0000006c
+
+#define REG_DSI_7nm_PHY_PLL_BAND_SEL_ICODE_HIGH                        0x00000070
+
+#define REG_DSI_7nm_PHY_PLL_BAND_SEL_ICODE_LOW                 0x00000074
+
+#define REG_DSI_7nm_PHY_PLL_FREQ_DETECT_SETTINGS_ONE           0x00000078
+
+#define REG_DSI_7nm_PHY_PLL_FREQ_DETECT_THRESH                 0x0000007c
+
+#define REG_DSI_7nm_PHY_PLL_FREQ_DET_REFCLK_HIGH               0x00000080
+
+#define REG_DSI_7nm_PHY_PLL_FREQ_DET_REFCLK_LOW                        0x00000084
+
+#define REG_DSI_7nm_PHY_PLL_FREQ_DET_PLLCLK_HIGH               0x00000088
+
+#define REG_DSI_7nm_PHY_PLL_FREQ_DET_PLLCLK_LOW                        0x0000008c
+
+#define REG_DSI_7nm_PHY_PLL_PFILT                              0x00000090
+
+#define REG_DSI_7nm_PHY_PLL_IFILT                              0x00000094
+
+#define REG_DSI_7nm_PHY_PLL_PLL_GAIN                           0x00000098
+
+#define REG_DSI_7nm_PHY_PLL_ICODE_LOW                          0x0000009c
+
+#define REG_DSI_7nm_PHY_PLL_ICODE_HIGH                         0x000000a0
+
+#define REG_DSI_7nm_PHY_PLL_LOCKDET                            0x000000a4
+
+#define REG_DSI_7nm_PHY_PLL_OUTDIV                             0x000000a8
+
+#define REG_DSI_7nm_PHY_PLL_FASTLOCK_CONTROL                   0x000000ac
+
+#define REG_DSI_7nm_PHY_PLL_PASS_OUT_OVERRIDE_ONE              0x000000b0
+
+#define REG_DSI_7nm_PHY_PLL_PASS_OUT_OVERRIDE_TWO              0x000000b4
+
+#define REG_DSI_7nm_PHY_PLL_CORE_OVERRIDE                      0x000000b8
+
+#define REG_DSI_7nm_PHY_PLL_CORE_INPUT_OVERRIDE                        0x000000bc
+
+#define REG_DSI_7nm_PHY_PLL_RATE_CHANGE                                0x000000c0
+
+#define REG_DSI_7nm_PHY_PLL_PLL_DIGITAL_TIMERS                 0x000000c4
+
+#define REG_DSI_7nm_PHY_PLL_PLL_DIGITAL_TIMERS_TWO             0x000000c8
+
+#define REG_DSI_7nm_PHY_PLL_DECIMAL_DIV_START                  0x000000cc
+
+#define REG_DSI_7nm_PHY_PLL_FRAC_DIV_START_LOW                 0x000000d0
+
+#define REG_DSI_7nm_PHY_PLL_FRAC_DIV_START_MID                 0x000000d4
+
+#define REG_DSI_7nm_PHY_PLL_FRAC_DIV_START_HIGH                        0x000000d8
+
+#define REG_DSI_7nm_PHY_PLL_DEC_FRAC_MUXES                     0x000000dc
+
+#define REG_DSI_7nm_PHY_PLL_DECIMAL_DIV_START_1                        0x000000e0
+
+#define REG_DSI_7nm_PHY_PLL_FRAC_DIV_START_LOW_1               0x000000e4
+
+#define REG_DSI_7nm_PHY_PLL_FRAC_DIV_START_MID_1               0x000000e8
+
+#define REG_DSI_7nm_PHY_PLL_FRAC_DIV_START_HIGH_1              0x000000ec
+
+#define REG_DSI_7nm_PHY_PLL_DECIMAL_DIV_START_2                        0x000000f0
+
+#define REG_DSI_7nm_PHY_PLL_FRAC_DIV_START_LOW_2               0x000000f4
+
+#define REG_DSI_7nm_PHY_PLL_FRAC_DIV_START_MID_2               0x000000f8
+
+#define REG_DSI_7nm_PHY_PLL_FRAC_DIV_START_HIGH_2              0x000000fc
+
+#define REG_DSI_7nm_PHY_PLL_MASH_CONTROL                       0x00000100
+
+#define REG_DSI_7nm_PHY_PLL_SSC_STEPSIZE_LOW                   0x00000104
+
+#define REG_DSI_7nm_PHY_PLL_SSC_STEPSIZE_HIGH                  0x00000108
+
+#define REG_DSI_7nm_PHY_PLL_SSC_DIV_PER_LOW                    0x0000010c
+
+#define REG_DSI_7nm_PHY_PLL_SSC_DIV_PER_HIGH                   0x00000110
+
+#define REG_DSI_7nm_PHY_PLL_SSC_ADJPER_LOW                     0x00000114
+
+#define REG_DSI_7nm_PHY_PLL_SSC_ADJPER_HIGH                    0x00000118
+
+#define REG_DSI_7nm_PHY_PLL_SSC_MUX_CONTROL                    0x0000011c
+
+#define REG_DSI_7nm_PHY_PLL_SSC_STEPSIZE_LOW_1                 0x00000120
+
+#define REG_DSI_7nm_PHY_PLL_SSC_STEPSIZE_HIGH_1                        0x00000124
+
+#define REG_DSI_7nm_PHY_PLL_SSC_DIV_PER_LOW_1                  0x00000128
+
+#define REG_DSI_7nm_PHY_PLL_SSC_DIV_PER_HIGH_1                 0x0000012c
+
+#define REG_DSI_7nm_PHY_PLL_SSC_ADJPER_LOW_1                   0x00000130
+
+#define REG_DSI_7nm_PHY_PLL_SSC_ADJPER_HIGH_1                  0x00000134
+
+#define REG_DSI_7nm_PHY_PLL_SSC_STEPSIZE_LOW_2                 0x00000138
+
+#define REG_DSI_7nm_PHY_PLL_SSC_STEPSIZE_HIGH_2                        0x0000013c
+
+#define REG_DSI_7nm_PHY_PLL_SSC_DIV_PER_LOW_2                  0x00000140
+
+#define REG_DSI_7nm_PHY_PLL_SSC_DIV_PER_HIGH_2                 0x00000144
+
+#define REG_DSI_7nm_PHY_PLL_SSC_ADJPER_LOW_2                   0x00000148
+
+#define REG_DSI_7nm_PHY_PLL_SSC_ADJPER_HIGH_2                  0x0000014c
+
+#define REG_DSI_7nm_PHY_PLL_SSC_CONTROL                                0x00000150
+
+#define REG_DSI_7nm_PHY_PLL_PLL_OUTDIV_RATE                    0x00000154
+
+#define REG_DSI_7nm_PHY_PLL_PLL_LOCKDET_RATE_1                 0x00000158
+
+#define REG_DSI_7nm_PHY_PLL_PLL_LOCKDET_RATE_2                 0x0000015c
+
+#define REG_DSI_7nm_PHY_PLL_PLL_PROP_GAIN_RATE_1               0x00000160
+
+#define REG_DSI_7nm_PHY_PLL_PLL_PROP_GAIN_RATE_2               0x00000164
+
+#define REG_DSI_7nm_PHY_PLL_PLL_BAND_SEL_RATE_1                        0x00000168
+
+#define REG_DSI_7nm_PHY_PLL_PLL_BAND_SEL_RATE_2                        0x0000016c
+
+#define REG_DSI_7nm_PHY_PLL_PLL_INT_GAIN_IFILT_BAND_1          0x00000170
+
+#define REG_DSI_7nm_PHY_PLL_PLL_INT_GAIN_IFILT_BAND_2          0x00000174
+
+#define REG_DSI_7nm_PHY_PLL_PLL_FL_INT_GAIN_PFILT_BAND_1       0x00000178
+
+#define REG_DSI_7nm_PHY_PLL_PLL_FL_INT_GAIN_PFILT_BAND_2       0x0000017c
+
+#define REG_DSI_7nm_PHY_PLL_PLL_FASTLOCK_EN_BAND               0x00000180
+
+#define REG_DSI_7nm_PHY_PLL_FREQ_TUNE_ACCUM_INIT_MID           0x00000184
+
+#define REG_DSI_7nm_PHY_PLL_FREQ_TUNE_ACCUM_INIT_HIGH          0x00000188
+
+#define REG_DSI_7nm_PHY_PLL_FREQ_TUNE_ACCUM_INIT_MUX           0x0000018c
+
+#define REG_DSI_7nm_PHY_PLL_PLL_LOCK_OVERRIDE                  0x00000190
+
+#define REG_DSI_7nm_PHY_PLL_PLL_LOCK_DELAY                     0x00000194
+
+#define REG_DSI_7nm_PHY_PLL_PLL_LOCK_MIN_DELAY                 0x00000198
+
+#define REG_DSI_7nm_PHY_PLL_CLOCK_INVERTERS                    0x0000019c
+
+#define REG_DSI_7nm_PHY_PLL_SPARE_AND_JPC_OVERRIDES            0x000001a0
+
+#define REG_DSI_7nm_PHY_PLL_BIAS_CONTROL_1                     0x000001a4
+
+#define REG_DSI_7nm_PHY_PLL_BIAS_CONTROL_2                     0x000001a8
+
+#define REG_DSI_7nm_PHY_PLL_ALOG_OBSV_BUS_CTRL_1               0x000001ac
+
+#define REG_DSI_7nm_PHY_PLL_COMMON_STATUS_ONE                  0x000001b0
+
+#define REG_DSI_7nm_PHY_PLL_COMMON_STATUS_TWO                  0x000001b4
+
+#define REG_DSI_7nm_PHY_PLL_BAND_SEL_CAL                       0x000001b8
+
+#define REG_DSI_7nm_PHY_PLL_ICODE_ACCUM_STATUS_LOW             0x000001bc
+
+#define REG_DSI_7nm_PHY_PLL_ICODE_ACCUM_STATUS_HIGH            0x000001c0
+
+#define REG_DSI_7nm_PHY_PLL_FD_OUT_LOW                         0x000001c4
+
+#define REG_DSI_7nm_PHY_PLL_FD_OUT_HIGH                                0x000001c8
+
+#define REG_DSI_7nm_PHY_PLL_ALOG_OBSV_BUS_STATUS_1             0x000001cc
+
+#define REG_DSI_7nm_PHY_PLL_PLL_MISC_CONFIG                    0x000001d0
+
+#define REG_DSI_7nm_PHY_PLL_FLL_CONFIG                         0x000001d4
+
+#define REG_DSI_7nm_PHY_PLL_FLL_FREQ_ACQ_TIME                  0x000001d8
+
+#define REG_DSI_7nm_PHY_PLL_FLL_CODE0                          0x000001dc
+
+#define REG_DSI_7nm_PHY_PLL_FLL_CODE1                          0x000001e0
+
+#define REG_DSI_7nm_PHY_PLL_FLL_GAIN0                          0x000001e4
+
+#define REG_DSI_7nm_PHY_PLL_FLL_GAIN1                          0x000001e8
+
+#define REG_DSI_7nm_PHY_PLL_SW_RESET                           0x000001ec
+
+#define REG_DSI_7nm_PHY_PLL_FAST_PWRUP                         0x000001f0
+
+#define REG_DSI_7nm_PHY_PLL_LOCKTIME0                          0x000001f4
+
+#define REG_DSI_7nm_PHY_PLL_LOCKTIME1                          0x000001f8
+
+#define REG_DSI_7nm_PHY_PLL_DEBUG_BUS_SEL                      0x000001fc
+
+#define REG_DSI_7nm_PHY_PLL_DEBUG_BUS0                         0x00000200
+
+#define REG_DSI_7nm_PHY_PLL_DEBUG_BUS1                         0x00000204
+
+#define REG_DSI_7nm_PHY_PLL_DEBUG_BUS2                         0x00000208
+
+#define REG_DSI_7nm_PHY_PLL_DEBUG_BUS3                         0x0000020c
+
+#define REG_DSI_7nm_PHY_PLL_ANALOG_FLL_CONTROL_OVERRIDES       0x00000210
+
+#define REG_DSI_7nm_PHY_PLL_VCO_CONFIG                         0x00000214
+
+#define REG_DSI_7nm_PHY_PLL_VCO_CAL_CODE1_MODE0_STATUS         0x00000218
+
+#define REG_DSI_7nm_PHY_PLL_VCO_CAL_CODE1_MODE1_STATUS         0x0000021c
+
+#define REG_DSI_7nm_PHY_PLL_RESET_SM_STATUS                    0x00000220
+
+#define REG_DSI_7nm_PHY_PLL_TDC_OFFSET                         0x00000224
+
+#define REG_DSI_7nm_PHY_PLL_PS3_PWRDOWN_CONTROLS               0x00000228
+
+#define REG_DSI_7nm_PHY_PLL_PS4_PWRDOWN_CONTROLS               0x0000022c
+
+#define REG_DSI_7nm_PHY_PLL_PLL_RST_CONTROLS                   0x00000230
+
+#define REG_DSI_7nm_PHY_PLL_GEAR_BAND_SELECT_CONTROLS          0x00000234
+
+#define REG_DSI_7nm_PHY_PLL_PSM_CLK_CONTROLS                   0x00000238
+
+#define REG_DSI_7nm_PHY_PLL_SYSTEM_MUXES_2                     0x0000023c
+
+#define REG_DSI_7nm_PHY_PLL_VCO_CONFIG_1                       0x00000240
+
+#define REG_DSI_7nm_PHY_PLL_VCO_CONFIG_2                       0x00000244
+
+#define REG_DSI_7nm_PHY_PLL_CLOCK_INVERTERS_1                  0x00000248
+
+#define REG_DSI_7nm_PHY_PLL_CLOCK_INVERTERS_2                  0x0000024c
+
+#define REG_DSI_7nm_PHY_PLL_CMODE_1                            0x00000250
+
+#define REG_DSI_7nm_PHY_PLL_CMODE_2                            0x00000254
+
+#define REG_DSI_7nm_PHY_PLL_ANALOG_CONTROLS_FIVE_1             0x00000258
+
+#define REG_DSI_7nm_PHY_PLL_ANALOG_CONTROLS_FIVE_2             0x0000025c
+
+#define REG_DSI_7nm_PHY_PLL_PERF_OPTIMIZE                      0x00000260
+
+
+#endif /* DSI_PHY_7NM_XML */
index 4e8660c3eb08957c09568850417db4fd7834912f..fbb6a7a6b94023c245f060e8232221dbcf2fe870 100644 (file)
@@ -8,19 +8,27 @@ http://github.com/freedreno/envytools/
 git clone https://github.com/freedreno/envytools.git
 
 The rules-ng-ng source files this header was generated from are:
-- /home/robclark/src/envytools/rnndb/msm.xml                 (    676 bytes, from 2020-07-23 21:58:14)
-- /home/robclark/src/envytools/rnndb/freedreno_copyright.xml (   1572 bytes, from 2020-07-23 21:58:14)
-- /home/robclark/src/envytools/rnndb/mdp/mdp4.xml            (  20915 bytes, from 2020-07-23 21:58:14)
-- /home/robclark/src/envytools/rnndb/mdp/mdp_common.xml      (   2849 bytes, from 2020-07-23 21:58:14)
-- /home/robclark/src/envytools/rnndb/mdp/mdp5.xml            (  37411 bytes, from 2020-07-23 21:58:14)
-- /home/robclark/src/envytools/rnndb/dsi/dsi.xml             (  42301 bytes, from 2020-07-23 21:58:14)
-- /home/robclark/src/envytools/rnndb/dsi/sfpb.xml            (    602 bytes, from 2020-07-23 21:58:14)
-- /home/robclark/src/envytools/rnndb/dsi/mmss_cc.xml         (   1686 bytes, from 2020-07-23 21:58:14)
-- /home/robclark/src/envytools/rnndb/hdmi/qfprom.xml         (    600 bytes, from 2020-07-23 21:58:14)
-- /home/robclark/src/envytools/rnndb/hdmi/hdmi.xml           (  41874 bytes, from 2020-07-23 21:58:14)
-- /home/robclark/src/envytools/rnndb/edp/edp.xml             (  10416 bytes, from 2020-07-23 21:58:14)
-
-Copyright (C) 2013-2020 by the following authors:
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/msm.xml                   (    981 bytes, from 2021-06-05 21:37:42)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/freedreno_copyright.xml   (   1572 bytes, from 2021-02-18 16:45:44)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/mdp/mdp4.xml              (  20912 bytes, from 2021-02-18 16:45:44)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/mdp/mdp_common.xml        (   2849 bytes, from 2021-02-18 16:45:44)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/mdp/mdp5.xml              (  37461 bytes, from 2021-02-18 16:45:44)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/dsi/dsi.xml               (  15291 bytes, from 2021-06-15 22:36:13)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/dsi/dsi_phy_v2.xml        (   3236 bytes, from 2021-06-05 21:37:42)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/dsi/dsi_phy_28nm_8960.xml (   4935 bytes, from 2021-05-21 19:18:08)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/dsi/dsi_phy_28nm.xml      (   7004 bytes, from 2021-05-21 19:18:08)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/dsi/dsi_phy_20nm.xml      (   3712 bytes, from 2021-05-21 19:18:08)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/dsi/dsi_phy_14nm.xml      (   5381 bytes, from 2021-05-21 19:18:08)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/dsi/dsi_phy_10nm.xml      (   4499 bytes, from 2021-05-21 19:18:08)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/dsi/dsi_phy_7nm.xml       (  10953 bytes, from 2021-05-21 19:18:08)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/dsi/dsi_phy_5nm.xml       (  10900 bytes, from 2021-05-21 19:18:08)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/dsi/sfpb.xml              (    602 bytes, from 2021-02-18 16:45:44)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/dsi/mmss_cc.xml           (   1686 bytes, from 2021-02-18 16:45:44)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/hdmi/qfprom.xml           (    600 bytes, from 2021-02-18 16:45:44)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/hdmi/hdmi.xml             (  41874 bytes, from 2021-02-18 16:45:44)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/edp/edp.xml               (  10416 bytes, from 2021-02-18 16:45:44)
+
+Copyright (C) 2013-2021 by the following authors:
 - Rob Clark <robdclark@gmail.com> (robclark)
 - Ilia Mirkin <imirkin@alum.mit.edu> (imirkin)
 
index 657778889d359f2957f9993ccd0ad473035b0bd2..e46b10fc793af0af13ae522ea02d2d7aea6acc78 100644 (file)
@@ -9,6 +9,7 @@
 
 #include "dsi_phy.h"
 #include "dsi.xml.h"
+#include "dsi_phy_10nm.xml.h"
 
 /*
  * DSI PLL 10nm - clock diagram (eg: DSI0):
index 65d68eb9e3cb475b842467ace54bf2c61c5f9dc6..a34cf151c5170e79a594abd6351a411da316cb8e 100644 (file)
@@ -9,6 +9,7 @@
 
 #include "dsi_phy.h"
 #include "dsi.xml.h"
+#include "dsi_phy_14nm.xml.h"
 
 #define PHY_14NM_CKLN_IDX      4
 
index e96d789aea183dfa41268181a7b772259af9f309..ee7c418a1c2943317dbdb02c3bdc8123722edd4e 100644 (file)
@@ -5,6 +5,7 @@
 
 #include "dsi_phy.h"
 #include "dsi.xml.h"
+#include "dsi_phy_20nm.xml.h"
 
 static void dsi_20nm_dphy_set_timing(struct msm_dsi_phy *phy,
                struct msm_dsi_dphy_timing *timing)
index 3304acda216571816fa92517da6fd8c6fdf6d9cc..2da673a2add6916fe03b15a15f9ff1ba4df4c569 100644 (file)
@@ -8,6 +8,7 @@
 
 #include "dsi_phy.h"
 #include "dsi.xml.h"
+#include "dsi_phy_28nm.xml.h"
 
 /*
  * DSI PLL 28nm - clock diagram (eg: DSI0):
index 86e40a0d41a3b1d0623af7c3eae85b4a5d5e4d40..aaa37456f4ee3cf55831cac498823454b1e2f1aa 100644 (file)
@@ -8,6 +8,7 @@
 
 #include "dsi_phy.h"
 #include "dsi.xml.h"
+#include "dsi_phy_28nm_8960.xml.h"
 
 /*
  * DSI PLL 28nm (8960/A family) - clock diagram (eg: DSI1):
index ff9931c70aa7a09a8a674f5679c232ac47ddbe37..7c23d4c4733892326b364b2c85cbf5dc6446ce91 100644 (file)
@@ -9,6 +9,7 @@
 
 #include "dsi_phy.h"
 #include "dsi.xml.h"
+#include "dsi_phy_7nm.xml.h"
 
 /*
  * DSI PLL 7nm - clock diagram (eg: DSI0): TODO: updated CPHY diagram
index a3849220fc6a45d9aca514785ed2154626e53294..1f5e9e9f98035fc4b9748e38145932438c790f04 100644 (file)
@@ -8,19 +8,27 @@ http://github.com/freedreno/envytools/
 git clone https://github.com/freedreno/envytools.git
 
 The rules-ng-ng source files this header was generated from are:
-- /home/robclark/src/envytools/rnndb/msm.xml                 (    676 bytes, from 2020-07-23 21:58:14)
-- /home/robclark/src/envytools/rnndb/freedreno_copyright.xml (   1572 bytes, from 2020-07-23 21:58:14)
-- /home/robclark/src/envytools/rnndb/mdp/mdp4.xml            (  20915 bytes, from 2020-07-23 21:58:14)
-- /home/robclark/src/envytools/rnndb/mdp/mdp_common.xml      (   2849 bytes, from 2020-07-23 21:58:14)
-- /home/robclark/src/envytools/rnndb/mdp/mdp5.xml            (  37411 bytes, from 2020-07-23 21:58:14)
-- /home/robclark/src/envytools/rnndb/dsi/dsi.xml             (  42301 bytes, from 2020-07-23 21:58:14)
-- /home/robclark/src/envytools/rnndb/dsi/sfpb.xml            (    602 bytes, from 2020-07-23 21:58:14)
-- /home/robclark/src/envytools/rnndb/dsi/mmss_cc.xml         (   1686 bytes, from 2020-07-23 21:58:14)
-- /home/robclark/src/envytools/rnndb/hdmi/qfprom.xml         (    600 bytes, from 2020-07-23 21:58:14)
-- /home/robclark/src/envytools/rnndb/hdmi/hdmi.xml           (  41874 bytes, from 2020-07-23 21:58:14)
-- /home/robclark/src/envytools/rnndb/edp/edp.xml             (  10416 bytes, from 2020-07-23 21:58:14)
-
-Copyright (C) 2013-2020 by the following authors:
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/msm.xml                   (    981 bytes, from 2021-06-05 21:37:42)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/freedreno_copyright.xml   (   1572 bytes, from 2021-02-18 16:45:44)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/mdp/mdp4.xml              (  20912 bytes, from 2021-02-18 16:45:44)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/mdp/mdp_common.xml        (   2849 bytes, from 2021-02-18 16:45:44)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/mdp/mdp5.xml              (  37461 bytes, from 2021-02-18 16:45:44)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/dsi/dsi.xml               (  15291 bytes, from 2021-06-15 22:36:13)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/dsi/dsi_phy_v2.xml        (   3236 bytes, from 2021-06-05 21:37:42)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/dsi/dsi_phy_28nm_8960.xml (   4935 bytes, from 2021-05-21 19:18:08)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/dsi/dsi_phy_28nm.xml      (   7004 bytes, from 2021-05-21 19:18:08)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/dsi/dsi_phy_20nm.xml      (   3712 bytes, from 2021-05-21 19:18:08)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/dsi/dsi_phy_14nm.xml      (   5381 bytes, from 2021-05-21 19:18:08)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/dsi/dsi_phy_10nm.xml      (   4499 bytes, from 2021-05-21 19:18:08)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/dsi/dsi_phy_7nm.xml       (  10953 bytes, from 2021-05-21 19:18:08)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/dsi/dsi_phy_5nm.xml       (  10900 bytes, from 2021-05-21 19:18:08)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/dsi/sfpb.xml              (    602 bytes, from 2021-02-18 16:45:44)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/dsi/mmss_cc.xml           (   1686 bytes, from 2021-02-18 16:45:44)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/hdmi/qfprom.xml           (    600 bytes, from 2021-02-18 16:45:44)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/hdmi/hdmi.xml             (  41874 bytes, from 2021-02-18 16:45:44)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/edp/edp.xml               (  10416 bytes, from 2021-02-18 16:45:44)
+
+Copyright (C) 2013-2021 by the following authors:
 - Rob Clark <robdclark@gmail.com> (robclark)
 - Ilia Mirkin <imirkin@alum.mit.edu> (imirkin)
 
index 7aed6cf27790d01060dbd4c7479027cb4f9e920b..7907e0f5988fa8a25eb2f4b8380836010c6a7e7c 100644 (file)
@@ -8,19 +8,27 @@ http://github.com/freedreno/envytools/
 git clone https://github.com/freedreno/envytools.git
 
 The rules-ng-ng source files this header was generated from are:
-- /home/robclark/src/envytools/rnndb/msm.xml                 (    676 bytes, from 2020-07-23 21:58:14)
-- /home/robclark/src/envytools/rnndb/freedreno_copyright.xml (   1572 bytes, from 2020-07-23 21:58:14)
-- /home/robclark/src/envytools/rnndb/mdp/mdp4.xml            (  20915 bytes, from 2020-07-23 21:58:14)
-- /home/robclark/src/envytools/rnndb/mdp/mdp_common.xml      (   2849 bytes, from 2020-07-23 21:58:14)
-- /home/robclark/src/envytools/rnndb/mdp/mdp5.xml            (  37411 bytes, from 2020-07-23 21:58:14)
-- /home/robclark/src/envytools/rnndb/dsi/dsi.xml             (  42301 bytes, from 2020-07-23 21:58:14)
-- /home/robclark/src/envytools/rnndb/dsi/sfpb.xml            (    602 bytes, from 2020-07-23 21:58:14)
-- /home/robclark/src/envytools/rnndb/dsi/mmss_cc.xml         (   1686 bytes, from 2020-07-23 21:58:14)
-- /home/robclark/src/envytools/rnndb/hdmi/qfprom.xml         (    600 bytes, from 2020-07-23 21:58:14)
-- /home/robclark/src/envytools/rnndb/hdmi/hdmi.xml           (  41874 bytes, from 2020-07-23 21:58:14)
-- /home/robclark/src/envytools/rnndb/edp/edp.xml             (  10416 bytes, from 2020-07-23 21:58:14)
-
-Copyright (C) 2013-2020 by the following authors:
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/msm.xml                   (    981 bytes, from 2021-06-05 21:37:42)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/freedreno_copyright.xml   (   1572 bytes, from 2021-02-18 16:45:44)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/mdp/mdp4.xml              (  20912 bytes, from 2021-02-18 16:45:44)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/mdp/mdp_common.xml        (   2849 bytes, from 2021-02-18 16:45:44)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/mdp/mdp5.xml              (  37461 bytes, from 2021-02-18 16:45:44)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/dsi/dsi.xml               (  15291 bytes, from 2021-06-15 22:36:13)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/dsi/dsi_phy_v2.xml        (   3236 bytes, from 2021-06-05 21:37:42)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/dsi/dsi_phy_28nm_8960.xml (   4935 bytes, from 2021-05-21 19:18:08)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/dsi/dsi_phy_28nm.xml      (   7004 bytes, from 2021-05-21 19:18:08)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/dsi/dsi_phy_20nm.xml      (   3712 bytes, from 2021-05-21 19:18:08)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/dsi/dsi_phy_14nm.xml      (   5381 bytes, from 2021-05-21 19:18:08)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/dsi/dsi_phy_10nm.xml      (   4499 bytes, from 2021-05-21 19:18:08)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/dsi/dsi_phy_7nm.xml       (  10953 bytes, from 2021-05-21 19:18:08)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/dsi/dsi_phy_5nm.xml       (  10900 bytes, from 2021-05-21 19:18:08)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/dsi/sfpb.xml              (    602 bytes, from 2021-02-18 16:45:44)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/dsi/mmss_cc.xml           (   1686 bytes, from 2021-02-18 16:45:44)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/hdmi/qfprom.xml           (    600 bytes, from 2021-02-18 16:45:44)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/hdmi/hdmi.xml             (  41874 bytes, from 2021-02-18 16:45:44)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/edp/edp.xml               (  10416 bytes, from 2021-02-18 16:45:44)
+
+Copyright (C) 2013-2021 by the following authors:
 - Rob Clark <robdclark@gmail.com> (robclark)
 - Ilia Mirkin <imirkin@alum.mit.edu> (imirkin)
 
index 72c95b60b8295116800c0aceb221ab0e8b6f4252..a1cede6cfd02de1f11465ebbe8c1085210571c37 100644 (file)
@@ -8,19 +8,27 @@ http://github.com/freedreno/envytools/
 git clone https://github.com/freedreno/envytools.git
 
 The rules-ng-ng source files this header was generated from are:
-- /home/robclark/src/envytools/rnndb/msm.xml                 (    676 bytes, from 2020-07-23 21:58:14)
-- /home/robclark/src/envytools/rnndb/freedreno_copyright.xml (   1572 bytes, from 2020-07-23 21:58:14)
-- /home/robclark/src/envytools/rnndb/mdp/mdp4.xml            (  20915 bytes, from 2020-07-23 21:58:14)
-- /home/robclark/src/envytools/rnndb/mdp/mdp_common.xml      (   2849 bytes, from 2020-07-23 21:58:14)
-- /home/robclark/src/envytools/rnndb/mdp/mdp5.xml            (  37411 bytes, from 2020-07-23 21:58:14)
-- /home/robclark/src/envytools/rnndb/dsi/dsi.xml             (  42301 bytes, from 2020-07-23 21:58:14)
-- /home/robclark/src/envytools/rnndb/dsi/sfpb.xml            (    602 bytes, from 2020-07-23 21:58:14)
-- /home/robclark/src/envytools/rnndb/dsi/mmss_cc.xml         (   1686 bytes, from 2020-07-23 21:58:14)
-- /home/robclark/src/envytools/rnndb/hdmi/qfprom.xml         (    600 bytes, from 2020-07-23 21:58:14)
-- /home/robclark/src/envytools/rnndb/hdmi/hdmi.xml           (  41874 bytes, from 2020-07-23 21:58:14)
-- /home/robclark/src/envytools/rnndb/edp/edp.xml             (  10416 bytes, from 2020-07-23 21:58:14)
-
-Copyright (C) 2013-2020 by the following authors:
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/msm.xml                   (    981 bytes, from 2021-06-05 21:37:42)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/freedreno_copyright.xml   (   1572 bytes, from 2021-02-18 16:45:44)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/mdp/mdp4.xml              (  20912 bytes, from 2021-02-18 16:45:44)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/mdp/mdp_common.xml        (   2849 bytes, from 2021-02-18 16:45:44)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/mdp/mdp5.xml              (  37461 bytes, from 2021-02-18 16:45:44)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/dsi/dsi.xml               (  15291 bytes, from 2021-06-15 22:36:13)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/dsi/dsi_phy_v2.xml        (   3236 bytes, from 2021-06-05 21:37:42)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/dsi/dsi_phy_28nm_8960.xml (   4935 bytes, from 2021-05-21 19:18:08)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/dsi/dsi_phy_28nm.xml      (   7004 bytes, from 2021-05-21 19:18:08)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/dsi/dsi_phy_20nm.xml      (   3712 bytes, from 2021-05-21 19:18:08)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/dsi/dsi_phy_14nm.xml      (   5381 bytes, from 2021-05-21 19:18:08)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/dsi/dsi_phy_10nm.xml      (   4499 bytes, from 2021-05-21 19:18:08)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/dsi/dsi_phy_7nm.xml       (  10953 bytes, from 2021-05-21 19:18:08)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/dsi/dsi_phy_5nm.xml       (  10900 bytes, from 2021-05-21 19:18:08)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/dsi/sfpb.xml              (    602 bytes, from 2021-02-18 16:45:44)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/dsi/mmss_cc.xml           (   1686 bytes, from 2021-02-18 16:45:44)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/hdmi/qfprom.xml           (    600 bytes, from 2021-02-18 16:45:44)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/hdmi/hdmi.xml             (  41874 bytes, from 2021-02-18 16:45:44)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/edp/edp.xml               (  10416 bytes, from 2021-02-18 16:45:44)
+
+Copyright (C) 2013-2021 by the following authors:
 - Rob Clark <robdclark@gmail.com> (robclark)
 - Ilia Mirkin <imirkin@alum.mit.edu> (imirkin)
 
index 85be1b1f19a4d5542e95a1e67294ca5f7d308f0a..4bf34cea1c8949ce92350f870ca76da9a2095469 100644 (file)
@@ -8,19 +8,27 @@ http://github.com/freedreno/envytools/
 git clone https://github.com/freedreno/envytools.git
 
 The rules-ng-ng source files this header was generated from are:
-- /home/robclark/src/envytools/rnndb/msm.xml                 (    676 bytes, from 2020-07-23 21:58:14)
-- /home/robclark/src/envytools/rnndb/freedreno_copyright.xml (   1572 bytes, from 2020-07-23 21:58:14)
-- /home/robclark/src/envytools/rnndb/mdp/mdp4.xml            (  20915 bytes, from 2020-07-23 21:58:14)
-- /home/robclark/src/envytools/rnndb/mdp/mdp_common.xml      (   2849 bytes, from 2020-07-23 21:58:14)
-- /home/robclark/src/envytools/rnndb/mdp/mdp5.xml            (  37411 bytes, from 2020-07-23 21:58:14)
-- /home/robclark/src/envytools/rnndb/dsi/dsi.xml             (  42301 bytes, from 2020-07-23 21:58:14)
-- /home/robclark/src/envytools/rnndb/dsi/sfpb.xml            (    602 bytes, from 2020-07-23 21:58:14)
-- /home/robclark/src/envytools/rnndb/dsi/mmss_cc.xml         (   1686 bytes, from 2020-07-23 21:58:14)
-- /home/robclark/src/envytools/rnndb/hdmi/qfprom.xml         (    600 bytes, from 2020-07-23 21:58:14)
-- /home/robclark/src/envytools/rnndb/hdmi/hdmi.xml           (  41874 bytes, from 2020-07-23 21:58:14)
-- /home/robclark/src/envytools/rnndb/edp/edp.xml             (  10416 bytes, from 2020-07-23 21:58:14)
-
-Copyright (C) 2013-2020 by the following authors:
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/msm.xml                   (    981 bytes, from 2021-06-05 21:37:42)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/freedreno_copyright.xml   (   1572 bytes, from 2021-02-18 16:45:44)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/mdp/mdp4.xml              (  20912 bytes, from 2021-02-18 16:45:44)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/mdp/mdp_common.xml        (   2849 bytes, from 2021-02-18 16:45:44)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/mdp/mdp5.xml              (  37461 bytes, from 2021-02-18 16:45:44)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/dsi/dsi.xml               (  15291 bytes, from 2021-06-15 22:36:13)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/dsi/dsi_phy_v2.xml        (   3236 bytes, from 2021-06-05 21:37:42)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/dsi/dsi_phy_28nm_8960.xml (   4935 bytes, from 2021-05-21 19:18:08)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/dsi/dsi_phy_28nm.xml      (   7004 bytes, from 2021-05-21 19:18:08)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/dsi/dsi_phy_20nm.xml      (   3712 bytes, from 2021-05-21 19:18:08)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/dsi/dsi_phy_14nm.xml      (   5381 bytes, from 2021-05-21 19:18:08)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/dsi/dsi_phy_10nm.xml      (   4499 bytes, from 2021-05-21 19:18:08)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/dsi/dsi_phy_7nm.xml       (  10953 bytes, from 2021-05-21 19:18:08)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/dsi/dsi_phy_5nm.xml       (  10900 bytes, from 2021-05-21 19:18:08)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/dsi/sfpb.xml              (    602 bytes, from 2021-02-18 16:45:44)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/dsi/mmss_cc.xml           (   1686 bytes, from 2021-02-18 16:45:44)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/hdmi/qfprom.xml           (    600 bytes, from 2021-02-18 16:45:44)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/hdmi/hdmi.xml             (  41874 bytes, from 2021-02-18 16:45:44)
+- /home/robclark/src/mesa/mesa/src/freedreno/registers/edp/edp.xml               (  10416 bytes, from 2021-02-18 16:45:44)
+
+Copyright (C) 2013-2021 by the following authors:
 - Rob Clark <robdclark@gmail.com> (robclark)
 - Ilia Mirkin <imirkin@alum.mit.edu> (imirkin)
 
index 3352125ce428ce96f5051a3da42a8b3c2da2113b..9b54de95856ee1242024bf33a8fff72e50564ccf 100644 (file)
@@ -517,7 +517,7 @@ static inline int align_pitch(int width, int bpp)
 /* for the generated headers: */
 #define INVALID_IDX(idx) ({BUG(); 0;})
 #define fui(x)                ({BUG(); 0;})
-#define util_float_to_half(x) ({BUG(); 0;})
+#define _mesa_float_to_half(x) ({BUG(); 0;})
 
 
 #define FIELD(val, name) (((val) & name ## __MASK) >> name ## __SHIFT)