Skip to content
  1. Jul 23, 2015
    • Jiang Liu's avatar
      PCI: Use helper functions to access fields in struct msi_desc · e39758e0
      Jiang Liu authored
      
      
      Use helper functions to access fields in struct msi_desc, so we could
      easily refine msi_desc later.
      
      Signed-off-by: default avatarJiang Liu <jiang.liu@linux.intel.com>
      Reviewed-by: default avatarYijing Wang <wangyijing@huawei.com>
      Cc: Tony Luck <tony.luck@intel.com>
      Cc: linux-arm-kernel@lists.infradead.org
      Cc: Bjorn Helgaas <bhelgaas@google.com>
      Cc: Grant Likely <grant.likely@linaro.org>
      Cc: Marc Zyngier <marc.zyngier@arm.com>
      Cc: Stuart Yoder <stuart.yoder@freescale.com>
      Cc: Borislav Petkov <bp@alien8.de>
      Cc: Murali Karicheri <m-karicheri2@ti.com>
      Cc: Jingoo Han <jingoohan1@gmail.com>
      Cc: Pratyush Anand <pratyush.anand@gmail.com>
      Cc: Michal Simek <michal.simek@xilinx.com>
      Cc: Soeren Brinkmann <soren.brinkmann@xilinx.com>
      Cc: Srikanth Thokala <sthokal@xilinx.com>
      Cc: Rob Herring <robh@kernel.org>
      Link: http://lkml.kernel.org/r/1436428847-8886-9-git-send-email-jiang.liu@linux.intel.com
      Signed-off-by: default avatarThomas Gleixner <tglx@linutronix.de>
      e39758e0
    • Jiang Liu's avatar
      sparc/PCI: Use helper functions to access fields in struct msi_desc · 3bf15f53
      Jiang Liu authored
      
      
      Use helper functions to access fields in struct msi_desc, so we could
      easily refine struct msi_desc later.
      
      Signed-off-by: default avatarJiang Liu <jiang.liu@linux.intel.com>
      Acked-by: default avatarDavid S. Miller <davem@davemloft.net>
      Cc: Tony Luck <tony.luck@intel.com>
      Cc: linux-arm-kernel@lists.infradead.org
      Cc: Bjorn Helgaas <bhelgaas@google.com>
      Cc: Grant Likely <grant.likely@linaro.org>
      Cc: Marc Zyngier <marc.zyngier@arm.com>
      Cc: Stuart Yoder <stuart.yoder@freescale.com>
      Cc: Yijing Wang <wangyijing@huawei.com>
      Cc: Borislav Petkov <bp@alien8.de>
      Cc: Eric Snowberg <eric.snowberg@oracle.com>
      Link: http://lkml.kernel.org/r/1436428847-8886-8-git-send-email-jiang.liu@linux.intel.com
      Signed-off-by: default avatarThomas Gleixner <tglx@linutronix.de>
      3bf15f53
    • Jiang Liu's avatar
      PCI: Use for_each_pci_msi_entry() to access MSI device list · 5004e98a
      Jiang Liu authored
      
      
      Use accessor for_each_pci_msi_entry() to access MSI device list, so we
      could easily move msi_list from struct pci_dev into struct device
      later.
      
      Signed-off-by: default avatarJiang Liu <jiang.liu@linux.intel.com>
      Reviewed-by: default avatarYijing Wang <wangyijing@huawei.com>
      Acked-by: default avatarBjorn Helgaas <bhelgaas@google.com>
      Acked-by: default avatarKonrad Rzeszutek Wilk <konrad.wilk@oracle.com>
      Cc: Tony Luck <tony.luck@intel.com>
      Cc: linux-arm-kernel@lists.infradead.org
      Cc: xen-devel@lists.xenproject.org
      Cc: Grant Likely <grant.likely@linaro.org>
      Cc: Marc Zyngier <marc.zyngier@arm.com>
      Cc: Stuart Yoder <stuart.yoder@freescale.com>
      Cc: Borislav Petkov <bp@alien8.de>
      Cc: Boris Ostrovsky <boris.ostrovsky@oracle.com>
      Cc: David Vrabel <david.vrabel@citrix.com>
      Link: http://lkml.kernel.org/r/1436428847-8886-7-git-send-email-jiang.liu@linux.intel.com
      Signed-off-by: default avatarThomas Gleixner <tglx@linutronix.de>
      5004e98a
    • Jiang Liu's avatar
      x86/PCI: Use for_pci_msi_entry() to access MSI device list · 39118e31
      Jiang Liu authored
      
      
      Use accessor for_each_pci_msi_entry() to access MSI device list, so we
      could easily move msi_list from struct pci_dev into struct device
      later.
      
      Signed-off-by: default avatarJiang Liu <jiang.liu@linux.intel.com>
      Acked-by: default avatarKonrad Rzeszutek Wilk <konrad.wilk@oracle.com>
      Cc: Tony Luck <tony.luck@intel.com>
      Cc: linux-arm-kernel@lists.infradead.org
      Cc: xen-devel@lists.xenproject.org
      Cc: Bjorn Helgaas <bhelgaas@google.com>
      Cc: Grant Likely <grant.likely@linaro.org>
      Cc: Marc Zyngier <marc.zyngier@arm.com>
      Cc: Stuart Yoder <stuart.yoder@freescale.com>
      Cc: Yijing Wang <wangyijing@huawei.com>
      Cc: Borislav Petkov <bp@alien8.de>
      Link: http://lkml.kernel.org/r/1436428847-8886-6-git-send-email-jiang.liu@linux.intel.com
      Signed-off-by: default avatarThomas Gleixner <tglx@linutronix.de>
      39118e31
    • Jiang Liu's avatar
      s390/pci: Use for_pci_msi_entry() to access MSI device list · df516f42
      Jiang Liu authored
      
      
      Use accessor for_each_pci_msi_entry() to access MSI device list, so we could
      easily move msi_list from struct pci_dev into struct device later.
      
      Signed-off-by: default avatarJiang Liu <jiang.liu@linux.intel.com>
      Acked-by: default avatarSebastian Ott <sebott@linux.vnet.ibm.com>
      Cc: Tony Luck <tony.luck@intel.com>
      Cc: linux-arm-kernel@lists.infradead.org
      Cc: Bjorn Helgaas <bhelgaas@google.com>
      Cc: Grant Likely <grant.likely@linaro.org>
      Cc: Marc Zyngier <marc.zyngier@arm.com>
      Cc: Stuart Yoder <stuart.yoder@freescale.com>
      Cc: Yijing Wang <wangyijing@huawei.com>
      Cc: Borislav Petkov <bp@alien8.de>
      Cc: Gerald Schaefer <gerald.schaefer@de.ibm.com>
      Cc: Martin Schwidefsky <schwidefsky@de.ibm.com>
      Cc: Heiko Carstens <heiko.carstens@de.ibm.com>
      Cc: linux390@de.ibm.com
      Link: http://lkml.kernel.org/r/1436428847-8886-5-git-send-email-jiang.liu@linux.intel.com
      Signed-off-by: default avatarThomas Gleixner <tglx@linutronix.de>
      df516f42
    • Jiang Liu's avatar
      powerpc/PCI: Use for_pci_msi_entry() to access MSI device list · 2921d179
      Jiang Liu authored
      
      
      Use accessor for_each_pci_msi_entry() to access MSI device list, so we
      could easily move msi_list from struct pci_dev into struct device
      later.
      
      Signed-off-by: default avatarJiang Liu <jiang.liu@linux.intel.com>
      Cc: Tony Luck <tony.luck@intel.com>
      Cc: linux-arm-kernel@lists.infradead.org
      Cc: linuxppc-dev@lists.ozlabs.org
      Cc: Bjorn Helgaas <bhelgaas@google.com>
      Cc: Grant Likely <grant.likely@linaro.org>
      Cc: Marc Zyngier <marc.zyngier@arm.com>
      Cc: Stuart Yoder <stuart.yoder@freescale.com>
      Cc: Yijing Wang <wangyijing@huawei.com>
      Cc: Borislav Petkov <bp@alien8.de>
      Cc: Arnd Bergmann <arnd@arndb.de>
      Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
      Cc: Paul Mackerras <paulus@samba.org>
      Cc: Michael Ellerman <mpe@ellerman.id.au>
      Cc: Olof Johansson <olof@lixom.net>
      Cc: Gavin Shan <gwshan@linux.vnet.ibm.com>
      Cc: Alexey Kardashevskiy <aik@ozlabs.ru>
      Cc: David Gibson <david@gibson.dropbear.id.au>
      Cc: Daniel Axtens <dja@axtens.net>
      Cc: Wei Yang <weiyang@linux.vnet.ibm.com>
      Cc: Nishanth Aravamudan <nacc@linux.vnet.ibm.com>
      Cc: Alexander Gordeev <agordeev@redhat.com>
      Cc: Scott Wood <scottwood@freescale.com>
      Cc: Laurentiu Tudor <Laurentiu.Tudor@freescale.com>
      Cc: Tudor Laurentiu <b10716@freescale.com>
      Cc: Hongtao Jia <hongtao.jia@freescale.com>
      Link: http://lkml.kernel.org/r/1436428847-8886-4-git-send-email-jiang.liu@linux.intel.com
      Signed-off-by: default avatarThomas Gleixner <tglx@linutronix.de>
      2921d179
    • Jiang Liu's avatar
      MIPS/PCI: Use for_pci_msi_entry() to access MSI device list · bbcffac3
      Jiang Liu authored
      
      
      Use accessor for_each_pci_msi_entry() to access MSI device list, so we
      could easily move msi_list from struct pci_dev into struct device
      later.
      
      Signed-off-by: default avatarJiang Liu <jiang.liu@linux.intel.com>
      Cc: Tony Luck <tony.luck@intel.com>
      Cc: linux-arm-kernel@lists.infradead.org
      Cc: linux-mips@linux-mips.org
      Cc: Bjorn Helgaas <bhelgaas@google.com>
      Cc: Grant Likely <grant.likely@linaro.org>
      Cc: Marc Zyngier <marc.zyngier@arm.com>
      Cc: Stuart Yoder <stuart.yoder@freescale.com>
      Cc: Yijing Wang <wangyijing@huawei.com>
      Cc: Borislav Petkov <bp@alien8.de>
      Cc: Ralf Baechle <ralf@linux-mips.org>
      Link: http://lkml.kernel.org/r/1436428847-8886-3-git-send-email-jiang.liu@linux.intel.com
      Signed-off-by: default avatarThomas Gleixner <tglx@linutronix.de>
      bbcffac3
    • Jiang Liu's avatar
      PCI: Add helper function msi_desc_to_pci_sysdata() · c179c9b9
      Jiang Liu authored
      
      
      Add helper function msi_desc_to_pci_sysdata() to retrieve sysdata from
      an MSI descriptor. To avoid pulling include/linux/pci.h into
      include/linux/msi.h, msi_desc_to_pci_sysdata() is implemented as a normal
      function instead of an inline function.
      
      Signed-off-by: default avatarJiang Liu <jiang.liu@linux.intel.com>
      Reviewed-by: default avatarYijing Wang <wangyijing@huawei.com>
      Acked-by: default avatarBjorn Helgaas <bhelgaas@google.com>
      Cc: Tony Luck <tony.luck@intel.com>
      Cc: linux-arm-kernel@lists.infradead.org
      Cc: Grant Likely <grant.likely@linaro.org>
      Cc: Marc Zyngier <marc.zyngier@arm.com>
      Cc: Stuart Yoder <stuart.yoder@freescale.com>
      Cc: Borislav Petkov <bp@alien8.de>
      Cc: Alexander Gordeev <agordeev@redhat.com>
      Link: http://lkml.kernel.org/r/1436428847-8886-2-git-send-email-jiang.liu@linux.intel.com
      Signed-off-by: default avatarThomas Gleixner <tglx@linutronix.de>
      c179c9b9
    • Wang Long's avatar
      drivers/irqchip: Replace pr_warning by pr_warn · faca10b9
      Wang Long authored
      
      
      Update the last pr_warning callsite in drivers/irqchip.
      
      Signed-off-by: default avatarWang Long <long.wanglong@huawei.com>
      Cc: <linux-arm-kernel@lists.infradead.org>
      Cc: <wanglong@laoqinren.net>
      Cc: <peifeiyue@huawei.com>
      Cc: <jason@lakedaemon.net>
      Cc: <kgene@kernel.org>
      Cc: <k.kozlowski@samsung.com>
      Link: http://lkml.kernel.org/r/1437466261-147373-1-git-send-email-long.wanglong@huawei.com
      Signed-off-by: default avatarThomas Gleixner <tglx@linutronix.de>
      faca10b9
    • Felipe Balbi's avatar
      irqchip: omap-intc: Improve IRQ handler · 6ed34648
      Felipe Balbi authored
      
      
      As it turns out the current IRQ number will *always* be available from
      SIR register which renders the reads of PENDING registers as plain
      unnecessary overhead.
      
      In order to catch any situation where SIR reads as zero, we're adding
      a WARN() to turn it into a very verbose error and users actually
      report it.
      
      With this patch average running time of omap_intc_handle_irq() reduced
      from about 28.5us to 19.8us as measured by the kernel function
      profiler.
      
      Tested with BeagleBoneBlack Rev A5C.
      
      Tested-by: default avatarTony Lindgren <tony@atomide.com>
      Signed-off-by: default avatarFelipe Balbi <balbi@ti.com>
      Cc: Linux ARM Kernel Mailing List <linux-arm-kernel@lists.infradead.org>
      Link: http://lkml.kernel.org/r/20150720204910.GH5394@saruman.tx.rr.com
      Signed-off-by: default avatarThomas Gleixner <tglx@linutronix.de>
      6ed34648
  2. Jul 20, 2015
  3. Jul 17, 2015
  4. Jul 12, 2015
    • Thomas Gleixner's avatar
      irqchip/mips-gic: Use irq_set_chip_handler_name_locked · a595fc51
      Thomas Gleixner authored
      
      
      Use irq_set_handler_name_locked() as it avoids a redundant lookup of
      the irq descriptor.
      
      Signed-off-by: default avatarThomas Gleixner <tglx@linutronix.de>
      Cc: Jiang Liu <jiang.liu@linux.intel.com>
      Cc: Jason Cooper <jason@lakedaemon.net>
      a595fc51
    • Thomas Gleixner's avatar
      irqchip/metag-ext: Use irq_set_chip_handler_name_locked() · 0a2b6497
      Thomas Gleixner authored
      
      
      Hand in irq_data and avoid the redundant lookup of irq_desc.
      
      Originally-from: Jiang Liu <jiang.liu@linux.intel.com>
      Signed-off-by: default avatarThomas Gleixner <tglx@linutronix.de>
      0a2b6497
    • Thomas Gleixner's avatar
      irqchip/vt8500: Use irq_set_handler_locked() · d2aa914d
      Thomas Gleixner authored
      
      
      Use irq_set_handler_locked() as it avoids a redundant lookup of the
      irq descriptor.
      
      Search and replacement was done with coccinelle:
      
      @@
      struct irq_data *d;
      expression E1;
      @@
      
      -__irq_set_handler_locked(d->irq, E1);
      +irq_set_handler_locked(d, E1);
      
      Signed-off-by: default avatarThomas Gleixner <tglx@linutronix.de>
      Cc: Jiang Liu <jiang.liu@linux.intel.com>
      Cc: Julia Lawall <julia.lawall@lip6.fr>
      Cc: Thomas Gleixner <tglx@linutronix.de>
      Cc: Jason Cooper <jason@lakedaemon.net>
      d2aa914d
    • Jiang Liu's avatar
      irqchip: Use irq_desc_get_xxx() to avoid redundant lookup of irq_desc · 5b29264c
      Jiang Liu authored
      
      
      Use irq_desc_get_xxx() to avoid redundant lookup of irq_desc while we
      already have a pointer to corresponding irq_desc.
      
      Signed-off-by: default avatarJiang Liu <jiang.liu@linux.intel.com>
      Cc: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>
      Cc: Tony Luck <tony.luck@intel.com>
      Cc: linux-arm-kernel@lists.infradead.org
      Cc: Bjorn Helgaas <bhelgaas@google.com>
      Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
      Cc: Randy Dunlap <rdunlap@infradead.org>
      Cc: Yinghai Lu <yinghai@kernel.org>
      Cc: Borislav Petkov <bp@alien8.de>
      Cc: Jason Cooper <jason@lakedaemon.net>
      Cc: Kukjin Kim <kgene@kernel.org>
      Cc: Krzysztof Kozlowski <k.kozlowski@samsung.com>
      Cc: Maxime Ripard <maxime.ripard@free-electrons.com>
      Link: http://lkml.kernel.org/r/1433391238-19471-11-git-send-email-jiang.liu@linux.intel.com
      Signed-off-by: default avatarThomas Gleixner <tglx@linutronix.de>
      5b29264c
    • Jiang Liu's avatar
      irqchip/mips-gic: Use access helper irq_data_get_affinity_mask() · 72f86db4
      Jiang Liu authored
      
      
      Use access helper irq_data_get_affinity_mask() to hide implementation
      details of struct irq_desc.
      
      [ tglx: Verified with coccinelle ]
      
      Signed-off-by: default avatarJiang Liu <jiang.liu@linux.intel.com>
      Cc: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>
      Cc: Tony Luck <tony.luck@intel.com>
      Cc: Bjorn Helgaas <bhelgaas@google.com>
      Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
      Cc: Randy Dunlap <rdunlap@infradead.org>
      Cc: Yinghai Lu <yinghai@kernel.org>
      Cc: Borislav Petkov <bp@alien8.de>
      Cc: Jason Cooper <jason@lakedaemon.net>
      Link: http://lkml.kernel.org/r/1433145945-789-30-git-send-email-jiang.liu@linux.intel.com
      Signed-off-by: default avatarThomas Gleixner <tglx@linutronix.de>
      72f86db4
    • Thomas Gleixner's avatar
      irqchip/vic: Consolidate chained IRQ handler install/remove · 9f213541
      Thomas Gleixner authored
      
      
      Chained irq handlers usually set up handler data as well. We now have
      a function to set both under irq_desc->lock. Replace the two calls
      with one.
      
      Search and conversion was done with coccinelle:
      
      @@
      expression E1, E2, E3;
      @@
      (
      -if (irq_set_handler_data(E1, E2) != 0)
      -   BUG();
      |
      -irq_set_handler_data(E1, E2);
      )
      -irq_set_chained_handler(E1, E3);
      +irq_set_chained_handler_and_data(E1, E3, E2);
      
      @@
      expression E1, E2, E3;
      @@
      (
      -if (irq_set_handler_data(E1, E2) != 0)
      -   BUG();
      ...
      |
      -irq_set_handler_data(E1, E2);
      ...
      )
      -irq_set_chained_handler(E1, E3);
      +irq_set_chained_handler_and_data(E1, E3, E2);
      
      Reported-by: default avatarRussell King <rmk+kernel@arm.linux.org.uk>
      Signed-off-by: default avatarThomas Gleixner <tglx@linutronix.de>
      Cc: Julia Lawall <Julia.Lawall@lip6.fr>
      Cc: Thomas Gleixner <tglx@linutronix.de>
      Cc: Jason Cooper <jason@lakedaemon.net>
      9f213541
    • Thomas Gleixner's avatar
      irqchip/versatile: Consolidate chained IRQ handler install/remove · fcd3c5be
      Thomas Gleixner authored
      
      
      Chained irq handlers usually set up handler data as well. We now have
      a function to set both under irq_desc->lock. Replace the two calls
      with one.
      
      Search and conversion was done with coccinelle:
      
      @@
      expression E1, E2, E3;
      @@
      (
      -if (irq_set_handler_data(E1, E2) != 0)
      -   BUG();
      |
      -irq_set_handler_data(E1, E2);
      )
      -irq_set_chained_handler(E1, E3);
      +irq_set_chained_handler_and_data(E1, E3, E2);
      
      @@
      expression E1, E2, E3;
      @@
      (
      -if (irq_set_handler_data(E1, E2) != 0)
      -   BUG();
      ...
      |
      -irq_set_handler_data(E1, E2);
      ...
      )
      -irq_set_chained_handler(E1, E3);
      +irq_set_chained_handler_and_data(E1, E3, E2);
      
      Reported-by: default avatarRussell King <rmk+kernel@arm.linux.org.uk>
      Signed-off-by: default avatarThomas Gleixner <tglx@linutronix.de>
      Cc: Julia Lawall <Julia.Lawall@lip6.fr>
      Cc: Thomas Gleixner <tglx@linutronix.de>
      Cc: Jason Cooper <jason@lakedaemon.net>
      fcd3c5be
    • Thomas Gleixner's avatar
      irqchip/tb10x: Consolidate chained IRQ handler install/remove · 22890b0d
      Thomas Gleixner authored
      
      
      Chained irq handlers usually set up handler data as well. We now have
      a function to set both under irq_desc->lock. Replace the two calls
      with one.
      
      Search and conversion was done with coccinelle:
      
      @@
      expression E1, E2, E3;
      @@
      (
      -if (irq_set_handler_data(E1, E2) != 0)
      -   BUG();
      |
      -irq_set_handler_data(E1, E2);
      )
      -irq_set_chained_handler(E1, E3);
      +irq_set_chained_handler_and_data(E1, E3, E2);
      
      @@
      expression E1, E2, E3;
      @@
      (
      -if (irq_set_handler_data(E1, E2) != 0)
      -   BUG();
      ...
      |
      -irq_set_handler_data(E1, E2);
      ...
      )
      -irq_set_chained_handler(E1, E3);
      +irq_set_chained_handler_and_data(E1, E3, E2);
      
      Reported-by: default avatarRussell King <rmk+kernel@arm.linux.org.uk>
      Signed-off-by: default avatarThomas Gleixner <tglx@linutronix.de>
      Cc: Julia Lawall <Julia.Lawall@lip6.fr>
      Cc: Thomas Gleixner <tglx@linutronix.de>
      Cc: Jason Cooper <jason@lakedaemon.net>
      22890b0d
    • Thomas Gleixner's avatar
      irqchip/sunxi-nmi: Consolidate chained IRQ handler install/remove · 3200a712
      Thomas Gleixner authored
      
      
      Chained irq handlers usually set up handler data as well. We now have
      a function to set both under irq_desc->lock. Replace the two calls
      with one.
      
      Search and conversion was done with coccinelle:
      
      @@
      expression E1, E2, E3;
      @@
      (
      -if (irq_set_handler_data(E1, E2) != 0)
      -   BUG();
      |
      -irq_set_handler_data(E1, E2);
      )
      -irq_set_chained_handler(E1, E3);
      +irq_set_chained_handler_and_data(E1, E3, E2);
      
      @@
      expression E1, E2, E3;
      @@
      (
      -if (irq_set_handler_data(E1, E2) != 0)
      -   BUG();
      ...
      |
      -irq_set_handler_data(E1, E2);
      ...
      )
      -irq_set_chained_handler(E1, E3);
      +irq_set_chained_handler_and_data(E1, E3, E2);
      
      Reported-by: default avatarRussell King <rmk+kernel@arm.linux.org.uk>
      Signed-off-by: default avatarThomas Gleixner <tglx@linutronix.de>
      Cc: Julia Lawall <Julia.Lawall@lip6.fr>
      Cc: Thomas Gleixner <tglx@linutronix.de>
      Cc: Jason Cooper <jason@lakedaemon.net>
      Cc: Maxime Ripard <maxime.ripard@free-electrons.com>
      Cc: linux-arm-kernel@lists.infradead.org
      3200a712
    • Thomas Gleixner's avatar
      irqchip/orion: Consolidate chained IRQ handler install/remove · 07d22c23
      Thomas Gleixner authored
      
      
      Chained irq handlers usually set up handler data as well. We now have
      a function to set both under irq_desc->lock. Replace the two calls
      with one.
      
      Search and conversion was done with coccinelle:
      
      @@
      expression E1, E2, E3;
      @@
      (
      -if (irq_set_handler_data(E1, E2) != 0)
      -   BUG();
      |
      -irq_set_handler_data(E1, E2);
      )
      -irq_set_chained_handler(E1, E3);
      +irq_set_chained_handler_and_data(E1, E3, E2);
      
      @@
      expression E1, E2, E3;
      @@
      (
      -if (irq_set_handler_data(E1, E2) != 0)
      -   BUG();
      ...
      |
      -irq_set_handler_data(E1, E2);
      ...
      )
      -irq_set_chained_handler(E1, E3);
      +irq_set_chained_handler_and_data(E1, E3, E2);
      
      Reported-by: default avatarRussell King <rmk+kernel@arm.linux.org.uk>
      Signed-off-by: default avatarThomas Gleixner <tglx@linutronix.de>
      Cc: Julia Lawall <Julia.Lawall@lip6.fr>
      Cc: Thomas Gleixner <tglx@linutronix.de>
      Cc: Jason Cooper <jason@lakedaemon.net>
      07d22c23
    • Thomas Gleixner's avatar
      irqchip/metag: Consolidate chained IRQ handler install/remove · 832b404e
      Thomas Gleixner authored
      
      
      Chained irq handlers usually set up handler data as well. We now have
      a function to set both under irq_desc->lock. Replace the two calls
      with one.
      
      Search and conversion was done with coccinelle:
      
      @@
      expression E1, E2, E3;
      @@
      (
      -if (irq_set_handler_data(E1, E2) != 0)
      -   BUG();
      |
      -irq_set_handler_data(E1, E2);
      )
      -irq_set_chained_handler(E1, E3);
      +irq_set_chained_handler_and_data(E1, E3, E2);
      
      @@
      expression E1, E2, E3;
      @@
      (
      -if (irq_set_handler_data(E1, E2) != 0)
      -   BUG();
      ...
      |
      -irq_set_handler_data(E1, E2);
      ...
      )
      -irq_set_chained_handler(E1, E3);
      +irq_set_chained_handler_and_data(E1, E3, E2);
      
      Reported-by: default avatarRussell King <rmk+kernel@arm.linux.org.uk>
      Signed-off-by: default avatarThomas Gleixner <tglx@linutronix.de>
      Cc: Julia Lawall <Julia.Lawall@lip6.fr>
      Cc: James Hogan <james.hogan@imgtec.com>
      Cc: Thomas Gleixner <tglx@linutronix.de>
      Cc: Jason Cooper <jason@lakedaemon.net>
      Cc: linux-metag@vger.kernel.org
      832b404e
    • Thomas Gleixner's avatar
      irqchip/imgpdc: Consolidate chained IRQ handler install/remove · bc4d2c07
      Thomas Gleixner authored
      
      
      Chained irq handlers usually set up handler data as well. We now have
      a function to set both under irq_desc->lock. Replace the two calls
      with one.
      
      Search and conversion was done with coccinelle:
      
      @@
      expression E1, E2, E3;
      @@
      (
      -if (irq_set_handler_data(E1, E2) != 0)
      -   BUG();
      |
      -irq_set_handler_data(E1, E2);
      )
      -irq_set_chained_handler(E1, E3);
      +irq_set_chained_handler_and_data(E1, E3, E2);
      
      @@
      expression E1, E2, E3;
      @@
      (
      -if (irq_set_handler_data(E1, E2) != 0)
      -   BUG();
      ...
      |
      -irq_set_handler_data(E1, E2);
      ...
      )
      -irq_set_chained_handler(E1, E3);
      +irq_set_chained_handler_and_data(E1, E3, E2);
      
      Reported-by: default avatarRussell King <rmk+kernel@arm.linux.org.uk>
      Signed-off-by: default avatarThomas Gleixner <tglx@linutronix.de>
      Cc: Julia Lawall <Julia.Lawall@lip6.fr>
      Cc: Thomas Gleixner <tglx@linutronix.de>
      Cc: Jason Cooper <jason@lakedaemon.net>
      bc4d2c07
    • Thomas Gleixner's avatar
      irqchip/gic: Consolidate chained IRQ handler install/remove · 4d83fcf8
      Thomas Gleixner authored
      
      
      Chained irq handlers usually set up handler data as well. We now have
      a function to set both under irq_desc->lock. Replace the two calls
      with one.
      
      Search and conversion was done with coccinelle:
      
      @@
      expression E1, E2, E3;
      @@
      (
      -if (irq_set_handler_data(E1, E2) != 0)
      -   BUG();
      |
      -irq_set_handler_data(E1, E2);
      )
      -irq_set_chained_handler(E1, E3);
      +irq_set_chained_handler_and_data(E1, E3, E2);
      
      @@
      expression E1, E2, E3;
      @@
      (
      -if (irq_set_handler_data(E1, E2) != 0)
      -   BUG();
      ...
      |
      -irq_set_handler_data(E1, E2);
      ...
      )
      -irq_set_chained_handler(E1, E3);
      +irq_set_chained_handler_and_data(E1, E3, E2);
      
      Reported-by: default avatarRussell King <rmk+kernel@arm.linux.org.uk>
      Signed-off-by: default avatarThomas Gleixner <tglx@linutronix.de>
      Cc: Julia Lawall <Julia.Lawall@lip6.fr>
      Cc: Thomas Gleixner <tglx@linutronix.de>
      Cc: Jason Cooper <jason@lakedaemon.net>
      4d83fcf8