lima: add new findings to texture descriptor
authorVasily Khoruzhick <anarsoul@gmail.com>
Sun, 12 Jan 2020 06:23:36 +0000 (22:23 -0800)
committerVasily Khoruzhick <anarsoul@gmail.com>
Tue, 14 Jan 2020 06:50:36 +0000 (22:50 -0800)
commit55b0aa436e9b4bd33938535d51ebdc21a7aa11ca
treee775143202e32e7e0c6efc55c7cdbc0b46debfbf
parenta9bd0668d50e17fbe61542a9c6ad723d7fd55ed7
lima: add new findings to texture descriptor

Lower 8 bits of unknown_1_3 seems to be min_lod,
rest of 4 bits + miplevels are max_lod and min_mipfilter seems to be
lod bias. All are in fixed format with 4 bit integer and 4 bit fraction,
lod_bias also has sign bit.

Blob also seems to do some magic with lod_bias if min filter is nearest --
it adds 0.5 to lod_bias in this case. Same story when all filters are
nearest and mipmapping is enabled, but in this case it subtracts 1/16
from lod_bias.

Fixes 134 dEQP tests in dEQP-GLES2.functional.texture.*

Reviewed-by: Qiang Yu <yuq825@gmail.com>
Signed-off-by: Vasily Khoruzhick <anarsoul@gmail.com>
Tested-by: Marge Bot <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3359>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3359>
src/gallium/drivers/lima/lima_parser.c
src/gallium/drivers/lima/lima_screen.c
src/gallium/drivers/lima/lima_texture.c
src/gallium/drivers/lima/lima_texture.h