Received: by 2002:ac0:946b:0:0:0:0:0 with SMTP id j40csp2760093imj; Mon, 18 Feb 2019 11:41:41 -0800 (PST) X-Google-Smtp-Source: AHgI3IYIhUJod5OaPIeAhiT1QQTBIlujK5E0JZ9DD5BBdkgvsE1w9XJBQdkDisCFNZMqhG5v1yhs X-Received: by 2002:a63:4f61:: with SMTP id p33mr6993852pgl.303.1550518901625; Mon, 18 Feb 2019 11:41:41 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1550518901; cv=none; d=google.com; s=arc-20160816; b=nLRga7HpYX7YKVqQutqfMfi/B4N4yH03Zl+zFGFpeXCu+WphStmQHTafVa08Rs2Ta/ BqXrSAV2KM+y2RTA8YO6qlth33JRa3o1mKoG1UjubD6MW1AiZNelxpIffmSxG7FBnFX9 TIvw7Ay+9kDi3F/E31e/8MZKFg6cMrPag1hRaZ7AJv7LzBZ4VikwuDPSdiz78gMoSQne YHtkYsxe82g9+hYn0EXksuqh08Bi+uTYo9tnRKjolI3kf7m8z5Ot5Y2bwSTjvnf8P4xS Ig5/QbTSWjBM0GoJzQ+mkVfDaC86/1s89q5CJc/LLPPI9+k/I0AvCmnp6RlsdcqmupBM dyAA== 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; bh=CwK/t3EqiCQBADQ2CrSpZEUtlJF0kCvDoIFGC7QJMs4=; b=GHYsq6kix1gWnUkycqtauwSGqANmV8SCDTwAP8l81aXu0s9SdTkNiKmjDNzm0Vp7Dg 6P5f4UI+1HgtVTB947kihQWK5QnAkoxwcRbrOOtEwsXzdaMDSlny6KU0fx6O4yuliwwK fWcxHrILfMRFrSsFG//O3mfiBC6kkwI5AUbrWz8X1wdKlhaLJEwaYMnVc1mhhFFgCKFZ PRbwWzKD6ssnUCJbTACG63C6rEC3NvjGnMDHAE8Uwek90zdVazt8VIHKsptDGKiM5nZY 52uKfQAwvzzmikB6txkz9Fdr0V4BD+W8c4LcW2kjJFYty8GuO2eIJJvVBzAXIx8KnyWX JM7g== 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=NONE dis=NONE) header.from=kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id i39si14949168plb.256.2019.02.18.11.41.25; Mon, 18 Feb 2019 11:41:41 -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=NONE sp=NONE dis=NONE) header.from=kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1726819AbfBRTcz (ORCPT + 99 others); Mon, 18 Feb 2019 14:32:55 -0500 Received: from mail-ot1-f67.google.com ([209.85.210.67]:41394 "EHLO mail-ot1-f67.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726191AbfBRTcy (ORCPT ); Mon, 18 Feb 2019 14:32:54 -0500 Received: by mail-ot1-f67.google.com with SMTP id t7so13797266otk.8; Mon, 18 Feb 2019 11:32:54 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:date:from:to:cc:subject:message-id:references :mime-version:content-disposition:in-reply-to:user-agent; bh=CwK/t3EqiCQBADQ2CrSpZEUtlJF0kCvDoIFGC7QJMs4=; b=rZ3XVOVjAgoCeVN5VB3o+SD7OPtdSDYdk2FSi6DJVEudT+Fbygq5ZVrHBmnYA6St3P Lc7quLU8NBPIyNSt9s7sBLLUzT+X7Zjy0YaQw+ChsuTjFZKGrrxmmjKHNQOFL+QokSqn YaK+Wk3diqLdFH7GjL0Mqf1X984z29HlOMWQ7mjEAIdS2Z4RyAufZwKivBh92Yso8rQ6 12qwmFywCU7cJwgAyjsZCcKw45fUCF9d906z05ysYKoU4xpH9j8yy8pvLNXvyDBEK50Z E/2Lkh0xZn5VYM7TLB7AdMe/YhFYSNDUfzGVY7kwUFWEcrARzgcqYmp/jElkZnbdK4oZ N8tg== X-Gm-Message-State: AHQUAuZQhzcg36g+oR1/hyJ2/IWv+8mh3FlfEZaXRHLu6J/tnp+AfsQp HcedzXY87ywXTYiuaZuPhg== X-Received: by 2002:aca:5e82:: with SMTP id s124mr255622oib.7.1550518373515; Mon, 18 Feb 2019 11:32:53 -0800 (PST) Received: from localhost (24-155-109-49.dyn.grandenetworks.net. [24.155.109.49]) by smtp.gmail.com with ESMTPSA id y5sm6206961oix.38.2019.02.18.11.32.52 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Mon, 18 Feb 2019 11:32:52 -0800 (PST) Date: Mon, 18 Feb 2019 13:32:52 -0600 From: Rob Herring To: Roger Quadros Cc: tony@atomide.com, ohad@wizery.com, bjorn.andersson@linaro.org, s-anna@ti.com, david@lechnology.com, nsekhar@ti.com, t-kristo@ti.com, nsaulnier@ti.com, jreeder@ti.com, m-karicheri2@ti.com, woods.technical@gmail.com, linux-omap@vger.kernel.org, linux-remoteproc@vger.kernel.org, linux-kernel@vger.kernel.org, devicetree@vger.kernel.org, "Andrew F. Davis" , Thomas Gleixner , Jason Cooper , Marc Zyngier Subject: Re: [PATCH v2 03/14] dt-binding: irqchip: Add pruss-intc-irq driver for PRUSS interrupts Message-ID: <20190218193252.GA6313@bogus> References: <1549290167-876-1-git-send-email-rogerq@ti.com> <1549290167-876-4-git-send-email-rogerq@ti.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <1549290167-876-4-git-send-email-rogerq@ti.com> User-Agent: Mutt/1.10.1 (2018-07-13) Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Mon, Feb 04, 2019 at 04:22:36PM +0200, Roger Quadros wrote: > From: "Andrew F. Davis" > > The Programmable Real-Time Unit Subsystem (PRUSS) contains an > interrupt controller (INTC) that can handle various system input > events and post interrupts back to the device-level initiators. > The INTC can support upto 64 input events with individual control > configuration and hardware prioritization. These events are mapped > onto 10 interrupt signals through two levels of many-to-one mapping > support. Different interrupt signals are routed to the individual > PRU cores or to the host CPU. > > The PRUSS INTC platform driver manages this PRUSS interrupt > controller and implements an irqchip driver to provide a Linux > standard way for the PRU client users to enable/disable/ack/ > re-trigger a PRUSS system event. The system events to interrupt > channels and host interrupts relies on the mapping configuration > provided through a firmware resource table for now. This will be > revisited and enhanced in the future for a better interface. The > mappings will currently be programmed during the boot/shutdown > of the PRU. > > Cc: Thomas Gleixner > Cc: Jason Cooper > Cc: Marc Zyngier > Cc: Rob Herring > Signed-off-by: Andrew F. Davis > Signed-off-by: Roger Quadros > --- > .../interrupt-controller/ti,pruss-intc-irq.txt | 51 ++++++++++++++++++++++ > 1 file changed, 51 insertions(+) > create mode 100644 Documentation/devicetree/bindings/interrupt-controller/ti,pruss-intc-irq.txt > > diff --git a/Documentation/devicetree/bindings/interrupt-controller/ti,pruss-intc-irq.txt b/Documentation/devicetree/bindings/interrupt-controller/ti,pruss-intc-irq.txt > new file mode 100644 > index 0000000..c70221c > --- /dev/null > +++ b/Documentation/devicetree/bindings/interrupt-controller/ti,pruss-intc-irq.txt > @@ -0,0 +1,51 @@ > +PRU ICSS INTC on TI SoCs > +======================== > + > +Each PRUSS has a single interrupt controller instance that is common to both > +the PRU cores. Each interrupt controller can detect 64 input events which are > +then mapped to 10 possible output interrupts through two levels of mapping. The > +input events can be triggered by either the PRUs and/or various other PRUSS > +internal and external peripherals. The first 2 output interrupts are fed > +exclusively to the internal PRU cores, with the remaining 8 connected to > +external interrupt controllers including the MPU. > + > +Required Properties: > +-------------------- > +- compatible : should be one of, > + "ti,am3356-pruss-intc" for AM335x family of SoCs > + "ti,am4376-pruss-intc" for AM437x family of SoCs > + "ti,am5728-pruss-intc" for AM57xx family of SoCs > + "ti,k2g-pruss-intc" for 66AK2G family of SoCs > +- reg : base address and size for the PRUSS INTC sub-module > +- reg-names : should contain the string "intc" Not really useful with only 1 entry. > +- interrupts : all the interrupts generated towards the main host > + processor in the SoC. The format depends on the > + interrupt specifier for the particular SoC's MPU > + parent interrupt controller > +- interrupt-names: should use one of the following names for each interrupt, > + the name should match the corresponding host interrupt > + number, > + "host2", "host3", "host4", "host5", "host6", > + "host7", "host8" or "host9" > + NOTE: AM437x and 66AK2G SoCs do not have "host7" interrupt > + connected to MPU > +- interrupt-controller : mark this node as an interrupt controller > +- #interrupt-cells : should be 1. Client users shall use the PRU System > + event number (the interrupt source that the client > + is interested in) as the value of the interrupts > + property in their node > + > +Example: > +-------- > + pruss_intc: intc@20000 { interrupt-controller@20000 > + compatible = "ti,am3356-pruss-intc"; > + reg = <0x20000 0x2000>; > + reg-names = "intc"; > + interrupt-controller; > + #interrupt-cells = <1>; > + interrupts = <20 21 22 23 24 25 26 27>; > + interrupt-names = "host2", "host3", "host4", > + "host5", "host6", "host7", > + "host8", "host9"; > + }; > + > -- > Texas Instruments Finland Oy, Porkkalankatu 22, 00180 Helsinki. > Y-tunnus/Business ID: 0615521-4. Kotipaikka/Domicile: Helsinki >