Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1754804Ab3HWGlF (ORCPT ); Fri, 23 Aug 2013 02:41:05 -0400 Received: from arroyo.ext.ti.com ([192.94.94.40]:44345 "EHLO arroyo.ext.ti.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1754527Ab3HWGlC (ORCPT ); Fri, 23 Aug 2013 02:41:02 -0400 Message-ID: <521702E2.5000102@ti.com> Date: Fri, 23 Aug 2013 12:06:18 +0530 From: Sekhar Nori User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:17.0) Gecko/20130803 Thunderbird/17.0.8 MIME-Version: 1.0 To: Sricharan R CC: Rajendra Nayak , Nishanth Menon , Russell King - ARM Linux , "linux-doc@vger.kernel.org" , Tony Lindgren , Linus Walleij , "linux-kernel@vger.kernel.org" , Felipe Balbi , Grant Likely , Santosh Shilimkar , Thomas Gleixner , Linux-OMAP , "devicetree-discuss@lists.ozlabs.org" , "linux-arm-kernel@lists.infradead.org" Subject: Re: [PATCH 1/3] misc: Add crossbar driver References: <51E83A4F.5080904@ti.com> <51ED2385.60108@ti.com> <51ED5C66.1010407@ti.com> <51EFFBE1.4090505@ti.com> <51F0031B.1050307@ti.com> <51F00530.9090703@ti.com> <51F02069.3050207@ti.com> <51F0223E.4050008@ti.com> <51F0240F.3050507@ti.com> <20130813081003.GU7656@atomide.com> <520A02BA.4090805@ti.com> <520D398D.9040806@ti.com> <520D44C5.6080205@ti.com> <5215F6F6.9060703@ti.com> <5216E966.5020902@ti.com> <5216FD0C.3090709@ti.com> In-Reply-To: <5216FD0C.3090709@ti.com> Content-Type: text/plain; charset="ISO-8859-1" Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 2014 Lines: 42 On Friday 23 August 2013 11:41 AM, Sricharan R wrote: > Hi, > On Friday 23 August 2013 10:17 AM, Rajendra Nayak wrote: >> On Thursday 22 August 2013 05:03 PM, Sricharan R wrote: >>> maps crossbar number<-> to interrupt number and >>> calls request_irq(int_no, crossbar_handler,..) >> So will this mapping happen based on some data passed from DT or >> just based on whats available when the device does a request_irq()? >> >> If its based on whats available then I see an issue when you need >> to remap something thats already mapped by default (and not used) >> since you run out of all free ones. > Yes, when done based on what is available then there is a > problem when we run out of free ones because we do not > know which one to replace. I was thinking of something like > this, > 1) DT would give a list of all free ones, and also if some are > mapped as default and not used, mark those also as free. > > 2) While mapping see if it has a default mapping and use it. > otherwise, pick from free list. Since the entire DT is available to you at boot time, you should be able to find each node where interrupt-parent = <&crossbar> and then allocate one of 0-160 GIC interrupt numbers for that node, no? Where would there be a need for default mapping and remapping? From one the mails in the thread the crossbar is completely flexible - any of the 320 crossbar interrupts can be mapped to any of the 160 GIC interrupts. Any GIC interrupts left after this boot-time scan can be added to an unused list for use with runtime DT fragments (when that support comes). Sorry if I misunderstood, but above proposal sounds like maintaining a separate free interrupt lines list in DT. That will quickly go out of sync. Thanks, Sekhar -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/