Changes in V4: Almost all the changes in this version is as per suggestion from Eduardo.The major ones are listed below, * Added kconfig symbol ARCH_HAS_TMU which needs to be enabled by platform. With this change existing symbol EXYNOS_TMU_DATA is not needed. * Movement of freq_clip_table from exynos_tmu.h to exynos_thermal_common.h is explained in the commit logs. * Wrote all register description documentation. * Split 5440 TMU support patch into controller change, configuration data and feature addition patches. * Remove all *LINUX_* in the header files. * Still regulator enable is kept optional but a TODO: comment is added to fix it later. Changes in V3: * Added proper dependency of different exynos thermal Kconfig symbols. Basically 3 Kconfig can be enabled now and corresponds to tmu driver. exynos common part and exynos configuration data. This issue was raised by Rui Zhang. Changes in V2: * Separated SOC data from TMU driver. This is as per suggestion from Eduardo. * Merged the new file created for exynos5440 TMU controller with the existing TMU controller code. * Removed the DT parsing code as now the SOC specific data are cleanly put inside the data specific file. * Even the register definations/bitfields are treated as data as there is some variation across SOC's. This patchset adds TMU(Thermal management Unit) driver support for exynos5440 platform. There are 3 instances of the TMU controllers so necessary cleanup/re-structure is done to handle multiple thermal zone. Patch (exynos4: Add documentation for Exynos SoC thermal bindings) from Lukasz Majewski is already posted to mainline. Adding it here for completeness. (http://www.mail-archive.com/linux-samsung-soc@xxxxxxxxxxxxxxx/msg17817.html) Patch (thermal: exynos: Support thermal tripping ) from Jonghwan Choi is added here with some changes. (https://patchwork.kernel.org/patch/1668371/) Patch (thermal: exynos: Support for TMU regulator defined at device tree) is a repost of my earlier patch(https://patchwork-mail1.kernel.org/patch/2510771/) and adds regulator support. Patch (ARM: dts: Add device tree node for exynos5440 TMU controller) and patch (arm: exynos: enable ARCH_HAS_TMU) can be merged through exynos platform maintainer as this can cause merge conflict. All these patches are based on thermal maintainers git tree, git://git.kernel.org/pub/scm/linux/kernel/git/rzhang/linux.git next. Amit Daniel Kachhap (29): thermal: exynos: Moving exynos thermal files into samsung directory thermal: exynos: Add ARCH_HAS_TMU config to know the supported soc's thermal: exynos: Remove CPU_THERMAL dependency for using TMU driver thermal: exynos: Bifurcate exynos thermal common and tmu controller code thermal: exynos: Rename exynos_thermal.c to exynos_tmu.c thermal: exynos: Move exynos_thermal.h from include/* to driver/* folder thermal: exynos: Bifurcate exynos tmu driver and configuration data thermal: exynos: Add missing definations and code cleanup thermal: exynos: Add extra entries in the tmu platform data thermal: exynos: Support thermal tripping thermal: exynos: Move register definitions from driver file to data file thermal: exynos: Fix to clear only the generated interrupts thermal: exynos: Add support for instance based register/unregister thermal: exynos: Modify private_data to appropriate name driver_data thermal: exynos: Return success even if no cooling data supplied thermal: exynos: Make the zone handling dependent on trip count thermal: exynos: Add support to handle many instances of TMU thermal: exynos: Add TMU features to check instead of using SOC type thermal: exynos: use device resource management infrastructure thermal: exynos: Add support to access common register for multistance thermal: exynos: Add support for exynos5440 TMU sensor. thermal: exynos: Fix to set the second point correction value properly thermal: exynos: Add thermal configuration data for exynos5440 TMU sensor thermal: exynos: Add a compensation logic on swapped e-fuse values thermal: exynos: Add hardware mode thermal calibration support Documentation: thermal: Explain the exynos thermal driver model thermal: exynos: Support for TMU regulator defined at device tree ARM: dts: Add device tree node for exynos5440 TMU controller arm: exynos: enable ARCH_HAS_TMU Lukasz Majewski (1): ARM: dts: thermal: exynos4: Add documentation for Exynos SoC thermal bindings .../devicetree/bindings/thermal/exynos-thermal.txt | 53 + Documentation/thermal/exynos_thermal | 43 +- arch/arm/boot/dts/exynos5440.dtsi | 30 + arch/arm/mach-exynos/Kconfig | 5 + drivers/thermal/Kconfig | 13 +- drivers/thermal/Makefile | 2 +- drivers/thermal/exynos_thermal.c | 1066 -------------------- drivers/thermal/samsung/Kconfig | 21 + drivers/thermal/samsung/Makefile | 7 + drivers/thermal/samsung/exynos_thermal_common.c | 407 ++++++++ drivers/thermal/samsung/exynos_thermal_common.h | 98 ++ drivers/thermal/samsung/exynos_tmu.c | 741 ++++++++++++++ drivers/thermal/samsung/exynos_tmu.h | 294 ++++++ drivers/thermal/samsung/exynos_tmu_data.c | 225 ++++ drivers/thermal/samsung/exynos_tmu_data.h | 155 +++ include/linux/platform_data/exynos_thermal.h | 119 --- 16 files changed, 2076 insertions(+), 1203 deletions(-) create mode 100644 Documentation/devicetree/bindings/thermal/exynos-thermal.txt delete mode 100644 drivers/thermal/exynos_thermal.c create mode 100644 drivers/thermal/samsung/Kconfig create mode 100644 drivers/thermal/samsung/Makefile create mode 100644 drivers/thermal/samsung/exynos_thermal_common.c create mode 100644 drivers/thermal/samsung/exynos_thermal_common.h create mode 100644 drivers/thermal/samsung/exynos_tmu.c create mode 100644 drivers/thermal/samsung/exynos_tmu.h create mode 100644 drivers/thermal/samsung/exynos_tmu_data.c create mode 100644 drivers/thermal/samsung/exynos_tmu_data.h delete mode 100644 include/linux/platform_data/exynos_thermal.h -- To unsubscribe from this list: send the line "unsubscribe linux-samsung-soc" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html