Message ID | 1410546316-13138-1-git-send-email-armin.c.reese@intel.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
On Fri, Sep 12, 2014 at 11:25:14AM -0700, armin.c.reese@intel.com wrote: > From: Armin Reese <armin.c.reese@intel.com> > > This patch includes the Gen9 batch buffer to generate > a 'golden context' for that product family. > > Also: > 1) IS_GEN9 macro has been added to drivers/gpu/drm/i915/i915_drv.h > 2) drivers/gpu/drm/i915/intel_renderstate_gen8.c has been updated > to the version created by IGT null_state_gen Hi Armin, We'll have to split these extra changes out into separate patches. Damien's SKL series has the IS_GEN9 macro, which will cause a conflict. For the gen8 change, better to have a separate patch since it's not strictly related. I think that the preferred way to handle this situation, at least with respect to the IS_GEN9 part, is to have a cover letter in which you document the patches on which your series depends but don't include them in your series. You'll obviously need to apply those changes locally, just as a separate patch that you don't send with the series. Will you be sending the null_state_gen patch that adds the code to generate this? I'm not too good at reviewing hex dumps ;) One other comment below... > > Signed-off-by: Armin Reese <armin.c.reese@intel.com> > --- > drivers/gpu/drm/i915/Makefile | 3 +- > drivers/gpu/drm/i915/i915_drv.h | 1 + > drivers/gpu/drm/i915/i915_gem_render_state.c | 2 + > drivers/gpu/drm/i915/intel_renderstate.h | 1 + > drivers/gpu/drm/i915/intel_renderstate_gen6.c | 23 + > drivers/gpu/drm/i915/intel_renderstate_gen7.c | 23 + > drivers/gpu/drm/i915/intel_renderstate_gen8.c | 831 +++++++++++++++++----- > drivers/gpu/drm/i915/intel_renderstate_gen9.c | 981 ++++++++++++++++++++++++++ > 8 files changed, 1699 insertions(+), 166 deletions(-) > create mode 100644 drivers/gpu/drm/i915/intel_renderstate_gen9.c > > diff --git a/drivers/gpu/drm/i915/Makefile b/drivers/gpu/drm/i915/Makefile > index c1dd485..2caf4f4 100644 > --- a/drivers/gpu/drm/i915/Makefile > +++ b/drivers/gpu/drm/i915/Makefile > @@ -38,7 +38,8 @@ i915-y += i915_cmd_parser.o \ > # autogenerated null render state > i915-y += intel_renderstate_gen6.o \ > intel_renderstate_gen7.o \ > - intel_renderstate_gen8.o > + intel_renderstate_gen8.o \ > + intel_renderstate_gen9.o > > # modesetting core code > i915-y += intel_bios.o \ > diff --git a/drivers/gpu/drm/i915/i915_drv.h b/drivers/gpu/drm/i915/i915_drv.h > index 17dfce0..7d9f091 100644 > --- a/drivers/gpu/drm/i915/i915_drv.h > +++ b/drivers/gpu/drm/i915/i915_drv.h > @@ -2122,6 +2122,7 @@ struct drm_i915_cmd_table { > #define IS_GEN6(dev) (INTEL_INFO(dev)->gen == 6) > #define IS_GEN7(dev) (INTEL_INFO(dev)->gen == 7) > #define IS_GEN8(dev) (INTEL_INFO(dev)->gen == 8) > +#define IS_GEN9(dev) (INTEL_INFO(dev)->gen == 9) > > #define RENDER_RING (1<<RCS) > #define BSD_RING (1<<VCS) > diff --git a/drivers/gpu/drm/i915/i915_gem_render_state.c b/drivers/gpu/drm/i915/i915_gem_render_state.c > index a9a62d7..98dcd94 100644 > --- a/drivers/gpu/drm/i915/i915_gem_render_state.c > +++ b/drivers/gpu/drm/i915/i915_gem_render_state.c > @@ -38,6 +38,8 @@ render_state_get_rodata(struct drm_device *dev, const int gen) > return &gen7_null_state; > case 8: > return &gen8_null_state; > + case 9: > + return &gen9_null_state; > } > > return NULL; > diff --git a/drivers/gpu/drm/i915/intel_renderstate.h b/drivers/gpu/drm/i915/intel_renderstate.h > index 6c792d3..5bd6985 100644 > --- a/drivers/gpu/drm/i915/intel_renderstate.h > +++ b/drivers/gpu/drm/i915/intel_renderstate.h > @@ -29,6 +29,7 @@ > extern const struct intel_renderstate_rodata gen6_null_state; > extern const struct intel_renderstate_rodata gen7_null_state; > extern const struct intel_renderstate_rodata gen8_null_state; > +extern const struct intel_renderstate_rodata gen9_null_state; > > #define RO_RENDERSTATE(_g) \ > const struct intel_renderstate_rodata gen ## _g ## _null_state = { \ > diff --git a/drivers/gpu/drm/i915/intel_renderstate_gen6.c b/drivers/gpu/drm/i915/intel_renderstate_gen6.c > index 56c1429..c2568a7 100644 > --- a/drivers/gpu/drm/i915/intel_renderstate_gen6.c > +++ b/drivers/gpu/drm/i915/intel_renderstate_gen6.c > @@ -1,3 +1,26 @@ > +/* > + * Copyright © 2014 Intel Corporation > + * > + * 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 AUTHORS OR COPYRIGHT HOLDERS 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. > + */ > + I guess a separate patch for the non-gen9 license changes as well. And if we don't already have patches for it, we probably want to update i-g-t to generate the correct license header so we don't have to manually add it if we ever update the golden state. Brad > #include "intel_renderstate.h" > > static const u32 gen6_null_state_relocs[] = { > diff --git a/drivers/gpu/drm/i915/intel_renderstate_gen7.c b/drivers/gpu/drm/i915/intel_renderstate_gen7.c > index 419e35a..e14aec5 100644 > --- a/drivers/gpu/drm/i915/intel_renderstate_gen7.c > +++ b/drivers/gpu/drm/i915/intel_renderstate_gen7.c > @@ -1,3 +1,26 @@ > +/* > + * Copyright © 2014 Intel Corporation > + * > + * 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 AUTHORS OR COPYRIGHT HOLDERS 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. > + */ > + > #include "intel_renderstate.h" > > static const u32 gen7_null_state_relocs[] = { > diff --git a/drivers/gpu/drm/i915/intel_renderstate_gen8.c b/drivers/gpu/drm/i915/intel_renderstate_gen8.c > index 75ef1b5d..88991e2 100644 > --- a/drivers/gpu/drm/i915/intel_renderstate_gen8.c > +++ b/drivers/gpu/drm/i915/intel_renderstate_gen8.c > @@ -1,81 +1,166 @@ > +/* > + * Copyright © 2014 Intel Corporation > + * > + * 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 AUTHORS OR COPYRIGHT HOLDERS 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. > + */ > + > #include "intel_renderstate.h" > > static const u32 gen8_null_state_relocs[] = { > - 0x00000048, > - 0x00000050, > - 0x00000060, > - 0x000003ec, > + 0x00000784, > + 0x00000790, > + 0x00000798, > + 0x000007a8, > -1, > }; > > static const u32 gen8_null_state_batch[] = { > + 0x7a000004, > + 0x01000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > 0x69040000, > - 0x61020001, > + 0x78140000, > + 0x04000000, > + 0x7820000a, > 0x00000000, > 0x00000000, > - 0x79120000, > + 0x80000000, > 0x00000000, > - 0x79130000, > 0x00000000, > - 0x79140000, > 0x00000000, > - 0x79150000, > 0x00000000, > - 0x79160000, > 0x00000000, > - 0x6101000e, > - 0x00000001, > 0x00000000, > - 0x00000001, > - 0x00000001, /* reloc */ > 0x00000000, > - 0x00000001, /* reloc */ > + 0x00000000, > + 0x78130002, > + 0x00000000, > + 0x00000000, > + 0x02001808, > + 0x781f0002, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x78510009, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x78100007, > + 0x00000000, > + 0x00000000, > + 0x00010000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x781b0007, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000800, > + 0x00000000, > + 0x78110008, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x781e0003, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x781d0007, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x78120002, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x781c0002, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x780c0000, > + 0x00000000, > + 0x78520003, > 0x00000000, > 0x00000000, > 0x00000000, > - 0x00000001, /* reloc */ > 0x00000000, > - 0xfffff001, > - 0x00001001, > - 0xfffff001, > - 0x00001001, > - 0x78230000, > - 0x000006e0, > - 0x78210000, > - 0x00000700, > 0x78300000, > 0x08010040, > - 0x78330000, > - 0x08000000, > 0x78310000, > - 0x08000000, > + 0x1e000000, > 0x78320000, > - 0x08000000, > - 0x78240000, > - 0x00000641, > - 0x780e0000, > - 0x00000601, > - 0x780d0000, > + 0x1e000000, > + 0x78330000, > + 0x1e000000, > + 0x79190002, > 0x00000000, > - 0x78180000, > - 0x00000001, > - 0x78520003, > 0x00000000, > 0x00000000, > + 0x791a0002, > 0x00000000, > 0x00000000, > - 0x78190009, > 0x00000000, > + 0x791b0002, > 0x00000000, > 0x00000000, > 0x00000000, > + 0x79120000, > 0x00000000, > + 0x79130000, > 0x00000000, > + 0x79140000, > 0x00000000, > + 0x79150000, > 0x00000000, > + 0x79160000, > 0x00000000, > + 0x78150009, > 0x00000000, > - 0x781b0007, > 0x00000000, > 0x00000000, > 0x00000000, > @@ -84,11 +169,26 @@ static const u32 gen8_null_state_batch[] = { > 0x00000000, > 0x00000000, > 0x00000000, > - 0x78270000, > 0x00000000, > - 0x782c0000, > + 0x78190009, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x781a0009, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > 0x00000000, > - 0x781c0002, > 0x00000000, > 0x00000000, > 0x00000000, > @@ -103,7 +203,7 @@ static const u32 gen8_null_state_batch[] = { > 0x00000000, > 0x00000000, > 0x00000000, > - 0x78110008, > + 0x78170009, > 0x00000000, > 0x00000000, > 0x00000000, > @@ -113,14 +213,17 @@ static const u32 gen8_null_state_batch[] = { > 0x00000000, > 0x00000000, > 0x00000000, > - 0x78290000, > 0x00000000, > - 0x782e0000, > + 0x78490001, > 0x00000000, > - 0x781a0009, > 0x00000000, > + 0x784a0000, > 0x00000000, > + 0x784b0000, > + 0x00000004, > + 0x79170101, > 0x00000000, > + 0x00000080, > 0x00000000, > 0x00000000, > 0x00000000, > @@ -128,7 +231,6 @@ static const u32 gen8_null_state_batch[] = { > 0x00000000, > 0x00000000, > 0x00000000, > - 0x781d0007, > 0x00000000, > 0x00000000, > 0x00000000, > @@ -137,15 +239,10 @@ static const u32 gen8_null_state_batch[] = { > 0x00000000, > 0x00000000, > 0x00000000, > - 0x78280000, > 0x00000000, > - 0x782d0000, > 0x00000000, > - 0x78260000, > 0x00000000, > - 0x782b0000, > 0x00000000, > - 0x78150009, > 0x00000000, > 0x00000000, > 0x00000000, > @@ -156,7 +253,6 @@ static const u32 gen8_null_state_batch[] = { > 0x00000000, > 0x00000000, > 0x00000000, > - 0x78100007, > 0x00000000, > 0x00000000, > 0x00000000, > @@ -165,20 +261,15 @@ static const u32 gen8_null_state_batch[] = { > 0x00000000, > 0x00000000, > 0x00000000, > - 0x781e0003, > 0x00000000, > 0x00000000, > 0x00000000, > 0x00000000, > - 0x78120002, > 0x00000000, > 0x00000000, > 0x00000000, > - 0x781f0002, > - 0x30400820, > 0x00000000, > 0x00000000, > - 0x78510009, > 0x00000000, > 0x00000000, > 0x00000000, > @@ -189,22 +280,12 @@ static const u32 gen8_null_state_batch[] = { > 0x00000000, > 0x00000000, > 0x00000000, > - 0x78500003, > - 0x00210000, > 0x00000000, > 0x00000000, > 0x00000000, > - 0x78130002, > 0x00000000, > 0x00000000, > 0x00000000, > - 0x782a0000, > - 0x00000480, > - 0x782f0000, > - 0x00000540, > - 0x78140000, > - 0x00000800, > - 0x78170009, > 0x00000000, > 0x00000000, > 0x00000000, > @@ -215,25 +296,13 @@ static const u32 gen8_null_state_batch[] = { > 0x00000000, > 0x00000000, > 0x00000000, > - 0x7820000a, > - 0x00000580, > 0x00000000, > - 0x08080000, > 0x00000000, > 0x00000000, > - 0x1f000002, > - 0x00060000, > 0x00000000, > 0x00000000, > 0x00000000, > 0x00000000, > - 0x784d0000, > - 0x40000000, > - 0x784f0000, > - 0x80000100, > - 0x780f0000, > - 0x00000740, > - 0x78050006, > 0x00000000, > 0x00000000, > 0x00000000, > @@ -241,48 +310,25 @@ static const u32 gen8_null_state_batch[] = { > 0x00000000, > 0x00000000, > 0x00000000, > - 0x78070003, > 0x00000000, > 0x00000000, > 0x00000000, > 0x00000000, > - 0x78060003, > 0x00000000, > 0x00000000, > 0x00000000, > 0x00000000, > - 0x78040001, > 0x00000000, > - 0x00000001, > - 0x79000002, > - 0xffffffff, > 0x00000000, > 0x00000000, > - 0x78080003, > - 0x00006000, > - 0x000005e0, /* reloc */ > 0x00000000, > 0x00000000, > - 0x78090005, > - 0x02000000, > - 0x22220000, > - 0x02f60000, > - 0x11230000, > - 0x02850004, > - 0x11230000, > - 0x784b0000, > - 0x0000000f, > - 0x78490001, > 0x00000000, > 0x00000000, > - 0x7b000005, > 0x00000000, > - 0x00000003, > 0x00000000, > - 0x00000001, > 0x00000000, > 0x00000000, > - 0x05000000, /* cmds end */ > 0x00000000, > 0x00000000, > 0x00000000, > @@ -297,8 +343,6 @@ static const u32 gen8_null_state_batch[] = { > 0x00000000, > 0x00000000, > 0x00000000, > - 0x000004c0, /* state start */ > - 0x00000500, > 0x00000000, > 0x00000000, > 0x00000000, > @@ -348,7 +392,6 @@ static const u32 gen8_null_state_batch[] = { > 0x00000000, > 0x00000000, > 0x00000000, > - 0x00000092, > 0x00000000, > 0x00000000, > 0x00000000, > @@ -361,30 +404,6 @@ static const u32 gen8_null_state_batch[] = { > 0x00000000, > 0x00000000, > 0x00000000, > - 0x0060005a, > - 0x21403ae8, > - 0x3a0000c0, > - 0x008d0040, > - 0x0060005a, > - 0x21603ae8, > - 0x3a0000c0, > - 0x008d0080, > - 0x0060005a, > - 0x21803ae8, > - 0x3a0000d0, > - 0x008d0040, > - 0x0060005a, > - 0x21a03ae8, > - 0x3a0000d0, > - 0x008d0080, > - 0x02800031, > - 0x2e0022e8, > - 0x0e000140, > - 0x08840001, > - 0x05800031, > - 0x200022e0, > - 0x0e000e00, > - 0x90031000, > 0x00000000, > 0x00000000, > 0x00000000, > @@ -410,38 +429,6 @@ static const u32 gen8_null_state_batch[] = { > 0x00000000, > 0x00000000, > 0x00000000, > - 0x06200000, > - 0x00000002, > - 0x06200000, > - 0x00000002, > - 0x06200000, > - 0x00000002, > - 0x06200000, > - 0x00000002, > - 0x06200000, > - 0x00000002, > - 0x06200000, > - 0x00000002, > - 0x06200000, > - 0x00000002, > - 0x06200000, > - 0x00000002, > - 0x06200000, > - 0x00000002, > - 0x06200000, > - 0x00000002, > - 0x06200000, > - 0x00000002, > - 0x06200000, > - 0x00000002, > - 0x06200000, > - 0x00000002, > - 0x06200000, > - 0x00000002, > - 0x06200000, > - 0x00000002, > - 0x06200000, > - 0x00000002, > 0x00000000, > 0x00000000, > 0x00000000, > @@ -449,8 +436,6 @@ static const u32 gen8_null_state_batch[] = { > 0x00000000, > 0x00000000, > 0x00000000, > - 0xf99a130c, > - 0x799a130c, > 0x00000000, > 0x00000000, > 0x00000000, > @@ -466,9 +451,525 @@ static const u32 gen8_null_state_batch[] = { > 0x00000000, > 0x00000000, > 0x00000000, > - 0x3f800000, > 0x00000000, > - 0x3f800000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x79180006, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x79180006, > + 0x20000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x79180006, > + 0x40000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x79180006, > + 0x60000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x6101000e, > + 0x00000001, /* reloc */ > + 0x00000000, > + 0x00000000, > + 0x00000001, /* reloc */ > + 0x00000000, > + 0x00000001, /* reloc */ > + 0x00000000, > + 0x00000001, > + 0x00000000, > + 0x00000001, /* reloc */ > + 0x00000000, > + 0x00001001, > + 0x00001001, > + 0x00000001, > + 0x00001001, > + 0x61020001, > + 0x00000000, > + 0x00000000, > + 0x79000002, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x78050006, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x79040002, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x79040002, > + 0x40000000, > + 0x00000000, > + 0x00000000, > + 0x79040002, > + 0x80000000, > + 0x00000000, > + 0x00000000, > + 0x79040002, > + 0xc0000000, > + 0x00000000, > + 0x00000000, > + 0x79080001, > + 0x00000000, > + 0x00000000, > + 0x790a0001, > + 0x00000000, > + 0x00000000, > + 0x78060003, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x78070003, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x78040001, > + 0x00000000, > + 0x00000000, > + 0x79110000, > + 0x00000000, > + 0x780d0000, > + 0x00000000, > + 0x79060000, > + 0x00000000, > + 0x7907001f, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x7902000f, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x790c000f, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x780a0003, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x78080083, > + 0x00004000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x04004000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x08004000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x0c004000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x10004000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x14004000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x18004000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x1c004000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x20004000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x24004000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x28004000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x2c004000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x30004000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x34004000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x38004000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x3c004000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x40004000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x44004000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x48004000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x4c004000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x50004000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x54004000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x58004000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x5c004000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x60004000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x64004000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x68004000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x6c004000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x70004000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x74004000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x78004000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x7c004000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x80004000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x78090043, > + 0x02000000, > + 0x22220000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x680b0001, > + 0x78260000, > + 0x00000000, > + 0x78270000, > + 0x00000000, > + 0x78280000, > + 0x00000000, > + 0x78290000, > + 0x00000000, > + 0x782a0000, > + 0x00000000, > + 0x780e0000, > + 0x00000dc1, > + 0x78240000, > + 0x00000e01, > + 0x784f0000, > + 0x80000100, > + 0x784d0000, > + 0x40000000, > + 0x782b0000, > + 0x00000000, > + 0x782c0000, > + 0x00000000, > + 0x782d0000, > + 0x00000000, > + 0x782e0000, > + 0x00000000, > + 0x782f0000, > + 0x00000000, > + 0x780f0000, > + 0x00000000, > + 0x78230000, > + 0x00000e60, > + 0x78210000, > + 0x00000e80, > + 0x7b000005, > + 0x00000004, > + 0x00000001, > + 0x00000000, > + 0x00000001, > + 0x00000000, > + 0x00000000, > + 0x05000000, /* cmds end */ > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, /* state start */ > + 0x00000000, > + 0x3f800000, > + 0x3f800000, > + 0x3f800000, > + 0x3f800000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > 0x00000000, > 0x00000000, > 0x00000000, > diff --git a/drivers/gpu/drm/i915/intel_renderstate_gen9.c b/drivers/gpu/drm/i915/intel_renderstate_gen9.c > new file mode 100644 > index 0000000..e1ea838 > --- /dev/null > +++ b/drivers/gpu/drm/i915/intel_renderstate_gen9.c > @@ -0,0 +1,981 @@ > +/* > + * Copyright © 2014 Intel Corporation > + * > + * 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 AUTHORS OR COPYRIGHT HOLDERS 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. > + */ > + > +#include "intel_renderstate.h" > + > +static const u32 gen9_null_state_relocs[] = { > + 0x00000794, > + 0x000007a0, > + 0x000007a8, > + 0x000007b8, > + -1, > +}; > + > +static const u32 gen9_null_state_batch[] = { > + 0x7a000004, > + 0x01000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x69040300, > + 0x78140000, > + 0x04000000, > + 0x7820000a, > + 0x00000000, > + 0x00000000, > + 0x80000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x78130002, > + 0x00000000, > + 0x00000000, > + 0x02001808, > + 0x781f0004, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x78510009, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x78100007, > + 0x00000000, > + 0x00000000, > + 0x00010000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x781b0007, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000800, > + 0x00000000, > + 0x78110008, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x781e0003, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x781d0009, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x78120002, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x781c0002, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x780c0000, > + 0x00000000, > + 0x78520003, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x78300000, > + 0x08010040, > + 0x78310000, > + 0x1e000000, > + 0x78320000, > + 0x1e000000, > + 0x78330000, > + 0x1e000000, > + 0x79190002, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x791a0002, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x791b0002, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x79120000, > + 0x00000000, > + 0x79130000, > + 0x00000000, > + 0x79140000, > + 0x00000000, > + 0x79150000, > + 0x00000000, > + 0x79160000, > + 0x00000000, > + 0x78150009, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x78190009, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x781a0009, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x78160009, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x78170009, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x78490001, > + 0x00000000, > + 0x00000000, > + 0x784a0000, > + 0x00000000, > + 0x784b0000, > + 0x00000004, > + 0x79170101, > + 0x00000000, > + 0x00000080, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x79180006, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x79180006, > + 0x20000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x79180006, > + 0x40000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x79180006, > + 0x60000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x61010011, > + 0x00000001, /* reloc */ > + 0x00000000, > + 0x00000000, > + 0x00000001, /* reloc */ > + 0x00000000, > + 0x00000001, /* reloc */ > + 0x00000000, > + 0x00000001, > + 0x00000000, > + 0x00000001, /* reloc */ > + 0x00000000, > + 0x00001001, > + 0x00001001, > + 0x00000001, > + 0x00001001, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x61020001, > + 0x00000000, > + 0x00000000, > + 0x79000002, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x78050006, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x79040002, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x79040002, > + 0x40000000, > + 0x00000000, > + 0x00000000, > + 0x79040002, > + 0x80000000, > + 0x00000000, > + 0x00000000, > + 0x79040002, > + 0xc0000000, > + 0x00000000, > + 0x00000000, > + 0x79080001, > + 0x00000000, > + 0x00000000, > + 0x790a0001, > + 0x00000000, > + 0x00000000, > + 0x78060003, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x78070003, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x78040001, > + 0x00000000, > + 0x00000000, > + 0x79110000, > + 0x00000000, > + 0x780d0000, > + 0x00000000, > + 0x79060000, > + 0x00000000, > + 0x7907001f, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x7902000f, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x790c000f, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x780a0003, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x78080083, > + 0x00004000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x04004000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x08004000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x0c004000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x10004000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x14004000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x18004000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x1c004000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x20004000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x24004000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x28004000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x2c004000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x30004000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x34004000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x38004000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x3c004000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x40004000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x44004000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x48004000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x4c004000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x50004000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x54004000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x58004000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x5c004000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x60004000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x64004000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x68004000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x6c004000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x70004000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x74004000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x78004000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x7c004000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x80004000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x78090043, > + 0x02000000, > + 0x22220000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x680b0001, > + 0x780e0000, > + 0x00000dc1, > + 0x78240000, > + 0x00000e01, > + 0x784f0000, > + 0x80000100, > + 0x784d0000, > + 0x40000000, > + 0x782b0000, > + 0x00000000, > + 0x782c0000, > + 0x00000000, > + 0x782d0000, > + 0x00000000, > + 0x782e0000, > + 0x00000000, > + 0x782f0000, > + 0x00000000, > + 0x780f0000, > + 0x00000000, > + 0x78230000, > + 0x00000e60, > + 0x78210000, > + 0x00000e80, > + 0x78260000, > + 0x00000000, > + 0x78270000, > + 0x00000000, > + 0x78280000, > + 0x00000000, > + 0x78290000, > + 0x00000000, > + 0x782a0000, > + 0x00000000, > + 0x7b000005, > + 0x00000004, > + 0x00000001, > + 0x00000000, > + 0x00000001, > + 0x00000000, > + 0x00000000, > + 0x05000000, /* cmds end */ > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, /* state start */ > + 0x00000000, > + 0x3f800000, > + 0x3f800000, > + 0x3f800000, > + 0x3f800000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, /* state end */ > +}; > + > +RO_RENDERSTATE(9); > -- > 1.9.1 > > _______________________________________________ > Intel-gfx mailing list > Intel-gfx@lists.freedesktop.org > http://lists.freedesktop.org/mailman/listinfo/intel-gfx >
Hi Brad, Thanks for the comments. I'll have to find Damien's SKL patches. I know he's been on vacation and I haven't looked for them. Mika Kuoppala is submitting the IGT patches for null_state_gen. They are related to mine, in a sense, since they generate the intel_renderstate_genx.c files. But I don't think the IGT and kernel patches have to be submitted together. Yeah, HEX dumps are pretty cruel. I had to look at them in the windows driver, but I used our internal tools to disassemble them. As far as the license header goes, I did add them in manually because the null_state_gen program simply generates the code. Is there a location in the git repository for the standard license header? Thanks, Armin -----Original Message----- From: Volkin, Bradley D Sent: Friday, September 12, 2014 5:07 PM To: Reese, Armin C Cc: intel-gfx@lists.freedesktop.org Subject: Re: [Intel-gfx] [PATCH 1/3] drm/i915 Add golden context support for Gen9 On Fri, Sep 12, 2014 at 11:25:14AM -0700, armin.c.reese@intel.com wrote: > From: Armin Reese <armin.c.reese@intel.com> > > This patch includes the Gen9 batch buffer to generate a 'golden > context' for that product family. > > Also: > 1) IS_GEN9 macro has been added to drivers/gpu/drm/i915/i915_drv.h > 2) drivers/gpu/drm/i915/intel_renderstate_gen8.c has been updated > to the version created by IGT null_state_gen Hi Armin, We'll have to split these extra changes out into separate patches. Damien's SKL series has the IS_GEN9 macro, which will cause a conflict. For the gen8 change, better to have a separate patch since it's not strictly related. I think that the preferred way to handle this situation, at least with respect to the IS_GEN9 part, is to have a cover letter in which you document the patches on which your series depends but don't include them in your series. You'll obviously need to apply those changes locally, just as a separate patch that you don't send with the series. Will you be sending the null_state_gen patch that adds the code to generate this? I'm not too good at reviewing hex dumps ;) One other comment below... > > Signed-off-by: Armin Reese <armin.c.reese@intel.com> > --- > drivers/gpu/drm/i915/Makefile | 3 +- > drivers/gpu/drm/i915/i915_drv.h | 1 + > drivers/gpu/drm/i915/i915_gem_render_state.c | 2 + > drivers/gpu/drm/i915/intel_renderstate.h | 1 + > drivers/gpu/drm/i915/intel_renderstate_gen6.c | 23 + > drivers/gpu/drm/i915/intel_renderstate_gen7.c | 23 + > drivers/gpu/drm/i915/intel_renderstate_gen8.c | 831 > +++++++++++++++++----- drivers/gpu/drm/i915/intel_renderstate_gen9.c > | 981 ++++++++++++++++++++++++++ > 8 files changed, 1699 insertions(+), 166 deletions(-) create mode > 100644 drivers/gpu/drm/i915/intel_renderstate_gen9.c > > diff --git a/drivers/gpu/drm/i915/Makefile > b/drivers/gpu/drm/i915/Makefile index c1dd485..2caf4f4 100644 > --- a/drivers/gpu/drm/i915/Makefile > +++ b/drivers/gpu/drm/i915/Makefile > @@ -38,7 +38,8 @@ i915-y += i915_cmd_parser.o \ # autogenerated null > render state i915-y += intel_renderstate_gen6.o \ > intel_renderstate_gen7.o \ > - intel_renderstate_gen8.o > + intel_renderstate_gen8.o \ > + intel_renderstate_gen9.o > > # modesetting core code > i915-y += intel_bios.o \ > diff --git a/drivers/gpu/drm/i915/i915_drv.h > b/drivers/gpu/drm/i915/i915_drv.h index 17dfce0..7d9f091 100644 > --- a/drivers/gpu/drm/i915/i915_drv.h > +++ b/drivers/gpu/drm/i915/i915_drv.h > @@ -2122,6 +2122,7 @@ struct drm_i915_cmd_table { > #define IS_GEN6(dev) (INTEL_INFO(dev)->gen == 6) > #define IS_GEN7(dev) (INTEL_INFO(dev)->gen == 7) > #define IS_GEN8(dev) (INTEL_INFO(dev)->gen == 8) > +#define IS_GEN9(dev) (INTEL_INFO(dev)->gen == 9) > > #define RENDER_RING (1<<RCS) > #define BSD_RING (1<<VCS) > diff --git a/drivers/gpu/drm/i915/i915_gem_render_state.c > b/drivers/gpu/drm/i915/i915_gem_render_state.c > index a9a62d7..98dcd94 100644 > --- a/drivers/gpu/drm/i915/i915_gem_render_state.c > +++ b/drivers/gpu/drm/i915/i915_gem_render_state.c > @@ -38,6 +38,8 @@ render_state_get_rodata(struct drm_device *dev, const int gen) > return &gen7_null_state; > case 8: > return &gen8_null_state; > + case 9: > + return &gen9_null_state; > } > > return NULL; > diff --git a/drivers/gpu/drm/i915/intel_renderstate.h > b/drivers/gpu/drm/i915/intel_renderstate.h > index 6c792d3..5bd6985 100644 > --- a/drivers/gpu/drm/i915/intel_renderstate.h > +++ b/drivers/gpu/drm/i915/intel_renderstate.h > @@ -29,6 +29,7 @@ > extern const struct intel_renderstate_rodata gen6_null_state; extern > const struct intel_renderstate_rodata gen7_null_state; extern const > struct intel_renderstate_rodata gen8_null_state; > +extern const struct intel_renderstate_rodata gen9_null_state; > > #define RO_RENDERSTATE(_g) \ > const struct intel_renderstate_rodata gen ## _g ## _null_state = { \ > diff --git a/drivers/gpu/drm/i915/intel_renderstate_gen6.c > b/drivers/gpu/drm/i915/intel_renderstate_gen6.c > index 56c1429..c2568a7 100644 > --- a/drivers/gpu/drm/i915/intel_renderstate_gen6.c > +++ b/drivers/gpu/drm/i915/intel_renderstate_gen6.c > @@ -1,3 +1,26 @@ > +/* > + * Copyright (c) 2014 Intel Corporation > + * > + * 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 AUTHORS OR COPYRIGHT HOLDERS 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. > + */ > + I guess a separate patch for the non-gen9 license changes as well. And if we don't already have patches for it, we probably want to update i-g-t to generate the correct license header so we don't have to manually add it if we ever update the golden state. Brad > #include "intel_renderstate.h" > > static const u32 gen6_null_state_relocs[] = { diff --git > a/drivers/gpu/drm/i915/intel_renderstate_gen7.c > b/drivers/gpu/drm/i915/intel_renderstate_gen7.c > index 419e35a..e14aec5 100644 > --- a/drivers/gpu/drm/i915/intel_renderstate_gen7.c > +++ b/drivers/gpu/drm/i915/intel_renderstate_gen7.c > @@ -1,3 +1,26 @@ > +/* > + * Copyright (c) 2014 Intel Corporation > + * > + * 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 AUTHORS OR COPYRIGHT HOLDERS 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. > + */ > + > #include "intel_renderstate.h" > > static const u32 gen7_null_state_relocs[] = { diff --git > a/drivers/gpu/drm/i915/intel_renderstate_gen8.c > b/drivers/gpu/drm/i915/intel_renderstate_gen8.c > index 75ef1b5d..88991e2 100644 > --- a/drivers/gpu/drm/i915/intel_renderstate_gen8.c > +++ b/drivers/gpu/drm/i915/intel_renderstate_gen8.c > @@ -1,81 +1,166 @@ > +/* > + * Copyright (c) 2014 Intel Corporation > + * > + * 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 AUTHORS OR COPYRIGHT HOLDERS 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. > + */ > + > #include "intel_renderstate.h" > > static const u32 gen8_null_state_relocs[] = { > - 0x00000048, > - 0x00000050, > - 0x00000060, > - 0x000003ec, > + 0x00000784, > + 0x00000790, > + 0x00000798, > + 0x000007a8, > -1, > }; > > static const u32 gen8_null_state_batch[] = { > + 0x7a000004, > + 0x01000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > 0x69040000, > - 0x61020001, > + 0x78140000, > + 0x04000000, > + 0x7820000a, > 0x00000000, > 0x00000000, > - 0x79120000, > + 0x80000000, > 0x00000000, > - 0x79130000, > 0x00000000, > - 0x79140000, > 0x00000000, > - 0x79150000, > 0x00000000, > - 0x79160000, > 0x00000000, > - 0x6101000e, > - 0x00000001, > 0x00000000, > - 0x00000001, > - 0x00000001, /* reloc */ > 0x00000000, > - 0x00000001, /* reloc */ > + 0x00000000, > + 0x78130002, > + 0x00000000, > + 0x00000000, > + 0x02001808, > + 0x781f0002, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x78510009, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x78100007, > + 0x00000000, > + 0x00000000, > + 0x00010000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x781b0007, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000800, > + 0x00000000, > + 0x78110008, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x781e0003, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x781d0007, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x78120002, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x781c0002, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x780c0000, > + 0x00000000, > + 0x78520003, > 0x00000000, > 0x00000000, > 0x00000000, > - 0x00000001, /* reloc */ > 0x00000000, > - 0xfffff001, > - 0x00001001, > - 0xfffff001, > - 0x00001001, > - 0x78230000, > - 0x000006e0, > - 0x78210000, > - 0x00000700, > 0x78300000, > 0x08010040, > - 0x78330000, > - 0x08000000, > 0x78310000, > - 0x08000000, > + 0x1e000000, > 0x78320000, > - 0x08000000, > - 0x78240000, > - 0x00000641, > - 0x780e0000, > - 0x00000601, > - 0x780d0000, > + 0x1e000000, > + 0x78330000, > + 0x1e000000, > + 0x79190002, > 0x00000000, > - 0x78180000, > - 0x00000001, > - 0x78520003, > 0x00000000, > 0x00000000, > + 0x791a0002, > 0x00000000, > 0x00000000, > - 0x78190009, > 0x00000000, > + 0x791b0002, > 0x00000000, > 0x00000000, > 0x00000000, > + 0x79120000, > 0x00000000, > + 0x79130000, > 0x00000000, > + 0x79140000, > 0x00000000, > + 0x79150000, > 0x00000000, > + 0x79160000, > 0x00000000, > + 0x78150009, > 0x00000000, > - 0x781b0007, > 0x00000000, > 0x00000000, > 0x00000000, > @@ -84,11 +169,26 @@ static const u32 gen8_null_state_batch[] = { > 0x00000000, > 0x00000000, > 0x00000000, > - 0x78270000, > 0x00000000, > - 0x782c0000, > + 0x78190009, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x781a0009, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > 0x00000000, > - 0x781c0002, > 0x00000000, > 0x00000000, > 0x00000000, > @@ -103,7 +203,7 @@ static const u32 gen8_null_state_batch[] = { > 0x00000000, > 0x00000000, > 0x00000000, > - 0x78110008, > + 0x78170009, > 0x00000000, > 0x00000000, > 0x00000000, > @@ -113,14 +213,17 @@ static const u32 gen8_null_state_batch[] = { > 0x00000000, > 0x00000000, > 0x00000000, > - 0x78290000, > 0x00000000, > - 0x782e0000, > + 0x78490001, > 0x00000000, > - 0x781a0009, > 0x00000000, > + 0x784a0000, > 0x00000000, > + 0x784b0000, > + 0x00000004, > + 0x79170101, > 0x00000000, > + 0x00000080, > 0x00000000, > 0x00000000, > 0x00000000, > @@ -128,7 +231,6 @@ static const u32 gen8_null_state_batch[] = { > 0x00000000, > 0x00000000, > 0x00000000, > - 0x781d0007, > 0x00000000, > 0x00000000, > 0x00000000, > @@ -137,15 +239,10 @@ static const u32 gen8_null_state_batch[] = { > 0x00000000, > 0x00000000, > 0x00000000, > - 0x78280000, > 0x00000000, > - 0x782d0000, > 0x00000000, > - 0x78260000, > 0x00000000, > - 0x782b0000, > 0x00000000, > - 0x78150009, > 0x00000000, > 0x00000000, > 0x00000000, > @@ -156,7 +253,6 @@ static const u32 gen8_null_state_batch[] = { > 0x00000000, > 0x00000000, > 0x00000000, > - 0x78100007, > 0x00000000, > 0x00000000, > 0x00000000, > @@ -165,20 +261,15 @@ static const u32 gen8_null_state_batch[] = { > 0x00000000, > 0x00000000, > 0x00000000, > - 0x781e0003, > 0x00000000, > 0x00000000, > 0x00000000, > 0x00000000, > - 0x78120002, > 0x00000000, > 0x00000000, > 0x00000000, > - 0x781f0002, > - 0x30400820, > 0x00000000, > 0x00000000, > - 0x78510009, > 0x00000000, > 0x00000000, > 0x00000000, > @@ -189,22 +280,12 @@ static const u32 gen8_null_state_batch[] = { > 0x00000000, > 0x00000000, > 0x00000000, > - 0x78500003, > - 0x00210000, > 0x00000000, > 0x00000000, > 0x00000000, > - 0x78130002, > 0x00000000, > 0x00000000, > 0x00000000, > - 0x782a0000, > - 0x00000480, > - 0x782f0000, > - 0x00000540, > - 0x78140000, > - 0x00000800, > - 0x78170009, > 0x00000000, > 0x00000000, > 0x00000000, > @@ -215,25 +296,13 @@ static const u32 gen8_null_state_batch[] = { > 0x00000000, > 0x00000000, > 0x00000000, > - 0x7820000a, > - 0x00000580, > 0x00000000, > - 0x08080000, > 0x00000000, > 0x00000000, > - 0x1f000002, > - 0x00060000, > 0x00000000, > 0x00000000, > 0x00000000, > 0x00000000, > - 0x784d0000, > - 0x40000000, > - 0x784f0000, > - 0x80000100, > - 0x780f0000, > - 0x00000740, > - 0x78050006, > 0x00000000, > 0x00000000, > 0x00000000, > @@ -241,48 +310,25 @@ static const u32 gen8_null_state_batch[] = { > 0x00000000, > 0x00000000, > 0x00000000, > - 0x78070003, > 0x00000000, > 0x00000000, > 0x00000000, > 0x00000000, > - 0x78060003, > 0x00000000, > 0x00000000, > 0x00000000, > 0x00000000, > - 0x78040001, > 0x00000000, > - 0x00000001, > - 0x79000002, > - 0xffffffff, > 0x00000000, > 0x00000000, > - 0x78080003, > - 0x00006000, > - 0x000005e0, /* reloc */ > 0x00000000, > 0x00000000, > - 0x78090005, > - 0x02000000, > - 0x22220000, > - 0x02f60000, > - 0x11230000, > - 0x02850004, > - 0x11230000, > - 0x784b0000, > - 0x0000000f, > - 0x78490001, > 0x00000000, > 0x00000000, > - 0x7b000005, > 0x00000000, > - 0x00000003, > 0x00000000, > - 0x00000001, > 0x00000000, > 0x00000000, > - 0x05000000, /* cmds end */ > 0x00000000, > 0x00000000, > 0x00000000, > @@ -297,8 +343,6 @@ static const u32 gen8_null_state_batch[] = { > 0x00000000, > 0x00000000, > 0x00000000, > - 0x000004c0, /* state start */ > - 0x00000500, > 0x00000000, > 0x00000000, > 0x00000000, > @@ -348,7 +392,6 @@ static const u32 gen8_null_state_batch[] = { > 0x00000000, > 0x00000000, > 0x00000000, > - 0x00000092, > 0x00000000, > 0x00000000, > 0x00000000, > @@ -361,30 +404,6 @@ static const u32 gen8_null_state_batch[] = { > 0x00000000, > 0x00000000, > 0x00000000, > - 0x0060005a, > - 0x21403ae8, > - 0x3a0000c0, > - 0x008d0040, > - 0x0060005a, > - 0x21603ae8, > - 0x3a0000c0, > - 0x008d0080, > - 0x0060005a, > - 0x21803ae8, > - 0x3a0000d0, > - 0x008d0040, > - 0x0060005a, > - 0x21a03ae8, > - 0x3a0000d0, > - 0x008d0080, > - 0x02800031, > - 0x2e0022e8, > - 0x0e000140, > - 0x08840001, > - 0x05800031, > - 0x200022e0, > - 0x0e000e00, > - 0x90031000, > 0x00000000, > 0x00000000, > 0x00000000, > @@ -410,38 +429,6 @@ static const u32 gen8_null_state_batch[] = { > 0x00000000, > 0x00000000, > 0x00000000, > - 0x06200000, > - 0x00000002, > - 0x06200000, > - 0x00000002, > - 0x06200000, > - 0x00000002, > - 0x06200000, > - 0x00000002, > - 0x06200000, > - 0x00000002, > - 0x06200000, > - 0x00000002, > - 0x06200000, > - 0x00000002, > - 0x06200000, > - 0x00000002, > - 0x06200000, > - 0x00000002, > - 0x06200000, > - 0x00000002, > - 0x06200000, > - 0x00000002, > - 0x06200000, > - 0x00000002, > - 0x06200000, > - 0x00000002, > - 0x06200000, > - 0x00000002, > - 0x06200000, > - 0x00000002, > - 0x06200000, > - 0x00000002, > 0x00000000, > 0x00000000, > 0x00000000, > @@ -449,8 +436,6 @@ static const u32 gen8_null_state_batch[] = { > 0x00000000, > 0x00000000, > 0x00000000, > - 0xf99a130c, > - 0x799a130c, > 0x00000000, > 0x00000000, > 0x00000000, > @@ -466,9 +451,525 @@ static const u32 gen8_null_state_batch[] = { > 0x00000000, > 0x00000000, > 0x00000000, > - 0x3f800000, > 0x00000000, > - 0x3f800000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x79180006, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x79180006, > + 0x20000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x79180006, > + 0x40000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x79180006, > + 0x60000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x6101000e, > + 0x00000001, /* reloc */ > + 0x00000000, > + 0x00000000, > + 0x00000001, /* reloc */ > + 0x00000000, > + 0x00000001, /* reloc */ > + 0x00000000, > + 0x00000001, > + 0x00000000, > + 0x00000001, /* reloc */ > + 0x00000000, > + 0x00001001, > + 0x00001001, > + 0x00000001, > + 0x00001001, > + 0x61020001, > + 0x00000000, > + 0x00000000, > + 0x79000002, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x78050006, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x79040002, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x79040002, > + 0x40000000, > + 0x00000000, > + 0x00000000, > + 0x79040002, > + 0x80000000, > + 0x00000000, > + 0x00000000, > + 0x79040002, > + 0xc0000000, > + 0x00000000, > + 0x00000000, > + 0x79080001, > + 0x00000000, > + 0x00000000, > + 0x790a0001, > + 0x00000000, > + 0x00000000, > + 0x78060003, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x78070003, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x78040001, > + 0x00000000, > + 0x00000000, > + 0x79110000, > + 0x00000000, > + 0x780d0000, > + 0x00000000, > + 0x79060000, > + 0x00000000, > + 0x7907001f, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x7902000f, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x790c000f, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x780a0003, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x78080083, > + 0x00004000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x04004000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x08004000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x0c004000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x10004000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x14004000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x18004000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x1c004000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x20004000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x24004000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x28004000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x2c004000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x30004000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x34004000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x38004000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x3c004000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x40004000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x44004000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x48004000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x4c004000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x50004000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x54004000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x58004000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x5c004000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x60004000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x64004000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x68004000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x6c004000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x70004000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x74004000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x78004000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x7c004000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x80004000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x78090043, > + 0x02000000, > + 0x22220000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x680b0001, > + 0x78260000, > + 0x00000000, > + 0x78270000, > + 0x00000000, > + 0x78280000, > + 0x00000000, > + 0x78290000, > + 0x00000000, > + 0x782a0000, > + 0x00000000, > + 0x780e0000, > + 0x00000dc1, > + 0x78240000, > + 0x00000e01, > + 0x784f0000, > + 0x80000100, > + 0x784d0000, > + 0x40000000, > + 0x782b0000, > + 0x00000000, > + 0x782c0000, > + 0x00000000, > + 0x782d0000, > + 0x00000000, > + 0x782e0000, > + 0x00000000, > + 0x782f0000, > + 0x00000000, > + 0x780f0000, > + 0x00000000, > + 0x78230000, > + 0x00000e60, > + 0x78210000, > + 0x00000e80, > + 0x7b000005, > + 0x00000004, > + 0x00000001, > + 0x00000000, > + 0x00000001, > + 0x00000000, > + 0x00000000, > + 0x05000000, /* cmds end */ > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, /* state start */ > + 0x00000000, > + 0x3f800000, > + 0x3f800000, > + 0x3f800000, > + 0x3f800000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > 0x00000000, > 0x00000000, > 0x00000000, > diff --git a/drivers/gpu/drm/i915/intel_renderstate_gen9.c > b/drivers/gpu/drm/i915/intel_renderstate_gen9.c > new file mode 100644 > index 0000000..e1ea838 > --- /dev/null > +++ b/drivers/gpu/drm/i915/intel_renderstate_gen9.c > @@ -0,0 +1,981 @@ > +/* > + * Copyright (c) 2014 Intel Corporation > + * > + * 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 AUTHORS OR COPYRIGHT HOLDERS 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. > + */ > + > +#include "intel_renderstate.h" > + > +static const u32 gen9_null_state_relocs[] = { > + 0x00000794, > + 0x000007a0, > + 0x000007a8, > + 0x000007b8, > + -1, > +}; > + > +static const u32 gen9_null_state_batch[] = { > + 0x7a000004, > + 0x01000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x69040300, > + 0x78140000, > + 0x04000000, > + 0x7820000a, > + 0x00000000, > + 0x00000000, > + 0x80000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x78130002, > + 0x00000000, > + 0x00000000, > + 0x02001808, > + 0x781f0004, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x78510009, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x78100007, > + 0x00000000, > + 0x00000000, > + 0x00010000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x781b0007, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000800, > + 0x00000000, > + 0x78110008, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x781e0003, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x781d0009, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x78120002, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x781c0002, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x780c0000, > + 0x00000000, > + 0x78520003, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x78300000, > + 0x08010040, > + 0x78310000, > + 0x1e000000, > + 0x78320000, > + 0x1e000000, > + 0x78330000, > + 0x1e000000, > + 0x79190002, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x791a0002, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x791b0002, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x79120000, > + 0x00000000, > + 0x79130000, > + 0x00000000, > + 0x79140000, > + 0x00000000, > + 0x79150000, > + 0x00000000, > + 0x79160000, > + 0x00000000, > + 0x78150009, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x78190009, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x781a0009, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x78160009, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x78170009, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x78490001, > + 0x00000000, > + 0x00000000, > + 0x784a0000, > + 0x00000000, > + 0x784b0000, > + 0x00000004, > + 0x79170101, > + 0x00000000, > + 0x00000080, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x79180006, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x79180006, > + 0x20000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x79180006, > + 0x40000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x79180006, > + 0x60000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x61010011, > + 0x00000001, /* reloc */ > + 0x00000000, > + 0x00000000, > + 0x00000001, /* reloc */ > + 0x00000000, > + 0x00000001, /* reloc */ > + 0x00000000, > + 0x00000001, > + 0x00000000, > + 0x00000001, /* reloc */ > + 0x00000000, > + 0x00001001, > + 0x00001001, > + 0x00000001, > + 0x00001001, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x61020001, > + 0x00000000, > + 0x00000000, > + 0x79000002, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x78050006, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x79040002, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x79040002, > + 0x40000000, > + 0x00000000, > + 0x00000000, > + 0x79040002, > + 0x80000000, > + 0x00000000, > + 0x00000000, > + 0x79040002, > + 0xc0000000, > + 0x00000000, > + 0x00000000, > + 0x79080001, > + 0x00000000, > + 0x00000000, > + 0x790a0001, > + 0x00000000, > + 0x00000000, > + 0x78060003, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x78070003, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x78040001, > + 0x00000000, > + 0x00000000, > + 0x79110000, > + 0x00000000, > + 0x780d0000, > + 0x00000000, > + 0x79060000, > + 0x00000000, > + 0x7907001f, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x7902000f, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x790c000f, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x780a0003, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x78080083, > + 0x00004000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x04004000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x08004000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x0c004000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x10004000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x14004000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x18004000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x1c004000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x20004000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x24004000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x28004000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x2c004000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x30004000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x34004000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x38004000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x3c004000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x40004000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x44004000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x48004000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x4c004000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x50004000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x54004000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x58004000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x5c004000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x60004000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x64004000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x68004000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x6c004000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x70004000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x74004000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x78004000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x7c004000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x80004000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x78090043, > + 0x02000000, > + 0x22220000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x680b0001, > + 0x780e0000, > + 0x00000dc1, > + 0x78240000, > + 0x00000e01, > + 0x784f0000, > + 0x80000100, > + 0x784d0000, > + 0x40000000, > + 0x782b0000, > + 0x00000000, > + 0x782c0000, > + 0x00000000, > + 0x782d0000, > + 0x00000000, > + 0x782e0000, > + 0x00000000, > + 0x782f0000, > + 0x00000000, > + 0x780f0000, > + 0x00000000, > + 0x78230000, > + 0x00000e60, > + 0x78210000, > + 0x00000e80, > + 0x78260000, > + 0x00000000, > + 0x78270000, > + 0x00000000, > + 0x78280000, > + 0x00000000, > + 0x78290000, > + 0x00000000, > + 0x782a0000, > + 0x00000000, > + 0x7b000005, > + 0x00000004, > + 0x00000001, > + 0x00000000, > + 0x00000001, > + 0x00000000, > + 0x00000000, > + 0x05000000, /* cmds end */ > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, /* state start */ > + 0x00000000, > + 0x3f800000, > + 0x3f800000, > + 0x3f800000, > + 0x3f800000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, > + 0x00000000, /* state end */ > +}; > + > +RO_RENDERSTATE(9); > -- > 1.9.1 > > _______________________________________________ > Intel-gfx mailing list > Intel-gfx@lists.freedesktop.org > http://lists.freedesktop.org/mailman/listinfo/intel-gfx >
diff --git a/drivers/gpu/drm/i915/Makefile b/drivers/gpu/drm/i915/Makefile index c1dd485..2caf4f4 100644 --- a/drivers/gpu/drm/i915/Makefile +++ b/drivers/gpu/drm/i915/Makefile @@ -38,7 +38,8 @@ i915-y += i915_cmd_parser.o \ # autogenerated null render state i915-y += intel_renderstate_gen6.o \ intel_renderstate_gen7.o \ - intel_renderstate_gen8.o + intel_renderstate_gen8.o \ + intel_renderstate_gen9.o # modesetting core code i915-y += intel_bios.o \ diff --git a/drivers/gpu/drm/i915/i915_drv.h b/drivers/gpu/drm/i915/i915_drv.h index 17dfce0..7d9f091 100644 --- a/drivers/gpu/drm/i915/i915_drv.h +++ b/drivers/gpu/drm/i915/i915_drv.h @@ -2122,6 +2122,7 @@ struct drm_i915_cmd_table { #define IS_GEN6(dev) (INTEL_INFO(dev)->gen == 6) #define IS_GEN7(dev) (INTEL_INFO(dev)->gen == 7) #define IS_GEN8(dev) (INTEL_INFO(dev)->gen == 8) +#define IS_GEN9(dev) (INTEL_INFO(dev)->gen == 9) #define RENDER_RING (1<<RCS) #define BSD_RING (1<<VCS) diff --git a/drivers/gpu/drm/i915/i915_gem_render_state.c b/drivers/gpu/drm/i915/i915_gem_render_state.c index a9a62d7..98dcd94 100644 --- a/drivers/gpu/drm/i915/i915_gem_render_state.c +++ b/drivers/gpu/drm/i915/i915_gem_render_state.c @@ -38,6 +38,8 @@ render_state_get_rodata(struct drm_device *dev, const int gen) return &gen7_null_state; case 8: return &gen8_null_state; + case 9: + return &gen9_null_state; } return NULL; diff --git a/drivers/gpu/drm/i915/intel_renderstate.h b/drivers/gpu/drm/i915/intel_renderstate.h index 6c792d3..5bd6985 100644 --- a/drivers/gpu/drm/i915/intel_renderstate.h +++ b/drivers/gpu/drm/i915/intel_renderstate.h @@ -29,6 +29,7 @@ extern const struct intel_renderstate_rodata gen6_null_state; extern const struct intel_renderstate_rodata gen7_null_state; extern const struct intel_renderstate_rodata gen8_null_state; +extern const struct intel_renderstate_rodata gen9_null_state; #define RO_RENDERSTATE(_g) \ const struct intel_renderstate_rodata gen ## _g ## _null_state = { \ diff --git a/drivers/gpu/drm/i915/intel_renderstate_gen6.c b/drivers/gpu/drm/i915/intel_renderstate_gen6.c index 56c1429..c2568a7 100644 --- a/drivers/gpu/drm/i915/intel_renderstate_gen6.c +++ b/drivers/gpu/drm/i915/intel_renderstate_gen6.c @@ -1,3 +1,26 @@ +/* + * Copyright © 2014 Intel Corporation + * + * 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 AUTHORS OR COPYRIGHT HOLDERS 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. + */ + #include "intel_renderstate.h" static const u32 gen6_null_state_relocs[] = { diff --git a/drivers/gpu/drm/i915/intel_renderstate_gen7.c b/drivers/gpu/drm/i915/intel_renderstate_gen7.c index 419e35a..e14aec5 100644 --- a/drivers/gpu/drm/i915/intel_renderstate_gen7.c +++ b/drivers/gpu/drm/i915/intel_renderstate_gen7.c @@ -1,3 +1,26 @@ +/* + * Copyright © 2014 Intel Corporation + * + * 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 AUTHORS OR COPYRIGHT HOLDERS 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. + */ + #include "intel_renderstate.h" static const u32 gen7_null_state_relocs[] = { diff --git a/drivers/gpu/drm/i915/intel_renderstate_gen8.c b/drivers/gpu/drm/i915/intel_renderstate_gen8.c index 75ef1b5d..88991e2 100644 --- a/drivers/gpu/drm/i915/intel_renderstate_gen8.c +++ b/drivers/gpu/drm/i915/intel_renderstate_gen8.c @@ -1,81 +1,166 @@ +/* + * Copyright © 2014 Intel Corporation + * + * 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 AUTHORS OR COPYRIGHT HOLDERS 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. + */ + #include "intel_renderstate.h" static const u32 gen8_null_state_relocs[] = { - 0x00000048, - 0x00000050, - 0x00000060, - 0x000003ec, + 0x00000784, + 0x00000790, + 0x00000798, + 0x000007a8, -1, }; static const u32 gen8_null_state_batch[] = { + 0x7a000004, + 0x01000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, 0x69040000, - 0x61020001, + 0x78140000, + 0x04000000, + 0x7820000a, 0x00000000, 0x00000000, - 0x79120000, + 0x80000000, 0x00000000, - 0x79130000, 0x00000000, - 0x79140000, 0x00000000, - 0x79150000, 0x00000000, - 0x79160000, 0x00000000, - 0x6101000e, - 0x00000001, 0x00000000, - 0x00000001, - 0x00000001, /* reloc */ 0x00000000, - 0x00000001, /* reloc */ + 0x00000000, + 0x78130002, + 0x00000000, + 0x00000000, + 0x02001808, + 0x781f0002, + 0x00000000, + 0x00000000, + 0x00000000, + 0x78510009, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x78100007, + 0x00000000, + 0x00000000, + 0x00010000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x781b0007, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000800, + 0x00000000, + 0x78110008, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x781e0003, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x781d0007, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x78120002, + 0x00000000, + 0x00000000, + 0x00000000, + 0x781c0002, + 0x00000000, + 0x00000000, + 0x00000000, + 0x780c0000, + 0x00000000, + 0x78520003, 0x00000000, 0x00000000, 0x00000000, - 0x00000001, /* reloc */ 0x00000000, - 0xfffff001, - 0x00001001, - 0xfffff001, - 0x00001001, - 0x78230000, - 0x000006e0, - 0x78210000, - 0x00000700, 0x78300000, 0x08010040, - 0x78330000, - 0x08000000, 0x78310000, - 0x08000000, + 0x1e000000, 0x78320000, - 0x08000000, - 0x78240000, - 0x00000641, - 0x780e0000, - 0x00000601, - 0x780d0000, + 0x1e000000, + 0x78330000, + 0x1e000000, + 0x79190002, 0x00000000, - 0x78180000, - 0x00000001, - 0x78520003, 0x00000000, 0x00000000, + 0x791a0002, 0x00000000, 0x00000000, - 0x78190009, 0x00000000, + 0x791b0002, 0x00000000, 0x00000000, 0x00000000, + 0x79120000, 0x00000000, + 0x79130000, 0x00000000, + 0x79140000, 0x00000000, + 0x79150000, 0x00000000, + 0x79160000, 0x00000000, + 0x78150009, 0x00000000, - 0x781b0007, 0x00000000, 0x00000000, 0x00000000, @@ -84,11 +169,26 @@ static const u32 gen8_null_state_batch[] = { 0x00000000, 0x00000000, 0x00000000, - 0x78270000, 0x00000000, - 0x782c0000, + 0x78190009, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x781a0009, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, 0x00000000, - 0x781c0002, 0x00000000, 0x00000000, 0x00000000, @@ -103,7 +203,7 @@ static const u32 gen8_null_state_batch[] = { 0x00000000, 0x00000000, 0x00000000, - 0x78110008, + 0x78170009, 0x00000000, 0x00000000, 0x00000000, @@ -113,14 +213,17 @@ static const u32 gen8_null_state_batch[] = { 0x00000000, 0x00000000, 0x00000000, - 0x78290000, 0x00000000, - 0x782e0000, + 0x78490001, 0x00000000, - 0x781a0009, 0x00000000, + 0x784a0000, 0x00000000, + 0x784b0000, + 0x00000004, + 0x79170101, 0x00000000, + 0x00000080, 0x00000000, 0x00000000, 0x00000000, @@ -128,7 +231,6 @@ static const u32 gen8_null_state_batch[] = { 0x00000000, 0x00000000, 0x00000000, - 0x781d0007, 0x00000000, 0x00000000, 0x00000000, @@ -137,15 +239,10 @@ static const u32 gen8_null_state_batch[] = { 0x00000000, 0x00000000, 0x00000000, - 0x78280000, 0x00000000, - 0x782d0000, 0x00000000, - 0x78260000, 0x00000000, - 0x782b0000, 0x00000000, - 0x78150009, 0x00000000, 0x00000000, 0x00000000, @@ -156,7 +253,6 @@ static const u32 gen8_null_state_batch[] = { 0x00000000, 0x00000000, 0x00000000, - 0x78100007, 0x00000000, 0x00000000, 0x00000000, @@ -165,20 +261,15 @@ static const u32 gen8_null_state_batch[] = { 0x00000000, 0x00000000, 0x00000000, - 0x781e0003, 0x00000000, 0x00000000, 0x00000000, 0x00000000, - 0x78120002, 0x00000000, 0x00000000, 0x00000000, - 0x781f0002, - 0x30400820, 0x00000000, 0x00000000, - 0x78510009, 0x00000000, 0x00000000, 0x00000000, @@ -189,22 +280,12 @@ static const u32 gen8_null_state_batch[] = { 0x00000000, 0x00000000, 0x00000000, - 0x78500003, - 0x00210000, 0x00000000, 0x00000000, 0x00000000, - 0x78130002, 0x00000000, 0x00000000, 0x00000000, - 0x782a0000, - 0x00000480, - 0x782f0000, - 0x00000540, - 0x78140000, - 0x00000800, - 0x78170009, 0x00000000, 0x00000000, 0x00000000, @@ -215,25 +296,13 @@ static const u32 gen8_null_state_batch[] = { 0x00000000, 0x00000000, 0x00000000, - 0x7820000a, - 0x00000580, 0x00000000, - 0x08080000, 0x00000000, 0x00000000, - 0x1f000002, - 0x00060000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, - 0x784d0000, - 0x40000000, - 0x784f0000, - 0x80000100, - 0x780f0000, - 0x00000740, - 0x78050006, 0x00000000, 0x00000000, 0x00000000, @@ -241,48 +310,25 @@ static const u32 gen8_null_state_batch[] = { 0x00000000, 0x00000000, 0x00000000, - 0x78070003, 0x00000000, 0x00000000, 0x00000000, 0x00000000, - 0x78060003, 0x00000000, 0x00000000, 0x00000000, 0x00000000, - 0x78040001, 0x00000000, - 0x00000001, - 0x79000002, - 0xffffffff, 0x00000000, 0x00000000, - 0x78080003, - 0x00006000, - 0x000005e0, /* reloc */ 0x00000000, 0x00000000, - 0x78090005, - 0x02000000, - 0x22220000, - 0x02f60000, - 0x11230000, - 0x02850004, - 0x11230000, - 0x784b0000, - 0x0000000f, - 0x78490001, 0x00000000, 0x00000000, - 0x7b000005, 0x00000000, - 0x00000003, 0x00000000, - 0x00000001, 0x00000000, 0x00000000, - 0x05000000, /* cmds end */ 0x00000000, 0x00000000, 0x00000000, @@ -297,8 +343,6 @@ static const u32 gen8_null_state_batch[] = { 0x00000000, 0x00000000, 0x00000000, - 0x000004c0, /* state start */ - 0x00000500, 0x00000000, 0x00000000, 0x00000000, @@ -348,7 +392,6 @@ static const u32 gen8_null_state_batch[] = { 0x00000000, 0x00000000, 0x00000000, - 0x00000092, 0x00000000, 0x00000000, 0x00000000, @@ -361,30 +404,6 @@ static const u32 gen8_null_state_batch[] = { 0x00000000, 0x00000000, 0x00000000, - 0x0060005a, - 0x21403ae8, - 0x3a0000c0, - 0x008d0040, - 0x0060005a, - 0x21603ae8, - 0x3a0000c0, - 0x008d0080, - 0x0060005a, - 0x21803ae8, - 0x3a0000d0, - 0x008d0040, - 0x0060005a, - 0x21a03ae8, - 0x3a0000d0, - 0x008d0080, - 0x02800031, - 0x2e0022e8, - 0x0e000140, - 0x08840001, - 0x05800031, - 0x200022e0, - 0x0e000e00, - 0x90031000, 0x00000000, 0x00000000, 0x00000000, @@ -410,38 +429,6 @@ static const u32 gen8_null_state_batch[] = { 0x00000000, 0x00000000, 0x00000000, - 0x06200000, - 0x00000002, - 0x06200000, - 0x00000002, - 0x06200000, - 0x00000002, - 0x06200000, - 0x00000002, - 0x06200000, - 0x00000002, - 0x06200000, - 0x00000002, - 0x06200000, - 0x00000002, - 0x06200000, - 0x00000002, - 0x06200000, - 0x00000002, - 0x06200000, - 0x00000002, - 0x06200000, - 0x00000002, - 0x06200000, - 0x00000002, - 0x06200000, - 0x00000002, - 0x06200000, - 0x00000002, - 0x06200000, - 0x00000002, - 0x06200000, - 0x00000002, 0x00000000, 0x00000000, 0x00000000, @@ -449,8 +436,6 @@ static const u32 gen8_null_state_batch[] = { 0x00000000, 0x00000000, 0x00000000, - 0xf99a130c, - 0x799a130c, 0x00000000, 0x00000000, 0x00000000, @@ -466,9 +451,525 @@ static const u32 gen8_null_state_batch[] = { 0x00000000, 0x00000000, 0x00000000, - 0x3f800000, 0x00000000, - 0x3f800000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x79180006, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x79180006, + 0x20000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x79180006, + 0x40000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x79180006, + 0x60000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x6101000e, + 0x00000001, /* reloc */ + 0x00000000, + 0x00000000, + 0x00000001, /* reloc */ + 0x00000000, + 0x00000001, /* reloc */ + 0x00000000, + 0x00000001, + 0x00000000, + 0x00000001, /* reloc */ + 0x00000000, + 0x00001001, + 0x00001001, + 0x00000001, + 0x00001001, + 0x61020001, + 0x00000000, + 0x00000000, + 0x79000002, + 0x00000000, + 0x00000000, + 0x00000000, + 0x78050006, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x79040002, + 0x00000000, + 0x00000000, + 0x00000000, + 0x79040002, + 0x40000000, + 0x00000000, + 0x00000000, + 0x79040002, + 0x80000000, + 0x00000000, + 0x00000000, + 0x79040002, + 0xc0000000, + 0x00000000, + 0x00000000, + 0x79080001, + 0x00000000, + 0x00000000, + 0x790a0001, + 0x00000000, + 0x00000000, + 0x78060003, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x78070003, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x78040001, + 0x00000000, + 0x00000000, + 0x79110000, + 0x00000000, + 0x780d0000, + 0x00000000, + 0x79060000, + 0x00000000, + 0x7907001f, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x7902000f, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x790c000f, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x780a0003, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x78080083, + 0x00004000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x04004000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x08004000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x0c004000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x10004000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x14004000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x18004000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x1c004000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x20004000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x24004000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x28004000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x2c004000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x30004000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x34004000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x38004000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x3c004000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x40004000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x44004000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x48004000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x4c004000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x50004000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x54004000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x58004000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x5c004000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x60004000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x64004000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x68004000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x6c004000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x70004000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x74004000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x78004000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x7c004000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x80004000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x78090043, + 0x02000000, + 0x22220000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x680b0001, + 0x78260000, + 0x00000000, + 0x78270000, + 0x00000000, + 0x78280000, + 0x00000000, + 0x78290000, + 0x00000000, + 0x782a0000, + 0x00000000, + 0x780e0000, + 0x00000dc1, + 0x78240000, + 0x00000e01, + 0x784f0000, + 0x80000100, + 0x784d0000, + 0x40000000, + 0x782b0000, + 0x00000000, + 0x782c0000, + 0x00000000, + 0x782d0000, + 0x00000000, + 0x782e0000, + 0x00000000, + 0x782f0000, + 0x00000000, + 0x780f0000, + 0x00000000, + 0x78230000, + 0x00000e60, + 0x78210000, + 0x00000e80, + 0x7b000005, + 0x00000004, + 0x00000001, + 0x00000000, + 0x00000001, + 0x00000000, + 0x00000000, + 0x05000000, /* cmds end */ + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, /* state start */ + 0x00000000, + 0x3f800000, + 0x3f800000, + 0x3f800000, + 0x3f800000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, diff --git a/drivers/gpu/drm/i915/intel_renderstate_gen9.c b/drivers/gpu/drm/i915/intel_renderstate_gen9.c new file mode 100644 index 0000000..e1ea838 --- /dev/null +++ b/drivers/gpu/drm/i915/intel_renderstate_gen9.c @@ -0,0 +1,981 @@ +/* + * Copyright © 2014 Intel Corporation + * + * 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 AUTHORS OR COPYRIGHT HOLDERS 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. + */ + +#include "intel_renderstate.h" + +static const u32 gen9_null_state_relocs[] = { + 0x00000794, + 0x000007a0, + 0x000007a8, + 0x000007b8, + -1, +}; + +static const u32 gen9_null_state_batch[] = { + 0x7a000004, + 0x01000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x69040300, + 0x78140000, + 0x04000000, + 0x7820000a, + 0x00000000, + 0x00000000, + 0x80000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x78130002, + 0x00000000, + 0x00000000, + 0x02001808, + 0x781f0004, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x78510009, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x78100007, + 0x00000000, + 0x00000000, + 0x00010000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x781b0007, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000800, + 0x00000000, + 0x78110008, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x781e0003, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x781d0009, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x78120002, + 0x00000000, + 0x00000000, + 0x00000000, + 0x781c0002, + 0x00000000, + 0x00000000, + 0x00000000, + 0x780c0000, + 0x00000000, + 0x78520003, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x78300000, + 0x08010040, + 0x78310000, + 0x1e000000, + 0x78320000, + 0x1e000000, + 0x78330000, + 0x1e000000, + 0x79190002, + 0x00000000, + 0x00000000, + 0x00000000, + 0x791a0002, + 0x00000000, + 0x00000000, + 0x00000000, + 0x791b0002, + 0x00000000, + 0x00000000, + 0x00000000, + 0x79120000, + 0x00000000, + 0x79130000, + 0x00000000, + 0x79140000, + 0x00000000, + 0x79150000, + 0x00000000, + 0x79160000, + 0x00000000, + 0x78150009, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x78190009, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x781a0009, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x78160009, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x78170009, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x78490001, + 0x00000000, + 0x00000000, + 0x784a0000, + 0x00000000, + 0x784b0000, + 0x00000004, + 0x79170101, + 0x00000000, + 0x00000080, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x79180006, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x79180006, + 0x20000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x79180006, + 0x40000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x79180006, + 0x60000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x61010011, + 0x00000001, /* reloc */ + 0x00000000, + 0x00000000, + 0x00000001, /* reloc */ + 0x00000000, + 0x00000001, /* reloc */ + 0x00000000, + 0x00000001, + 0x00000000, + 0x00000001, /* reloc */ + 0x00000000, + 0x00001001, + 0x00001001, + 0x00000001, + 0x00001001, + 0x00000000, + 0x00000000, + 0x00000000, + 0x61020001, + 0x00000000, + 0x00000000, + 0x79000002, + 0x00000000, + 0x00000000, + 0x00000000, + 0x78050006, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x79040002, + 0x00000000, + 0x00000000, + 0x00000000, + 0x79040002, + 0x40000000, + 0x00000000, + 0x00000000, + 0x79040002, + 0x80000000, + 0x00000000, + 0x00000000, + 0x79040002, + 0xc0000000, + 0x00000000, + 0x00000000, + 0x79080001, + 0x00000000, + 0x00000000, + 0x790a0001, + 0x00000000, + 0x00000000, + 0x78060003, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x78070003, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x78040001, + 0x00000000, + 0x00000000, + 0x79110000, + 0x00000000, + 0x780d0000, + 0x00000000, + 0x79060000, + 0x00000000, + 0x7907001f, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x7902000f, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x790c000f, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x780a0003, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x78080083, + 0x00004000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x04004000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x08004000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x0c004000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x10004000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x14004000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x18004000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x1c004000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x20004000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x24004000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x28004000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x2c004000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x30004000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x34004000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x38004000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x3c004000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x40004000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x44004000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x48004000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x4c004000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x50004000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x54004000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x58004000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x5c004000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x60004000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x64004000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x68004000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x6c004000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x70004000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x74004000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x78004000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x7c004000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x80004000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x78090043, + 0x02000000, + 0x22220000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x680b0001, + 0x780e0000, + 0x00000dc1, + 0x78240000, + 0x00000e01, + 0x784f0000, + 0x80000100, + 0x784d0000, + 0x40000000, + 0x782b0000, + 0x00000000, + 0x782c0000, + 0x00000000, + 0x782d0000, + 0x00000000, + 0x782e0000, + 0x00000000, + 0x782f0000, + 0x00000000, + 0x780f0000, + 0x00000000, + 0x78230000, + 0x00000e60, + 0x78210000, + 0x00000e80, + 0x78260000, + 0x00000000, + 0x78270000, + 0x00000000, + 0x78280000, + 0x00000000, + 0x78290000, + 0x00000000, + 0x782a0000, + 0x00000000, + 0x7b000005, + 0x00000004, + 0x00000001, + 0x00000000, + 0x00000001, + 0x00000000, + 0x00000000, + 0x05000000, /* cmds end */ + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, /* state start */ + 0x00000000, + 0x3f800000, + 0x3f800000, + 0x3f800000, + 0x3f800000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, + 0x00000000, /* state end */ +}; + +RO_RENDERSTATE(9);