Commit 1d9521a7 authored by Harry Wentland's avatar Harry Wentland Committed by Alex Deucher
Browse files

drm/amd/display: Set add_stream_ctx for CZ, Hawaii and others

parent 0bfac360
Loading
Loading
Loading
Loading
+19 −0
Original line number Diff line number Diff line
@@ -713,6 +713,24 @@ enum dc_status dce100_validate_global(
	return DC_OK;
}

enum dc_status dce100_add_stream_to_ctx(
		struct dc *dc,
		struct dc_state *new_ctx,
		struct dc_stream_state *dc_stream)
{
	enum dc_status result = DC_ERROR_UNEXPECTED;

	result = resource_map_pool_resources(dc, new_ctx, dc_stream);

	if (result == DC_OK)
		result = resource_map_clock_resources(dc, new_ctx, dc_stream);

	if (result == DC_OK)
		result = build_mapped_resource(dc, new_ctx, dc_stream);

	return result;
}

enum dc_status dce100_validate_guaranteed(
		struct dc  *dc,
		struct dc_stream_state *dc_stream,
@@ -769,6 +787,7 @@ static const struct resource_funcs dce100_res_pool_funcs = {
	.validate_guaranteed = dce100_validate_guaranteed,
	.validate_bandwidth = dce100_validate_bandwidth,
	.validate_plane = dce100_validate_plane,
	.add_stream_to_ctx = dce100_add_stream_to_ctx,
	.validate_global = dce100_validate_global
};

+5 −0
Original line number Diff line number Diff line
@@ -18,4 +18,9 @@ struct resource_pool *dce100_create_resource_pool(

enum dc_status dce100_validate_plane(const struct dc_plane_state *plane_state);

enum dc_status dce100_add_stream_to_ctx(
		struct dc *dc,
		struct dc_state *new_ctx,
		struct dc_stream_state *dc_stream);

#endif /* DCE100_RESOURCE_H_ */
+20 −0
Original line number Diff line number Diff line
@@ -921,6 +921,25 @@ enum dc_status dce110_validate_global(
	return DC_OK;
}

static enum dc_status dce110_add_stream_to_ctx(
		struct dc *dc,
		struct dc_state *new_ctx,
		struct dc_stream_state *dc_stream)
{
	enum dc_status result = DC_ERROR_UNEXPECTED;

	result = resource_map_pool_resources(dc, new_ctx, dc_stream);

	if (result == DC_OK)
		result = resource_map_clock_resources(dc, new_ctx, dc_stream);


	if (result == DC_OK)
		result = build_mapped_resource(dc, new_ctx, dc_stream);

	return result;
}

static enum dc_status dce110_validate_guaranteed(
		struct dc *dc,
		struct dc_stream_state *dc_stream,
@@ -1030,6 +1049,7 @@ static const struct resource_funcs dce110_res_pool_funcs = {
	.validate_guaranteed = dce110_validate_guaranteed,
	.validate_bandwidth = dce110_validate_bandwidth,
	.acquire_idle_pipe_for_layer = dce110_acquire_underlay,
	.add_stream_to_ctx = dce110_add_stream_to_ctx,
	.validate_global = dce110_validate_global
};

+1 −0
Original line number Diff line number Diff line
@@ -791,6 +791,7 @@ static const struct resource_funcs dce80_res_pool_funcs = {
	.validate_guaranteed = dce80_validate_guaranteed,
	.validate_bandwidth = dce80_validate_bandwidth,
	.validate_plane = dce100_validate_plane,
	.add_stream_to_ctx = dce100_add_stream_to_ctx,
	.validate_global = dce80_validate_global
};