diff options
Diffstat (limited to 'drivers/gpu/nvgpu/gk20a/cde_gk20a.c')
-rw-r--r-- | drivers/gpu/nvgpu/gk20a/cde_gk20a.c | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/drivers/gpu/nvgpu/gk20a/cde_gk20a.c b/drivers/gpu/nvgpu/gk20a/cde_gk20a.c index 2fad2f64..ad2ee159 100644 --- a/drivers/gpu/nvgpu/gk20a/cde_gk20a.c +++ b/drivers/gpu/nvgpu/gk20a/cde_gk20a.c | |||
@@ -1069,7 +1069,8 @@ int gk20a_prepare_compressible_read( | |||
1069 | u64 compbits_hoffset, u64 compbits_voffset, | 1069 | u64 compbits_hoffset, u64 compbits_voffset, |
1070 | u32 width, u32 height, u32 block_height_log2, | 1070 | u32 width, u32 height, u32 block_height_log2, |
1071 | u32 submit_flags, struct nvhost_fence *fence, | 1071 | u32 submit_flags, struct nvhost_fence *fence, |
1072 | u32 *valid_compbits, struct gk20a_fence **fence_out) | 1072 | u32 *valid_compbits, u32 *zbc_color, |
1073 | struct gk20a_fence **fence_out) | ||
1073 | { | 1074 | { |
1074 | int err = 0; | 1075 | int err = 0; |
1075 | struct gk20a_buffer_state *state; | 1076 | struct gk20a_buffer_state *state; |
@@ -1142,6 +1143,9 @@ int gk20a_prepare_compressible_read( | |||
1142 | if (valid_compbits) | 1143 | if (valid_compbits) |
1143 | *valid_compbits = state->valid_compbits; | 1144 | *valid_compbits = state->valid_compbits; |
1144 | 1145 | ||
1146 | if (zbc_color) | ||
1147 | *zbc_color = state->zbc_color; | ||
1148 | |||
1145 | out: | 1149 | out: |
1146 | mutex_unlock(&state->lock); | 1150 | mutex_unlock(&state->lock); |
1147 | dma_buf_put(dmabuf); | 1151 | dma_buf_put(dmabuf); |
@@ -1149,7 +1153,7 @@ out: | |||
1149 | } | 1153 | } |
1150 | 1154 | ||
1151 | int gk20a_mark_compressible_write(struct gk20a *g, u32 buffer_fd, | 1155 | int gk20a_mark_compressible_write(struct gk20a *g, u32 buffer_fd, |
1152 | u32 valid_compbits, u64 offset) | 1156 | u32 valid_compbits, u64 offset, u32 zbc_color) |
1153 | { | 1157 | { |
1154 | int err; | 1158 | int err; |
1155 | struct gk20a_buffer_state *state; | 1159 | struct gk20a_buffer_state *state; |
@@ -1172,6 +1176,7 @@ int gk20a_mark_compressible_write(struct gk20a *g, u32 buffer_fd, | |||
1172 | 1176 | ||
1173 | /* Update the compbits state. */ | 1177 | /* Update the compbits state. */ |
1174 | state->valid_compbits = valid_compbits; | 1178 | state->valid_compbits = valid_compbits; |
1179 | state->zbc_color = zbc_color; | ||
1175 | 1180 | ||
1176 | /* Discard previous compbit job fence. */ | 1181 | /* Discard previous compbit job fence. */ |
1177 | gk20a_fence_put(state->fence); | 1182 | gk20a_fence_put(state->fence); |