From fcd9629c05f373771e85920e1c1d0ab252617878 Mon Sep 17 00:00:00 2001 From: hmz007 Date: Tue, 19 Nov 2019 13:53:25 +0800 Subject: [PATCH] PM / devfreq: rockchip: add devfreq driver for rk3328 dmc Signed-off-by: hmz007 --- drivers/devfreq/Kconfig | 18 +- drivers/devfreq/Makefile | 1 + drivers/devfreq/rk3328_dmc.c | 846 +++++++++++++++++++++++++++++++++++ 3 files changed, 862 insertions(+), 3 deletions(-) create mode 100644 drivers/devfreq/rk3328_dmc.c --- a/drivers/devfreq/Kconfig +++ b/drivers/devfreq/Kconfig @@ -116,6 +116,18 @@ config ARM_TEGRA20_DEVFREQ It reads Memory Controller counters and adjusts the operating frequencies and voltages with OPP support. +config ARM_RK3328_DMC_DEVFREQ + tristate "ARM RK3328 DMC DEVFREQ Driver" + depends on ARCH_ROCKCHIP + select DEVFREQ_EVENT_ROCKCHIP_DFI + select DEVFREQ_GOV_SIMPLE_ONDEMAND + select PM_DEVFREQ_EVENT + select PM_OPP + help + This adds the DEVFREQ driver for the RK3328 DMC(Dynamic Memory Controller). + It sets the frequency for the memory controller and reads the usage counts + from hardware. + config ARM_RK3399_DMC_DEVFREQ tristate "ARM RK3399 DMC DEVFREQ Driver" depends on (ARCH_ROCKCHIP && HAVE_ARM_SMCCC) || \ --- a/drivers/devfreq/Makefile +++ b/drivers/devfreq/Makefile @@ -9,6 +9,7 @@ obj-$(CONFIG_DEVFREQ_GOV_PASSIVE) += gov # DEVFREQ Drivers obj-$(CONFIG_ARM_EXYNOS_BUS_DEVFREQ) += exynos-bus.o +obj-$(CONFIG_ARM_RK3328_DMC_DEVFREQ) += rk3328_dmc.o obj-$(CONFIG_ARM_RK3399_DMC_DEVFREQ) += rk3399_dmc.o obj-$(CONFIG_ARM_TEGRA_DEVFREQ) += tegra30-devfreq.o obj-$(CONFIG_ARM_TEGRA20_DEVFREQ) += tegra20-devfreq.o