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

Commit 72ad6c93 authored by Prasad Sodagudi's avatar Prasad Sodagudi Committed by Mohammed Khajapasha
Browse files

qcom: PMRESR register read returns zero for un supported group events



Kryo has 3 groups of events PMRESR0, 1, 2. If kryo_read_pmresr()
is asked to read other than these 3 event groups, return ZERO value.

Change-Id: Ifa348baa749182bb0dcb67562195472699301b1a
Signed-off-by: default avatarPrasad Sodagudi <psodagud@codeaurora.org>
Signed-off-by: default avatarMohammed Khajapasha <mkhaja@codeaurora.org>
parent 7d78f564
Loading
Loading
Loading
Loading
+7 −6
Original line number Diff line number Diff line
@@ -118,12 +118,7 @@ static void kryo_write_pmresr(int reg, int l_h, u32 val)

static u32 kryo_read_pmresr(int reg, int l_h)
{
	u32 val;

	if (reg > KRYO_MAX_L1_REG) {
		pr_err("Invalid read of RESR reg %d\n", reg);
		return 0;
	}
	u32 val = 0;

	if (l_h == RESR_L) {
		switch (reg) {
@@ -136,6 +131,9 @@ static u32 kryo_read_pmresr(int reg, int l_h)
		case 2:
			asm volatile("mrs %0, " pmresr2l_el0 : "=r" (val));
			break;
		default:
			WARN_ONCE(1, "Invalid read of RESR reg %d\n", reg);
			break;
		}
	} else {
		switch (reg) {
@@ -148,6 +146,9 @@ static u32 kryo_read_pmresr(int reg, int l_h)
		case 2:
			asm volatile("mrs %0," pmresr2h_el0 : "=r" (val));
			break;
		default:
			WARN_ONCE(1, "Invalid read of RESR reg %d\n", reg);
			break;
		}
	}