From patchwork Tue Jul 28 09:18:33 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Grzegorz Jaszczyk X-Patchwork-Id: 11688727 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 60BA5912 for ; Tue, 28 Jul 2020 09:21:37 +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 1403B206F5 for ; Tue, 28 Jul 2020 09:21:37 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (2048-bit key) header.d=lists.infradead.org header.i=@lists.infradead.org header.b="ALTh9/1T"; dkim=fail reason="signature verification failed" (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b="mziHtOWc" DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 1403B206F5 Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=linaro.org 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:MIME-Version:Cc:List-Subscribe:List-Help:List-Post:List-Archive: List-Unsubscribe:List-Id: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=pEzT4k4DV4SL4N1AxbH9mMVxCiwSIwLgMOtzbJtm+KQ=; b=ALTh9/1TA+DcnQa1/AxrZVnemy PuMd1ljWUuiPgBOMTK2GWTHZOKPQ1rq1JyGdsCq29+se5NTQmXiUw4OiA/mswqmfxsKkaEmFoV0wB 5d3H6MsWmKP0Zk4wP7oa7x2B+P2C1Ux02GEcUdaRyviPAzuTuxrRs99kOKEsuKlNZC3ja3SOTypwW aFnhIk/1gLZV1OIdGREThcjZ75hZQo9ctqMUP1EeOnSB53Lk2pYMYFtK7YNACngjhPyeUSICfuH0e L9bk0fe0iBkP2EhPw+JE/18Ae7SO5FaWIsbWw9vv6+MlreM1D9VNxcwAor4Vcepf9DS1b9dKWj6+Q e/Fcd6uw==; Received: from localhost ([::1] helo=merlin.infradead.org) by merlin.infradead.org with esmtp (Exim 4.92.3 #3 (Red Hat Linux)) id 1k0Llw-0005oB-GC; Tue, 28 Jul 2020 09:19:44 +0000 Received: from mail-lj1-x241.google.com ([2a00:1450:4864:20::241]) by merlin.infradead.org with esmtps (Exim 4.92.3 #3 (Red Hat Linux)) id 1k0Llq-0005nO-BI for linux-arm-kernel@lists.infradead.org; Tue, 28 Jul 2020 09:19:42 +0000 Received: by mail-lj1-x241.google.com with SMTP id v4so10674411ljd.0 for ; Tue, 28 Jul 2020 02:19:36 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=from:to:cc:subject:date:message-id; bh=Jlap9/5dk8KWtoGhWc1HZn/eJR07N3yz1dFQNoUI38w=; b=mziHtOWcHiK9xk6wplNEr+rCLC0uTh86OzZiTA4tEgTmuB7tv/AE3R7555cvtrDOOo XjWKr4SfobnGZOL1fZ8zA/sGslNPbu/b6ghKwF0UqQdhb/uVmllgJ4JUbJdYNV1F2vKq FPNssOe2JNWl21ebgCs9pRR+LdXWxncEWz4n0Hhq6ZCpNDBVuXPXtcc9cjD3PT3pU/wg Hbh/TiYQlsXo3vJnnntu3izDQN4Cb1+n5aEinkh+ZHKN28Rp3DyWCFU6OPB2TDz2Xh4B TtcyiQgzlP835rYBfW6tk12eFNyZnnEmtPkZK+idJ4dLw6dlyND6n15c2j+hNthSTVw2 eB3g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id; bh=Jlap9/5dk8KWtoGhWc1HZn/eJR07N3yz1dFQNoUI38w=; b=lAdOci0FMe6EF8H4vWD8ol8FpVt224TDWc5zmFL9W2zO7lcaN5VwNHfQQvMBYGRU6v Mvcu0lRKVa0Lg29h/oPew647iUPi4lT0ERXM7KQOWo9YZBZUjsD2v3wCK8EY/cLsiEEa Efm6RDnsxprYq9vdHMv/mB2wOq5UBZ0/wPpZ+g9Nv8g3fGuSahhC2jhk7UUvSQI5keY6 bvKTfKgP9aZIiVQ0Q7nSoEwJWksaB2jhIwuekLTnt/hhrgJ0d3LwpE8blx9++coRwjjX TcuMjHUCOBbhm0qEpigxUZnD29aKYYKfnQmqoUyK6UbGyMKrJ85ZybXMIQUoFFrFmfvO y1cQ== X-Gm-Message-State: AOAM530zvWgTI4JGwKsQWexFl5bngfmVqoIdZfmAoOVAaTTuxBxNd/4z s68arqYaMnPtD9PzsXtjb5vr6g== X-Google-Smtp-Source: ABdhPJxMiZn/Up98ifKkjiIq6quC8AJuLfL/IJJqn+36Kj8wcZa176x/QHlVa1aXvg+qFan6srj8Rw== X-Received: by 2002:a2e:964d:: with SMTP id z13mr11721612ljh.98.1595927975435; Tue, 28 Jul 2020 02:19:35 -0700 (PDT) Received: from gilgamesh.semihalf.com (193-106-246-138.noc.fibertech.net.pl. [193.106.246.138]) by smtp.gmail.com with ESMTPSA id q22sm3643270lfc.33.2020.07.28.02.19.34 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Tue, 28 Jul 2020 02:19:34 -0700 (PDT) From: Grzegorz Jaszczyk To: tglx@linutronix.de, jason@lakedaemon.net, maz@kernel.org, s-anna@ti.com Subject: [PATCH v4 0/5] Add TI PRUSS Local Interrupt Controller IRQChip driver Date: Tue, 28 Jul 2020 11:18:33 +0200 Message-Id: <1595927918-19845-1-git-send-email-grzegorz.jaszczyk@linaro.org> X-Mailer: git-send-email 2.7.4 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20200728_051938_589090_8A45F8AF X-CRM114-Status: GOOD ( 17.86 ) X-Spam-Score: -0.2 (/) X-Spam-Report: SpamAssassin version 3.4.4 on merlin.infradead.org summary: Content analysis details: (-0.2 points) pts rule name description ---- ---------------------- -------------------------------------------------- -0.0 RCVD_IN_DNSWL_NONE RBL: Sender listed at https://www.dnswl.org/, no trust [2a00:1450:4864:20:0:0:0:241 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 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: devicetree@vger.kernel.org, grzegorz.jaszczyk@linaro.org, david@lechnology.com, praneeth@ti.com, linux-kernel@vger.kernel.org, robh+dt@kernel.org, linux-omap@vger.kernel.org, lee.jones@linaro.org, wmills@ti.com, linux-arm-kernel@lists.infradead.org MIME-Version: 1.0 Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+patchwork-linux-arm=patchwork.kernel.org@lists.infradead.org Hi All, The following is a v4 version of the series [1][2][3] that adds an IRQChip driver for the local interrupt controller present within a Programmable Real-Time Unit and Industrial Communication Subsystem (PRU-ICSS) present on a number of TI SoCs including OMAP architecture based AM335x, AM437x, AM57xx SoCs, Keystone 2 architecture based 66AK2G SoCs, Davinci architecture based OMAP-L138/DA850 SoCs and the latest K3 architecture based AM65x and J721E SoCs. Please see the v1 cover-letter [1] for details about the features of this interrupt controller. More details can be found in any of the supported SoC TRMs. Eg: Chapter 30.1.6 of AM5728 TRM [4] Please see the individual patches for exact changes in each patch, following are the main changes from v3: - Change interrupt-cells to 3 in order to provide 2-level mapping description in DT for interrupts routed to the main CPU as Marc requested (patch #1 and patch #2). - Get rid of the two distinct code paths in the xlate function and allow to proceed only with 3 parameters description as Marc suggested (patch #2). - Due to above modification squash patch #6 of previous patchset into patch #2. - Merge the irqs-reserved and irqs-shared to one property (patch #1 and #2). [1] https://patchwork.kernel.org/cover/11034561/ [2] https://patchwork.kernel.org/cover/11069749/ [3] https://patchwork.kernel.org/cover/11639055/ [4] http://www.ti.com/lit/pdf/spruhz6 Best regards Grzegorz David Lechner (1): irqchip/irq-pruss-intc: Implement irq_{get,set}_irqchip_state ops Grzegorz Jaszczyk (1): irqchip/irq-pruss-intc: Add a PRUSS irqchip driver for PRUSS interrupts Suman Anna (3): dt-bindings: irqchip: Add PRU-ICSS interrupt controller bindings irqchip/irq-pruss-intc: Add logic for handling reserved interrupts irqchip/irq-pruss-intc: Add support for ICSSG INTC on K3 SoCs .../interrupt-controller/ti,pruss-intc.yaml | 157 +++++ drivers/irqchip/Kconfig | 10 + drivers/irqchip/Makefile | 1 + drivers/irqchip/irq-pruss-intc.c | 659 +++++++++++++++++++++ 4 files changed, 827 insertions(+) create mode 100644 Documentation/devicetree/bindings/interrupt-controller/ti,pruss-intc.yaml create mode 100644 drivers/irqchip/irq-pruss-intc.c