From: Jiang Liu <jiang.liu@linux.intel.com> To: Thomas Gleixner <tglx@linutronix.de>, Bjorn Helgaas <bhelgaas@google.com>, Benjamin Herrenschmidt <benh@kernel.crashing.org>, Ingo Molnar <mingo@redhat.com>, "H. Peter Anvin" <hpa@zytor.com>, "Rafael J. Wysocki" <rjw@rjwysocki.net>, Randy Dunlap <rdunlap@infradead.org>, Yinghai Lu <yinghai@kernel.org>, Borislav Petkov <bp@alien8.de>, Murali Karicheri <m-karicheri2@ti.com> Cc: Jiang Liu <jiang.liu@linux.intel.com>, Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>, Tony Luck <tony.luck@intel.com>, x86@kernel.org, linux-kernel@vger.kernel.org, linux-pci@vger.kernel.org, linux-acpi@vger.kernel.org, linux-arm-kernel@lists.infradead.org Subject: [RFC v1 11/25] keystone, irq: Use irq_data_get_xxx() to avoid redundant lookup of irq_data Date: Wed, 20 May 2015 17:59:59 +0800 [thread overview] Message-ID: <1432116013-25902-12-git-send-email-jiang.liu@linux.intel.com> (raw) In-Reply-To: <1432116013-25902-1-git-send-email-jiang.liu@linux.intel.com> Use irq_data_get_xxx() to avoid redundant lookup of irq_data while we already have a pointer to corresponding irq_data. Signed-off-by: Jiang Liu <jiang.liu@linux.intel.com> --- drivers/pci/host/pci-keystone-dw.c | 15 ++++++--------- 1 file changed, 6 insertions(+), 9 deletions(-) diff --git a/drivers/pci/host/pci-keystone-dw.c b/drivers/pci/host/pci-keystone-dw.c index f34892e0edb4..e42d077039d3 100644 --- a/drivers/pci/host/pci-keystone-dw.c +++ b/drivers/pci/host/pci-keystone-dw.c @@ -104,14 +104,13 @@ static void ks_dw_pcie_msi_irq_ack(struct irq_data *d) { u32 offset, reg_offset, bit_pos; struct keystone_pcie *ks_pcie; - unsigned int irq = d->irq; struct msi_desc *msi; struct pcie_port *pp; - msi = irq_get_msi_desc(irq); + msi = irq_data_get_msi_desc(d); pp = sys_to_pcie(msi->dev->bus->sysdata); ks_pcie = to_keystone_pcie(pp); - offset = irq - irq_linear_revmap(pp->irq_domain, 0); + offset = d->irq - irq_linear_revmap(pp->irq_domain, 0); update_reg_offset_bit_pos(offset, ®_offset, &bit_pos); writel(BIT(bit_pos), @@ -142,15 +141,14 @@ void ks_dw_pcie_msi_clear_irq(struct pcie_port *pp, int irq) static void ks_dw_pcie_msi_irq_mask(struct irq_data *d) { struct keystone_pcie *ks_pcie; - unsigned int irq = d->irq; struct msi_desc *msi; struct pcie_port *pp; u32 offset; - msi = irq_get_msi_desc(irq); + msi = irq_data_get_msi_desc(d); pp = sys_to_pcie(msi->dev->bus->sysdata); ks_pcie = to_keystone_pcie(pp); - offset = irq - irq_linear_revmap(pp->irq_domain, 0); + offset = d->irq - irq_linear_revmap(pp->irq_domain, 0); /* Mask the end point if PVM implemented */ if (IS_ENABLED(CONFIG_PCI_MSI)) { @@ -164,15 +162,14 @@ static void ks_dw_pcie_msi_irq_mask(struct irq_data *d) static void ks_dw_pcie_msi_irq_unmask(struct irq_data *d) { struct keystone_pcie *ks_pcie; - unsigned int irq = d->irq; struct msi_desc *msi; struct pcie_port *pp; u32 offset; - msi = irq_get_msi_desc(irq); + msi = irq_data_get_msi_desc(d); pp = sys_to_pcie(msi->dev->bus->sysdata); ks_pcie = to_keystone_pcie(pp); - offset = irq - irq_linear_revmap(pp->irq_domain, 0); + offset = d->irq - irq_linear_revmap(pp->irq_domain, 0); /* Mask the end point if PVM implemented */ if (IS_ENABLED(CONFIG_PCI_MSI)) { -- 1.7.10.4
WARNING: multiple messages have this Message-ID (diff)
From: jiang.liu@linux.intel.com (Jiang Liu) To: linux-arm-kernel@lists.infradead.org Subject: [RFC v1 11/25] keystone, irq: Use irq_data_get_xxx() to avoid redundant lookup of irq_data Date: Wed, 20 May 2015 17:59:59 +0800 [thread overview] Message-ID: <1432116013-25902-12-git-send-email-jiang.liu@linux.intel.com> (raw) In-Reply-To: <1432116013-25902-1-git-send-email-jiang.liu@linux.intel.com> Use irq_data_get_xxx() to avoid redundant lookup of irq_data while we already have a pointer to corresponding irq_data. Signed-off-by: Jiang Liu <jiang.liu@linux.intel.com> --- drivers/pci/host/pci-keystone-dw.c | 15 ++++++--------- 1 file changed, 6 insertions(+), 9 deletions(-) diff --git a/drivers/pci/host/pci-keystone-dw.c b/drivers/pci/host/pci-keystone-dw.c index f34892e0edb4..e42d077039d3 100644 --- a/drivers/pci/host/pci-keystone-dw.c +++ b/drivers/pci/host/pci-keystone-dw.c @@ -104,14 +104,13 @@ static void ks_dw_pcie_msi_irq_ack(struct irq_data *d) { u32 offset, reg_offset, bit_pos; struct keystone_pcie *ks_pcie; - unsigned int irq = d->irq; struct msi_desc *msi; struct pcie_port *pp; - msi = irq_get_msi_desc(irq); + msi = irq_data_get_msi_desc(d); pp = sys_to_pcie(msi->dev->bus->sysdata); ks_pcie = to_keystone_pcie(pp); - offset = irq - irq_linear_revmap(pp->irq_domain, 0); + offset = d->irq - irq_linear_revmap(pp->irq_domain, 0); update_reg_offset_bit_pos(offset, ®_offset, &bit_pos); writel(BIT(bit_pos), @@ -142,15 +141,14 @@ void ks_dw_pcie_msi_clear_irq(struct pcie_port *pp, int irq) static void ks_dw_pcie_msi_irq_mask(struct irq_data *d) { struct keystone_pcie *ks_pcie; - unsigned int irq = d->irq; struct msi_desc *msi; struct pcie_port *pp; u32 offset; - msi = irq_get_msi_desc(irq); + msi = irq_data_get_msi_desc(d); pp = sys_to_pcie(msi->dev->bus->sysdata); ks_pcie = to_keystone_pcie(pp); - offset = irq - irq_linear_revmap(pp->irq_domain, 0); + offset = d->irq - irq_linear_revmap(pp->irq_domain, 0); /* Mask the end point if PVM implemented */ if (IS_ENABLED(CONFIG_PCI_MSI)) { @@ -164,15 +162,14 @@ static void ks_dw_pcie_msi_irq_mask(struct irq_data *d) static void ks_dw_pcie_msi_irq_unmask(struct irq_data *d) { struct keystone_pcie *ks_pcie; - unsigned int irq = d->irq; struct msi_desc *msi; struct pcie_port *pp; u32 offset; - msi = irq_get_msi_desc(irq); + msi = irq_data_get_msi_desc(d); pp = sys_to_pcie(msi->dev->bus->sysdata); ks_pcie = to_keystone_pcie(pp); - offset = irq - irq_linear_revmap(pp->irq_domain, 0); + offset = d->irq - irq_linear_revmap(pp->irq_domain, 0); /* Mask the end point if PVM implemented */ if (IS_ENABLED(CONFIG_PCI_MSI)) { -- 1.7.10.4
next prev parent reply other threads:[~2015-05-20 9:59 UTC|newest] Thread overview: 120+ messages / expand[flat|nested] mbox.gz Atom feed top 2015-05-20 9:59 [RFC v1 00/25] Optimize irq flow handler Jiang Liu 2015-05-20 9:59 ` Jiang Liu 2015-05-20 9:59 ` [RFC v1 01/25] ARM, irq: Use irq_desc_get_xxx() to avoid redundant lookup of irq_desc Jiang Liu 2015-05-20 9:59 ` Jiang Liu 2015-05-20 19:35 ` Russell King - ARM Linux 2015-05-20 19:35 ` Russell King - ARM Linux 2015-05-20 9:59 ` [RFC v1 02/25] avr32, " Jiang Liu 2015-05-20 10:15 ` Hans-Christian Egtvedt 2015-05-20 9:59 ` [RFC v1 03/25] MIPS, " Jiang Liu 2015-05-20 9:59 ` [RFC v1 04/25] powerpc, " Jiang Liu 2015-05-20 9:59 ` Jiang Liu 2015-06-02 9:58 ` [RFC, v1, " Michael Ellerman 2015-05-20 9:59 ` [RFC v1 05/25] gpio: " Jiang Liu 2015-05-20 9:59 ` Jiang Liu 2015-06-01 12:45 ` Linus Walleij 2015-06-01 12:45 ` Linus Walleij 2015-06-01 12:45 ` Linus Walleij 2015-06-01 13:48 ` Jiang Liu 2015-06-01 13:48 ` Jiang Liu 2015-06-01 13:48 ` Jiang Liu 2015-05-20 9:59 ` [RFC v1 06/25] pinctrl: " Jiang Liu 2015-05-20 9:59 ` Jiang Liu 2015-06-01 12:46 ` Linus Walleij 2015-06-01 12:46 ` Linus Walleij 2015-05-20 9:59 ` [RFC v1 07/25] irqchip: " Jiang Liu 2015-05-20 9:59 ` Jiang Liu 2015-05-20 9:59 ` [RFC v1 08/25] mfd: " Jiang Liu 2015-05-20 10:44 ` Lee Jones 2015-05-20 10:44 ` Lee Jones 2015-05-20 9:59 ` [RFC v1 09/25] ipu: " Jiang Liu 2015-05-20 9:59 ` [RFC v1 10/25] sh: intc: " Jiang Liu 2015-05-20 9:59 ` Jiang Liu 2015-05-20 15:12 ` Thomas Gleixner 2015-05-20 15:12 ` Thomas Gleixner 2015-05-20 15:24 ` Jiang Liu 2015-05-20 15:24 ` Jiang Liu 2015-05-20 9:59 ` Jiang Liu [this message] 2015-05-20 9:59 ` [RFC v1 11/25] keystone, irq: Use irq_data_get_xxx() to avoid redundant lookup of irq_data Jiang Liu 2015-05-20 10:00 ` [RFC v1 12/25] spmi: Use irq_desc_get_xxx() to avoid redundant lookup of irq_desc Jiang Liu 2015-05-20 10:00 ` [RFC v1 13/25] genirq: Kill the parameter 'irq' of kstat_incr_irqs_this_cpu() Jiang Liu 2015-05-20 15:23 ` Thomas Gleixner 2015-05-20 10:00 ` [RFC v1 14/25] genirq: Kill the first parameter 'irq' of irq_flow_handler_t Jiang Liu 2015-05-20 15:25 ` Thomas Gleixner 2015-05-20 15:28 ` Jiang Liu 2015-05-20 18:35 ` Thomas Gleixner 2015-05-20 20:00 ` Julia Lawall 2015-05-20 20:12 ` Thomas Gleixner 2015-05-20 20:15 ` Julia Lawall 2015-05-20 20:22 ` Thomas Gleixner 2015-06-12 20:29 ` Julia Lawall 2015-06-12 20:35 ` Thomas Gleixner 2015-06-12 22:16 ` Julia Lawall 2015-06-13 8:27 ` Julia Lawall 2015-06-13 9:00 ` Julia Lawall 2015-06-13 9:32 ` Thomas Gleixner 2015-06-13 14:04 ` Julia Lawall 2015-06-13 14:53 ` Julia Lawall 2015-06-13 16:49 ` Jiang Liu 2015-06-13 20:15 ` Julia Lawall 2015-06-13 20:32 ` Thomas Gleixner 2015-06-13 20:42 ` Julia Lawall 2015-06-24 21:10 ` Thomas Gleixner 2015-06-24 21:44 ` Julia Lawall 2015-06-13 21:42 ` Julia Lawall 2015-05-20 18:36 ` Thomas Gleixner 2015-05-20 10:00 ` [RFC v1 15/25] " Jiang Liu 2015-05-20 10:00 ` Jiang Liu 2015-05-20 10:00 ` Jiang Liu 2015-05-20 15:28 ` Thomas Gleixner 2015-05-20 15:28 ` Thomas Gleixner 2015-05-20 15:28 ` Thomas Gleixner 2015-05-20 15:32 ` Jiang Liu 2015-05-20 15:32 ` Jiang Liu 2015-05-20 15:32 ` Jiang Liu 2015-05-20 15:48 ` Thomas Gleixner 2015-05-20 15:48 ` Thomas Gleixner 2015-05-20 15:48 ` Thomas Gleixner 2015-05-20 15:38 ` Hans Ulli Kroll 2015-05-20 15:38 ` Hans Ulli Kroll 2015-05-20 15:38 ` Hans Ulli Kroll 2015-05-20 18:54 ` Robert Jarzmik 2015-05-20 18:54 ` Robert Jarzmik 2015-05-20 18:54 ` Robert Jarzmik 2015-05-20 10:00 ` [RFC v1 16/25] " Jiang Liu 2015-05-20 10:00 ` Jiang Liu 2015-05-20 10:00 ` Jiang Liu 2015-05-20 10:00 ` Jiang Liu 2015-05-20 10:00 ` [RFC v1 17/25] " Jiang Liu 2015-05-20 10:00 ` [RFC v1 18/25] " Jiang Liu 2015-05-20 10:00 ` Jiang Liu 2015-05-20 10:00 ` Jiang Liu 2015-05-20 10:00 ` [RFC v1 19/25] " Jiang Liu 2015-05-20 10:00 ` Jiang Liu 2015-05-20 10:00 ` [RFC v1 20/25] " Jiang Liu 2015-05-20 10:00 ` Jiang Liu 2015-05-20 10:00 ` Jiang Liu 2015-05-20 10:16 ` Hans-Christian Egtvedt 2015-05-20 10:16 ` Hans-Christian Egtvedt 2015-05-20 10:16 ` Hans-Christian Egtvedt 2015-05-20 10:00 ` [RFC v1 21/25] " Jiang Liu 2015-05-20 10:00 ` Jiang Liu 2015-05-20 10:00 ` [RFC v1 22/25] " Jiang Liu 2015-05-20 10:00 ` Jiang Liu 2015-05-20 10:00 ` [RFC v1 23/25] " Jiang Liu 2015-05-20 10:00 ` Jiang Liu 2015-05-20 10:00 ` [RFC v1 24/25] " Jiang Liu 2015-05-20 10:43 ` Lee Jones 2015-05-20 10:43 ` Lee Jones 2015-05-20 10:00 ` [RFC v1 25/25] " Jiang Liu 2015-05-20 10:00 ` Jiang Liu 2015-05-20 15:40 ` Thomas Gleixner 2015-05-20 15:40 ` Thomas Gleixner 2015-05-20 15:49 ` Jiang Liu 2015-05-20 15:49 ` Jiang Liu 2015-05-20 18:43 ` Thomas Gleixner 2015-05-20 18:43 ` Thomas Gleixner 2015-05-20 10:16 ` [RFC v1 00/25] Optimize irq flow handler Ingo Molnar 2015-05-20 10:16 ` Ingo Molnar 2015-05-20 10:23 ` Jiang Liu 2015-05-20 10:23 ` Jiang Liu
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=1432116013-25902-12-git-send-email-jiang.liu@linux.intel.com \ --to=jiang.liu@linux.intel.com \ --cc=benh@kernel.crashing.org \ --cc=bhelgaas@google.com \ --cc=bp@alien8.de \ --cc=hpa@zytor.com \ --cc=konrad.wilk@oracle.com \ --cc=linux-acpi@vger.kernel.org \ --cc=linux-arm-kernel@lists.infradead.org \ --cc=linux-kernel@vger.kernel.org \ --cc=linux-pci@vger.kernel.org \ --cc=m-karicheri2@ti.com \ --cc=mingo@redhat.com \ --cc=rdunlap@infradead.org \ --cc=rjw@rjwysocki.net \ --cc=tglx@linutronix.de \ --cc=tony.luck@intel.com \ --cc=x86@kernel.org \ --cc=yinghai@kernel.org \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: linkBe sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.