soc: fsl: qe: move qe_ic_cascade_* functions to qe_ic.c
authorRasmus Villemoes <linux@rasmusvillemoes.dk>
Thu, 28 Nov 2019 14:55:20 +0000 (15:55 +0100)
committerLi Yang <leoyang.li@nxp.com>
Mon, 9 Dec 2019 19:54:32 +0000 (13:54 -0600)
These functions are only ever called through a function pointer, and
therefore it makes no sense for them to be "static inline" - gcc has
no choice but to emit a copy in each translation unit that takes the
address of one of these. Since they are now only referenced from
qe_ic.c, just make them local to that file.

Reviewed-by: Timur Tabi <timur@kernel.org>
Signed-off-by: Rasmus Villemoes <linux@rasmusvillemoes.dk>
Signed-off-by: Li Yang <leoyang.li@nxp.com>
drivers/soc/fsl/qe/qe_ic.c
include/soc/fsl/qe/qe_ic.h

index a062efa..94ccbee 100644 (file)
@@ -314,6 +314,48 @@ unsigned int qe_ic_get_high_irq(struct qe_ic *qe_ic)
        return irq_linear_revmap(qe_ic->irqhost, irq);
 }
 
+static void qe_ic_cascade_low_mpic(struct irq_desc *desc)
+{
+       struct qe_ic *qe_ic = irq_desc_get_handler_data(desc);
+       unsigned int cascade_irq = qe_ic_get_low_irq(qe_ic);
+       struct irq_chip *chip = irq_desc_get_chip(desc);
+
+       if (cascade_irq != NO_IRQ)
+               generic_handle_irq(cascade_irq);
+
+       if (chip->irq_eoi)
+               chip->irq_eoi(&desc->irq_data);
+}
+
+static void qe_ic_cascade_high_mpic(struct irq_desc *desc)
+{
+       struct qe_ic *qe_ic = irq_desc_get_handler_data(desc);
+       unsigned int cascade_irq = qe_ic_get_high_irq(qe_ic);
+       struct irq_chip *chip = irq_desc_get_chip(desc);
+
+       if (cascade_irq != NO_IRQ)
+               generic_handle_irq(cascade_irq);
+
+       if (chip->irq_eoi)
+               chip->irq_eoi(&desc->irq_data);
+}
+
+static void qe_ic_cascade_muxed_mpic(struct irq_desc *desc)
+{
+       struct qe_ic *qe_ic = irq_desc_get_handler_data(desc);
+       unsigned int cascade_irq;
+       struct irq_chip *chip = irq_desc_get_chip(desc);
+
+       cascade_irq = qe_ic_get_high_irq(qe_ic);
+       if (cascade_irq == NO_IRQ)
+               cascade_irq = qe_ic_get_low_irq(qe_ic);
+
+       if (cascade_irq != NO_IRQ)
+               generic_handle_irq(cascade_irq);
+
+       chip->irq_eoi(&desc->irq_data);
+}
+
 static void __init qe_ic_init(struct device_node *node, unsigned int flags)
 {
        void (*low_handler)(struct irq_desc *desc);
index a47a0d2..43e4ce9 100644 (file)
@@ -67,46 +67,4 @@ void qe_ic_set_highest_priority(unsigned int virq, int high);
 int qe_ic_set_priority(unsigned int virq, unsigned int priority);
 int qe_ic_set_high_priority(unsigned int virq, unsigned int priority, int high);
 
-static inline void qe_ic_cascade_low_mpic(struct irq_desc *desc)
-{
-       struct qe_ic *qe_ic = irq_desc_get_handler_data(desc);
-       unsigned int cascade_irq = qe_ic_get_low_irq(qe_ic);
-       struct irq_chip *chip = irq_desc_get_chip(desc);
-
-       if (cascade_irq != NO_IRQ)
-               generic_handle_irq(cascade_irq);
-
-       if (chip->irq_eoi)
-               chip->irq_eoi(&desc->irq_data);
-}
-
-static inline void qe_ic_cascade_high_mpic(struct irq_desc *desc)
-{
-       struct qe_ic *qe_ic = irq_desc_get_handler_data(desc);
-       unsigned int cascade_irq = qe_ic_get_high_irq(qe_ic);
-       struct irq_chip *chip = irq_desc_get_chip(desc);
-
-       if (cascade_irq != NO_IRQ)
-               generic_handle_irq(cascade_irq);
-
-       if (chip->irq_eoi)
-               chip->irq_eoi(&desc->irq_data);
-}
-
-static inline void qe_ic_cascade_muxed_mpic(struct irq_desc *desc)
-{
-       struct qe_ic *qe_ic = irq_desc_get_handler_data(desc);
-       unsigned int cascade_irq;
-       struct irq_chip *chip = irq_desc_get_chip(desc);
-
-       cascade_irq = qe_ic_get_high_irq(qe_ic);
-       if (cascade_irq == NO_IRQ)
-               cascade_irq = qe_ic_get_low_irq(qe_ic);
-
-       if (cascade_irq != NO_IRQ)
-               generic_handle_irq(cascade_irq);
-
-       chip->irq_eoi(&desc->irq_data);
-}
-
 #endif /* _ASM_POWERPC_QE_IC_H */