mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-05-08 13:28:06 +02:00
intel/isl: Make get_intratile_offset_el take the element size in bits
Reviewed-by: Topi Pohjolainen <topi.pohjolainen@intel.com>
This commit is contained in:
parent
757f7087a5
commit
b178762d05
3 changed files with 6 additions and 9 deletions
|
|
@ -2147,7 +2147,7 @@ isl_surf_get_image_offset_el(const struct isl_surf *surf,
|
|||
|
||||
void
|
||||
isl_tiling_get_intratile_offset_el(enum isl_tiling tiling,
|
||||
uint8_t bs,
|
||||
uint32_t bpb,
|
||||
uint32_t row_pitch,
|
||||
uint32_t total_x_offset_el,
|
||||
uint32_t total_y_offset_el,
|
||||
|
|
@ -2156,15 +2156,14 @@ isl_tiling_get_intratile_offset_el(enum isl_tiling tiling,
|
|||
uint32_t *y_offset_el)
|
||||
{
|
||||
if (tiling == ISL_TILING_LINEAR) {
|
||||
assert(bpb % 8 == 0);
|
||||
*base_address_offset = total_y_offset_el * row_pitch +
|
||||
total_x_offset_el * bs;
|
||||
total_x_offset_el * (bpb / 8);
|
||||
*x_offset_el = 0;
|
||||
*y_offset_el = 0;
|
||||
return;
|
||||
}
|
||||
|
||||
const uint32_t bpb = bs * 8;
|
||||
|
||||
struct isl_tile_info tile_info;
|
||||
isl_tiling_get_info(tiling, bpb, &tile_info);
|
||||
|
||||
|
|
|
|||
|
|
@ -1601,7 +1601,7 @@ isl_surf_get_image_offset_el(const struct isl_surf *surf,
|
|||
*/
|
||||
void
|
||||
isl_tiling_get_intratile_offset_el(enum isl_tiling tiling,
|
||||
uint8_t bs,
|
||||
uint32_t bpb,
|
||||
uint32_t row_pitch,
|
||||
uint32_t total_x_offset_el,
|
||||
uint32_t total_y_offset_el,
|
||||
|
|
@ -1621,8 +1621,6 @@ isl_tiling_get_intratile_offset_sa(enum isl_tiling tiling,
|
|||
{
|
||||
const struct isl_format_layout *fmtl = isl_format_get_layout(format);
|
||||
|
||||
assert(fmtl->bpb % 8 == 0);
|
||||
|
||||
/* For computing the intratile offsets, we actually want a strange unit
|
||||
* which is samples for multisampled surfaces but elements for compressed
|
||||
* surfaces.
|
||||
|
|
@ -1632,7 +1630,7 @@ isl_tiling_get_intratile_offset_sa(enum isl_tiling tiling,
|
|||
const uint32_t total_x_offset = total_x_offset_sa / fmtl->bw;
|
||||
const uint32_t total_y_offset = total_y_offset_sa / fmtl->bh;
|
||||
|
||||
isl_tiling_get_intratile_offset_el(tiling, fmtl->bpb / 8, row_pitch,
|
||||
isl_tiling_get_intratile_offset_el(tiling, fmtl->bpb, row_pitch,
|
||||
total_x_offset, total_y_offset,
|
||||
base_address_offset,
|
||||
x_offset_sa, y_offset_sa);
|
||||
|
|
|
|||
|
|
@ -172,7 +172,7 @@ get_blit_intratile_offset_el(const struct brw_context *brw,
|
|||
uint32_t *y_offset_el)
|
||||
{
|
||||
enum isl_tiling tiling = intel_miptree_get_isl_tiling(mt);
|
||||
isl_tiling_get_intratile_offset_el(tiling, mt->cpp, mt->pitch,
|
||||
isl_tiling_get_intratile_offset_el(tiling, mt->cpp * 8, mt->pitch,
|
||||
total_x_offset_el, total_y_offset_el,
|
||||
base_address_offset,
|
||||
x_offset_el, y_offset_el);
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue