Re: [PATCH v4 01/20] PM / devfreq: exynos: Add generic exynos bus frequency driver

From: Chanwoo Choi
Date: Thu Dec 17 2015 - 19:34:41 EST


Hi,

On 2015ë 12ì 15ì 12:41, Krzysztof Kozlowski wrote:
> On 14.12.2015 15:38, Chanwoo Choi wrote:
>> This patch adds the generic exynos bus frequency driver for AMBA AXI bus
>> of sub-blocks in exynos SoC with DEVFREQ framework. The Samsung Exynos SoC
>> have the common architecture for bus between DRAM and sub-blocks in SoC.
>> This driver can support the generic bus frequency driver for Exynos SoCs.
>>
>> In devicetree, Each bus block has a bus clock, regulator, operation-point
>> and devfreq-event devices which measure the utilization of each bus block.
>>
>> Signed-off-by: Chanwoo Choi <cw00.choi@xxxxxxxxxxx>
>> [linux.amoon: Tested on Odroid U3]
>> Tested-by: Anand Moon <linux.amoon@xxxxxxxxx>
>> ---
>> drivers/devfreq/Kconfig | 15 ++
>> drivers/devfreq/Makefile | 1 +
>> drivers/devfreq/exynos/Makefile | 1 +
>> drivers/devfreq/exynos/exynos-bus.c | 449 ++++++++++++++++++++++++++++++++++++
>> 4 files changed, 466 insertions(+)
>> create mode 100644 drivers/devfreq/exynos/exynos-bus.c
>>
>> diff --git a/drivers/devfreq/Kconfig b/drivers/devfreq/Kconfig
>> index 64281bb2f650..55ec774f794c 100644
>> --- a/drivers/devfreq/Kconfig
>> +++ b/drivers/devfreq/Kconfig
>> @@ -66,6 +66,21 @@ config DEVFREQ_GOV_USERSPACE
>>
>> comment "DEVFREQ Drivers"
>>
>> +config ARM_EXYNOS_BUS_DEVFREQ
>> + bool "ARM EXYNOS Generic Memory Bus DEVFREQ Driver"
>> + depends on ARCH_EXYNOS
>> + select DEVFREQ_GOV_SIMPLE_ONDEMAND
>> + select DEVFREQ_EVENT_EXYNOS_PPMU
>> + select PM_DEVFREQ_EVENT
>> + select PM_OPP
>> + help
>> + This adds the common DEVFREQ driver for Exynos Memory bus. Exynos
>> + Memory bus has one more group of memory bus (e.g, MIF and INT block).
>> + Each memory bus group could contain many memoby bus block. It reads
>> + PPMU counters of memory controllers by using DEVFREQ-event device
>> + and adjusts the operating frequencies and voltages with OPP support.
>> + This does not yet operate with optimal voltages.
>> +
>> config ARM_EXYNOS4_BUS_DEVFREQ
>> bool "ARM Exynos4210/4212/4412 Memory Bus DEVFREQ Driver"
>> depends on (CPU_EXYNOS4210 || SOC_EXYNOS4212 || SOC_EXYNOS4412) && !ARCH_MULTIPLATFORM
>> diff --git a/drivers/devfreq/Makefile b/drivers/devfreq/Makefile
>> index 5134f9ee983d..375ebbb4fcfb 100644
>> --- a/drivers/devfreq/Makefile
>> +++ b/drivers/devfreq/Makefile
>> @@ -6,6 +6,7 @@ obj-$(CONFIG_DEVFREQ_GOV_POWERSAVE) += governor_powersave.o
>> obj-$(CONFIG_DEVFREQ_GOV_USERSPACE) += governor_userspace.o
>>
>> # DEVFREQ Drivers
>> +obj-$(CONFIG_ARCH_EXYNOS) += exynos/
>
> Why limiting it to ARCH_EXYNOS? Are there real dependencies on exynos
> mach code? Or on ARM code?

There is no dependency.

>
> If not, then this probably should be obj-y to allow compile testing.
> Particular objects would be selected by ARM_EXYNOS_BUS_DEVFREQ.

OK. I'll alter it as obj-y.

Best Regards,
Chanwoo Choi



--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/