From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1754738AbcGEHrc (ORCPT ); Tue, 5 Jul 2016 03:47:32 -0400 Received: from mr213139.mail.yeah.net ([223.252.213.139]:3185 "EHLO mr213139.mail.yeah.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752109AbcGEHrb (ORCPT ); Tue, 5 Jul 2016 03:47:31 -0400 Subject: Re: [PATCH 4/6] irqchip: add irqchip driver for nuc900 To: Arnd Bergmann , linux-arm-kernel@lists.infradead.org References: <1466851042-22239-1-git-send-email-vw@iommu.org> <1466851042-22239-5-git-send-email-vw@iommu.org> <8706947.5rzUDVsB2F@wuerfel> Cc: devicetree@vger.kernel.org, Wan Zongshun , Daniel Lezcano , Russell King , linux-kernel@vger.kernel.org, Thomas Gleixner From: Wan Zongshun Message-ID: <577B660D.50908@iommu.org> Date: Tue, 5 Jul 2016 15:47:25 +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: <8706947.5rzUDVsB2F@wuerfel> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit X-HM-Spam-Status: e1koWUFPN1dZCBgUCR5ZQVZIVUhISUJCQkJPT01DTUNDQk1XWQkOFx4IWU FZKCs9JDU0NT4kMjUkMz46Pz4pQUtVS0A2IyQiPigkMjUkMz46Pz4pQUtVS0ArLykkNTQkMjUkMz 46Pz4pQUtVS0A4NC41LykiJDg1QUtVS0ApPjwyNDUkOigyOkFLVUtAKyk0LTI1OD4kKDM6NTwzOj JBS1VLQD8iNTo2MjgkMiskNTQkMjUkMz46Pz4pQUtVS0A2LjcvMiQpOCsvJD8yPT0#KT41LyQyNS QzPjo*PilBSVVLQDIrJEhLJDYyNS4vPiQ4NS8kSyROS0FLVUtAMiskSiQ2MjUuLz4kODUvJEskSk tBS1VLQDIrJC80PzoiJDg1LyRLJEpLS0FLVUtAMiskTiQ2MjUuLz4kODUvJEskSktBS1VLQDIrJE okMzQuKSQ4NS8kSyRKS0tBS1VLQCguOTE#OC8kLzQ*OiIkODUvJEskSktLQUtVS0AoLjkxPjgvJE 4kNjI1Li8#JDg1LyRLJEpLQUtVS0AoLjkxPjgvJEokMzQuKSQ4NS8kSyRKS0tBS1VLQCg5MSQ3Pj UkT0skI0FLVUtLSktALz4jLyQ3PjUkSklDSyQjQUtVS0tKS0A4NS8kMy82NyQ3PjUkSjAkTjBBS1 VLS0pLQCk#OD4yLT4pJDg1LyROJCNBS1VLS0pLQCM2OjI3PikkNS43N0FLVUtLSktAPz43Mi0#KS Q3PjUkS0FLVUtLSktANzo1PCQ#NUFLVUtLSktAPTUkNjoiJE9KQiQzNzEkSiRLQ0tIS09BS1VISE A9KyQpPiQ9LCQzNzEkS0NLSEtNQVZMVU5APTUkKC45JD41LDQpPygkMzcxJEpLS0lLSkFLVUlDQC guOSQ#QUpVTk5ZBg++ X-HM-Sender-Digest: e1kSHx4VD1lBWUc6P0k6NSo4SjofEDwVTA1WDy0UQhEKCSNVSlVKT01M TEtPQ09MT0pNVTMWGhIXVQ0MOxIUFhYOVRQJHEVZV1kMHhlZQR0aFwgeV1kIAVlBSE1JSTdXWRIL WUFZSUpLVUpIVUJMVUpNQ1kG X-HM-Tid: 0a55ba06aa877d8b7c2201c2418 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On 2016年06月29日 23:27, Arnd Bergmann wrote: > On Saturday, June 25, 2016 6:37:20 PM CEST Wan Zongshun wrote: >> +#define IRQ_WDT W90X900_IRQ(1) >> +#define IRQ_WWDT W90X900_IRQ(2) >> +#define IRQ_LVD W90X900_IRQ(3) >> +#define IRQ_EXT0 W90X900_IRQ(4) >> +#define IRQ_EXT1 W90X900_IRQ(5) >> +#define IRQ_EXT2 W90X900_IRQ(6) >> +#define IRQ_EXT3 W90X900_IRQ(7) >> +#define IRQ_EXT4 W90X900_IRQ(8) >> +#define IRQ_EXT5 W90X900_IRQ(9) >> +#define IRQ_EXT6 W90X900_IRQ(10) > > I'd suggest dropping the list, the contents are now in the dts. Do you think I should put one irqmap header file into this /arch/arm/boot/dts/include/dt-bindings folder, or I should removed those irqnumber map anywhere, just hardcode the irqnumber in dts file? > >> diff --git a/arch/arm/mach-w90x900/include/mach/nuc970-regs-aic.h b/arch/arm/mach-w90x900/include/mach/nuc970-regs-aic.h >> new file mode 100644 >> index 0000000..7a77016 >> --- /dev/null >> +++ b/arch/arm/mach-w90x900/include/mach/nuc970-regs-aic.h >> @@ -0,0 +1,53 @@ >> +#ifndef __ASM_ARCH_REGS_AIC_H >> +#define __ASM_ARCH_REGS_AIC_H >> + >> +/*NUC970 AIC regs*/ >> + >> +#define REG_AIC_SCR1 0x00 >> +#define REG_AIC_SCR2 0x04 >> +#define REG_AIC_SCR3 0x08 >> +#define REG_AIC_SCR4 0x0C >> +#define REG_AIC_SCR5 0x10 > > And like the clk driver, these should all be in the irqchip driver instead > of a separate header. Ok, changed. > >> + >> +static void __iomem *aic_base; >> +static struct irq_domain *aic_domain; >> +#define MAKE_HWIRQ(irqnum) (irqnum) > > The macro appears to be unused. removed it. > >> +static void nuc970_irq_mask(struct irq_data *d) >> +{ >> + if (d->irq < 32) >> + __raw_writel(1 << (d->irq), aic_base + REG_AIC_MDCR); >> + else >> + __raw_writel(1 << (d->irq - 32), aic_base + REG_AIC_MDCRH); >> +} > > writel() > > Arnd > > > _______________________________________________ > linux-arm-kernel mailing list > linux-arm-kernel@lists.infradead.org > http://lists.infradead.org/mailman/listinfo/linux-arm-kernel > >