Received: by 2002:ad5:474a:0:0:0:0:0 with SMTP id i10csp8791166imu; Thu, 15 Nov 2018 18:09:58 -0800 (PST) X-Google-Smtp-Source: AJdET5e57mwt/RJ5mLFBwZm+8pzuB/cxaPjSOn8sH5k9qfb2Pip8i228nreAMxqcuXfImn6Av/Fi X-Received: by 2002:a63:310:: with SMTP id 16mr7927357pgd.79.1542334198695; Thu, 15 Nov 2018 18:09:58 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1542334198; cv=none; d=google.com; s=arc-20160816; b=suz0tPxX4Bjgyn17uzBhrWNiiEuo3Z95neIDuaxBfcqwVYviPd51+zKwEYfUUUXMlL YO2zfrhEndmEDSwDLJYyzEhEVu84UMqSoC0ie9rtLiq6nRr36BDZtpGco+2/Iqa3Gdt5 Aay4sdfsgb+UJgRFrVWJPG6cpjGFtaSWn9QMNYXk9vx8a13NfsaBovWnQRy2e4lvLQ12 93RswP/+qtwuoK0bjLig90n/0lHgfDkgBLyTjZiWNIBgPuVtiS0JBm+TPMWl/RBa3Idq f5tYY6Dn5jpV+j0Jucr6vrTaftMbcE31JdwOwFE1iFwchFDlDzB7uvYpGeIs+4+sAm89 aUKw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding :content-language:in-reply-to:mime-version:user-agent:date :message-id:references:cc:to:from:subject; bh=sw1H8Tfj/jWXjGwMFMe3/KxuxLxbdg+KDfTE3ah1W4M=; b=YG3r33JhDbgPEWQY5+WukIRjky4Ks6YH6i3h5/CTAe/yiL0BAXS3wJxk0iMHZVBx93 YSg9g3iZHmJhm2DJe2Ej4xFlWmXTUMjSodc2auwrSkkFzFBMoCJ1t9j3Tjro9/8RDpdD V9vT5n61GPLdxjOk1H7MIpieP0XfJ87mFiWcv6WFglpef9vp67vhxM6OY8SZNyulTyNC dwIcGaCp1gwWZq9Z9JNJyW7XuDJG5qA1n6s6TzjaXLKUx4R7oDkk4FVhxaNrVqCQdWXr 92v5HiHaH/X/nDX1AFiAGshj/WdqwHIKGWYd6VlBVnmlMXT2AVEIYqYXyx248CXvp6ei +lZg== 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=QUARANTINE sp=NONE dis=NONE) header.from=ti.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id v6si15104315pfj.167.2018.11.15.18.09.43; Thu, 15 Nov 2018 18:09:58 -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; 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=QUARANTINE sp=NONE dis=NONE) header.from=ti.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S2389280AbeKPMSN (ORCPT + 99 others); Fri, 16 Nov 2018 07:18:13 -0500 Received: from fllv0016.ext.ti.com ([198.47.19.142]:49364 "EHLO fllv0016.ext.ti.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1727061AbeKPMSN (ORCPT ); Fri, 16 Nov 2018 07:18:13 -0500 Received: from fllv0035.itg.ti.com ([10.64.41.0]) by fllv0016.ext.ti.com (8.15.2/8.15.2) with ESMTP id wAG26n6Y067536; Thu, 15 Nov 2018 20:06:49 -0600 Received: from DFLE103.ent.ti.com (dfle103.ent.ti.com [10.64.6.24]) by fllv0035.itg.ti.com (8.15.2/8.15.2) with ESMTPS id wAG26nrq028669 (version=TLSv1.2 cipher=AES256-GCM-SHA384 bits=256 verify=FAIL); Thu, 15 Nov 2018 20:06:49 -0600 Received: from DFLE104.ent.ti.com (10.64.6.25) by DFLE103.ent.ti.com (10.64.6.24) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256_P256) id 15.1.1466.3; Thu, 15 Nov 2018 20:06:49 -0600 Received: from dlep33.itg.ti.com (157.170.170.75) by DFLE104.ent.ti.com (10.64.6.25) with Microsoft SMTP Server (version=TLS1_0, cipher=TLS_RSA_WITH_AES_256_CBC_SHA) id 15.1.1466.3 via Frontend Transport; Thu, 15 Nov 2018 20:06:49 -0600 Received: from [172.22.217.238] (ileax41-snat.itg.ti.com [10.172.224.153]) by dlep33.itg.ti.com (8.14.3/8.13.8) with ESMTP id wAG26iAN009828; Thu, 15 Nov 2018 20:06:44 -0600 Subject: Re: [PATCH v3 06/13] dt-bindings: irqchip: Introduce TISCI Interrupt router bindings From: Lokesh Vutla To: Rob Herring CC: Nishanth Menon , Santosh Shilimkar , , , , Linux ARM Mailing List , , Tero Kristo , Sekhar Nori , Device Tree Mailing List , Grygorii Strashko , Peter Ujfalusi References: <20181106084105.32483-1-lokeshvutla@ti.com> <20181106084105.32483-7-lokeshvutla@ti.com> <5bea0eb4.1c69fb81.843ed.0186@mx.google.com> <569674da-07a1-107b-020a-4a11534a06b6@ti.com> Message-ID: <8adf30b7-07a2-fdc3-5993-3de0210638a6@ti.com> Date: Fri, 16 Nov 2018 07:36:45 +0530 User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:60.0) Gecko/20100101 Thunderbird/60.2.1 MIME-Version: 1.0 In-Reply-To: <569674da-07a1-107b-020a-4a11534a06b6@ti.com> Content-Type: text/plain; charset="windows-1252" Content-Language: en-US Content-Transfer-Encoding: 8bit X-EXCLAIMER-MD-CONFIG: e1e8a2fd-e40a-4ac6-ac9b-f7e9cc9ee180 Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Hi Rob, On 11/13/2018 11:43 AM, Lokesh Vutla wrote: > Hi Rob, > > On 12/11/18 11:30 PM, Rob Herring wrote: >> On Tue, Nov 06, 2018 at 02:10:58PM +0530, Lokesh Vutla wrote: >>> Add the DT binding documentation for Interrupt router driver. >>> >>> Signed-off-by: Lokesh Vutla >>> --- >>> Changes since v2: >>> - Dropped interrupt-parent from reqired properties description >>> - Updated the interrupt cells to 4. >>> >>> ? .../interrupt-controller/ti,sci-intr.txt????? | 84 +++++++++++++++++++ >>> ? MAINTAINERS?????????????????????????????????? |? 1 + >>> ? 2 files changed, 85 insertions(+) >>> ? create mode 100644 >>> Documentation/devicetree/bindings/interrupt-controller/ti,sci-intr.txt >>> >>> diff --git >>> a/Documentation/devicetree/bindings/interrupt-controller/ti,sci-intr.txt >>> b/Documentation/devicetree/bindings/interrupt-controller/ti,sci-intr.txt >>> new file mode 100644 >>> index 000000000000..06e69f8c812c >>> --- /dev/null >>> +++ >>> b/Documentation/devicetree/bindings/interrupt-controller/ti,sci-intr.txt >>> @@ -0,0 +1,84 @@ >>> +Texas Instruments K3 Interrupt Router >>> +===================================== >>> + >>> +The Interrupt Router (INTR) module provides a mechanism to mux M >>> +interrupt inputs to N interrupt outputs, where all M inputs are >>> selectable >>> +to be driven per N output. There is one register per output >>> (MUXCNTL_N) that >>> +controls the selection. >>> + >>> + >>> +???????????????????????????????? Interrupt Router >>> +???????????????????????????? +----------------------+ >>> +???????????????????????????? |? Inputs???? Outputs? | >>> +??????? +-------+??????????? | +------+???????????? | >>> +??????? | GPIO? |----------->| | irq0 |???????????? |?????? Host IRQ >>> +??????? +-------+??????????? | +------+???????????? |????? controller >>> +???????????????????????????? |??? .??????? +-----+? |????? +-------+ >>> +??????? +-------+??????????? |??? .??????? |? 0? |? |----->|? IRQ? | >>> +??????? | INTA? |----------->|??? .??????? +-----+? |????? +-------+ >>> +??????? +-------+??????????? |??? .????????? .????? | >>> +???????????????????????????? | +------+????? .????? | >>> +???????????????????????????? | | irqM |??? +-----+? | >>> +???????????????????????????? | +------+??? |? N? |? | >>> +???????????????????????????? |???????????? +-----+? | >>> +???????????????????????????? +----------------------+ >>> + >>> +Configuration of these MUXCNTL_N registers is done by a system >>> controller >>> +(like the Device Memory and Security Controller on K3 AM654 SoC). >>> System >>> +controller will keep track of the used and unused registers within >>> the Router. >>> +Driver should request the system controller to get the range of GIC >>> IRQs >>> +assigned to the requesting hosts. It is the drivers responsibility >>> to keep >>> +track of Host IRQs. >>> + >>> +Communication between the host processor running an OS and the system >>> +controller happens through a protocol called TI System Control >>> Interface >>> +(TISCI protocol). For more details refer: >>> +Documentation/devicetree/bindings/arm/keystone/ti,sci.txt >>> + >>> +TISCI Interrupt Router Node: >>> +---------------------------- >>> +- compatible:??????? Must be "ti,sci-intr". >>> +- interrupt-controller:??? Identifies the node as an interrupt >>> controller >>> +- #interrupt-cells:??? Specifies the number of cells needed to >>> encode an >>> +??????????? interrupt source. The value should be 4. >>> +??????????? First cell should contain the TISCI device ID of source >>> +??????????? Second cell should contain the interrupt source offset >>> +??????????? within the device >>> +??????????? Third cell specifies the trigger type as defined >>> +??????????? in interrupts.txt in this directory. >>> +??????????? Fourth cell should be 1 if the irq is coming from >>> +??????????? interrupt aggregator else 0. >>> +- ti,sci:??????? Phandle to TI-SCI compatible System controller node. >>> +- ti,sci-dst-id:??? TISCI device ID of the destination IRQ controller. >>> +- ti,sci-rm-range-girq:??? TISCI subtype id representing the host >>> irqs assigned >>> +??????????? to this interrupt router. >> >> u32 or array? > > it is u32. Sorry, I am wrong here. There is one instance where there are more than one set of gic irq ranges associated with this IP. Will fix it as an array in next version. Thanks and regards, Lokesh > >> >>> + >>> +For more details on TISCI IRQ resource management refer: >>> +http://downloads.ti.com/tisci/esd/latest/2_tisci_msgs/rm/rm_irq.html >>> + >>> +Example: >>> +-------- >>> +The following example demonstrates both interrupt router node and >>> the consumer >>> +node(main gpio) on the AM654 SoC: >>> + >>> +main_intr: interrupt-controller@1 { >> >> Unit-address is not valid here without a reg property. > > Sure will fix it in next version. > > Thanks and regards, > Lokesh > >> >>> +??? compatible = "ti,sci-intr"; >>> +??? interrupt-controller; >>> +??? interrupt-parent = <&gic>; >>> +??? #interrupt-cells = <4>; >>> +??? ti,sci = <&dmsc>; >>> +??? ti,sci-dst-id = <56>; >>> +??? ti,sci-rm-range-girq = <0x1>; >>> +}; >>> + >>> +main_gpio0: gpio@600000 { >>> +??? ... >>> +??? interrupt-parent = <&main_intr>; >>> +??? interrupts = <57 256 IRQ_TYPE_EDGE_RISING 0>, >>> +??????????? <57 257 IRQ_TYPE_EDGE_RISING 0>, >>> +??????????? <57 258 IRQ_TYPE_EDGE_RISING 0>, >>> +??????????? <57 259 IRQ_TYPE_EDGE_RISING 0>, >>> +??????????? <57 260 IRQ_TYPE_EDGE_RISING 0>, >>> +??????????? <57 261 IRQ_TYPE_EDGE_RISING 0>; >>> +??? ... >>> +}; >>> diff --git a/MAINTAINERS b/MAINTAINERS >>> index 88b28f6dec45..0e3aa3386287 100644 >>> --- a/MAINTAINERS >>> +++ b/MAINTAINERS >>> @@ -14739,6 +14739,7 @@ F:??? >>> Documentation/devicetree/bindings/reset/ti,sci-reset.txt >>> ? F:??? Documentation/devicetree/bindings/clock/ti,sci-clk.txt >>> ? F:??? drivers/clk/keystone/sci-clk.c >>> ? F:??? drivers/reset/reset-ti-sci.c >>> +F:??? >>> Documentation/devicetree/bindings/interrupt-controller/ti,sci-intr.txt >>> ? ? THANKO'S RAREMONO AM/FM/SW RADIO RECEIVER USB DRIVER >>> ? M:??? Hans Verkuil >>> --? >>> 2.19.1 >>> >>