From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751298AbcGNIw4 (ORCPT ); Thu, 14 Jul 2016 04:52:56 -0400 Received: from m199-177.yeah.net ([123.58.177.199]:54505 "EHLO m199-177.yeah.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751005AbcGNIwv (ORCPT ); Thu, 14 Jul 2016 04:52:51 -0400 Subject: Re: [PATCH v2 02/10] irqchip: add irqchip driver for nuc900 To: Arnd Bergmann , linux-arm-kernel@lists.infradead.org References: <1468135649-19980-1-git-send-email-vw@iommu.org> <1761342.TGgYi16yul@wuerfel> <5784968A.7080007@iommu.org> <5434334.4rKzx80y6W@wuerfel> Cc: devicetree@vger.kernel.org, jason@lakedaemon.net, Wan Zongshun , Daniel Lezcano , linux-kernel@vger.kernel.org, Russell King , p.zabel@pengutronix.de, Thomas Gleixner , linux-clk@vger.kernel.org From: Wan Zongshun Message-ID: <578752CD.3010408@iommu.org> Date: Thu, 14 Jul 2016 16:52:29 +0800 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:38.0) Gecko/20100101 Thunderbird/38.8.0 MIME-Version: 1.0 In-Reply-To: <5434334.4rKzx80y6W@wuerfel> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit X-HM-Spam-Status: e1koWUFPN1dZCBgUCR5ZQVZIVUhISUJCQkJPT01DTUNDQk1XWQkOFx4IWU FZKCs9JDU0NT4kMjUkMz46Pz4pQUtVS0A2IyQiPigkMjUkMz46Pz4pQUtVS0ArLykkNTQkMjUkMz 46Pz4pQUtVS0A4NC41LykiJDg1QUtVS0ApPjwyNDUkOigyOkFLVUtAKyk0LTI1OD4kKDM6NTwzOj JBS1VLQD8iNTo2MjgkMiskNTQkMjUkMz46Pz4pQUtVS0A2LjcvMiQpOCsvJD8yPT0#KT41LyQyNS QzPjo*PilBSVVLQDIrJC80PzoiJDg1LyRLJEpLS0FLVUtAMiskSiQ2MjUuLz4kODUvJEskSktBS1 VLQDIrJEhLJDYyNS4vPiQ4NS8kSyROS0FLVUtAMiskTiQ2MjUuLz4kODUvJEskSktBS1VLQDIrJE okMzQuKSQ4NS8kSyRKS0tBS1VLQCguOTE#OC8kLzQ*OiIkODUvJEskSktLQUtVS0AoLjkxPjgvJE okMzQuKSQ4NS8kSyRKS0tBS1VLQCguOTE#OC8kTiQ2MjUuLz4kODUvJEskSktBS1VLQCg5MSQ3Pj UkT0skI0FLVUtLSktALz4jLyQ3PjUkSklDSyQjQUtVS0tKS0A4NS8kMy82NyQ3PjUkSjAkTjBBS1 VLS0pLQCk#OD4yLT4pJDg1LyROJCNBS1VLS0pLQCM2OjI3PikkNS43N0FLVUtLSktAPz43Mi0#KS Q3PjUkS0FLVUtLSktANzo1PCQ#NUFLVUtLSktAPTUkNjoiJE9KQiQzNzEkSiRLQ0tIS09BS1VISE A9KyQpPiQ9LCQzNzEkS0NLSEtNQVZMVU5APTUkKC45JD41LDQpPygkMzcxJEpLS0lLSkFLVUlDQC guOSQ#QUpVTk5ZBg++ X-HM-Sender-Digest: e1kSHx4VD1lBWUc6MDI6USo4NjoqEDJPKzgzDgMfIhVPFB9VSlVKT01D T0NNSE5JSUlDVTMWGhIXVQ0MOxIUFhYOVRQJHEVZV1kMHhlZQR0aFwgeV1kIAVlBSEhPSjdXWRIL WUFZSUpLVUpIVUJMVUpNQ1kG X-HM-Tid: 0a55e89b7cc7642779a8b1104d32 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On 2016年07月12日 16:26, Arnd Bergmann wrote: > On Tuesday, July 12, 2016 3:04:42 PM CEST Wan Zongshun wrote: >>> >>> Ideally, this should just go away once we use SPARSE_IRQ. >> >> This platform also can use SPARSE_IRQ? this just a simple irq map and no >> more irq number in this Soc. >> > > SPARSE_IRQ is implied by ARCH_MULTIPLATFORM, so we will have to > use it once that gets enabled. > > Your new irqchip driver already handles IRQ domains, so it will > work out of the box with SPARSE_IRQ, but you have to change the > reference to "NR_IRQS" into something else. > > I've prototyped a patch series to enable ARCH_MULTIPLATFORM, > I hope you can start working from what I have and get it to run. I go through the ARCH_MULTIPLATFORM and SPARSE_IRQ related codes, but I find I also have to define the NUC900_NR_IRQS firstly like below, so that I can init the .nr_irq. +#if !defined(CONFIG_SOC_NUC970) #define NUC900_NR_IRQS (IRQ_ADC+1) +#else +#define NUC900_NR_IRQS 62 +#endif DT_MACHINE_START(nuc900_dt, "Nuvoton NUC900 (Device Tree Support)") .dt_compat = nuc900_dt_compat, + .nr_irqs = NUC900_NR_IRQS, MACHINE_END and then in my irqchip driver, I will use the NUC900_NR_IRQS: +aic_domain = irq_domain_add_linear(node, NUC900_NR_IRQS, + &aic_irq_domain_ops, NULL); Is that a right usage? > > Arnd > > _______________________________________________ > linux-arm-kernel mailing list > linux-arm-kernel@lists.infradead.org > http://lists.infradead.org/mailman/listinfo/linux-arm-kernel > >