Commit 4d5f6262 authored by Nicholas Kazlauskas's avatar Nicholas Kazlauskas Committed by Alex Deucher
Browse files

drm/amd/display: Rename should_use_dmub_lock to reflect inbox1 usage



[Why]
Newer DCN use the DMCUB HW lock via inbox0 for performance reasons while
older ones will use inbox1.

The should_use_dmub_lock() function does not describe whether the lock
in general should be used, but whether it should be used via inbox1.

[How]
Rename the function to should_use_dmub_inbox1_lock() to reflect this.

Reviewed-by: default avatarAlvin Lee <alvin.lee2@amd.com>
Signed-off-by: default avatarNicholas Kazlauskas <nicholas.kazlauskas@amd.com>
Signed-off-by: default avatarRoman Li <roman.li@amd.com>
Tested-by: default avatarDan Wheeler <daniel.wheeler@amd.com>
Signed-off-by: default avatarAlex Deucher <alexander.deucher@amd.com>
parent 7f74931c
Loading
Loading
Loading
Loading
+2 −2
Original line number Diff line number Diff line
@@ -4149,7 +4149,7 @@ static void commit_planes_for_stream(struct dc *dc,
	if ((update_type != UPDATE_TYPE_FAST) && stream->update_flags.bits.dsc_changed)
		if (top_pipe_to_program &&
			top_pipe_to_program->stream_res.tg->funcs->lock_doublebuffer_enable) {
			if (should_use_dmub_lock(dc, stream->link)) {
			if (should_use_dmub_inbox1_lock(dc, stream->link)) {
				union dmub_hw_lock_flags hw_locks = { 0 };
				struct dmub_hw_lock_inst_flags inst_flags = { 0 };

@@ -4419,7 +4419,7 @@ static void commit_planes_for_stream(struct dc *dc,
				top_pipe_to_program->stream_res.tg,
				CRTC_STATE_VACTIVE);

			if (should_use_dmub_lock(dc, stream->link)) {
			if (should_use_dmub_inbox1_lock(dc, stream->link)) {
				union dmub_hw_lock_flags hw_locks = { 0 };
				struct dmub_hw_lock_inst_flags inst_flags = { 0 };

+1 −1
Original line number Diff line number Diff line
@@ -61,7 +61,7 @@ void dmub_hw_lock_mgr_inbox0_cmd(struct dc_dmub_srv *dmub_srv,
	dc_dmub_srv_wait_for_inbox0_ack(dmub_srv);
}

bool should_use_dmub_lock(const struct dc *dc, const struct dc_link *link)
bool should_use_dmub_inbox1_lock(const struct dc *dc, const struct dc_link *link)
{
	/* ASIC doesn't support DMUB */
	if (!dc->ctx->dmub_srv)
+9 −1
Original line number Diff line number Diff line
@@ -37,6 +37,14 @@ void dmub_hw_lock_mgr_cmd(struct dc_dmub_srv *dmub_srv,
void dmub_hw_lock_mgr_inbox0_cmd(struct dc_dmub_srv *dmub_srv,
		union dmub_inbox0_cmd_lock_hw hw_lock_cmd);

bool should_use_dmub_lock(const struct dc *dc, const struct dc_link *link);
/**
 * should_use_dmub_inbox1_lock() - Checks if the DMCUB hardware lock via inbox1 should be used.
 *
 * @dc: pointer to DC object
 * @link: optional pointer to the link object to check for enabled link features
 *
 * Return: true if the inbox1 lock should be used, false otherwise
 */
bool should_use_dmub_inbox1_lock(const struct dc *dc, const struct dc_link *link);

#endif /*_DMUB_HW_LOCK_MGR_H_ */
+1 −1
Original line number Diff line number Diff line
@@ -2245,7 +2245,7 @@ void dcn10_cursor_lock(struct dc *dc, struct pipe_ctx *pipe, bool lock)
	if (lock)
		delay_cursor_until_vupdate(dc, pipe);

	if (pipe->stream && should_use_dmub_lock(dc, pipe->stream->link)) {
	if (pipe->stream && should_use_dmub_inbox1_lock(dc, pipe->stream->link)) {
		union dmub_hw_lock_flags hw_locks = { 0 };
		struct dmub_hw_lock_inst_flags inst_flags = { 0 };

+1 −1
Original line number Diff line number Diff line
@@ -1449,7 +1449,7 @@ void dcn20_pipe_control_lock(
		!flip_immediate)
	    dcn20_setup_gsl_group_as_lock(dc, pipe, false);

	if (pipe->stream && should_use_dmub_lock(dc, pipe->stream->link)) {
	if (pipe->stream && should_use_dmub_inbox1_lock(dc, pipe->stream->link)) {
		union dmub_hw_lock_flags hw_locks = { 0 };
		struct dmub_hw_lock_inst_flags inst_flags = { 0 };

Loading