PM / devfreq: rockchip-dfi: dfi store raw values in counter struct

When adding perf support to the DFI driver the perf part will
need the raw counter values, so move the fixed * 4 factor to
rockchip_dfi_get_event().

Link: https://lore.kernel.org/lkml/20230704093242.583575-6-s.hauer@pengutronix.de/
Reviewed-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
Reviewed-by: Sebastian Reichel <sebastian.reichel@collabora.com>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Signed-off-by: Chanwoo Choi <cw00.choi@samsung.com>
This commit is contained in:
Sascha Hauer 2023-07-04 11:32:21 +02:00 committed by Chanwoo Choi
parent 559dc2876c
commit 4198274098

View File

@ -97,7 +97,7 @@ static int rockchip_dfi_get_busier_ch(struct devfreq_event_dev *edev)
/* Find out which channel is busier */
for (i = 0; i < RK3399_DMC_NUM_CH; i++) {
dfi->ch_usage[i].access = readl_relaxed(dfi_regs +
DDRMON_CH0_DFI_ACCESS_NUM + i * 20) * 4;
DDRMON_CH0_DFI_ACCESS_NUM + i * 20);
dfi->ch_usage[i].total = readl_relaxed(dfi_regs +
DDRMON_CH0_COUNT_NUM + i * 20);
tmp = dfi->ch_usage[i].access;
@ -149,7 +149,7 @@ static int rockchip_dfi_get_event(struct devfreq_event_dev *edev,
busier_ch = rockchip_dfi_get_busier_ch(edev);
edata->load_count = dfi->ch_usage[busier_ch].access;
edata->load_count = dfi->ch_usage[busier_ch].access * 4;
edata->total_count = dfi->ch_usage[busier_ch].total;
return 0;