Skip to content

Commit 990dee3

Browse files
jamwandliviu
authored andcommitted
drm/komeda: Computing image enhancer internally
Enable image enhancer when the input data flow is 2x+ upscaling. Signed-off-by: james qian wang (Arm Technology China) <[email protected]> Signed-off-by: Liviu Dudau <[email protected]> Link: https://patchwork.freedesktop.org/patch/msgid/[email protected]
1 parent 1930c11 commit 990dee3

File tree

3 files changed

+6
-10
lines changed

3 files changed

+6
-10
lines changed

drivers/gpu/drm/arm/display/komeda/komeda_kms.h

Lines changed: 2 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -47,11 +47,8 @@ struct komeda_plane_state {
4747
/** @zlist_node: zorder list node */
4848
struct list_head zlist_node;
4949

50-
/* @img_enhancement: on/off image enhancement
51-
* @layer_split: on/off layer_split
52-
*/
53-
u8 img_enhancement : 1,
54-
layer_split : 1;
50+
/** @layer_split: on/off layer_split */
51+
u8 layer_split : 1;
5552
};
5653

5754
/**

drivers/gpu/drm/arm/display/komeda/komeda_pipeline_state.c

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -806,6 +806,10 @@ void komeda_complete_data_flow_cfg(struct komeda_layer *layer,
806806
dflow->en_scaling = (w != dflow->out_w) || (h != dflow->out_h);
807807
dflow->is_yuv = fb->format->is_yuv;
808808

809+
/* try to enable image enhancer if data flow is a 2x+ upscaling */
810+
dflow->en_img_enhancement = dflow->out_w >= 2 * w ||
811+
dflow->out_h >= 2 * h;
812+
809813
/* try to enable split if scaling exceed the scaler's acceptable
810814
* input/output range.
811815
*/

drivers/gpu/drm/arm/display/komeda/komeda_plane.c

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,6 @@ komeda_plane_init_data_flow(struct drm_plane_state *st,
1818
struct komeda_data_flow_cfg *dflow)
1919
{
2020
struct komeda_plane *kplane = to_kplane(st->plane);
21-
struct komeda_plane_state *kplane_st = to_kplane_st(st);
2221
struct drm_framebuffer *fb = st->fb;
2322
const struct komeda_format_caps *caps = to_kfb(fb)->format_caps;
2423
struct komeda_pipeline *pipe = kplane->layer->base.pipeline;
@@ -57,8 +56,6 @@ komeda_plane_init_data_flow(struct drm_plane_state *st,
5756
return -EINVAL;
5857
}
5958

60-
dflow->en_img_enhancement = !!kplane_st->img_enhancement;
61-
6259
komeda_complete_data_flow_cfg(kplane->layer, dflow, fb);
6360

6461
return 0;
@@ -174,8 +171,6 @@ komeda_plane_atomic_duplicate_state(struct drm_plane *plane)
174171

175172
old = to_kplane_st(plane->state);
176173

177-
new->img_enhancement = old->img_enhancement;
178-
179174
return &new->base;
180175
}
181176

0 commit comments

Comments
 (0)