From fc2656bc0d026246de768264a6280cf7b728064f Mon Sep 17 00:00:00 2001 From: Damon Ding Date: Wed, 21 Feb 2024 11:25:42 +0800 Subject: [PATCH] pwm: rockchip: add debugfs support for pwm v4 Change-Id: I2af2e28a24fd6c034e5b21792baa5641517ab773 Signed-off-by: Damon Ding --- drivers/pwm/pwm-rockchip.c | 25 ++++++++++++++++++------- 1 file changed, 18 insertions(+), 7 deletions(-) diff --git a/drivers/pwm/pwm-rockchip.c b/drivers/pwm/pwm-rockchip.c index a535bcdfa85f..5f36989e1b38 100644 --- a/drivers/pwm/pwm-rockchip.c +++ b/drivers/pwm/pwm-rockchip.c @@ -1418,13 +1418,24 @@ static int rockchip_pwm_debugfs_show(struct seq_file *s, void *data) return ret; } - regs_start = (u32)pc->res->start - pc->channel_id * 0x10; - for (i = 0; i < 0x40; i += 4) { - seq_printf(s, "%08x: %08x %08x %08x %08x\n", regs_start + i * 4, - readl_relaxed(pc->base + (4 * i)), - readl_relaxed(pc->base + (4 * (i + 1))), - readl_relaxed(pc->base + (4 * (i + 2))), - readl_relaxed(pc->base + (4 * (i + 3)))); + if (pc->main_version >= 4) { + regs_start = (u32)pc->res->start; + for (i = 0; i < 0x80; i += 4) { + seq_printf(s, "%08x: %08x %08x %08x %08x\n", regs_start + i * 4, + readl_relaxed(pc->base + (4 * i)), + readl_relaxed(pc->base + (4 * (i + 1))), + readl_relaxed(pc->base + (4 * (i + 2))), + readl_relaxed(pc->base + (4 * (i + 3)))); + } + } else { + regs_start = (u32)pc->res->start - pc->channel_id * 0x10; + for (i = 0; i < 0x40; i += 4) { + seq_printf(s, "%08x: %08x %08x %08x %08x\n", regs_start + i * 4, + readl_relaxed(pc->base + (4 * i)), + readl_relaxed(pc->base + (4 * (i + 1))), + readl_relaxed(pc->base + (4 * (i + 2))), + readl_relaxed(pc->base + (4 * (i + 3)))); + } } if (!pc->oneshot_en)