From 5f85b522d13747deaa26229e0c9e9a076ad5a63b Mon Sep 17 00:00:00 2001 From: "Wladimir J. van der Laan" Date: Mon, 27 Jan 2014 16:59:57 +0100 Subject: Documentatino update gc2000 have minorFeatures4, document the register, not that we know any of the bits yet... --- doc/hardware.md | 11 +++++++++++ rnndb/common.xml | 34 ++++++++++++++++++++++++++++++++++ rnndb/gen_headers.sh | 2 +- rnndb/state_hi.xml | 1 + src/etnaviv/cmdstream.xml.h | 2 +- src/etnaviv/common.xml.h | 42 +++++++++++++++++++++++++++++++++++++----- src/etnaviv/state.xml.h | 8 ++++---- src/etnaviv/state_2d.xml.h | 8 ++++---- src/etnaviv/state_3d.xml.h | 8 ++++---- src/etnaviv/state_hi.xml.h | 12 +++++++----- src/etnaviv/state_vg.xml.h | 8 ++++---- 11 files changed, 108 insertions(+), 28 deletions(-) diff --git a/doc/hardware.md b/doc/hardware.md index 8f32c5c..229aced 100644 --- a/doc/hardware.md +++ b/doc/hardware.md @@ -560,3 +560,14 @@ the appropriate cache so that the rendered cache tiles are properly written back - before flushing the TS cache (as before a clear) first make sure that DEPTH and COLOR are flushed, and a stall from RA to PE is done, otherwise a crash will happen. + +Memory alignment +----------------- + +We should take this errata into account moving down the road with GPU drivers. +The GPU3D L1 cache assumes that all memory requests are 16 bytes. If a request is 16 bytes, there +are no issues since the data boundary lines up evenly. If a request is not aligned to 16 bytes, the +memory controller will split those unaligned requests into two requests, doubling the number of +requests processed internally in L1 cache. +(jnettlet) + diff --git a/rnndb/common.xml b/rnndb/common.xml index 78879bc..06343f8 100644 --- a/rnndb/common.xml +++ b/rnndb/common.xml @@ -281,6 +281,40 @@ xsi:schemaLocation="http://nouveau.freedesktop.org/ rules-ng.xsd"> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/rnndb/gen_headers.sh b/rnndb/gen_headers.sh index b8ebf68..38e90eb 100755 --- a/rnndb/gen_headers.sh +++ b/rnndb/gen_headers.sh @@ -6,5 +6,5 @@ HEADERGEN=${DIR}/../envytools/build/rnn/headergen ${HEADERGEN} isa.xml ${HEADERGEN} cmdstream.xml ${HEADERGEN} state.xml -mv ${DIR}/*.xml.h ${DIR}/../native/etnaviv +mv ${DIR}/*.xml.h ${DIR}/../src/etnaviv diff --git a/rnndb/state_hi.xml b/rnndb/state_hi.xml index 1f18c60..8a86482 100644 --- a/rnndb/state_hi.xml +++ b/rnndb/state_hi.xml @@ -128,6 +128,7 @@ xsi:schemaLocation="http://nouveau.freedesktop.org/ rules-ng.xsd"> + diff --git a/src/etnaviv/cmdstream.xml.h b/src/etnaviv/cmdstream.xml.h index 5d57b33..844f829 100644 --- a/src/etnaviv/cmdstream.xml.h +++ b/src/etnaviv/cmdstream.xml.h @@ -9,7 +9,7 @@ git clone git://0x04.net/rules-ng-ng The rules-ng-ng source files this header was generated from are: - /home/orion/projects/etna_viv/rnndb/cmdstream.xml ( 12589 bytes, from 2013-09-01 10:53:22) -- /home/orion/projects/etna_viv/rnndb/common.xml ( 16543 bytes, from 2013-09-01 10:53:22) +- /home/orion/projects/etna_viv/rnndb/common.xml ( 18379 bytes, from 2014-01-27 15:58:05) Copyright (C) 2013 */ diff --git a/src/etnaviv/common.xml.h b/src/etnaviv/common.xml.h index 072885e..36fa0e4 100644 --- a/src/etnaviv/common.xml.h +++ b/src/etnaviv/common.xml.h @@ -9,13 +9,13 @@ git clone git://0x04.net/rules-ng-ng The rules-ng-ng source files this header was generated from are: - /home/orion/projects/etna_viv/rnndb/state.xml ( 18526 bytes, from 2013-09-11 16:52:32) -- /home/orion/projects/etna_viv/rnndb/common.xml ( 16543 bytes, from 2013-09-01 10:53:22) -- /home/orion/projects/etna_viv/rnndb/state_hi.xml ( 21834 bytes, from 2013-09-11 15:58:37) -- /home/orion/projects/etna_viv/rnndb/state_2d.xml ( 51058 bytes, from 2013-09-01 10:53:22) -- /home/orion/projects/etna_viv/rnndb/state_3d.xml ( 54270 bytes, from 2013-09-17 15:37:52) +- /home/orion/projects/etna_viv/rnndb/common.xml ( 18379 bytes, from 2014-01-27 15:58:05) +- /home/orion/projects/etna_viv/rnndb/state_hi.xml ( 22236 bytes, from 2014-01-27 15:56:46) +- /home/orion/projects/etna_viv/rnndb/state_2d.xml ( 51191 bytes, from 2013-10-04 06:36:55) +- /home/orion/projects/etna_viv/rnndb/state_3d.xml ( 54570 bytes, from 2013-10-12 15:25:03) - /home/orion/projects/etna_viv/rnndb/state_vg.xml ( 5942 bytes, from 2013-09-01 10:53:22) -Copyright (C) 2013 +Copyright (C) 2014 */ @@ -217,5 +217,37 @@ Copyright (C) 2013 #define chipMinorFeatures3_UNK29 0x20000000 #define chipMinorFeatures3_UNK30 0x40000000 #define chipMinorFeatures3_UNK31 0x80000000 +#define chipMinorFeatures4_UNK0 0x00000001 +#define chipMinorFeatures4_UNK1 0x00000002 +#define chipMinorFeatures4_UNK2 0x00000004 +#define chipMinorFeatures4_UNK3 0x00000008 +#define chipMinorFeatures4_UNK4 0x00000010 +#define chipMinorFeatures4_UNK5 0x00000020 +#define chipMinorFeatures4_UNK6 0x00000040 +#define chipMinorFeatures4_UNK7 0x00000080 +#define chipMinorFeatures4_UNK8 0x00000100 +#define chipMinorFeatures4_UNK9 0x00000200 +#define chipMinorFeatures4_UNK10 0x00000400 +#define chipMinorFeatures4_UNK11 0x00000800 +#define chipMinorFeatures4_UNK12 0x00001000 +#define chipMinorFeatures4_UNK13 0x00002000 +#define chipMinorFeatures4_UNK14 0x00004000 +#define chipMinorFeatures4_UNK15 0x00008000 +#define chipMinorFeatures4_UNK16 0x00010000 +#define chipMinorFeatures4_UNK17 0x00020000 +#define chipMinorFeatures4_UNK18 0x00040000 +#define chipMinorFeatures4_UNK19 0x00080000 +#define chipMinorFeatures4_UNK20 0x00100000 +#define chipMinorFeatures4_UNK21 0x00200000 +#define chipMinorFeatures4_UNK22 0x00400000 +#define chipMinorFeatures4_UNK23 0x00800000 +#define chipMinorFeatures4_UNK24 0x01000000 +#define chipMinorFeatures4_UNK25 0x02000000 +#define chipMinorFeatures4_UNK26 0x04000000 +#define chipMinorFeatures4_UNK27 0x08000000 +#define chipMinorFeatures4_UNK28 0x10000000 +#define chipMinorFeatures4_UNK29 0x20000000 +#define chipMinorFeatures4_UNK30 0x40000000 +#define chipMinorFeatures4_UNK31 0x80000000 #endif /* COMMON_XML */ diff --git a/src/etnaviv/state.xml.h b/src/etnaviv/state.xml.h index 0b8b92b..e7b36df 100644 --- a/src/etnaviv/state.xml.h +++ b/src/etnaviv/state.xml.h @@ -9,10 +9,10 @@ git clone git://0x04.net/rules-ng-ng The rules-ng-ng source files this header was generated from are: - /home/orion/projects/etna_viv/rnndb/state.xml ( 18526 bytes, from 2013-09-11 16:52:32) -- /home/orion/projects/etna_viv/rnndb/common.xml ( 16543 bytes, from 2013-09-01 10:53:22) -- /home/orion/projects/etna_viv/rnndb/state_hi.xml ( 21834 bytes, from 2013-09-11 15:58:37) -- /home/orion/projects/etna_viv/rnndb/state_2d.xml ( 51058 bytes, from 2013-09-01 10:53:22) -- /home/orion/projects/etna_viv/rnndb/state_3d.xml ( 54270 bytes, from 2013-09-17 15:37:52) +- /home/orion/projects/etna_viv/rnndb/common.xml ( 18379 bytes, from 2014-01-27 15:58:05) +- /home/orion/projects/etna_viv/rnndb/state_hi.xml ( 22236 bytes, from 2014-01-27 15:56:46) +- /home/orion/projects/etna_viv/rnndb/state_2d.xml ( 51191 bytes, from 2013-10-04 06:36:55) +- /home/orion/projects/etna_viv/rnndb/state_3d.xml ( 54570 bytes, from 2013-10-12 15:25:03) - /home/orion/projects/etna_viv/rnndb/state_vg.xml ( 5942 bytes, from 2013-09-01 10:53:22) Copyright (C) 2013 diff --git a/src/etnaviv/state_2d.xml.h b/src/etnaviv/state_2d.xml.h index 3c77032..fb22cfa 100644 --- a/src/etnaviv/state_2d.xml.h +++ b/src/etnaviv/state_2d.xml.h @@ -9,10 +9,10 @@ git clone git://0x04.net/rules-ng-ng The rules-ng-ng source files this header was generated from are: - /home/orion/projects/etna_viv/rnndb/state.xml ( 18526 bytes, from 2013-09-11 16:52:32) -- /home/orion/projects/etna_viv/rnndb/common.xml ( 16543 bytes, from 2013-09-01 10:53:22) -- /home/orion/projects/etna_viv/rnndb/state_hi.xml ( 21834 bytes, from 2013-09-11 15:58:37) -- /home/orion/projects/etna_viv/rnndb/state_2d.xml ( 51058 bytes, from 2013-09-01 10:53:22) -- /home/orion/projects/etna_viv/rnndb/state_3d.xml ( 54270 bytes, from 2013-09-17 15:37:52) +- /home/orion/projects/etna_viv/rnndb/common.xml ( 18379 bytes, from 2014-01-27 15:58:05) +- /home/orion/projects/etna_viv/rnndb/state_hi.xml ( 22236 bytes, from 2014-01-27 15:56:46) +- /home/orion/projects/etna_viv/rnndb/state_2d.xml ( 51191 bytes, from 2013-10-04 06:36:55) +- /home/orion/projects/etna_viv/rnndb/state_3d.xml ( 54570 bytes, from 2013-10-12 15:25:03) - /home/orion/projects/etna_viv/rnndb/state_vg.xml ( 5942 bytes, from 2013-09-01 10:53:22) Copyright (C) 2013 diff --git a/src/etnaviv/state_3d.xml.h b/src/etnaviv/state_3d.xml.h index c7f07ed..5fd20d7 100644 --- a/src/etnaviv/state_3d.xml.h +++ b/src/etnaviv/state_3d.xml.h @@ -9,10 +9,10 @@ git clone git://0x04.net/rules-ng-ng The rules-ng-ng source files this header was generated from are: - /home/orion/projects/etna_viv/rnndb/state.xml ( 18526 bytes, from 2013-09-11 16:52:32) -- /home/orion/projects/etna_viv/rnndb/common.xml ( 16543 bytes, from 2013-09-01 10:53:22) -- /home/orion/projects/etna_viv/rnndb/state_hi.xml ( 21834 bytes, from 2013-09-11 15:58:37) -- /home/orion/projects/etna_viv/rnndb/state_2d.xml ( 51058 bytes, from 2013-09-01 10:53:22) -- /home/orion/projects/etna_viv/rnndb/state_3d.xml ( 54270 bytes, from 2013-09-17 15:37:52) +- /home/orion/projects/etna_viv/rnndb/common.xml ( 18379 bytes, from 2014-01-27 15:58:05) +- /home/orion/projects/etna_viv/rnndb/state_hi.xml ( 22236 bytes, from 2014-01-27 15:56:46) +- /home/orion/projects/etna_viv/rnndb/state_2d.xml ( 51191 bytes, from 2013-10-04 06:36:55) +- /home/orion/projects/etna_viv/rnndb/state_3d.xml ( 54570 bytes, from 2013-10-12 15:25:03) - /home/orion/projects/etna_viv/rnndb/state_vg.xml ( 5942 bytes, from 2013-09-01 10:53:22) Copyright (C) 2013 diff --git a/src/etnaviv/state_hi.xml.h b/src/etnaviv/state_hi.xml.h index 8d8bf2c..2f4a1b7 100644 --- a/src/etnaviv/state_hi.xml.h +++ b/src/etnaviv/state_hi.xml.h @@ -9,13 +9,13 @@ git clone git://0x04.net/rules-ng-ng The rules-ng-ng source files this header was generated from are: - /home/orion/projects/etna_viv/rnndb/state.xml ( 18526 bytes, from 2013-09-11 16:52:32) -- /home/orion/projects/etna_viv/rnndb/common.xml ( 16543 bytes, from 2013-09-01 10:53:22) -- /home/orion/projects/etna_viv/rnndb/state_hi.xml ( 22118 bytes, from 2013-10-03 14:57:04) -- /home/orion/projects/etna_viv/rnndb/state_2d.xml ( 51191 bytes, from 2013-10-02 12:49:04) -- /home/orion/projects/etna_viv/rnndb/state_3d.xml ( 54270 bytes, from 2013-09-17 15:37:52) +- /home/orion/projects/etna_viv/rnndb/common.xml ( 18379 bytes, from 2014-01-27 15:58:05) +- /home/orion/projects/etna_viv/rnndb/state_hi.xml ( 22236 bytes, from 2014-01-27 15:56:46) +- /home/orion/projects/etna_viv/rnndb/state_2d.xml ( 51191 bytes, from 2013-10-04 06:36:55) +- /home/orion/projects/etna_viv/rnndb/state_3d.xml ( 54570 bytes, from 2013-10-12 15:25:03) - /home/orion/projects/etna_viv/rnndb/state_vg.xml ( 5942 bytes, from 2013-09-01 10:53:22) -Copyright (C) 2013 +Copyright (C) 2014 */ @@ -147,6 +147,8 @@ Copyright (C) 2013 #define VIVS_HI_CHIP_MINOR_FEATURE_3 0x00000088 +#define VIVS_HI_CHIP_MINOR_FEATURE_4 0x00000094 + #define VIVS_PM 0x00000000 #define VIVS_PM_POWER_CONTROLS 0x00000100 diff --git a/src/etnaviv/state_vg.xml.h b/src/etnaviv/state_vg.xml.h index f143015..102ccd4 100644 --- a/src/etnaviv/state_vg.xml.h +++ b/src/etnaviv/state_vg.xml.h @@ -9,10 +9,10 @@ git clone git://0x04.net/rules-ng-ng The rules-ng-ng source files this header was generated from are: - /home/orion/projects/etna_viv/rnndb/state.xml ( 18526 bytes, from 2013-09-11 16:52:32) -- /home/orion/projects/etna_viv/rnndb/common.xml ( 16543 bytes, from 2013-09-01 10:53:22) -- /home/orion/projects/etna_viv/rnndb/state_hi.xml ( 21834 bytes, from 2013-09-11 15:58:37) -- /home/orion/projects/etna_viv/rnndb/state_2d.xml ( 51058 bytes, from 2013-09-01 10:53:22) -- /home/orion/projects/etna_viv/rnndb/state_3d.xml ( 54270 bytes, from 2013-09-17 15:37:52) +- /home/orion/projects/etna_viv/rnndb/common.xml ( 18379 bytes, from 2014-01-27 15:58:05) +- /home/orion/projects/etna_viv/rnndb/state_hi.xml ( 22236 bytes, from 2014-01-27 15:56:46) +- /home/orion/projects/etna_viv/rnndb/state_2d.xml ( 51191 bytes, from 2013-10-04 06:36:55) +- /home/orion/projects/etna_viv/rnndb/state_3d.xml ( 54570 bytes, from 2013-10-12 15:25:03) - /home/orion/projects/etna_viv/rnndb/state_vg.xml ( 5942 bytes, from 2013-09-01 10:53:22) Copyright (C) 2013 -- cgit