[PATCH v6.10-rc1 1/4] arm_mpam: Correct MBA granularity calculation

From: Zeng Heng
Date: Sat Jul 13 2024 - 02:13:45 EST


Correct MBA granularity calculation function. As said in the comments,
"bwa_wd is the number of bits implemented in the 0.xxx fixed point
fraction".

Fixes: 867471fefd5c ("SPLIT untested: arm_mpam: resctrl: Add support for MB resource")
Signed-off-by: Zeng Heng <zengheng4@xxxxxxxxxx>
---
drivers/platform/arm64/mpam/mpam_resctrl.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/platform/arm64/mpam/mpam_resctrl.c b/drivers/platform/arm64/mpam/mpam_resctrl.c
index 2fa732a42d4f..a217f2e1f350 100644
--- a/drivers/platform/arm64/mpam/mpam_resctrl.c
+++ b/drivers/platform/arm64/mpam/mpam_resctrl.c
@@ -523,7 +523,7 @@ static u32 get_mba_granularity(struct mpam_props *cprops)
* bwa_wd is the number of bits implemented in the 0.xxx
* fixed point fraction. 1 bit is 50%, 2 is 25% etc.
*/
- return MAX_MBA_BW / (cprops->bwa_wd + 1);
+ return MAX_MBA_BW / (1 << cprops->bwa_wd);
}

return 0;
--
2.25.1