intel: Refactor selection of miptree tiling

This extracts from intel_miptree_create() the spaghetti logic that selects
the tiling format and moves it to a new function,
intel_miptree_choose_tiling(). No behavioral change.

As a bonus, it is now evident that the force_y_tiling parameter to
intel_miptree_create() does not really force Y tiling.

Signed-off-by: Chad Versace <chad.versace@linux.intel.com>
intel: Refactor selection of miptree's internal formats

Extract from intel_miptree_create() the logic for selecting
intel_mipmap_tree::format and ::etc_format into a new function,
intel_miptree_select_formats(). No behavioral change.

Now, intel_miptree_create() is short enough to be almost understandable.

Signed-off-by: Chad Versace <chad.versace@linux.intel.com>
i965: Push stencil alignment w/a down to brw_miptree_layout()

Miptree creation has a workaround for separate stencil buffers.  After the
layout is created, we override the tiling to I915_NONE and align it 64x64,
the size of a W-tile.

Before this patch, the workaround occurs in an odd place:
intel_miptree_create(). After brw_miptree_layout() creates the layout,
intel_miptree_create() overrides the tiling and alignment as needed.

Rather than override something after it has been set, it's safer to just
set it correctly in the first place. To do that, this patch pushes down
the workaround into brw_miptree_layout().

Signed-off-by: Chad Versace <chad.versace@linux.intel.com>
WIP/intel: Add padding to depth and hiz miptrees

TODO: doc
WIP/i965/blorp: Align vertices for hiz ops
intel: Enable hiz on Haswell

This patch sets the flag. That's all.

Signed-off-by: Chad Versace <chad.versace@linux.intel.com>
TODO