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

Commit 8941f6ff authored by Mike Tipton's avatar Mike Tipton
Browse files

clk: qcom: clk-rpmh: Fix overflow in BCM vote



Valid frequencies may result in BCM votes that exceed the max HW value.
Set vote ceiling to BCM_TCS_CMD_VOTE_MASK to ensure the votes aren't
truncated, which can result in lower frequencies than desired.

Change-Id: I6d64815ee93c5c604ec0bea86eca00aca570bb9e
Signed-off-by: default avatarMike Tipton <mdtipton@codeaurora.org>
parent 73db1046
Loading
Loading
Loading
Loading
+4 −1
Original line number Diff line number Diff line
// SPDX-License-Identifier: GPL-2.0-only
/*
 * Copyright (c) 2018-2020, The Linux Foundation. All rights reserved.
 * Copyright (c) 2018-2021, The Linux Foundation. All rights reserved.
 */

#include <linux/clk-provider.h>
@@ -280,6 +280,9 @@ static int clk_rpmh_bcm_send_cmd(struct clk_rpmh *c, bool enable)
			cmd_state = c->aggr_state;
	}

	if (cmd_state > BCM_TCS_CMD_VOTE_MASK)
		cmd_state = BCM_TCS_CMD_VOTE_MASK;

	if (c->last_sent_aggr_state == cmd_state) {
		mutex_unlock(&rpmh_clk_lock);
		return 0;