Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 990dee3a authored by james qian wang (Arm Technology China)'s avatar james qian wang (Arm Technology China) Committed by Liviu Dudau
Browse files

drm/komeda: Computing image enhancer internally

parent 1930c112
Loading
Loading
Loading
Loading
+2 −5
Original line number Diff line number Diff line
@@ -47,11 +47,8 @@ struct komeda_plane_state {
	/** @zlist_node: zorder list node */
	struct list_head zlist_node;

	/* @img_enhancement: on/off image enhancement
	 * @layer_split: on/off layer_split
	 */
	u8 img_enhancement : 1,
	   layer_split : 1;
	/** @layer_split: on/off layer_split */
	u8 layer_split : 1;
};

/**
+4 −0
Original line number Diff line number Diff line
@@ -806,6 +806,10 @@ void komeda_complete_data_flow_cfg(struct komeda_layer *layer,
	dflow->en_scaling = (w != dflow->out_w) || (h != dflow->out_h);
	dflow->is_yuv = fb->format->is_yuv;

	/* try to enable image enhancer if data flow is a 2x+ upscaling */
	dflow->en_img_enhancement = dflow->out_w >= 2 * w ||
				    dflow->out_h >= 2 * h;

	/* try to enable split if scaling exceed the scaler's acceptable
	 * input/output range.
	 */
+0 −5
Original line number Diff line number Diff line
@@ -18,7 +18,6 @@ komeda_plane_init_data_flow(struct drm_plane_state *st,
			    struct komeda_data_flow_cfg *dflow)
{
	struct komeda_plane *kplane = to_kplane(st->plane);
	struct komeda_plane_state *kplane_st = to_kplane_st(st);
	struct drm_framebuffer *fb = st->fb;
	const struct komeda_format_caps *caps = to_kfb(fb)->format_caps;
	struct komeda_pipeline *pipe = kplane->layer->base.pipeline;
@@ -57,8 +56,6 @@ komeda_plane_init_data_flow(struct drm_plane_state *st,
		return -EINVAL;
	}

	dflow->en_img_enhancement = !!kplane_st->img_enhancement;

	komeda_complete_data_flow_cfg(kplane->layer, dflow, fb);

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

	old = to_kplane_st(plane->state);

	new->img_enhancement = old->img_enhancement;

	return &new->base;
}