1. 22 Aug, 2017 1 commit
  2. 22 Jul, 2017 2 commits
  3. 14 May, 2017 1 commit
  4. 19 Apr, 2017 1 commit
  5. 16 Feb, 2017 1 commit
  6. 09 Feb, 2017 1 commit
    • Dave Gerlach's avatar
      cpufreq: ti: Add cpufreq driver to determine available OPPs at runtime · e13cf046
      Dave Gerlach authored
      Some TI SoCs, like those in the AM335x, AM437x, DRA7x, and AM57x families,
      have different OPPs available for the MPU depending on which specific
      variant of the SoC is in use. This can be determined through use of the
      revision and an eFuse register present in the silicon. Introduce a
      ti-cpufreq driver that can read the aformentioned values and provide
      them as version matching data to the opp framework. Through this the
      opp-supported-hw dt binding that is part of the operating-points-v2
      table can be used to indicate availability of OPPs for each device.
      This driver also creates the "cpufreq-dt" platform_device after passing
      the version matching data to the OPP framework so that the cpufreq-dt
      handles the actual cpufreq implementation. Even without the necessary
      data to pass the version matching data the driver will still create this
      device to maintain backwards compatibility with operating-points v1
      Acked-by: default avatarViresh Kumar <viresh.kumar@linaro.org>
      Signed-off-by: default avatarDave Gerlach <d-gerlach@ti.com>
      Signed-off-by: default avatarRafael J. Wysocki <rafael.j.wysocki@intel.com>
  7. 01 Nov, 2016 3 commits
  8. 25 Apr, 2016 1 commit
  9. 01 Mar, 2016 1 commit
    • Arnd Bergmann's avatar
      cpufreq: mediatek: allow building as a module · 3c2002ae
      Arnd Bergmann authored
      The MT8173 cpufreq driver can currently only be built-in, but
      it has a Kconfig dependency on the thermal core. THERMAL
      can be a loadable module, which in turn makes this driver
      impossible to build.
      It is nicer to make the cpufreq driver a module as well, so
      this patch turns the option in to a 'tristate' and adapts
      the dependency accordingly.
      The driver has no module_exit() function, so it will continue
      to not support unloading, but it can be built as a module
      and loaded at runtime now.
      Signed-off-by: default avatarArnd Bergmann <arnd@arndb.de>
      Fixes: 5269e706 (cpufreq: Add ARM_MT8173_CPUFREQ dependency on THERMAL)
      Signed-off-by: default avatarRafael J. Wysocki <rafael.j.wysocki@intel.com>
  10. 12 Dec, 2015 2 commits
    • Lee Jones's avatar
      cpufreq: st: Provide runtime initialised driver for ST's platforms · ab0ea257
      Lee Jones authored
      The bootloader is charged with the responsibility to provide platform
      specific Dynamic Voltage and Frequency Scaling (DVFS) information via
      Device Tree.  This driver takes the supplied configuration and
      registers it with the new generic OPP framework, to then be used with
      Acked-by: default avatarViresh Kumar <viresh.kumar@linaro.org>
      Signed-off-by: default avatarLee Jones <lee.jones@linaro.org>
      Signed-off-by: default avatarRafael J. Wysocki <rafael.j.wysocki@intel.com>
    • Arnd Bergmann's avatar
      cpufreq: tegra: add regulator dependency for T124 · b5832e4b
      Arnd Bergmann authored
      This driver is the only one that calls regulator_sync_voltage(), but it
      can currently be built with CONFIG_REGULATOR disabled, producing
      this build error:
      drivers/cpufreq/tegra124-cpufreq.c: In function 'tegra124_cpu_switch_to_pllx':
      drivers/cpufreq/tegra124-cpufreq.c:68:2: error: implicit declaration of function 'regulator_sync_voltage' [-Werror=implicit-function-declaration]
      My first attempt was to implement a helper for this function
      for regulator_sync_voltage, but Mark Brown explained:
         We don't do this for *all* regulator API functions - there's some where
         using them strongly suggests that there is actually a dependency on
         the regulator API.  This does seem like it might be falling into the
         specialist category [...]
         Looking at the code I'm pretty unclear on what the authors think the
         use of _sync_voltage() is doing in the first place so it may be even
         better to just remove the call.  It seems to have been included in the
         first commit so there's not changelog explaining things and there's
         no comment either.  I'd *expect* it to be a noop as far as I can see.
      This adds the dependency to make the driver always build successfully
      or not be enabled at all. Alternatively, we could investigate if the
      driver should stop calling regulator_sync_voltage instead.
      Signed-off-by: default avatarArnd Bergmann <arnd@arndb.de>
      Acked-by: default avatarViresh Kumar <viresh.kumar@linaro.org>
      Acked-by: default avatarJon Hunter <jonathanh@nvidia.com>
      Signed-off-by: default avatarRafael J. Wysocki <rafael.j.wysocki@intel.com>
  11. 09 Dec, 2015 1 commit
  12. 23 Nov, 2015 1 commit
  13. 18 Nov, 2015 1 commit
    • Arnd Bergmann's avatar
      cpufreq: mediatek: fix build error · 2d4ee303
      Arnd Bergmann authored
      The recently added mt8173 cpufreq driver relies on the cpu topology
      that is always present on ARM64 but optional on ARM32:
      drivers/cpufreq/mt8173-cpufreq.c: In function 'mtk_cpufreq_init':
      drivers/cpufreq/mt8173-cpufreq.c:441:30: error: 'cpu_topology' undeclared (first use in this function)
        cpumask_copy(policy->cpus, &cpu_topology[policy->cpu].core_sibling);
      This refines the Kconfig dependencies so that we can still build on
      ARM32, but only if COMPILE_TEST is selected and the CPU topology
      code is present.
      Signed-off-by: default avatarArnd Bergmann <arnd@arndb.de>
      Signed-off-by: default avatarRafael J. Wysocki <rafael.j.wysocki@intel.com>
  14. 12 Oct, 2015 1 commit
  15. 28 Sep, 2015 1 commit
  16. 05 Sep, 2015 1 commit
  17. 01 Sep, 2015 1 commit
    • Pi-Cheng Chen's avatar
      cpufreq: mediatek: Add MT8173 cpufreq driver · 1453863f
      Pi-Cheng Chen authored
      Mediatek MT8173 is an ARMv8 based quad-core (2*Cortex-A53 and
      2*Cortex-A72) SoC with duall clusters. For each cluster, two voltage
      inputs, Vproc and Vsram are supplied by two regulators. For the big
      cluster, two regulators come from different PMICs. In this case, when
      scaling voltage inputs of the cluster, the voltages of two regulator
      inputs need to be controlled by software explicitly under the SoC
      specific limitation:
      	100mV < Vsram - Vproc < 200mV
      which is called 'voltage tracking' mechanism. And when scaling the
      frequency of cluster clock input, the input MUX need to be parented to
      another "intermediate" stable PLL first and reparented to the original
      PLL once the original PLL is stable at the target frequency. This patch
      implements those mechanisms to enable CPU DVFS support for Mediatek
      MT8173 SoC.
      Signed-off-by: default avatarPi-Cheng Chen <pi-cheng.chen@linaro.org>
      Acked-by: default avatarViresh Kumar <viresh.kumar@linaro.org>
      Signed-off-by: default avatarRafael J. Wysocki <rafael.j.wysocki@intel.com>
  18. 13 Aug, 2015 1 commit
  19. 24 Jul, 2015 1 commit
  20. 16 Jul, 2015 2 commits
  21. 20 Jun, 2015 1 commit
  22. 14 May, 2015 1 commit
  23. 02 Apr, 2015 1 commit
  24. 31 Jan, 2015 1 commit
    • Arnd Bergmann's avatar
      cpufreq: exynos: allow modular build · 8b2b4a4e
      Arnd Bergmann authored
      The exynos cpufreq driver code recently gained a dependency on the
      cooling code, which may be a loadable module. This breaks an ARM
      allmodconfig build:
      drivers/built-in.o: In function `exynos_cpufreq_probe':
      :(.text+0x1748e8): undefined reference to `of_cpufreq_cooling_register'
      To avoid this problem, change cpufreq Kconfig to allow the drivers
      to be loadable modules as well and enforce a dependency on the
      thermal module.
      This change, in order to allow module builds on this cpufreq
      driver, properly constructs the driver into a single module,
      instead of several modules. The change also keeps the proper
      platform dependency, and therefore, it wont load in platforms
      that are not supposed to be loaded. The user will be able to
      build the support for all platforms, or select which platforms
      (s)he wants (as originally), except that now it can be a module,
      Besides, it will still keep the driver only on those configs
      that expect it to be on. And it won't compile/load on platforms
      that it is not supposed to. It brings the config ARM_EXYNOS_CPU_FREQ_BOOST_SW
      closer to this driver, so it looks better in the menuconfig.
      We intentionally change ARM_EXYNOS5440_CPUFREQ to be tristate too, to
      avoid future troubles.
      Cc: Viresh Kumar <viresh.kumar@linaro.org>
      Cc: Kukjin Kim <kgene@kernel.org>
      Cc: linux-arm-kernel@lists.infradead.org
      Cc: linux-pm@vger.kernel.org
      Cc: linux-samsung-soc@vger.kernel.org
      Fixes: e725d26c ("cpufreq: exynos: Use device tree to determine if cpufreq cooling should be registered")
      Signed-off-by: default avatarArnd Bergmann <arnd@arndb.de>
      Signed-off-by: default avatarEduardo Valentin <edubezval@gmail.com>
  25. 27 Nov, 2014 1 commit
  26. 03 Oct, 2014 1 commit
  27. 09 Sep, 2014 1 commit
  28. 04 Sep, 2014 1 commit
    • Xia Kaixu's avatar
      ARM: cns3xxx: fix allmodconfig panic in pci driver · 0a2e912d
      Xia Kaixu authored
      The kernel panic occurs when running an allmodconfig kernel on
      OMAP4460. The inicall "cns3xxx_pcie_init" does not check which
      hardware it's running on and just tries to access to its specific
      registers. Now call it from .init_late callback from the two
      machine descriptors.
      Signed-off-by: default avatarXia Kaixu <kaixu.xia@linaro.org>
      Signed-off-by: default avatarArnd Bergmann <arnd@arndb.de>
      Cc: Anton Vorontsov <anton@enomsg.org>
      Cc: Felix Fietkau <nbd@openwrt.org>
      Cc: Imre Kaloz <kaloz@openwrt.org>
      Cc: linaro-kernel@lists.linaro.org
      Cc: linux-arm-kernel@lists.infradead.org
  29. 16 Jul, 2014 2 commits
  30. 06 Jun, 2014 1 commit
  31. 30 May, 2014 1 commit
  32. 16 May, 2014 1 commit
  33. 30 Apr, 2014 1 commit
  34. 21 Apr, 2014 1 commit