Received: by 10.223.176.5 with SMTP id f5csp956006wra; Fri, 2 Feb 2018 08:49:29 -0800 (PST) X-Google-Smtp-Source: AH8x227Il0N6BP+Vp5rsxGO/xnzQFbsawK63s9+TegoX6qmuv6ik3zVf4VOHJDqAMpEQIOydFmIB X-Received: by 10.99.106.202 with SMTP id f193mr32060177pgc.115.1517590169660; Fri, 02 Feb 2018 08:49:29 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1517590169; cv=none; d=google.com; s=arc-20160816; b=EnmlsIzxFwycxVC5JxySi5HzHsQzmnutoE9ak1s3QYzZwtrIMN+ubM9MpXiOrLaGpV VyeFK2gPOxT+I5widHxFeuMZM239mJrv3hb5sabHBucgPGgmMlw2XCgwP/1fOAkMHaJs g4+hJQvmR4FVAvbt2NZVw6WbjTIqNNvt7Kkbxi8MC5sT9u9wugSb9kvwwyzfCDSPYAqW BZ916wzbXLNTEy7qsn+rpEZKQsRZfccxxAaH+AEHlfBmUetzQUlxWeLB2pjPubSzju+S XytGjjt9glWmpeJSQVnEukbfL9lUvroaxX73erRoHEqzr1UWsznNEX8tKmcuaP5l2p6O k7KA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:user-agent:in-reply-to :content-disposition:mime-version:references:message-id:subject:cc :to:from:date:dmarc-filter:dkim-signature:dkim-signature :arc-authentication-results; bh=tSFPpIJgDZRGt0x+U1EJqkIhNz77WpdZ2HFJF9SykgE=; b=tD+saSXbfrQJJHGgSUME72PSYZkuscKfuhuiYjNT7ZF6wqFoBM56r5WWmryN8dcgsh 0e6PJc+MUnyQ/4a67J7jDYpMlIB9/Q5JJT9tb/TJNmRr3mBw5m3W/qsUFVqh68MCOYus gHaih0diAExC3dDRM6kza+2MphkK+U7Vj6EOXvdXqFiSd6UkIX0WY6Om/VNkLS9hiJAA wl4OLSKxa+dcete9WRZt66HYzALsI8Qhy0Vuu05+SfcF0qDTQZ/s0rsHHBwEx6FqMgTu avfQhN4Ra3+iZxf05VVeV796TgRmAwoJYTveIhLrVidDCuUweN03JTL5UOWpD0Sf/lRB 0CPA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@codeaurora.org header.s=default header.b=hgSoDR5h; dkim=pass header.i=@codeaurora.org header.s=default header.b=hgSoDR5h; 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 Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id f186si211955pgc.459.2018.02.02.08.49.15; Fri, 02 Feb 2018 08:49:29 -0800 (PST) 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; dkim=pass header.i=@codeaurora.org header.s=default header.b=hgSoDR5h; dkim=pass header.i=@codeaurora.org header.s=default header.b=hgSoDR5h; 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 Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752373AbeBBQqv (ORCPT + 99 others); Fri, 2 Feb 2018 11:46:51 -0500 Received: from smtp.codeaurora.org ([198.145.29.96]:37972 "EHLO smtp.codeaurora.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751732AbeBBQqp (ORCPT ); Fri, 2 Feb 2018 11:46:45 -0500 Received: by smtp.codeaurora.org (Postfix, from userid 1000) id E01F16050D; Fri, 2 Feb 2018 16:46:44 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=codeaurora.org; s=default; t=1517590004; bh=0/TG9xNLWaR9TnK07yiruM2Ia5lCl/T42x99ymz2lQk=; h=Date:From:To:Cc:Subject:References:In-Reply-To:From; b=hgSoDR5hfKa2KEtfjAUkfI/iKx7Ry0XiDDiDvv1vlh3wQ/+SVxfSHbCGhwkyRdURJ PPvp5cOSxjWA7oh7ARS+NwS7YIuE0DS5XUAQLr7aWMd1w3+MsD3w+cMJsRo2N1fi03 B43WMhUSgSL3eazOEUVI8wZj1P42E/oXWoTgTKK0= X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on pdx-caf-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-2.8 required=2.0 tests=ALL_TRUSTED,BAYES_00, DKIM_SIGNED,T_DKIM_INVALID autolearn=no autolearn_force=no version=3.4.0 Received: from localhost (i-global254.qualcomm.com [199.106.103.254]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) (Authenticated sender: ilina@smtp.codeaurora.org) by smtp.codeaurora.org (Postfix) with ESMTPSA id D3D126050D; Fri, 2 Feb 2018 16:46:43 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=codeaurora.org; s=default; t=1517590004; bh=0/TG9xNLWaR9TnK07yiruM2Ia5lCl/T42x99ymz2lQk=; h=Date:From:To:Cc:Subject:References:In-Reply-To:From; b=hgSoDR5hfKa2KEtfjAUkfI/iKx7Ry0XiDDiDvv1vlh3wQ/+SVxfSHbCGhwkyRdURJ PPvp5cOSxjWA7oh7ARS+NwS7YIuE0DS5XUAQLr7aWMd1w3+MsD3w+cMJsRo2N1fi03 B43WMhUSgSL3eazOEUVI8wZj1P42E/oXWoTgTKK0= DMARC-Filter: OpenDMARC Filter v1.3.2 smtp.codeaurora.org D3D126050D Authentication-Results: pdx-caf-mail.web.codeaurora.org; dmarc=none (p=none dis=none) header.from=codeaurora.org Authentication-Results: pdx-caf-mail.web.codeaurora.org; spf=none smtp.mailfrom=ilina@codeaurora.org Date: Fri, 2 Feb 2018 16:46:43 +0000 From: Lina Iyer To: Marc Zyngier Cc: tglx@linutronix.de, jason@lakedaemon.net, linux-kernel@vger.kernel.org, linux-arm-msm@vger.kernel.org, sboyd@codeaurora.org, rnayak@codeaurora.org, asathyak@codeaurora.org, devicetree@vger.kernel.org Subject: Re: [PATCH RFC v2 2/3] dt-bindings/interrupt-controller: pdc: descibe PDC device binding Message-ID: <20180202164643.GC5319@codeaurora.org> References: <20180202142200.6229-1-ilina@codeaurora.org> <20180202142200.6229-3-ilina@codeaurora.org> <396cfc2f-7deb-0c93-7178-d9f5524f110e@arm.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii; format=flowed Content-Disposition: inline In-Reply-To: <396cfc2f-7deb-0c93-7178-d9f5524f110e@arm.com> User-Agent: Mutt/1.9.2 (2017-12-15) Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Fri, Feb 02 2018 at 16:28 +0000, Marc Zyngier wrote: >On 02/02/18 14:21, Lina Iyer wrote: >> From: Archana Sathyakumar >> >> Add device binding documentation for the PDC Interrupt controller on >> QCOM SoC's like the SDM845. The interrupt-controller can be used to >> sense edge low interrupts and wakeup interrupts when the GIC is >> non-operational. >> >> Cc: devicetree@vger.kernel.org >> Signed-off-by: Archana Sathyakumar >> Signed-off-by: Lina Iyer >> --- >> .../bindings/interrupt-controller/qcom,pdc.txt | 78 ++++++++++++++++++++++ >> 1 file changed, 78 insertions(+) >> create mode 100644 Documentation/devicetree/bindings/interrupt-controller/qcom,pdc.txt >> >> diff --git a/Documentation/devicetree/bindings/interrupt-controller/qcom,pdc.txt b/Documentation/devicetree/bindings/interrupt-controller/qcom,pdc.txt >> new file mode 100644 >> index 000000000000..7bf40cb6a4f8 >> --- /dev/null >> +++ b/Documentation/devicetree/bindings/interrupt-controller/qcom,pdc.txt >> @@ -0,0 +1,78 @@ >> +PDC interrupt controller >> + >> +Qualcomm Technologies Inc. SoCs based on the RPM Hardened architecture have a >> +Power Domain Controller (PDC) that is on always-on domain. In addition to >> +providing power control for the power domains, the hardware also has an >> +interrupt controller that can be used to help detect edge low interrupts as >> +well detect interrupts when the GIC is non-operational. >> + >> +GIC is parent interrupt controller at the highest level. Platform interrupt >> +controller PDC is next in hierarchy, followed by others. Drivers requiring >> +wakeup capabilities of their device interrupts routed through the PDC, must >> +specify PDC as their interrupt controller and request the PDC port associated >> +with the GIC interrupt. See example below. >> + >> +Properties: >> + >> +- compatible: >> + Usage: required >> + Value type: >> + Definition: Should contain "qcom,-pdc" >> + - "qcom,sdm845-pdc": For SDM845 >> + >> +- reg: >> + Usage: required >> + Value type: >> + Definition: Specifies the base physical address for PDC hardware. >> + >> +- interrupt-cells: >> + Usage: required >> + Value type: >> + Definition: Specifies the number of cells needed to encode an interrupt >> + source. >> + The value must match that of the parent interrupt >> + controller defined in the DT. >> + The encoding of these cells are same as described in [1]. > >There shouldn't be such a requirement. These are two independent pieces >of HW, and the first parameter doesn't mean anything for the PDC. > Wouldn't that be confusing - that we have different definitions for interrupts in the same DT? I agree that they are different interrupt controllers, but it just feels odd. I will change this to just take 2 cells. >> + >> +- interrupt-parent: >> + Usage: required >> + Value type: >> + Definition: Specifies the interrupt parent necessary for hierarchical >> + domain to operate. >> + >> +- interrupt-controller: >> + Usage: required >> + Value type: >> + Definition: Identifies the node as an interrupt controller. >> + >> +- qcom,pdc-range: >> + Usage: required >> + Value type: >> + Definition: Specifies the PDC pin offset and the number of PDC ports. >> + The tuples indicates the valid mapping of valid PDC ports >> + and their hwirq mapping. >> + The first element of the tuple is the staring PDC port num. >> + The second element is the hwirq number for the PDC port. >> + The third element is the number of elements in sequence. >> + >> +Example: >> + >> + pdc: interrupt-controller@b220000 { >> + compatible = "qcom,sdm845-pdc"; >> + reg = <0xb220000 0x30000>; >> + qcom,pdc-ranges = <0 512 94>, <94 641 15>, <115 662 7>; >> + #interrupt-cells = <3>; >> + interrupt-parent = <&intc>; >> + interrupt-controller; >> + }; >> + >> +The DT binding of a device that wants to use the GIC SPI 514 as a wakeup >> +interrupt, would look like this - >> + >> + wake-device { >> + [...] >> + interrupt-parent = <&pdc>; >> + interrupt = <0 2 0>; > >Again: 0 is not a valid trigger value. > Ok. Thanks, Lina