[RFT v2 06/48] pinctrl: Use irq_desc_get_xxx() to avoid redundant lookup of irq_desc

2015-06-03 Thread Jiang Liu
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: Jiang Liu jiang@linux.intel.com
Acked-by: Linus Walleij linus.wall...@linaro.org
---
 drivers/pinctrl/intel/pinctrl-cherryview.c|2 +-
 drivers/pinctrl/intel/pinctrl-intel.c |2 +-
 drivers/pinctrl/mediatek/pinctrl-mtk-common.c |4 ++--
 drivers/pinctrl/nomadik/pinctrl-nomadik.c |   12 +---
 drivers/pinctrl/pinctrl-amd.c |2 +-
 drivers/pinctrl/pinctrl-at91.c|2 +-
 drivers/pinctrl/pinctrl-coh901.c  |4 ++--
 drivers/pinctrl/pinctrl-rockchip.c|4 ++--
 drivers/pinctrl/pinctrl-single.c  |2 +-
 drivers/pinctrl/pinctrl-st.c  |6 +++---
 drivers/pinctrl/qcom/pinctrl-msm.c|2 +-
 drivers/pinctrl/samsung/pinctrl-exynos.c  |8 
 drivers/pinctrl/samsung/pinctrl-s3c24xx.c |   18 +-
 drivers/pinctrl/samsung/pinctrl-s3c64xx.c |   22 ++
 drivers/pinctrl/sirf/pinctrl-sirf.c   |2 +-
 drivers/pinctrl/sunxi/pinctrl-sunxi.c |4 ++--
 16 files changed, 46 insertions(+), 50 deletions(-)

diff --git a/drivers/pinctrl/intel/pinctrl-cherryview.c 
b/drivers/pinctrl/intel/pinctrl-cherryview.c
index 82f691c4..878e798bcb56 100644
--- a/drivers/pinctrl/intel/pinctrl-cherryview.c
+++ b/drivers/pinctrl/intel/pinctrl-cherryview.c
@@ -1368,7 +1368,7 @@ static void chv_gpio_irq_handler(unsigned irq, struct 
irq_desc *desc)
 {
struct gpio_chip *gc = irq_desc_get_handler_data(desc);
struct chv_pinctrl *pctrl = gpiochip_to_pinctrl(gc);
-   struct irq_chip *chip = irq_get_chip(irq);
+   struct irq_chip *chip = irq_desc_get_chip(desc);
unsigned long pending;
u32 intr_line;
 
diff --git a/drivers/pinctrl/intel/pinctrl-intel.c 
b/drivers/pinctrl/intel/pinctrl-intel.c
index 00768e53deec..a40681097402 100644
--- a/drivers/pinctrl/intel/pinctrl-intel.c
+++ b/drivers/pinctrl/intel/pinctrl-intel.c
@@ -840,7 +840,7 @@ static void intel_gpio_irq_handler(unsigned irq, struct 
irq_desc *desc)
 {
struct gpio_chip *gc = irq_desc_get_handler_data(desc);
struct intel_pinctrl *pctrl = gpiochip_to_pinctrl(gc);
-   struct irq_chip *chip = irq_get_chip(irq);
+   struct irq_chip *chip = irq_desc_get_chip(desc);
int i;
 
chained_irq_enter(chip, desc);
diff --git a/drivers/pinctrl/mediatek/pinctrl-mtk-common.c 
b/drivers/pinctrl/mediatek/pinctrl-mtk-common.c
index 474812e2b0cb..fd05ca6125b0 100644
--- a/drivers/pinctrl/mediatek/pinctrl-mtk-common.c
+++ b/drivers/pinctrl/mediatek/pinctrl-mtk-common.c
@@ -1018,8 +1018,8 @@ mtk_eint_debounce_process(struct mtk_pinctrl *pctl, int 
index)
 
 static void mtk_eint_irq_handler(unsigned irq, struct irq_desc *desc)
 {
-   struct irq_chip *chip = irq_get_chip(irq);
-   struct mtk_pinctrl *pctl = irq_get_handler_data(irq);
+   struct irq_chip *chip = irq_desc_get_chip(desc);
+   struct mtk_pinctrl *pctl = irq_desc_get_handler_data(desc);
unsigned int status, eint_num;
int offset, index, virq;
const struct mtk_eint_offsets *eint_offsets =
diff --git a/drivers/pinctrl/nomadik/pinctrl-nomadik.c 
b/drivers/pinctrl/nomadik/pinctrl-nomadik.c
index a6a22054c0ba..902f53b855bf 100644
--- a/drivers/pinctrl/nomadik/pinctrl-nomadik.c
+++ b/drivers/pinctrl/nomadik/pinctrl-nomadik.c
@@ -854,10 +854,9 @@ static struct irq_chip nmk_gpio_irq_chip = {
.flags  = IRQCHIP_MASK_ON_SUSPEND,
 };
 
-static void __nmk_gpio_irq_handler(unsigned int irq, struct irq_desc *desc,
-  u32 status)
+static void __nmk_gpio_irq_handler(struct irq_desc *desc, u32 status)
 {
-   struct irq_chip *host_chip = irq_get_chip(irq);
+   struct irq_chip *host_chip = irq_desc_get_chip(desc);
struct gpio_chip *chip = irq_desc_get_handler_data(desc);
 
chained_irq_enter(host_chip, desc);
@@ -882,17 +881,16 @@ static void nmk_gpio_irq_handler(unsigned int irq, struct 
irq_desc *desc)
status = readl(nmk_chip-addr + NMK_GPIO_IS);
clk_disable(nmk_chip-clk);
 
-   __nmk_gpio_irq_handler(irq, desc, status);
+   __nmk_gpio_irq_handler(desc, status);
 }
 
-static void nmk_gpio_latent_irq_handler(unsigned int irq,
-  struct irq_desc *desc)
+static void nmk_gpio_latent_irq_handler(unsigned int irq, struct irq_desc 
*desc)
 {
struct gpio_chip *chip = irq_desc_get_handler_data(desc);
struct nmk_gpio_chip *nmk_chip = container_of(chip, struct 
nmk_gpio_chip, chip);
u32 status = nmk_chip-get_latent_status(nmk_chip-bank);
 
-   __nmk_gpio_irq_handler(irq, desc, status);
+   __nmk_gpio_irq_handler(desc, status);
 }
 
 /* I/O Functions */
diff --git a/drivers/pinctrl/pinctrl-amd.c b/drivers/pinctrl/pinctrl-amd.c
index 7de3b64bf142

[RFT v2 10/48] irqchip: Use irq_desc_get_xxx() to avoid redundant lookup of irq_desc

2015-06-03 Thread Jiang Liu
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: Jiang Liu jiang@linux.intel.com
---
 drivers/irqchip/exynos-combiner.c   |4 ++--
 drivers/irqchip/irq-armada-370-xp.c |2 +-
 drivers/irqchip/irq-dw-apb-ictl.c   |4 ++--
 drivers/irqchip/irq-gic.c   |4 ++--
 drivers/irqchip/irq-orion.c |2 +-
 drivers/irqchip/irq-sunxi-nmi.c |2 +-
 drivers/irqchip/spear-shirq.c   |2 +-
 7 files changed, 10 insertions(+), 10 deletions(-)

diff --git a/drivers/irqchip/exynos-combiner.c 
b/drivers/irqchip/exynos-combiner.c
index 5945223b73fa..039ceb46fcc0 100644
--- a/drivers/irqchip/exynos-combiner.c
+++ b/drivers/irqchip/exynos-combiner.c
@@ -62,8 +62,8 @@ static void combiner_unmask_irq(struct irq_data *data)
 
 static void combiner_handle_cascade_irq(unsigned int irq, struct irq_desc 
*desc)
 {
-   struct combiner_chip_data *chip_data = irq_get_handler_data(irq);
-   struct irq_chip *chip = irq_get_chip(irq);
+   struct combiner_chip_data *chip_data = irq_desc_get_handler_data(desc);
+   struct irq_chip *chip = irq_desc_get_chip(desc);
unsigned int cascade_irq, combiner_irq;
unsigned long status;
 
diff --git a/drivers/irqchip/irq-armada-370-xp.c 
b/drivers/irqchip/irq-armada-370-xp.c
index daccc8bdbb42..40b5fe99a1d5 100644
--- a/drivers/irqchip/irq-armada-370-xp.c
+++ b/drivers/irqchip/irq-armada-370-xp.c
@@ -451,7 +451,7 @@ static void armada_370_xp_handle_msi_irq(struct pt_regs *r, 
bool b) {}
 static void armada_370_xp_mpic_handle_cascade_irq(unsigned int irq,
  struct irq_desc *desc)
 {
-   struct irq_chip *chip = irq_get_chip(irq);
+   struct irq_chip *chip = irq_desc_get_chip(desc);
unsigned long irqmap, irqn, irqsrc, cpuid;
unsigned int cascade_irq;
 
diff --git a/drivers/irqchip/irq-dw-apb-ictl.c 
b/drivers/irqchip/irq-dw-apb-ictl.c
index 53bb7326a60a..cddcd3b75f00 100644
--- a/drivers/irqchip/irq-dw-apb-ictl.c
+++ b/drivers/irqchip/irq-dw-apb-ictl.c
@@ -28,8 +28,8 @@
 
 static void dw_apb_ictl_handler(unsigned int irq, struct irq_desc *desc)
 {
-   struct irq_chip *chip = irq_get_chip(irq);
-   struct irq_chip_generic *gc = irq_get_handler_data(irq);
+   struct irq_chip *chip = irq_desc_get_chip(desc);
+   struct irq_chip_generic *gc = irq_desc_get_handler_data(desc);
struct irq_domain *d = gc-private;
u32 stat;
int n;
diff --git a/drivers/irqchip/irq-gic.c b/drivers/irqchip/irq-gic.c
index 01999d74bd3a..6c8a5a7fb4a0 100644
--- a/drivers/irqchip/irq-gic.c
+++ b/drivers/irqchip/irq-gic.c
@@ -288,8 +288,8 @@ static void __exception_irq_entry gic_handle_irq(struct 
pt_regs *regs)
 
 static void gic_handle_cascade_irq(unsigned int irq, struct irq_desc *desc)
 {
-   struct gic_chip_data *chip_data = irq_get_handler_data(irq);
-   struct irq_chip *chip = irq_get_chip(irq);
+   struct gic_chip_data *chip_data = irq_desc_get_handler_data(desc);
+   struct irq_chip *chip = irq_desc_get_chip(desc);
unsigned int cascade_irq, gic_irq;
unsigned long status;
 
diff --git a/drivers/irqchip/irq-orion.c b/drivers/irqchip/irq-orion.c
index ad0c0f6f1d65..58e034db0e7c 100644
--- a/drivers/irqchip/irq-orion.c
+++ b/drivers/irqchip/irq-orion.c
@@ -109,7 +109,7 @@ IRQCHIP_DECLARE(orion_intc, marvell,orion-intc, 
orion_irq_init);
 
 static void orion_bridge_irq_handler(unsigned int irq, struct irq_desc *desc)
 {
-   struct irq_domain *d = irq_get_handler_data(irq);
+   struct irq_domain *d = irq_desc_get_handler_data(desc);
 
struct irq_chip_generic *gc = irq_get_domain_generic_chip(d, 0);
u32 stat = readl_relaxed(gc-reg_base + ORION_BRIDGE_IRQ_CAUSE) 
diff --git a/drivers/irqchip/irq-sunxi-nmi.c b/drivers/irqchip/irq-sunxi-nmi.c
index 4a9ce5b50c5b..2eaa9d9df241 100644
--- a/drivers/irqchip/irq-sunxi-nmi.c
+++ b/drivers/irqchip/irq-sunxi-nmi.c
@@ -61,7 +61,7 @@ static inline u32 sunxi_sc_nmi_read(struct irq_chip_generic 
*gc, u32 off)
 static void sunxi_sc_nmi_handle_irq(unsigned int irq, struct irq_desc *desc)
 {
struct irq_domain *domain = irq_desc_get_handler_data(desc);
-   struct irq_chip *chip = irq_get_chip(irq);
+   struct irq_chip *chip = irq_desc_get_chip(desc);
unsigned int virq = irq_find_mapping(domain, 0);
 
chained_irq_enter(chip, desc);
diff --git a/drivers/irqchip/spear-shirq.c b/drivers/irqchip/spear-shirq.c
index 9c145a7cb056..fb68ee9c0424 100644
--- a/drivers/irqchip/spear-shirq.c
+++ b/drivers/irqchip/spear-shirq.c
@@ -185,7 +185,7 @@ static struct spear_shirq *spear320_shirq_blocks[] = {
 
 static void shirq_handler(unsigned irq, struct irq_desc *desc)
 {
-   struct spear_shirq *shirq = irq_get_handler_data(irq);
+   struct spear_shirq *shirq = irq_desc_get_handler_data(desc);
u32 pend;
 
pend = readl(shirq-base + shirq

[RFT v2 46/48] genirq, irqchip: Kill the first parameter 'irq' of irq_flow_handler_t

2015-06-03 Thread Jiang Liu
Now most IRQ flow handlers make no use of the first parameter 'irq'.
And for those who do make use of 'irq', we could easily get the irq
number through irq_desc-irq_data-irq. So kill the first parameter
'irq' of irq_flow_handler_t.

To ease review, I have split the changes into several parts, though
they should be merge as one to support bisecting.

Signed-off-by: Jiang Liu jiang@linux.intel.com
Acked-by: Ralf Baechle r...@linux-mips.org
---
 drivers/irqchip/exynos-combiner.c|4 ++--
 drivers/irqchip/irq-armada-370-xp.c  |3 +--
 drivers/irqchip/irq-bcm7038-l1.c |2 +-
 drivers/irqchip/irq-bcm7120-l2.c |2 +-
 drivers/irqchip/irq-brcmstb-l2.c |4 ++--
 drivers/irqchip/irq-dw-apb-ictl.c|2 +-
 drivers/irqchip/irq-gic.c|2 +-
 drivers/irqchip/irq-imgpdc.c |4 ++--
 drivers/irqchip/irq-keystone.c   |2 +-
 drivers/irqchip/irq-metag-ext.c  |3 +--
 drivers/irqchip/irq-metag.c  |3 +--
 drivers/irqchip/irq-mips-gic.c   |2 +-
 drivers/irqchip/irq-mmp.c|2 +-
 drivers/irqchip/irq-orion.c  |2 +-
 drivers/irqchip/irq-s3c24xx.c|2 +-
 drivers/irqchip/irq-sunxi-nmi.c  |2 +-
 drivers/irqchip/irq-tb10x.c  |2 +-
 drivers/irqchip/irq-versatile-fpga.c |4 ++--
 drivers/irqchip/irq-vic.c|2 +-
 drivers/irqchip/spear-shirq.c|2 +-
 20 files changed, 24 insertions(+), 27 deletions(-)

diff --git a/drivers/irqchip/exynos-combiner.c 
b/drivers/irqchip/exynos-combiner.c
index 039ceb46fcc0..2bf152307bac 100644
--- a/drivers/irqchip/exynos-combiner.c
+++ b/drivers/irqchip/exynos-combiner.c
@@ -60,7 +60,7 @@ static void combiner_unmask_irq(struct irq_data *data)
__raw_writel(mask, combiner_base(data) + COMBINER_ENABLE_SET);
 }
 
-static void combiner_handle_cascade_irq(unsigned int irq, struct irq_desc 
*desc)
+static void combiner_handle_cascade_irq(struct irq_desc *desc)
 {
struct combiner_chip_data *chip_data = irq_desc_get_handler_data(desc);
struct irq_chip *chip = irq_desc_get_chip(desc);
@@ -81,7 +81,7 @@ static void combiner_handle_cascade_irq(unsigned int irq, 
struct irq_desc *desc)
cascade_irq = irq_find_mapping(combiner_irq_domain, combiner_irq);
 
if (unlikely(!cascade_irq))
-   handle_bad_irq(irq, desc);
+   handle_bad_irq(desc);
else
generic_handle_irq(cascade_irq);
 
diff --git a/drivers/irqchip/irq-armada-370-xp.c 
b/drivers/irqchip/irq-armada-370-xp.c
index 40b5fe99a1d5..fa26eb1b4f17 100644
--- a/drivers/irqchip/irq-armada-370-xp.c
+++ b/drivers/irqchip/irq-armada-370-xp.c
@@ -448,8 +448,7 @@ static void armada_370_xp_handle_msi_irq(struct pt_regs 
*regs, bool is_chained)
 static void armada_370_xp_handle_msi_irq(struct pt_regs *r, bool b) {}
 #endif
 
-static void armada_370_xp_mpic_handle_cascade_irq(unsigned int irq,
- struct irq_desc *desc)
+static void armada_370_xp_mpic_handle_cascade_irq(struct irq_desc *desc)
 {
struct irq_chip *chip = irq_desc_get_chip(desc);
unsigned long irqmap, irqn, irqsrc, cpuid;
diff --git a/drivers/irqchip/irq-bcm7038-l1.c b/drivers/irqchip/irq-bcm7038-l1.c
index d3b8c8be15f6..9ad6540bd57e 100644
--- a/drivers/irqchip/irq-bcm7038-l1.c
+++ b/drivers/irqchip/irq-bcm7038-l1.c
@@ -116,7 +116,7 @@ static inline void l1_writel(u32 val, void __iomem *reg)
writel(val, reg);
 }
 
-static void bcm7038_l1_irq_handle(unsigned int irq, struct irq_desc *desc)
+static void bcm7038_l1_irq_handle(struct irq_desc *desc)
 {
struct bcm7038_l1_chip *intc = irq_desc_get_handler_data(desc);
struct bcm7038_l1_cpu *cpu;
diff --git a/drivers/irqchip/irq-bcm7120-l2.c b/drivers/irqchip/irq-bcm7120-l2.c
index 3ba5cc780fcb..4ee0d839009e 100644
--- a/drivers/irqchip/irq-bcm7120-l2.c
+++ b/drivers/irqchip/irq-bcm7120-l2.c
@@ -52,7 +52,7 @@ struct bcm7120_l2_intc_data {
const __be32 *map_mask_prop;
 };
 
-static void bcm7120_l2_intc_irq_handle(unsigned int irq, struct irq_desc *desc)
+static void bcm7120_l2_intc_irq_handle(struct irq_desc *desc)
 {
struct bcm7120_l2_intc_data *b = irq_desc_get_handler_data(desc);
struct irq_chip *chip = irq_desc_get_chip(desc);
diff --git a/drivers/irqchip/irq-brcmstb-l2.c b/drivers/irqchip/irq-brcmstb-l2.c
index 994c01fdb4b5..ab3d0c52ea5a 100644
--- a/drivers/irqchip/irq-brcmstb-l2.c
+++ b/drivers/irqchip/irq-brcmstb-l2.c
@@ -51,7 +51,7 @@ struct brcmstb_l2_intc_data {
u32 saved_mask; /* for suspend/resume */
 };
 
-static void brcmstb_l2_intc_irq_handle(unsigned int __irq, struct irq_desc 
*desc)
+static void brcmstb_l2_intc_irq_handle(struct irq_desc *desc)
 {
struct brcmstb_l2_intc_data *b = irq_desc_get_handler_data(desc);
struct irq_chip_generic *gc = irq_get_domain_generic_chip(b-domain, 0);
@@ -65,7 +65,7 @@ static void brcmstb_l2_intc_irq_handle(unsigned int

[RFT v2 44/48] genirq, pinctrl: Kill the first parameter 'irq' of irq_flow_handler_t

2015-06-03 Thread Jiang Liu
Now most IRQ flow handlers make no use of the first parameter 'irq'.
And for those who do make use of 'irq', we could easily get the irq
number through irq_desc-irq_data-irq. So kill the first parameter
'irq' of irq_flow_handler_t.

To ease review, I have split the changes into several parts, though
they should be merge as one to support bisecting.

Signed-off-by: Jiang Liu jiang@linux.intel.com
---
 drivers/pinctrl/bcm/pinctrl-cygnus-gpio.c |2 +-
 drivers/pinctrl/intel/pinctrl-baytrail.c  |2 +-
 drivers/pinctrl/intel/pinctrl-cherryview.c|2 +-
 drivers/pinctrl/intel/pinctrl-intel.c |2 +-
 drivers/pinctrl/mediatek/pinctrl-mtk-common.c |2 +-
 drivers/pinctrl/nomadik/pinctrl-nomadik.c |4 ++--
 drivers/pinctrl/pinctrl-adi2.c|3 +--
 drivers/pinctrl/pinctrl-amd.c |4 ++--
 drivers/pinctrl/pinctrl-at91.c|2 +-
 drivers/pinctrl/pinctrl-coh901.c  |2 +-
 drivers/pinctrl/pinctrl-rockchip.c|2 +-
 drivers/pinctrl/pinctrl-single.c  |2 +-
 drivers/pinctrl/pinctrl-st.c  |4 ++--
 drivers/pinctrl/qcom/pinctrl-msm.c|4 ++--
 drivers/pinctrl/samsung/pinctrl-exynos.c  |4 ++--
 drivers/pinctrl/samsung/pinctrl-s3c24xx.c |8 
 drivers/pinctrl/samsung/pinctrl-s3c64xx.c |   10 +-
 drivers/pinctrl/sirf/pinctrl-sirf.c   |4 ++--
 drivers/pinctrl/spear/pinctrl-plgpio.c|2 +-
 drivers/pinctrl/sunxi/pinctrl-sunxi.c |2 +-
 20 files changed, 33 insertions(+), 34 deletions(-)

diff --git a/drivers/pinctrl/bcm/pinctrl-cygnus-gpio.c 
b/drivers/pinctrl/bcm/pinctrl-cygnus-gpio.c
index 4ad5c1a996e3..df940687524f 100644
--- a/drivers/pinctrl/bcm/pinctrl-cygnus-gpio.c
+++ b/drivers/pinctrl/bcm/pinctrl-cygnus-gpio.c
@@ -143,7 +143,7 @@ static inline bool cygnus_get_bit(struct cygnus_gpio *chip, 
unsigned int reg,
return !!(readl(chip-base + offset)  BIT(shift));
 }
 
-static void cygnus_gpio_irq_handler(unsigned int irq, struct irq_desc *desc)
+static void cygnus_gpio_irq_handler(struct irq_desc *desc)
 {
struct gpio_chip *gc = irq_desc_get_handler_data(desc);
struct cygnus_gpio *chip = to_cygnus_gpio(gc);
diff --git a/drivers/pinctrl/intel/pinctrl-baytrail.c 
b/drivers/pinctrl/intel/pinctrl-baytrail.c
index 2062c224e32f..94870cedb0ad 100644
--- a/drivers/pinctrl/intel/pinctrl-baytrail.c
+++ b/drivers/pinctrl/intel/pinctrl-baytrail.c
@@ -421,7 +421,7 @@ static void byt_gpio_dbg_show(struct seq_file *s, struct 
gpio_chip *chip)
spin_unlock_irqrestore(vg-lock, flags);
 }
 
-static void byt_gpio_irq_handler(unsigned irq, struct irq_desc *desc)
+static void byt_gpio_irq_handler(struct irq_desc *desc)
 {
struct irq_data *data = irq_desc_get_irq_data(desc);
struct byt_gpio *vg = to_byt_gpio(irq_desc_get_handler_data(desc));
diff --git a/drivers/pinctrl/intel/pinctrl-cherryview.c 
b/drivers/pinctrl/intel/pinctrl-cherryview.c
index 878e798bcb56..cfdc5f1c9cd6 100644
--- a/drivers/pinctrl/intel/pinctrl-cherryview.c
+++ b/drivers/pinctrl/intel/pinctrl-cherryview.c
@@ -1364,7 +1364,7 @@ static struct irq_chip chv_gpio_irqchip = {
.flags = IRQCHIP_SKIP_SET_WAKE,
 };
 
-static void chv_gpio_irq_handler(unsigned irq, struct irq_desc *desc)
+static void chv_gpio_irq_handler(struct irq_desc *desc)
 {
struct gpio_chip *gc = irq_desc_get_handler_data(desc);
struct chv_pinctrl *pctrl = gpiochip_to_pinctrl(gc);
diff --git a/drivers/pinctrl/intel/pinctrl-intel.c 
b/drivers/pinctrl/intel/pinctrl-intel.c
index a40681097402..a64ca4bd69cd 100644
--- a/drivers/pinctrl/intel/pinctrl-intel.c
+++ b/drivers/pinctrl/intel/pinctrl-intel.c
@@ -836,7 +836,7 @@ static void intel_gpio_community_irq_handler(struct 
gpio_chip *gc,
}
 }
 
-static void intel_gpio_irq_handler(unsigned irq, struct irq_desc *desc)
+static void intel_gpio_irq_handler(struct irq_desc *desc)
 {
struct gpio_chip *gc = irq_desc_get_handler_data(desc);
struct intel_pinctrl *pctrl = gpiochip_to_pinctrl(gc);
diff --git a/drivers/pinctrl/mediatek/pinctrl-mtk-common.c 
b/drivers/pinctrl/mediatek/pinctrl-mtk-common.c
index fd05ca6125b0..9ec45d4875db 100644
--- a/drivers/pinctrl/mediatek/pinctrl-mtk-common.c
+++ b/drivers/pinctrl/mediatek/pinctrl-mtk-common.c
@@ -1016,7 +1016,7 @@ mtk_eint_debounce_process(struct mtk_pinctrl *pctl, int 
index)
}
 }
 
-static void mtk_eint_irq_handler(unsigned irq, struct irq_desc *desc)
+static void mtk_eint_irq_handler(struct irq_desc *desc)
 {
struct irq_chip *chip = irq_desc_get_chip(desc);
struct mtk_pinctrl *pctl = irq_desc_get_handler_data(desc);
diff --git a/drivers/pinctrl/nomadik/pinctrl-nomadik.c 
b/drivers/pinctrl/nomadik/pinctrl-nomadik.c
index 902f53b855bf..cd70a30f8d8e 100644
--- a/drivers/pinctrl/nomadik/pinctrl-nomadik.c
+++ b/drivers/pinctrl/nomadik/pinctrl-nomadik.c
@@ -871,7 +871,7 @@ static

[RFT v2 36/48] genirq, arm: Kill the first parameter 'irq' of irq_flow_handler_t

2015-06-03 Thread Jiang Liu
Now most IRQ flow handlers make no use of the first parameter 'irq'.
And for those who do make use of 'irq', we could easily get the irq
number through irq_desc-irq_data-irq. So kill the first parameter
'irq' of irq_flow_handler_t.

To ease review, I have split the changes into several parts, though
they should be merge as one to support bisecting.

Signed-off-by: Jiang Liu jiang@linux.intel.com
Signed-off-by: Hans Ulli Kroll ulli.kr...@googlemail.com
---
 arch/arm/common/it8152.c   |2 +-
 arch/arm/common/locomo.c   |2 +-
 arch/arm/common/sa.c   |4 ++--
 arch/arm/include/asm/hardware/it8152.h |2 +-
 arch/arm/include/asm/mach/irq.h|4 ++--
 arch/arm/mach-dove/irq.c   |4 ++--
 arch/arm/mach-footbridge/isa-irq.c |4 ++--
 arch/arm/mach-gemini/gpio.c|2 +-
 arch/arm/mach-imx/3ds_debugboard.c |2 +-
 arch/arm/mach-imx/mach-mx31ads.c   |2 +-
 arch/arm/mach-iop13xx/msi.c|2 +-
 arch/arm/mach-lpc32xx/irq.c|4 ++--
 arch/arm/mach-netx/generic.c   |2 +-
 arch/arm/mach-omap1/fpga.c |2 +-
 arch/arm/mach-omap2/prm_common.c   |2 +-
 arch/arm/mach-pxa/balloon3.c   |2 +-
 arch/arm/mach-pxa/cm-x2xx-pci.c|4 ++--
 arch/arm/mach-pxa/lpd270.c |2 +-
 arch/arm/mach-pxa/pcm990-baseboard.c   |2 +-
 arch/arm/mach-pxa/viper.c  |2 +-
 arch/arm/mach-pxa/zeus.c   |2 +-
 arch/arm/mach-rpc/ecard.c  |2 +-
 arch/arm/mach-s3c24xx/bast-irq.c   |3 +--
 arch/arm/mach-s3c64xx/common.c |8 
 arch/arm/mach-sa1100/neponset.c|2 +-
 arch/arm/plat-orion/gpio.c |2 +-
 26 files changed, 35 insertions(+), 36 deletions(-)

diff --git a/arch/arm/common/it8152.c b/arch/arm/common/it8152.c
index 5114b68e99d5..aaa206181f92 100644
--- a/arch/arm/common/it8152.c
+++ b/arch/arm/common/it8152.c
@@ -95,7 +95,7 @@ void it8152_init_irq(void)
}
 }
 
-void it8152_irq_demux(unsigned int irq, struct irq_desc *desc)
+void it8152_irq_demux(struct irq_desc *desc)
 {
int bits_pd, bits_lp, bits_ld;
int i;
diff --git a/arch/arm/common/locomo.c b/arch/arm/common/locomo.c
index d4a62ff39576..43e18e8b0277 100644
--- a/arch/arm/common/locomo.c
+++ b/arch/arm/common/locomo.c
@@ -138,7 +138,7 @@ static struct locomo_dev_info locomo_devices[] = {
},
 };
 
-static void locomo_handler(unsigned int irq, struct irq_desc *desc)
+static void locomo_handler(struct irq_desc *desc)
 {
struct locomo *lchip = irq_desc_get_chip_data(desc);
int req, i;
diff --git a/arch/arm/common/sa.c b/arch/arm/common/sa.c
index 0d0844fa54c2..762dfe7081f0 100644
--- a/arch/arm/common/sa.c
+++ b/arch/arm/common/sa.c
@@ -197,7 +197,7 @@ static struct sa_dev_info sa_devices[] = {
  * will call us again if there are more interrupts to process.
  */
 static void
-sa_irq_handler(unsigned int irq, struct irq_desc *desc)
+sa_irq_handler(struct irq_desc *desc)
 {
unsigned int stat0, stat1, i;
struct sa *sachip = irq_desc_get_handler_data(desc);
@@ -213,7 +213,7 @@ sa_irq_handler(unsigned int irq, struct irq_desc *desc)
sa_writel(stat1, mapbase + SA_INTSTATCLR1);
 
if (stat0 == 0  stat1 == 0) {
-   do_bad_IRQ(irq, desc);
+   do_bad_IRQ(desc);
return;
}
 
diff --git a/arch/arm/include/asm/hardware/it8152.h 
b/arch/arm/include/asm/hardware/it8152.h
index d36a73d7c0e8..076777ff3daa 100644
--- a/arch/arm/include/asm/hardware/it8152.h
+++ b/arch/arm/include/asm/hardware/it8152.h
@@ -106,7 +106,7 @@ extern void __iomem *it8152_base_address;
 struct pci_dev;
 struct pci_sys_data;
 
-extern void it8152_irq_demux(unsigned int irq, struct irq_desc *desc);
+extern void it8152_irq_demux(struct irq_desc *desc);
 extern void it8152_init_irq(void);
 extern int it8152_pci_map_irq(const struct pci_dev *dev, u8 slot, u8 pin);
 extern int it8152_pci_setup(int nr, struct pci_sys_data *sys);
diff --git a/arch/arm/include/asm/mach/irq.h b/arch/arm/include/asm/mach/irq.h
index 2092ee1e1300..4703e00283db 100644
--- a/arch/arm/include/asm/mach/irq.h
+++ b/arch/arm/include/asm/mach/irq.h
@@ -23,10 +23,10 @@ extern int show_fiq_list(struct seq_file *, int);
 /*
  * This is for easy migration, but should be changed in the source
  */
-#define do_bad_IRQ(irq,desc)   \
+#define do_bad_IRQ(desc)   \
 do {   \
raw_spin_lock(desc-lock); \
-   handle_bad_irq(irq, desc);  \
+   handle_bad_irq(desc);   \
raw_spin_unlock(desc-lock);   \
 } while(0)
 
diff --git a/arch/arm/mach-dove/irq.c b/arch/arm/mach-dove/irq.c
index 6d0f0b12f95a..30140cbdb249 100644

Re: [RFC v1 15/25] genirq: Kill the first parameter 'irq' of irq_flow_handler_t

2015-05-20 Thread Jiang Liu
On 2015/5/20 23:28, Thomas Gleixner wrote:
 On Wed, 20 May 2015, Jiang Liu wrote:
 -static void locomo_handler(unsigned int irq, struct irq_desc *desc)
 +static void locomo_handler(struct irq_desc *desc)
  {
  struct locomo *lchip = irq_desc_get_chip_data(desc);
 +unsigned int irq;
  int req, i;
 
 That leaves irq unitialized 
That should be OK, 'irq' here is just a local variable.
Actually it may be changed as:
if (req) {
/* generate the next interrupt(s) */
-irq = lchip-irq_base;
+unsigned int irq = lchip-irq_base;
for (i = 0; i = 3; i++, irq++) {
if (req  (0x0100  i)) {
generic_handle_irq(irq);
}

}
}

 
 Thanks,
 
   tglx
 
--
To unsubscribe from this list: send the line unsubscribe linux-samsung-soc in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html