mbox series

[V7,0/8] Add CPUidle support for Tegra210

Message ID 20190221072150.4395-1-josephl@nvidia.com (mailing list archive)
Headers show
Series Add CPUidle support for Tegra210 | expand

Message

Joseph Lo Feb. 21, 2019, 7:21 a.m. UTC
This patch series adds CPUidle support for Tegra210, which supports
cpu-sleep state for CPU cores. And due to arch timer cannot work
across CPU core power-down and power on reset signal event. We introduce
Tegra210 timer driver to work as clock event device. So it can be the
wake-up source of CPU cores when they idled in the power-down state.

Fix in V7:
 * kconfig fix for 'depends on ARM || ARM64'
 * move suspend/resume to clkevt
 * refine the usage of the macro of TIMER_OF_DECLARE
 * update the 'entry/exit-latency-us' properties in the idle-states node
 * add one patch for Shield platform support

Fix in V6:
 * refine the timer defines in the timer driver (PATCH 2)
 * add ack tags from Jon Hunter.

Fixed in V5:
 * Just resend this whole series again with timer and Tegra maintainers
   included

Fixed in V4:
 * merge timer-tegra210.c into timer-tegra20.c
 * add a new patch to select TEGRA_TIMER by default for Tegra210

Fixed in V3:
 * use timer-of API for Tegra210 timer driver

Fixed in V2:
 * list all the timer IRQs in the binding doc and dts file
 * add error clean-up code in timer driver
 * add entry-latency-us and exit-latency-us properties for idle-states
   DT node

Joseph Lo (7):
  dt-bindings: timer: add Tegra210 timer
  clocksource: tegra: add Tegra210 timer support
  soc/tegra: default select TEGRA_TIMER for Tegra210
  arm64: tegra: fix timer node for Tegra210
  arm64: tegra: add CPU idle states properties for Tegra210
  arm64: tegra: Enable CPU idle support for Jetson TX1
  arm64: tegra: Enable CPU idle support for Smaug
  arm64: tegra: Enable CPU idle support for Shield

 .../bindings/timer/nvidia,tegra210-timer.txt  |  36 ++
 .../arm64/boot/dts/nvidia/tegra210-p2180.dtsi |   6 +
 .../arm64/boot/dts/nvidia/tegra210-p2894.dtsi |   6 +
 arch/arm64/boot/dts/nvidia/tegra210-smaug.dts |   7 +
 arch/arm64/boot/dts/nvidia/tegra210.dtsi      |  33 +-
 drivers/clocksource/Kconfig                   |   3 +-
 drivers/clocksource/timer-tegra20.c           | 370 ++++++++++++------
 drivers/soc/tegra/Kconfig                     |   1 +
 include/linux/cpuhotplug.h                    |   1 +
 9 files changed, 348 insertions(+), 115 deletions(-)
 create mode 100644 Documentation/devicetree/bindings/timer/nvidia,tegra210-timer.txt

Comments

Thierry Reding March 28, 2019, 4:05 p.m. UTC | #1
On Thu, Feb 21, 2019 at 03:21:42PM +0800, Joseph Lo wrote:
> This patch series adds CPUidle support for Tegra210, which supports
> cpu-sleep state for CPU cores. And due to arch timer cannot work
> across CPU core power-down and power on reset signal event. We introduce
> Tegra210 timer driver to work as clock event device. So it can be the
> wake-up source of CPU cores when they idled in the power-down state.
> 
> Fix in V7:
>  * kconfig fix for 'depends on ARM || ARM64'
>  * move suspend/resume to clkevt
>  * refine the usage of the macro of TIMER_OF_DECLARE
>  * update the 'entry/exit-latency-us' properties in the idle-states node
>  * add one patch for Shield platform support
> 
> Fix in V6:
>  * refine the timer defines in the timer driver (PATCH 2)
>  * add ack tags from Jon Hunter.
> 
> Fixed in V5:
>  * Just resend this whole series again with timer and Tegra maintainers
>    included
> 
> Fixed in V4:
>  * merge timer-tegra210.c into timer-tegra20.c
>  * add a new patch to select TEGRA_TIMER by default for Tegra210
> 
> Fixed in V3:
>  * use timer-of API for Tegra210 timer driver
> 
> Fixed in V2:
>  * list all the timer IRQs in the binding doc and dts file
>  * add error clean-up code in timer driver
>  * add entry-latency-us and exit-latency-us properties for idle-states
>    DT node
> 
> Joseph Lo (7):
>   dt-bindings: timer: add Tegra210 timer
>   clocksource: tegra: add Tegra210 timer support
>   soc/tegra: default select TEGRA_TIMER for Tegra210
>   arm64: tegra: fix timer node for Tegra210
>   arm64: tegra: add CPU idle states properties for Tegra210
>   arm64: tegra: Enable CPU idle support for Jetson TX1
>   arm64: tegra: Enable CPU idle support for Smaug
>   arm64: tegra: Enable CPU idle support for Shield
> 
>  .../bindings/timer/nvidia,tegra210-timer.txt  |  36 ++
>  .../arm64/boot/dts/nvidia/tegra210-p2180.dtsi |   6 +
>  .../arm64/boot/dts/nvidia/tegra210-p2894.dtsi |   6 +
>  arch/arm64/boot/dts/nvidia/tegra210-smaug.dts |   7 +
>  arch/arm64/boot/dts/nvidia/tegra210.dtsi      |  33 +-
>  drivers/clocksource/Kconfig                   |   3 +-
>  drivers/clocksource/timer-tegra20.c           | 370 ++++++++++++------
>  drivers/soc/tegra/Kconfig                     |   1 +
>  include/linux/cpuhotplug.h                    |   1 +
>  9 files changed, 348 insertions(+), 115 deletions(-)
>  create mode 100644 Documentation/devicetree/bindings/timer/nvidia,tegra210-timer.txt

Patches 4-8 applied to for-5.2/arm64/dt, thanks.

Thierry