Received: by 2002:ac0:a581:0:0:0:0:0 with SMTP id m1-v6csp126064imm; Thu, 21 Jun 2018 15:12:23 -0700 (PDT) X-Google-Smtp-Source: ADUXVKJxDmvfnsuF3r2v6it87wdnbjnk+15D8RoO9ACUUJrr0XcxnVEnPRcy1U5/GjXrnBm9qulQ X-Received: by 2002:a65:5d8a:: with SMTP id f10-v6mr24663477pgt.119.1529619143844; Thu, 21 Jun 2018 15:12:23 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1529619143; cv=none; d=google.com; s=arc-20160816; b=US9acp+GpQaznuSxbfxKjAIJ9wt5GnL6qoxbvrb6VhB8bImjx2+uCT4nt+CFmfPbCy xiMYC4WMt+oprDjQh/FJuq1R9jqn7rqD4MjVWWmlHyn1oqiyz27N2QWdpaJcQQtNTFRq Aur8FvigSGp9ttEghKztFzvSeSdStv8H0YR6/DUkPf4jjAMH9uLxCyA/dTLjLMSrzr4X 6G+3nvrBbGmSf18Nq2mEKiHdejgxvKLcW0ufakZN8+mndaqQvxs+BjZZ4CpFOzmktmzw CKu81qhEjegriHGzZoiK6h0zIqEEXfh8sns1J+Fl88Lcn8nq/IR60wCZL/VT6oUilifY LcUg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:references:in-reply-to:message-id:date :subject:cc:to:from:arc-authentication-results; bh=F8jfinYCAMDuamxoJp1xgkB/Q2QY6MfSZ+LZ5D6KWr0=; b=Sf8U5ue/YSNbPeA1Vu4BVsXuXvfMZL6wETGnzuq3nP5aRZIU52/RCcIAXXdsP9F2+6 ZC21oAiKfWR2sE0TG/+vrFX3ZdQty7ACm7n79WcBfIU4C9skbtutn7inxy9sVu+kE2u0 vSjzdE83c1Y6GZwR3aPkiTWpVut2w87JV1HK7VM1wyteF2BCuKH0rh3VzxBphsJntjmS pCERO9di3wUDajdNCR0tiQk6pugvp2mMvyAPsWNPCJlWoZfWzA0XgZfxLDjKb+Cyedhe i2/6u7NkstrdcIu284QbevYORv8ABcyz/jxHyXCrNm7qdR2XMGqaGG/t4oo4WAEEt6Wp fRjw== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id o1-v6si2254113pgb.101.2018.06.21.15.12.09; Thu, 21 Jun 2018 15:12:23 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S933933AbeFUWLM (ORCPT + 99 others); Thu, 21 Jun 2018 18:11:12 -0400 Received: from 212.199.177.27.static.012.net.il ([212.199.177.27]:34199 "EHLO herzl.nuvoton.co.il" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S933715AbeFUWLJ (ORCPT ); Thu, 21 Jun 2018 18:11:09 -0400 Received: from taln60.nuvoton.co.il (ntil-fw [212.199.177.25]) by herzl.nuvoton.co.il (8.13.8/8.13.8) with ESMTP id w5LMAC2k024325; Fri, 22 Jun 2018 01:10:12 +0300 Received: by taln60.nuvoton.co.il (Postfix, from userid 10070) id E854D62FF9; Fri, 22 Jun 2018 01:10:11 +0300 (IDT) From: Tomer Maimon To: robh+dt@kernel.org, mark.rutland@arm.com, jdelvare@suse.com, linux@roeck-us.net, avifishman70@gmail.com, yuenn@google.com, brendanhiggins@google.com, venture@google.com, joel@jms.id.au Cc: devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, linux-hwmon@vger.kernel.org, openbmc@lists.ozlabs.org, Tomer Maimon Subject: [PATCH v3 1/2] dt-binding: hwmon: Add NPCM7xx PWM and Fan controller documentation Date: Fri, 22 Jun 2018 01:09:56 +0300 Message-Id: <20180621220957.206638-2-tmaimon77@gmail.com> X-Mailer: git-send-email 2.14.1 In-Reply-To: <20180621220957.206638-1-tmaimon77@gmail.com> References: <20180621220957.206638-1-tmaimon77@gmail.com> Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Added device tree binding documentation for Nuvoton BMC NPCM7xx Pulse Width Modulation (PWM) and Fan tach controller. The PWM controller can support upto 8 PWM output ports. The Fan tach controller can support upto 16 tachometer inputs. Signed-off-by: Tomer Maimon --- .../devicetree/bindings/hwmon/npcm750-pwm-fan.txt | 84 ++++++++++++++++++++++ 1 file changed, 84 insertions(+) create mode 100644 Documentation/devicetree/bindings/hwmon/npcm750-pwm-fan.txt diff --git a/Documentation/devicetree/bindings/hwmon/npcm750-pwm-fan.txt b/Documentation/devicetree/bindings/hwmon/npcm750-pwm-fan.txt new file mode 100644 index 000000000000..a9eacda34f92 --- /dev/null +++ b/Documentation/devicetree/bindings/hwmon/npcm750-pwm-fan.txt @@ -0,0 +1,84 @@ +Nuvoton NPCM7xx PWM and Fan Tacho controller device driver + +The NPCM7xx has two identical Pulse-width modulation (PWM) controller modules, +Each PWM module has four PWM controller outputs, Totally 8 PWM controller outputs. + +The NPCM7xx has eight identical Fan tachometer controller modules, +Each Fan module has two Fan controller inputs, Totally 16 Fan controller inputs. + +Required properties for pwm-fan node: +- compatible : "nuvoton,npcm750-pwm-fan" for Poleg NPCM7XX. +- reg : specifies physical base address and size of the registers. +- reg-names : must contain: + * "pwm-base" for the PWM registers. + * "fan-base" for the Fan registers. +- clocks : phandle of reference clocks. +- clock-names : must contain + * "clk_apb3" for clock of PWM controller. + * "clk_apb4" for clock of Fan controller. +- interrupts : contain the Fan interrupts with flags for falling edge. +- pinctrl-names : a pinctrl state named "default" must be defined. +- pinctrl-0 : phandle referencing pin configuration of the PWM and Fan + controller ports. + +pwm subnode format: +=================== +Under pwm subnode can be upto 8 child nodes, each child node representing a PWM channel. +Each pwm subnode must have one PWM channel and atleast one Fan tach channel. + +For PWM channel can be configured cooling-levels to create cooling device. +Cooling device could be bound to a thermal zone for the thermal control. + +Required properties for each child node: +- pwm-ch : specify the PWM output channel. + integer value in the range 0 through 7, that represent + the PWM channel number that used. + +- fan-ch : specify the Fan input channel. + integer value in the range 0 through 15, that represent + the Fan channel number that used. + + At least one Fan tach input channel is required + +Optional property for each child node: +- cooling-levels: PWM duty cycle values in a range from 0 to 255 + which correspond to thermal cooling states. + +Examples: + +pwm_fan:pwm_fan_controller@103000 { + compatible = "nuvoton,npcm750-pwm-fan"; + reg = <0x103000 0x2000>, + <0x180000 0x8000>; + reg-names = "pwm_base", "fan_base"; + clocks = <&clk NPCM7XX_CLK_APB3>, + <&clk NPCM7XX_CLK_APB4>; + clock-names = "clk_apb3","clk_apb4"; + interrupts = , + , + , + , + , + , + , + ; + pinctrl-names = "default"; + pinctrl-0 = <&pwm0_pins &pwm1_pins &pwm2_pins + &fanin0_pins &fanin1_pins &fanin2_pins + &fanin3_pins &fanin4_pins>; + + pwm@0 { + pwm-ch = /bits/ 8 <0x00>; + fan-ch = /bits/ 8 <0x00 0x01>; + cooling-levels = <127 255>; + }; + pwm@1 { + pwm-ch = /bits/ 8 <0x01>; + fan-ch = /bits/ 8 <0x02 0x03>; + }; + pwm@2 { + pwm-ch = /bits/ 8 <0x02>; + fan-ch = /bits/ 8 <0x04>; + }; + +}; \ No newline at end of file -- 2.14.1