From patchwork Wed Feb 17 06:55:28 2016 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Krzysztof Kozlowski X-Patchwork-Id: 8334971 Return-Path: X-Original-To: patchwork-linux-arm@patchwork.kernel.org Delivered-To: patchwork-parsemail@patchwork2.web.kernel.org Received: from mail.kernel.org (mail.kernel.org [198.145.29.136]) by patchwork2.web.kernel.org (Postfix) with ESMTP id 25DEDC02AA for ; Wed, 17 Feb 2016 06:58:45 +0000 (UTC) Received: from mail.kernel.org (localhost [127.0.0.1]) by mail.kernel.org (Postfix) with ESMTP id 4B65D202E9 for ; Wed, 17 Feb 2016 06:58:44 +0000 (UTC) Received: from bombadil.infradead.org (bombadil.infradead.org [198.137.202.9]) (using TLSv1.2 with cipher AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id 624CE20204 for ; Wed, 17 Feb 2016 06:58:43 +0000 (UTC) Received: from localhost ([127.0.0.1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.80.1 #2 (Red Hat Linux)) id 1aVw37-0003eK-5M; Wed, 17 Feb 2016 06:57:21 +0000 Received: from mailout1.w1.samsung.com ([210.118.77.11]) by bombadil.infradead.org with esmtps (Exim 4.80.1 #2 (Red Hat Linux)) id 1aVw2C-0002lM-9w for linux-arm-kernel@lists.infradead.org; Wed, 17 Feb 2016 06:56:26 +0000 Received: from eucpsbgm1.samsung.com (unknown [203.254.199.244]) by mailout1.w1.samsung.com (Oracle Communications Messaging Server 7.0.5.31.0 64bit (built May 5 2014)) with ESMTP id <0O2O004ZTJ9DNQ10@mailout1.w1.samsung.com> for linux-arm-kernel@lists.infradead.org; Wed, 17 Feb 2016 06:56:01 +0000 (GMT) X-AuditID: cbfec7f4-f79026d00000418a-b7-56c4198116c0 Received: from eusync4.samsung.com ( [203.254.199.214]) by eucpsbgm1.samsung.com (EUCPMTA) with SMTP id 1B.0A.16778.18914C65; Wed, 17 Feb 2016 06:56:01 +0000 (GMT) Received: from localhost.localdomain ([10.113.63.52]) by eusync4.samsung.com (Oracle Communications Messaging Server 7.0.5.31.0 64bit (built May 5 2014)) with ESMTPA id <0O2O005LQJ8T5Z20@eusync4.samsung.com>; Wed, 17 Feb 2016 06:56:01 +0000 (GMT) From: Krzysztof Kozlowski To: Kukjin Kim , Krzysztof Kozlowski , Lukasz Majewski , linux-arm-kernel@lists.infradead.org, linux-samsung-soc@vger.kernel.org, linux-kernel@vger.kernel.org, linux-pm@vger.kernel.org Subject: [RFC 3/3] ARM: dts: Don't overheat the Odroid XU3-Lite on high load Date: Wed, 17 Feb 2016 15:55:28 +0900 Message-id: <1455692128-28504-4-git-send-email-k.kozlowski@samsung.com> X-Mailer: git-send-email 2.5.0 In-reply-to: <1455692128-28504-1-git-send-email-k.kozlowski@samsung.com> References: <1455692128-28504-1-git-send-email-k.kozlowski@samsung.com> X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFtrJLMWRmVeSWpSXmKPExsVy+t/xa7qNkkfCDA6eEbHYOGM9q8X8K9dY Ld68XcNk8fqFoUX/49fMFm8ebma02PQYKH551xw2i8+9RxgtZpzfx2Tx5GEfm8XGrx4OPB47 Z91l91i85yWTx6ZVnWwed67tYfPYvKTeY0s/ULxvyypGj8+b5AI4orhsUlJzMstSi/TtErgy lhw7wlxwS6Ri6rWfrA2Mc/m7GDk5JARMJK42X2OFsMUkLtxbz9bFyMUhJLCUUaJ/yld2COc/ kNO0gA2kik3AWGLz8iVgVSICzUwS6xqng7UzCzxilLhw0wvEFhbwkTjQtp4JxGYRUJVYO2MD WDOvgLvEmtMHgOo5gNbJSSy4kA4S5hTwkNhx6DkjiC0EVNL1fzfTBEbeBYwMqxhFU0uTC4qT 0nMN9YoTc4tL89L1kvNzNzFCAvTLDsbFx6wOMQpwMCrx8AZkHA4TYk0sK67MPcQowcGsJMLL 8BwoxJuSWFmVWpQfX1Sak1p8iFGag0VJnHfurvchQgLpiSWp2ampBalFMFkmDk6pBkavWRXG 2/QSp8Q/s/kX92NjfVzVzFq59m93ZCztCvkev5u2a+6Nyuz1LyJCVl949mJfdM2NoimZmzeU 8cfeEYr6Lcpgf9I9879wxvllxZYXd86fxyry/tf9g68r16+NOphoqP2gQM2kxyVhz62nzAtn ffC2EzC0XpNZVDFf4Np6p9kCb5xer9ylxFKckWioxVxUnAgAaPbxzkwCAAA= X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20160216_225624_705859_8A569E1D X-CRM114-Status: GOOD ( 17.88 ) X-Spam-Score: -6.9 (------) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Eduardo Valentin , Viresh Kumar , Zhang Rui , Javier Martinez Canillas , Bartlomiej Zolnierkiewicz MIME-Version: 1.0 Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+patchwork-linux-arm=patchwork.kernel.org@lists.infradead.org X-Spam-Status: No, score=-4.2 required=5.0 tests=BAYES_00, RCVD_IN_DNSWL_MED, RP_MATCHES_RCVD, UNPARSEABLE_RELAY autolearn=unavailable version=3.3.1 X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on mail.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP After adding cpufreq-dt support to Exynos542x, the Odroid XU3-Lite can be easily overheated when launching eight CPU-intensive tasks: thermal thermal_zone3: critical temperature reached(121 C),shutting down This seems to be specific to Odroid XU3-Lite board which officially supports lower frequencies than regular XU3 or XU4. When working at maximum CPU speed (1800 MHz big and 1300 MHz LITTLE) in warmer place for longer time, the fan fails to cool down the board and it reaches critical temperature. Add CPU cooling to Exynos5422/5800 to fix this issue. When reaching 95 degrees of Celsius, the board will slow down by 3 steps (around 1400/1000 MHz). When reaching 110 degrees of Celsius go to 600 MHz. Signed-off-by: Krzysztof Kozlowski --- arch/arm/boot/dts/exynos5422-cpu-thermal.dtsi | 41 +++++++++++++++++++++++++++ 1 file changed, 41 insertions(+) diff --git a/arch/arm/boot/dts/exynos5422-cpu-thermal.dtsi b/arch/arm/boot/dts/exynos5422-cpu-thermal.dtsi index 2b289d7c0d13..66073ce29aee 100644 --- a/arch/arm/boot/dts/exynos5422-cpu-thermal.dtsi +++ b/arch/arm/boot/dts/exynos5422-cpu-thermal.dtsi @@ -34,6 +34,16 @@ hysteresis = <5000>; /* millicelsius */ type = "active"; }; + cpu_alert3: cpu-alert-3 { + temperature = <95000>; /* millicelsius */ + hysteresis = <5000>; /* millicelsius */ + type = "passive"; + }; + cpu_alert4: cpu-alert-4 { + temperature = <110000>; /* millicelsius */ + hysteresis = <5000>; /* millicelsius */ + type = "passive"; + }; cpu_crit0: cpu-crit-0 { temperature = <120000>; /* millicelsius */ hysteresis = <0>; /* millicelsius */ @@ -53,6 +63,37 @@ trip = <&cpu_alert2>; cooling-device = <&fan0 2 3>; }; + + /* + * When reaching cpu_alert3, reduce CPU + * by 3 steps. On Exynos5422/5800 that would + * be: 1400 MHz and 1000 MHz. + */ + map3 { + trip = <&cpu_alert3>; + cooling-device = <&cpu0 3 3>; + }; + map4 { + trip = <&cpu_alert3>; + cooling-device = <&cpu4 3 3>; + }; + + /* + * When reaching cpu_alert4, reduce CPU + * to 600 MHz (11 steps for big, 7 steps for + * LITTLE). + * Exynos5420 has less OPPs and reversed + * numbering of CPUs (big/LITTLE) so this + * would not match. + */ + map5 { + trip = <&cpu_alert4>; + cooling-device = <&cpu0 7 7>; + }; + map6 { + trip = <&cpu_alert4>; + cooling-device = <&cpu4 11 11>; + }; }; }; };