This is second iteration of patch series adding ASV (Adaptive Supply Voltage) support for Exynos SoCs. The first one can be found at: https://lore.kernel.org/lkml/20190404171735.12815-1-s.nawrocki@xxxxxxxxxxx The main changes comparing to the first (RFC) version are: - moving ASV data tables from DT to the driver, - converting the chipid and the ASV drivers to use regmap, - converting the ASV driver to proper platform driver. I tried the opp-supported-hw bitmask approach as in the Qualcomm CPUFreq DT bindings but it resulted in too many OPPs and DT nodes, around 200 per CPU cluster. So the ASV OPP tables are now in the ASV driver, as in downstream kernels. I might give it a try and restrucure these tables to avoid data repetition. This patch set includes Exynos CHIPID driver posted by Pankaj Dubey and futher improved by Bartlomiej Zolnierkiewicz [1]. Tested on Odroid XU3, XU3 Lite, XU4. One of the things on TODO list is support for the Adaptive Body Bias. This will require modifications on the cpufreq driver side in order to support multiple voltage regulators and changes in the OPP framework to support adding OPPs with multiple voltages. [1] https://lkml.org/lkml/2018/11/15/908 Pankaj Dubey (3): soc: samsung: Add exynos chipid driver support ARM: EXYNOS: enable exynos_chipid for ARCH_EXYNOS ARM64: EXYNOS: enable exynos_chipid for ARCH_EXYNOS Sylwester Nawrocki (6): soc: samsung: Convert exynos-chipid driver to use the regmap API soc: samsung: Add Exynos Adaptive Supply Voltage driver ARM: EXYNOS: Enable exynos-asv driver for ARCH_EXYNOS soc: samsung: Update the CHIP ID DT binding documentation ARM: dts: Add "syscon" compatible string to chipid node ARM: dts: Add samsung,asv-bin property for odroidxu3-lite .../bindings/arm/samsung/exynos-chipid.txt | 10 +- arch/arm/boot/dts/exynos5.dtsi | 4 +- .../boot/dts/exynos5422-odroidxu3-lite.dts | 4 + arch/arm/mach-exynos/Kconfig | 2 + arch/arm64/Kconfig.platforms | 1 + drivers/soc/samsung/Kconfig | 16 + drivers/soc/samsung/Makefile | 5 + drivers/soc/samsung/exynos-asv.c | 185 +++++++ drivers/soc/samsung/exynos-asv.h | 82 +++ drivers/soc/samsung/exynos-chipid.c | 104 ++++ drivers/soc/samsung/exynos5422-asv.c | 499 ++++++++++++++++++ drivers/soc/samsung/exynos5422-asv.h | 25 + include/linux/soc/samsung/exynos-chipid.h | 48 ++ 13 files changed, 981 insertions(+), 4 deletions(-) create mode 100644 drivers/soc/samsung/exynos-asv.c create mode 100644 drivers/soc/samsung/exynos-asv.h create mode 100644 drivers/soc/samsung/exynos-chipid.c create mode 100644 drivers/soc/samsung/exynos5422-asv.c create mode 100644 drivers/soc/samsung/exynos5422-asv.h create mode 100644 include/linux/soc/samsung/exynos-chipid.h -- 2.17.1