Received: by 2002:a05:6a10:16a7:0:0:0:0 with SMTP id gp39csp495371pxb; Thu, 12 Nov 2020 08:46:13 -0800 (PST) X-Google-Smtp-Source: ABdhPJz2Ngef0suk4vAX+xt/yk/zRcZT2FX09F4PpzqGuWKCwT1cLHpLN9+gJ0mHvlVeCNYI6lo5 X-Received: by 2002:a17:906:d20e:: with SMTP id w14mr103405ejz.479.1605199573039; Thu, 12 Nov 2020 08:46:13 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1605199573; cv=none; d=google.com; s=arc-20160816; b=dvJYwYHCcQAJY511ZOw+aJa8JEw1d0C100XuMlCTZzqz/xQBmpUN5oav1x5tN3RHDN HyB+WonhF3DaTc3+h/C/SEs40Wj1aykhrK+Fc61vaIXBIzTbQwlVK1MAn/l0XPoXwqCI mNZERoys4uadMV8atUkeFKymSMazbaY3/1bwbBNw4tn0wKwr+MCTp7tTCpeC0N6XLXpM 2+fzvg5OQjVOHfcAdnQf1ZyGDWg0Qbo6udku79vTDNCOjVut9XJz4aSgCBF3oLH42Ir8 AJP+8/VjjMebrM6+7X+iRjmI0bRTu56kkFgDP/JGcg1tGl4jglHMgL7MC+PJcZteeOzl 8w/g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from; bh=XgBGB7rk2+kj4UX7ErMKpW5kbxqmu4ruCRsCi3VGXec=; b=t9nX2CVTrQaKNXzkMgY8X0BSg0VJXWKnNhJkGlt62rEw+Zeg8e1BlSKZkIBc9O0ygZ MrIUN85BB+Pu31WzmFG5xAuhaM5K7Ko/WzTN3R7nWlEzGqEA5jZf10UTInLmrR41P4Mm T9rmay6zNGrKj4hxjwDQxusQBgRwCaeGVrcFMt6pzewD9nvzHZwvSGIE5LKsXzH4/N1h sfG5CEDoudiK3Y6ompknAhv/H9cm8/zWfPhVVIivjJbc5hbtvq6QMb8/P0Su/7OxxqHz 2eEOJJpm3iMDfgzcJgu0QHNmsUWOOyVOM8iFhlMFW/MXW4fRgI7B2oQrD7fz0i2aQPw5 j7Qg== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id bt25si4241288edb.572.2020.11.12.08.45.48; Thu, 12 Nov 2020 08:46:13 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1729170AbgKLQoK (ORCPT + 99 others); Thu, 12 Nov 2020 11:44:10 -0500 Received: from mx2.suse.de ([195.135.220.15]:49950 "EHLO mx2.suse.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1729114AbgKLQoH (ORCPT ); Thu, 12 Nov 2020 11:44:07 -0500 X-Virus-Scanned: by amavisd-new at test-mx.suse.de Received: from relay2.suse.de (unknown [195.135.221.27]) by mx2.suse.de (Postfix) with ESMTP id 9F45BAF84; Thu, 12 Nov 2020 16:44:04 +0000 (UTC) From: Nicolas Saenz Julienne To: u.kleine-koenig@pengutronix.de, linux-kernel@vger.kernel.org, Rob Herring , Nicolas Saenz Julienne Cc: f.fainelli@gmail.com, linux-pwm@vger.kernel.org, bcm-kernel-feedback-list@broadcom.com, linux-arm-kernel@lists.infradead.org, devicetree@vger.kernel.org, wahrenst@gmx.net, linux-input@vger.kernel.org, dmitry.torokhov@gmail.com, gregkh@linuxfoundation.org, devel@driverdev.osuosl.org, p.zabel@pengutronix.de, linux-gpio@vger.kernel.org, linus.walleij@linaro.org, linux-clk@vger.kernel.org, sboyd@kernel.org, linux-rpi-kernel@lists.infradead.org, bgolaszewski@baylibre.com, andy.shevchenko@gmail.com Subject: [PATCH v4 10/11] DO NOT MERGE: ARM: dts: Add RPi's official PoE hat support Date: Thu, 12 Nov 2020 17:36:28 +0100 Message-Id: <20201112163630.17177-11-nsaenzjulienne@suse.de> X-Mailer: git-send-email 2.29.2 In-Reply-To: <20201112163630.17177-1-nsaenzjulienne@suse.de> References: <20201112163630.17177-1-nsaenzjulienne@suse.de> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org This is an example on how to enable the fan on top of RPi's official PoE hat. Signed-off-by: Nicolas Saenz Julienne --- Changes since v1: - Update patch to use 2 pwm cells arch/arm/boot/dts/bcm2711-rpi-4-b.dts | 54 +++++++++++++++++++++++++++ 1 file changed, 54 insertions(+) diff --git a/arch/arm/boot/dts/bcm2711-rpi-4-b.dts b/arch/arm/boot/dts/bcm2711-rpi-4-b.dts index 09a1182c2936..361db82619a4 100644 --- a/arch/arm/boot/dts/bcm2711-rpi-4-b.dts +++ b/arch/arm/boot/dts/bcm2711-rpi-4-b.dts @@ -5,6 +5,7 @@ #include "bcm283x-rpi-usb-peripheral.dtsi" #include +#include / { compatible = "raspberrypi,4-model-b", "brcm,bcm2711"; @@ -68,6 +69,54 @@ sd_vcc_reg: sd_vcc_reg { enable-active-high; gpio = <&expgpio 6 GPIO_ACTIVE_HIGH>; }; + + fan: pwm-fan { + compatible = "pwm-fan"; + cooling-levels = <0 50 150 255>; + #cooling-cells = <2>; + pwms = <&fwpwm RASPBERRYPI_FIRMWARE_PWM_POE 80000>; + }; + + thermal-zones { + cpu_thermal: cpu-thermal { + trips { + threshold: trip-point@0 { + temperature = <45000>; + hysteresis = <5000>; + type = "active"; + }; + + target: trip-point@1 { + temperature = <50000>; + hysteresis = <2000>; + type = "active"; + }; + + cpu_hot: cpu_hot@0 { + temperature = <55000>; + hysteresis = <2000>; + type = "active"; + }; + }; + + cooling-maps { + map0 { + trip = <&threshold>; + cooling-device = <&fan 0 1>; + }; + + map1 { + trip = <&target>; + cooling-device = <&fan 1 2>; + }; + + map2 { + trip = <&cpu_hot>; + cooling-device = <&fan 2 3>; + }; + }; + }; + }; }; &ddc0 { @@ -103,6 +152,11 @@ reset: reset { compatible = "raspberrypi,firmware-reset"; #reset-cells = <1>; }; + + fwpwm: pwm { + compatible = "raspberrypi,firmware-pwm"; + #pwm-cells = <2>; + }; }; &gpio { -- 2.29.2