History log of /external/mesa3d/src/mesa/drivers/dri/intel/intel_tex_layout.h
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
e7e81714f3ecf67a975d35e74bdb7fd15d924e4d 08-Nov-2011 Kenneth Graunke <kenneth@whitecape.org> i965: Implement the actual tables for texture alignment units [v2]

I implemented functions for horizontal/vertical alignment units separately
because I find it easier to read that way...especially with all the
corner-cases.

[chad] Corrected the vertical alignment calculation by checking for
depthstencil formats.

v2:
- Fix typos in intel_horizontal_texture_alignment_unit():
s/height/width/ and s/VALIGN/HALIGN.
- Remove special case for compressed formats in
intel_get_texture_alignment unit(). Compressed formats are already
handled in the halign and valign functions.
- Replace check ``_mesa_is_depth_format(...) ||
_mesa_is_depthstencil_format(...)`` with explcitit checks against
GL_DEPTH_COMPONENT and GL_DEPTH_STENCIL.

Reviewed-by: Eric Anholt <eric@anholt.net>
Signed-off-by: Kenneth Graunke <kenneth@whitecape.org>
Signed-off-by: Chad Versace <chad.versace@linux.intel.com>
/external/mesa3d/src/mesa/drivers/dri/intel/intel_tex_layout.h
d7b33309fe160212f2eb73f471f3aedcb5d0b5c1 15-Nov-2011 Chad Versace <chad.versace@linux.intel.com> intel: Kill intel_mipmap_level::nr_images [v4]

For all texture targets except GL_TEXTURE_CUBE_MAP, the 'nr_images' and
'depth' fields of intel_mipmap_level were identical. In the exceptional
case, nr_images == 6 and depth == 1.

It is simple to determine if a texture is a cube or not, so the presence
of two fields here was not helpful. Worse, it was confusing. When we
eventually implement GL_ARB_texture_cube_map_array, this mess would have
become even more confusing.

This patch removes 'nr_images' and assigns to 'depth' a consistent
meaning: depth is the number of 2D slices at each miplevel. The exact
semantics of depth varies according to the texture target:
- For GL_TEXTURE_CUBE_MAP, depth is 6.
- For GL_TEXTURE_2D_ARRAY, depth is the number of array slices. It is
identical for all miplevels in the texture.
- For GL_TEXTURE_3D, it is the texture's depth at each miplevel. Its
value, like width and height, varies with miplevel.
- For other texture types, depth is 1.

As a consequence, parameters were removed from the following function
signatures:
intel_miptree_set_level_info
Remove 'nr_images'.

i945_miptree_layout
brw_miptree_layout_texture
brw_miptree_layout_texture_array
Remove 'slices'.

v2:
- Replace "It's" with "Its".
- Remove all hunks in intel_fbo.c. The hunks were spurious and sneaked
in during a rebase.
- Remove unneeded hunk in intel_tex_map_image_for_swrast(). It was
a little refactor of the for-loop's upper bound.

v4:
In intel_miptree_get_image_offset(), document the conditions under
which different if-branches are taken.

Reviewed-by: Eric Anholt <eric@anholt.net>
Signed-off-by: Chad Versace <chad.versace@linux.intel.com>
/external/mesa3d/src/mesa/drivers/dri/intel/intel_tex_layout.h
36a91e45f755af164232ef908419bc4cb64ba45b 26-Aug-2011 Ian Romanick <ian.d.romanick@intel.com> intel: Silence several "warning: unused parameter"

The intel_context and tiling parameters were not used by any if the
i9[14]5_miptree_layout or the functions they call, and the tiling parameter was
not used by brw_miptree_layout. Remove the unnecessary parameters.
/external/mesa3d/src/mesa/drivers/dri/intel/intel_tex_layout.h
4a60b0c8d2e4890038e1c6a72a7dac3b4cdf996e 09-Jun-2011 Eric Anholt <eric@anholt.net> intel: Add block alignment for RGTC textures.

We were using the default 4x2 alignment instead of the 4x4 required
for RGTC textures.
/external/mesa3d/src/mesa/drivers/dri/intel/intel_tex_layout.h
7d8f0fc28239c8023d2d44cbd4c979aa86c31873 29-Apr-2010 Eric Anholt <eric@anholt.net> i965: Fix cube map layouts on Ironlake.

We were doubling up the offsets for the mipmap levels for CPU access.
Instead of reimplementing i945_miptree_layout_2d with 6 cube images
separated by qpitch, share that function and provide the level offsets
later.

Fixes piglit cubemap and fbo-cubemap.
/external/mesa3d/src/mesa/drivers/dri/intel/intel_tex_layout.h
b9c28979576a566055e44cb31f3e5c0cd82754e0 13-Oct-2009 Brian Paul <brianp@vmware.com> intel: added INLINE keyword to minify()

This is mainly just to silence some warnings.
/external/mesa3d/src/mesa/drivers/dri/intel/intel_tex_layout.h
2995bf0d68f1b28ba68b81e9dc79e3ab52bc2795 13-Jul-2009 Xiang, Haihao <haihao.xiang@intel.com> i965: add support for new chipsets

1. new PCI ids
2. fix some 3D commands on new chipset
3. fix send instruction on new chipset
4. new VUE vertex header
5. ff_sync message (added by Zou Nan Hai <nanhai.zou@intel.com>)
6. the offset in JMPI is in unit of 64bits on new chipset
7. new cube map layout
/external/mesa3d/src/mesa/drivers/dri/intel/intel_tex_layout.h
1ba96651e12b3c74fb9c8f5a61b183ef36a27b1e 03-Jun-2009 Eric Anholt <eric@anholt.net> intel: Add support for tiled textures.

This is about a 30% performance win in OA with high settings on my GM45,
and experiments with 915GM indicate that it'll be around a 20% win there.
Currently, 915-class hardware is seriously hurt by the fact that we use
fence regs to control the tiling even for 3D instructions that could live
without them, so we spend a bunch of time waiting on previous rendering in
order to pull fences off. Thus, the texture_tiling driconf option defaults
off there for now.
/external/mesa3d/src/mesa/drivers/dri/intel/intel_tex_layout.h
ecadb51bbcb972a79f3ed79e65a7986b9396e757 18-Sep-2008 Brian Paul <brian.paul@tungstengraphics.com> mesa: added "main/" prefix to includes, remove some -I paths from Makefile.template
/external/mesa3d/src/mesa/drivers/dri/intel/intel_tex_layout.h
a183efc132c8db1bb42525ac177ffff96f69a59b 18-Dec-2007 Keith Packard <keithp@keithp.com> [Intel] Centralize mipmap pitch computations.

mipmap pitches must account for the device alignment requirements, which
used to be fairly simple; just align to a 4-byte boundary. However, to allow
textures to be drawn to under TTM, they now need to be aligned to a 64-byte
boundary. Placing all of the alignment constraints in a single function
allows this new constraint to be applied uniformly.

There was some pitch constraining code in intel_miptree_create, but that was
modifying the pitch long after the miptree had been layed out, so it only
served to wreck the mipmap and cause rendering errors.
/external/mesa3d/src/mesa/drivers/dri/intel/intel_tex_layout.h
8ea66fa2ec9eeb6a7e869ff08d713f5e77d795e0 10-Aug-2007 Xiang, Haihao <haihao.xiang@intel.com> i965/i915tex: applying right alignment to compressed texture,
which make small textures(4x4,2x2,1x1) work well.
/external/mesa3d/src/mesa/drivers/dri/intel/intel_tex_layout.h
fde908444af5c826bce84203a9cb4273d8341ed0 14-Dec-2006 Michel Dänzer <michel@tungstengraphics.com> Fix copy-and-paste-o of my e-mail address.
/external/mesa3d/src/mesa/drivers/dri/intel/intel_tex_layout.h
3416ef303af633668cece0b199b4a8b2388c1e2f 14-Dec-2006 Michel Dänzer <michel@tungstengraphics.com> Share code to lay out >= 945 style 2D mipmaps between i915tex and i965 drivers.

Use the i965 version as it has some fixes over the i915tex version.
/external/mesa3d/src/mesa/drivers/dri/intel/intel_tex_layout.h