devicetree.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v2 RESEND 0/4] arm64: Hi6220: enable CPU idle states
@ 2016-01-21 10:53 Leo Yan
  2016-01-21 10:53 ` [PATCH v2 RESEND 1/4] arm64: dts: Reserve memory regions for hi6220 Leo Yan
                   ` (3 more replies)
  0 siblings, 4 replies; 6+ messages in thread
From: Leo Yan @ 2016-01-21 10:53 UTC (permalink / raw)
  To: Catalin Marinas, Will Deacon, Rob Herring, Pawel Moll,
	Mark Rutland, Ian Campbell, Kumar Gala, Greg Kroah-Hartman,
	Leo Yan, Yiping Xu, Yu Dongbin, Haojian Zhuang, Chen Feng,
	Tyler Baker, Bintian Wang, Sudeep Holla, Wei Xu, linux-arm-kernel,
	linux-kernel, devicetree

This patch series is to enable CPU idle states for Hi6220.

Hi6220 uses PSCIv0.2 compliance interface, so directly use ARM's generic
CPUIdle driver. Patch 1 is to reserve memory regions so make sure MCU can
work well to handle power controlling; Patch 2/3 enable sp804 timer as
broadcast timer during idle states; Patch 4 registers CPU power down state
and cluster power down state.

Patch 1 "arm64: dts: Reserve memory regions for hi6220" reserves memory
regions by carve out from memory node; This follows up Mark Rutland's
suggestion to avoid risks, such like kernel's linear mapping for reserved
secure memory region may introduce speculative accesses triggering aborts
from trustzone controller (TZC) and potential cache alias problem.

Rob Herring expressed reservations for this method and says "regions should
be marked as reserved, it's not really worth holding up this platform
further", so appreciate Rob helped to make progress for this series.

The resend patch series have been rebased on mainline kernel, and tested on
Hikey board. During testing I found CPUIdle menu governor is broken, this
bug has been reported by Sudeep; Rafael J. Wysocki already has committed
patch [1] to fix this issue. Testing pass after applied Rafael's patch.

Changes from v1:
* According to Sudeep's review, fix binding for idle-states
* According to Rob's review, due timers share same clock source with apb
  clock, so just only pass one clock phandle

[1] http://article.gmane.org/gmane.linux.kernel.commits.head/573361


Leo Yan (4):
  arm64: dts: Reserve memory regions for hi6220
  arm64: Kconfig: select sp804 timer for ARCH_HISI
  arm64: dts: add sp804 timer node for Hi6220
  arm64: dts: enable idle states for Hi6220

 arch/arm64/Kconfig.platforms                   |  1 +
 arch/arm64/boot/dts/hisilicon/hi6220-hikey.dts | 16 ++++++++---
 arch/arm64/boot/dts/hisilicon/hi6220.dtsi      | 40 ++++++++++++++++++++++++++
 3 files changed, 53 insertions(+), 4 deletions(-)

-- 
1.9.1

^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2016-04-18 15:14 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2016-01-21 10:53 [PATCH v2 RESEND 0/4] arm64: Hi6220: enable CPU idle states Leo Yan
2016-01-21 10:53 ` [PATCH v2 RESEND 1/4] arm64: dts: Reserve memory regions for hi6220 Leo Yan
     [not found] ` <1453373630-4693-1-git-send-email-leo.yan-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org>
2016-01-21 10:53   ` [PATCH v2 RESEND 2/4] arm64: Kconfig: select sp804 timer for ARCH_HISI Leo Yan
2016-04-18 15:14     ` Xu Wei
2016-01-21 10:53 ` [PATCH v2 RESEND 3/4] arm64: dts: add sp804 timer node for Hi6220 Leo Yan
2016-01-21 10:53 ` [PATCH v2 RESEND 4/4] arm64: dts: enable idle states " Leo Yan

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).