From patchwork Thu Aug 6 07:48:13 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Lokesh Vutla X-Patchwork-Id: 11703313 Return-Path: Received: from mail.kernel.org (pdx-korg-mail-1.web.codeaurora.org [172.30.200.123]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id 3F20A138C for ; Thu, 6 Aug 2020 12:28:36 +0000 (UTC) Received: from merlin.infradead.org (merlin.infradead.org [205.233.59.134]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id 2DDB222DFA for ; Thu, 6 Aug 2020 12:28:36 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (2048-bit key) header.d=lists.infradead.org header.i=@lists.infradead.org header.b="atple0Bx"; dkim=fail reason="signature verification failed" (1024-bit key) header.d=ti.com header.i=@ti.com header.b="DpBIL8xU" DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 2DDB222DFA Authentication-Results: mail.kernel.org; dmarc=fail (p=quarantine dis=none) header.from=ti.com Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=linux-arm-kernel-bounces+patchwork-linux-arm=patchwork.kernel.org@lists.infradead.org DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=merlin.20170209; h=Sender:Content-Transfer-Encoding: Content-Type:Cc:List-Subscribe:List-Help:List-Post:List-Archive: List-Unsubscribe:List-Id:MIME-Version:Message-ID:Date:Subject:To:From: Reply-To:Content-ID:Content-Description:Resent-Date:Resent-From:Resent-Sender :Resent-To:Resent-Cc:Resent-Message-ID:In-Reply-To:References:List-Owner; bh=ZlI6mbNZZ0M6Tz0bysi3Vr8yhisQfcJybdac/8WNods=; b=atple0BxuqyKx2wuWJddjtAfuw XAbEny/5lbRfRAt4xjj5W7SGypIFJhfxbU6CqaJZXogkxxiz7MtK8qMXjv3g8EG5CMVGGH6rKWsj2 OwicyV4qo653HgdAJ8ov2K+rkQp1Wpd7HfFDPFBlqCjUwtr/skdg8udkW78qOjZKS21SRM4UHLIfT E7CUu88Zr1c+T1cYzd2yTkep8HUgF8TV9yrzxXE2KtYRdzY8i9t/8m/B09UI0O5Cu9bgGnE1iRWKb fEJApF+8Jj0nDJFo+eJiVQIAPcOppN3v2M2uL0bC5NnEMK4rxer/8xAvc4+YkrIxWuPoTNDUKqWjz wR04VYRw==; Received: from localhost ([::1] helo=merlin.infradead.org) by merlin.infradead.org with esmtp (Exim 4.92.3 #3 (Red Hat Linux)) id 1k3aeA-0004fa-Bo; Thu, 06 Aug 2020 07:49:06 +0000 Received: from fllv0015.ext.ti.com ([198.47.19.141]) by merlin.infradead.org with esmtps (Exim 4.92.3 #3 (Red Hat Linux)) id 1k3ae4-0004bk-5R for linux-arm-kernel@lists.infradead.org; Thu, 06 Aug 2020 07:49:01 +0000 Received: from fllv0034.itg.ti.com ([10.64.40.246]) by fllv0015.ext.ti.com (8.15.2/8.15.2) with ESMTP id 0767mXMg108540; Thu, 6 Aug 2020 02:48:33 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ti.com; s=ti-com-17Q1; t=1596700113; bh=3M4CuMX5MIgPdgE/0mpUEmd2g7W/gj9qcBLithCYER0=; h=From:To:CC:Subject:Date; b=DpBIL8xU6g7SKTMGtoI++/Mfufa4dze3+iDQHCTADFVGSPgtjao0VGT1PH5lEVo9O 3NMjVDwbpVuZLWbxnxAV+7D9lcetAs5223SpyVn61p/6ikvRVyuvHQLgpP0WMKye4R z5cnZHxuc3SfCTOWX5hT5Cq8LHwGO2nuVAzJ0Y40= Received: from DFLE109.ent.ti.com (dfle109.ent.ti.com [10.64.6.30]) by fllv0034.itg.ti.com (8.15.2/8.15.2) with ESMTPS id 0767mXOn078259 (version=TLSv1.2 cipher=AES256-GCM-SHA384 bits=256 verify=FAIL); Thu, 6 Aug 2020 02:48:33 -0500 Received: from DFLE115.ent.ti.com (10.64.6.36) by DFLE109.ent.ti.com (10.64.6.30) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256_P256) id 15.1.1979.3; Thu, 6 Aug 2020 02:48:32 -0500 Received: from lelv0327.itg.ti.com (10.180.67.183) by DFLE115.ent.ti.com (10.64.6.36) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256_P256) id 15.1.1979.3 via Frontend Transport; Thu, 6 Aug 2020 02:48:32 -0500 Received: from lokesh-ssd.dhcp.ti.com (ileax41-snat.itg.ti.com [10.172.224.153]) by lelv0327.itg.ti.com (8.15.2/8.15.2) with ESMTP id 0767mSYn051454; Thu, 6 Aug 2020 02:48:29 -0500 From: Lokesh Vutla To: Marc Zyngier , Rob Herring Subject: [PATCH v6 00/13] irqchip: ti, sci-intr/inta: Update the dt bindings to accept different interrupt parents Date: Thu, 6 Aug 2020 13:18:13 +0530 Message-ID: <20200806074826.24607-1-lokeshvutla@ti.com> X-Mailer: git-send-email 2.27.0 MIME-Version: 1.0 X-EXCLAIMER-MD-CONFIG: e1e8a2fd-e40a-4ac6-ac9b-f7e9cc9ee180 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20200806_034900_370117_D54C4B02 X-CRM114-Status: GOOD ( 18.20 ) X-Spam-Score: -2.5 (--) X-Spam-Report: SpamAssassin version 3.4.4 on merlin.infradead.org summary: Content analysis details: (-2.5 points) pts rule name description ---- ---------------------- -------------------------------------------------- -2.3 RCVD_IN_DNSWL_MED RBL: Sender listed at https://www.dnswl.org/, medium trust [198.47.19.141 listed in list.dnswl.org] -0.0 SPF_PASS SPF: sender matches SPF record 0.0 SPF_HELO_NONE SPF: HELO does not publish an SPF Record -0.1 DKIM_VALID_EF Message has a valid DKIM or DK signature from envelope-from domain -0.1 DKIM_VALID Message has at least one valid DKIM or DK signature 0.1 DKIM_SIGNED Message has a DKIM or DK signature, not necessarily valid -0.1 DKIM_VALID_AU Message has a valid DKIM or DK signature from author's domain -0.0 DKIMWL_WL_HIGH DKIMwl.org - Whitelisted High sender X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Nishanth Menon , Peter Ujfalusi , Grygorii Strashko , Device Tree Mailing List , Lokesh Vutla , Sekhar Nori , Tero Kristo , Santosh Shilimkar , Thomas Gleixner , Linux ARM Mailing List Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+patchwork-linux-arm=patchwork.kernel.org@lists.infradead.org Hi Marc, This is continuation of the RFC patches[0] regarding the driver updates to support for following interrupt parent connection: - INTR -> INTR - INTA -> GICv3 The current existing driver assumes that INTR is always connected to GICv3 and INTA is always connected to INTR. As discussed this change breaks the DT backward compatibility but it allows to not depend on TISCI firmware properties in DT node. IMHO, this will ensure that any future changes will not effect DT properties. This series depends on the the new Yaml bindings for common TISCI[1]. [0] https://lore.kernel.org/linux-arm-kernel/20190923042405.26064-1-lokeshvutla@ti.com/ [1] https://patchwork.kernel.org/patch/11676843/ Tested with: (There is a build error on Today's master while building dtbs. So I enabled only the TI specific components for building DTBS). - DT_SCHEMA_FILES="Documentation/devicetree/bindings/interrupt-controller/ti,sci-intr.yaml" v8make dt_binding_check - DT_SCHEMA_FILES="Documentation/devicetree/bindings/interrupt-controller/ti,sci-inta.yaml" v8make dt_binding_check - DT_SCHEMA_FILES="Documentation/devicetree/bindings/interrupt-controller/ti,sci-intr.yaml" v8make dtbs_check - DT_SCHEMA_FILES="Documentation/devicetree/bindings/interrupt-controller/ti,sci-inta.yaml" v8make dtbs_check - v8make allmodconfig Changes since v5: - Rebased on latest master. - Collected Reviewed-by from Rob. - Included DT changes in the same series so that everything can be merged in a single go. Without DT changes, there are regressions for DMA and other consumer peripherals so suggestion is to merge everthing in a single go. DT changes apply cleanly on next and Linus's master without any merge conflicts. Changes since v4: - Fixed Rob's comment on INTR and INTA yaml documentation - Collected Reviewed-by's and Acked-by's Changes since v3: - Hardcode param_count based on parent instead of reading it from DT. - Drop storing TISCI device id in platform device id field. Changes since v2: - Fixed comments from Rob - Fixed DT schema warnings. Changes since v1: - Rebased on top of latest Linux master - Dropped DT patches. Lokesh Vutla (13): firmware: ti_sci: Drop the device id to resource type translation firmware: ti_sci: Drop unused structure ti_sci_rm_type_map firmware: ti_sci: Add support for getting resource with subtype dt-bindings: irqchip: ti,sci-intr: Update bindings to drop the usage of gic as parent dt-bindings: irqchip: Convert ti,sci-intr bindings to yaml irqchip/ti-sci-intr: Add support for INTR being a parent to INTR dt-bindings: irqchip: ti,sci-inta: Update docs to support different parent. dt-bindings: irqchip: Convert ti,sci-inta bindings to yaml irqchip/ti-sci-inta: Do not store TISCI device id in platform device id field irqchip/ti-sci-inta: Add support for INTA directly connecting to GIC arm64: dts: k3-j721e: ti-sci-inta/intr: Update to latest bindings arm64: dts: k3-am65: ti-sci-inta/intr: Update to latest bindings arm64: dts: k3-am65: Update the RM resource types .../interrupt-controller/ti,sci-inta.txt | 66 -------- .../interrupt-controller/ti,sci-inta.yaml | 98 +++++++++++ .../interrupt-controller/ti,sci-intr.txt | 82 --------- .../interrupt-controller/ti,sci-intr.yaml | 102 ++++++++++++ MAINTAINERS | 4 +- arch/arm64/boot/dts/ti/k3-am65-main.dtsi | 36 ++-- arch/arm64/boot/dts/ti/k3-am65-mcu.dtsi | 12 +- arch/arm64/boot/dts/ti/k3-am65-wakeup.dtsi | 8 +- .../arm64/boot/dts/ti/k3-am654-base-board.dts | 4 +- .../dts/ti/k3-j721e-common-proc-board.dts | 10 +- arch/arm64/boot/dts/ti/k3-j721e-main.dtsi | 43 ++--- .../boot/dts/ti/k3-j721e-mcu-wakeup.dtsi | 12 +- drivers/firmware/ti_sci.c | 155 ++++++++---------- drivers/irqchip/irq-ti-sci-inta.c | 95 +++++++++-- drivers/irqchip/irq-ti-sci-intr.c | 152 ++++++++++------- include/linux/soc/ti/ti_sci_protocol.h | 13 ++ 16 files changed, 516 insertions(+), 376 deletions(-) delete mode 100644 Documentation/devicetree/bindings/interrupt-controller/ti,sci-inta.txt create mode 100644 Documentation/devicetree/bindings/interrupt-controller/ti,sci-inta.yaml delete mode 100644 Documentation/devicetree/bindings/interrupt-controller/ti,sci-intr.txt create mode 100644 Documentation/devicetree/bindings/interrupt-controller/ti,sci-intr.yaml