From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S933568AbcA0PRs (ORCPT ); Wed, 27 Jan 2016 10:17:48 -0500 Received: from mout.kundenserver.de ([212.227.17.13]:56976 "EHLO mout.kundenserver.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S933268AbcA0PRq (ORCPT ); Wed, 27 Jan 2016 10:17:46 -0500 From: Arnd Bergmann To: Bharat Kumar Gogada Cc: "bhelgaas@google.com" , Michal Simek , "lorenzo.pieralisi@arm.com" , "paul.burton@imgtec.com" , "yinghai@kernel.org" , "wangyijing@huawei.com" , "robh@kernel.org" , "russell.joyce@york.ac.uk" , Soren Brinkmann , "jiang.liu@linux.intel.com" , "pawel.moll@arm.com" , "mark.rutland@arm.com" , "ijc+devicetree@hellion.org.uk" , "galak@codeaurora.org" , "devicetree@vger.kernel.org" , "linux-arm-kernel@lists.infradead.org" , "linux-kernel@vger.kernel.org" , "linux-pci@vger.kernel.org" , Ravikiran Gummaluri Subject: Re: [PATCH V2 3/5] PCI: xilinx: Modifying AXI PCIe Host Bridge driver to work on both Zynq and Microblaze Date: Wed, 27 Jan 2016 16:14:32 +0100 Message-ID: <5255218.OREPu5Af3W@wuerfel> User-Agent: KMail/4.11.5 (Linux/3.16.0-10-generic; KDE/4.11.5; x86_64; ; ) In-Reply-To: <8520D5D51A55D047800579B09414719825873DA8@XAP-PVEXMBX01.xlnx.xilinx.com> References: <1452620173-4905-1-git-send-email-bharatku@xilinx.com> <4734542.KZZp0TeeeM@wuerfel> <8520D5D51A55D047800579B09414719825873DA8@XAP-PVEXMBX01.xlnx.xilinx.com> MIME-Version: 1.0 Content-Transfer-Encoding: 7Bit Content-Type: text/plain; charset="us-ascii" X-Provags-ID: V03:K0:nF4iwlCMYbEmKzpC0pDFE+IM7rOtkz/+qkgjZdFGOrXC5JlqT/Y D13uT0xTcKoBF10b2LEYh4B4NK5S/ErPJzwL70jamn5ZN6sVrzpUaovOWKfWpAEmp7g7WGF Dkd6yXUIAP9qxkUuIlS/Glpq5XaqVTe5e8t6mpWa8DBms4tpACKRd3HT1ZWovCUvEEqYvIA 8B9rm2fk47uQrJ4ho35/w== X-UI-Out-Filterresults: notjunk:1;V01:K0:jyEc9u7LH60=:dflNpUi+gKB74g4ObmKtxN AJ9lRI2/GV5qje8Ij4TVF0vAGARmuBBvwymQJ27jUMKrNe2W6J+xxqHVZFtgKLYiW/Sr2S1fL XjjnSnBIfeYSFTJoOVOq1h667Vmzewci8b89VdzHN4wWLewo6I/9TFJAdWWZg6i0mAFd7BE29 6QDXPKQaTBnqTmQyNNRXW8D0962bWBbJPN8sXCnDKsDxs+CG9R25OuHkUBQQOZWd8yZnXOYkI d3ssUxNZwAZB9RKaDQRGez+a42JKczZqvowqYTfKZeiJcQ/IovOyfm0jJKn9vg1Qk0EvXLAAD wP8+IXvyT8BLIJbMTV5cUVyU046claJTjx+/JwevjvQrlMchIacuggRjaosCgCzrfkXRUfjIq Mz0RY/KPuIuc16g7fUqj8VUPPVIryoGNTf2QcNBEXxW4urem63D/6gG1OTtwCAAgZZRKA/0VC MpxdSEIxHLB9whjWAkGIuIrDxjnB2kv+7XzaqeDeEvjg7Eh9fU9s6vppq6yqcYos6cEqzyOoR qUNDJZnGfJ58GS0cZcSLKDGApQ9/2p3BKh2qv9oO5/RECLrVNy7fR8SlPME0OiXGdkP4mN7Bu PY+seZ/+OY/lOFlBsdBJQZNXPgSCV0EM3uGsenNVjwTX4DU5eaZXgKFwt7xaVsEj6HPHQACE+ l4S4TNlYPZklqZe0ybxpHagTOH+QR8Njvi2/svmESfNj6Q3/IsJ9WS6bMbANcXs79yaIbJd5a jm3yoX0QWwtXYOAg Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Wednesday 27 January 2016 14:33:45 Bharat Kumar Gogada wrote: > > > @@ -705,7 +715,9 @@ static int xilinx_pcie_probe(struct > > > platform_device *pdev) #endif > > > pci_scan_child_bus(bus); > > > pci_assign_unassigned_bus_resources(bus); > > > +#ifdef CONFIG_ARM > > > pci_fixup_irqs(pci_common_swizzle, of_irq_parse_and_map_pci); > > > +#endif > > > pci_bus_add_devices(bus); > > > platform_set_drvdata(pdev, port); > > > > Here it looks like microblaze gets it right. I'm not sure why we still need the > > pci_fixup_irqs() on ARM, but my feeling is that this should be fixed in > > common code. > In arm pci_fixup_irqs is called by pci_common_init_dev (arch/arm/kernel/bios32.c), since this API is removed now, I was calling it separately. But who calls it in microblaze? If it works without the extra call there, can we make it work the same way for ARM? Arnd From mboxrd@z Thu Jan 1 00:00:00 1970 From: Arnd Bergmann Subject: Re: [PATCH V2 3/5] PCI: xilinx: Modifying AXI PCIe Host Bridge driver to work on both Zynq and Microblaze Date: Wed, 27 Jan 2016 16:14:32 +0100 Message-ID: <5255218.OREPu5Af3W@wuerfel> References: <1452620173-4905-1-git-send-email-bharatku@xilinx.com> <4734542.KZZp0TeeeM@wuerfel> <8520D5D51A55D047800579B09414719825873DA8@XAP-PVEXMBX01.xlnx.xilinx.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7Bit Return-path: In-Reply-To: <8520D5D51A55D047800579B09414719825873DA8@XAP-PVEXMBX01.xlnx.xilinx.com> Sender: linux-kernel-owner@vger.kernel.org To: Bharat Kumar Gogada Cc: "bhelgaas@google.com" , Michal Simek , "lorenzo.pieralisi@arm.com" , "paul.burton@imgtec.com" , "yinghai@kernel.org" , "wangyijing@huawei.com" , "robh@kernel.org" , "russell.joyce@york.ac.uk" , Soren Brinkmann , "jiang.liu@linux.intel.com" , "pawel.moll@arm.com" , "mark.rutland@arm.com" , "ijc+devicetree@hellion.org.uk" , "galak@codeaurora.org" , "devicetree@vger.kernel.org" , "linux-arm-kernel@lists.infradead.org" , "linux-kernel@vger.kernel.org" , linux-p List-Id: devicetree@vger.kernel.org On Wednesday 27 January 2016 14:33:45 Bharat Kumar Gogada wrote: > > > @@ -705,7 +715,9 @@ static int xilinx_pcie_probe(struct > > > platform_device *pdev) #endif > > > pci_scan_child_bus(bus); > > > pci_assign_unassigned_bus_resources(bus); > > > +#ifdef CONFIG_ARM > > > pci_fixup_irqs(pci_common_swizzle, of_irq_parse_and_map_pci); > > > +#endif > > > pci_bus_add_devices(bus); > > > platform_set_drvdata(pdev, port); > > > > Here it looks like microblaze gets it right. I'm not sure why we still need the > > pci_fixup_irqs() on ARM, but my feeling is that this should be fixed in > > common code. > In arm pci_fixup_irqs is called by pci_common_init_dev (arch/arm/kernel/bios32.c), since this API is removed now, I was calling it separately. But who calls it in microblaze? If it works without the extra call there, can we make it work the same way for ARM? Arnd From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mout.kundenserver.de ([212.227.17.13]:56976 "EHLO mout.kundenserver.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S933268AbcA0PRq (ORCPT ); Wed, 27 Jan 2016 10:17:46 -0500 From: Arnd Bergmann To: Bharat Kumar Gogada Cc: "bhelgaas@google.com" , Michal Simek , "lorenzo.pieralisi@arm.com" , "paul.burton@imgtec.com" , "yinghai@kernel.org" , "wangyijing@huawei.com" , "robh@kernel.org" , "russell.joyce@york.ac.uk" , Soren Brinkmann , "jiang.liu@linux.intel.com" , "pawel.moll@arm.com" , "mark.rutland@arm.com" , "ijc+devicetree@hellion.org.uk" , "galak@codeaurora.org" , "devicetree@vger.kernel.org" , "linux-arm-kernel@lists.infradead.org" , "linux-kernel@vger.kernel.org" , "linux-pci@vger.kernel.org" , Ravikiran Gummaluri Subject: Re: [PATCH V2 3/5] PCI: xilinx: Modifying AXI PCIe Host Bridge driver to work on both Zynq and Microblaze Date: Wed, 27 Jan 2016 16:14:32 +0100 Message-ID: <5255218.OREPu5Af3W@wuerfel> In-Reply-To: <8520D5D51A55D047800579B09414719825873DA8@XAP-PVEXMBX01.xlnx.xilinx.com> References: <1452620173-4905-1-git-send-email-bharatku@xilinx.com> <4734542.KZZp0TeeeM@wuerfel> <8520D5D51A55D047800579B09414719825873DA8@XAP-PVEXMBX01.xlnx.xilinx.com> MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: linux-pci-owner@vger.kernel.org List-ID: On Wednesday 27 January 2016 14:33:45 Bharat Kumar Gogada wrote: > > > @@ -705,7 +715,9 @@ static int xilinx_pcie_probe(struct > > > platform_device *pdev) #endif > > > pci_scan_child_bus(bus); > > > pci_assign_unassigned_bus_resources(bus); > > > +#ifdef CONFIG_ARM > > > pci_fixup_irqs(pci_common_swizzle, of_irq_parse_and_map_pci); > > > +#endif > > > pci_bus_add_devices(bus); > > > platform_set_drvdata(pdev, port); > > > > Here it looks like microblaze gets it right. I'm not sure why we still need the > > pci_fixup_irqs() on ARM, but my feeling is that this should be fixed in > > common code. > In arm pci_fixup_irqs is called by pci_common_init_dev (arch/arm/kernel/bios32.c), since this API is removed now, I was calling it separately. But who calls it in microblaze? If it works without the extra call there, can we make it work the same way for ARM? Arnd From mboxrd@z Thu Jan 1 00:00:00 1970 From: arnd@arndb.de (Arnd Bergmann) Date: Wed, 27 Jan 2016 16:14:32 +0100 Subject: [PATCH V2 3/5] PCI: xilinx: Modifying AXI PCIe Host Bridge driver to work on both Zynq and Microblaze In-Reply-To: <8520D5D51A55D047800579B09414719825873DA8@XAP-PVEXMBX01.xlnx.xilinx.com> References: <1452620173-4905-1-git-send-email-bharatku@xilinx.com> <4734542.KZZp0TeeeM@wuerfel> <8520D5D51A55D047800579B09414719825873DA8@XAP-PVEXMBX01.xlnx.xilinx.com> Message-ID: <5255218.OREPu5Af3W@wuerfel> To: linux-arm-kernel@lists.infradead.org List-Id: linux-arm-kernel.lists.infradead.org On Wednesday 27 January 2016 14:33:45 Bharat Kumar Gogada wrote: > > > @@ -705,7 +715,9 @@ static int xilinx_pcie_probe(struct > > > platform_device *pdev) #endif > > > pci_scan_child_bus(bus); > > > pci_assign_unassigned_bus_resources(bus); > > > +#ifdef CONFIG_ARM > > > pci_fixup_irqs(pci_common_swizzle, of_irq_parse_and_map_pci); > > > +#endif > > > pci_bus_add_devices(bus); > > > platform_set_drvdata(pdev, port); > > > > Here it looks like microblaze gets it right. I'm not sure why we still need the > > pci_fixup_irqs() on ARM, but my feeling is that this should be fixed in > > common code. > In arm pci_fixup_irqs is called by pci_common_init_dev (arch/arm/kernel/bios32.c), since this API is removed now, I was calling it separately. But who calls it in microblaze? If it works without the extra call there, can we make it work the same way for ARM? Arnd