From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S934669AbcAZPV5 (ORCPT ); Tue, 26 Jan 2016 10:21:57 -0500 Received: from mail-cys01nam02on0043.outbound.protection.outlook.com ([104.47.37.43]:47474 "EHLO NAM02-CY1-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S932659AbcAZPVy (ORCPT ); Tue, 26 Jan 2016 10:21:54 -0500 Authentication-Results: spf=pass (sender IP is 149.199.60.100) smtp.mailfrom=xilinx.com; arndb.de; dkim=none (message not signed) header.d=none;arndb.de; dmarc=bestguesspass action=none header.from=xilinx.com; Subject: Re: [PATCH V2 3/5] PCI: xilinx: Modifying AXI PCIe Host Bridge driver to work on both Zynq and Microblaze To: Arnd Bergmann , Michal Simek References: <1452620173-4905-1-git-send-email-bharatku@xilinx.com> <4734542.KZZp0TeeeM@wuerfel> <56A74370.4090000@xilinx.com> <2270955.TlqP7HlQk4@wuerfel> CC: Bharat Kumar Gogada , , , , , , , , , , , , , , , , , , "Bharat Kumar Gogada" , Ravi Kiran Gummaluri From: Michal Simek X-Enigmail-Draft-Status: N1110 Message-ID: <56A78EFF.1010503@xilinx.com> Date: Tue, 26 Jan 2016 16:21:35 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:38.0) Gecko/20100101 Thunderbird/38.4.0 MIME-Version: 1.0 In-Reply-To: <2270955.TlqP7HlQk4@wuerfel> Content-Type: text/plain; charset="windows-1252" Content-Transfer-Encoding: 7bit X-RCIS-Action: ALLOW X-TM-AS-Product-Ver: IMSS-7.1.0.1224-8.0.0.1202-22090.002 X-TM-AS-User-Approved-Sender: Yes;Yes X-EOPAttributedMessage: 0 X-Forefront-Antispam-Report: CIP:149.199.60.100;CTRY:US;IPV:NLI;EFV:NLI;SFV:NSPM;SFS:(10009020)(6009001)(2980300002)(438002)(189002)(164054003)(24454002)(199003)(4326007)(80316001)(87936001)(50466002)(2906002)(83506001)(63266004)(4001450100002)(93886004)(92566002)(86362001)(23746002)(59896002)(64126003)(33656002)(77096005)(1096002)(6806005)(36756003)(11100500001)(107886002)(87266999)(230700001)(5001960100002)(54356999)(2950100001)(106466001)(4001430100002)(1220700001)(81156007)(36386004)(4001350100001)(76176999)(5001770100001)(65806001)(189998001)(47776003)(65816999)(5008740100001)(50986999)(586003)(65956001)(107986001)(5001870100001);DIR:OUT;SFP:1101;SCL:1;SRVR:SN1NAM02HT006;H:xsj-pvapsmtpgw02;FPR:;SPF:Pass;PTR:xapps1.xilinx.com,unknown-60-100.xilinx.com;MX:1;A:1;LANG:en; X-MS-Office365-Filtering-Correlation-Id: b1c0e25d-f10e-4f20-7479-08d326646a2a X-Exchange-Antispam-Report-Test: UriScan:;BCL:0;PCL:0;RULEID:(8251501002);SRVR:SN1NAM02HT006;UriScan:; X-Microsoft-Antispam-PRVS: <018f7ba0b6514de0a530d7c803bf164c@SN1NAM02HT006.eop-nam02.prod.protection.outlook.com> X-Exchange-Antispam-Report-CFA-Test: BCL:0;PCL:0;RULEID:(601004)(2401047)(13024025)(13023025)(520078)(13018025)(13015025)(13017025)(8121501046)(5005006)(10201501046)(3002001);SRVR:SN1NAM02HT006;BCL:0;PCL:0;RULEID:;SRVR:SN1NAM02HT006; X-Forefront-PRVS: 08331F819E X-OriginatorOrg: xilinx.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 26 Jan 2016 15:21:50.2717 (UTC) X-MS-Exchange-CrossTenant-Id: 657af505-d5df-48d0-8300-c31994686c5c X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=657af505-d5df-48d0-8300-c31994686c5c;Ip=[149.199.60.100];Helo=[xsj-pvapsmtpgw02] X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: SN1NAM02HT006 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On 26.1.2016 13:11, Arnd Bergmann wrote: > On Tuesday 26 January 2016 10:59:12 Michal Simek wrote: >>>> diff --git a/drivers/pci/host/pcie-xilinx.c b/drivers/pci/host/pcie-xilinx.c >>>> index 3e3757f..1981948 100644 >>>> --- a/drivers/pci/host/pcie-xilinx.c >>>> +++ b/drivers/pci/host/pcie-xilinx.c >>>> @@ -92,7 +92,12 @@ >>>> #define ECAM_DEV_NUM_SHIFT 12 >>>> >>>> /* Number of MSI IRQs */ >>>> -#define XILINX_NUM_MSI_IRQS 128 >>>> +#define XILINX_NUM_MSI_IRQS 128 >>>> +#ifdef CONFIG_ARM >>>> +#define TOT_NR_IRQS XILINX_NUM_MSI_IRQS >>>> +#else >>>> +#define TOT_NR_IRQS (NR_IRQS + XILINX_NUM_MSI_IRQS) >>>> +#endif >>> >>> Something looks wrong here in the microblaze variant. What does NR_IRQS >>> have to do with it? >> >> Arnd: What was the story regarding NR_IRQS? >> I remember some discussion about it but just forget. >> >> Default value in include/asm-generic/irq.h is 64. >> Current value is 32 because microblaze primary interrupt controller is >> axi_intc core which has up to 32 input lines. > > The value in asm-generic is completely arbitrary, it's just something > that happens to work for a number of the simpler architectures. > > Traditionally, there is a a fixed NR_IRQS which defines the maximum > number of interrupts that can be used, and each irqchip has a fixed > start offset below that number. > > On modern systems, you have CONFIG_SPARSE_IRQ, which lets an irqchip > allocate its own interrupts, without an upper limit. This is more > flexible and avoids preallocating space for all irq_desc instances, > so it saves memory. ok. That was the story. I will look if there is any issue to enable SPARSE_IRQ for Microblaze. I also need to move intc driver out of arch. Thanks, Michal