ARM: OMAP4: Remove legacy IRQ for PRM
authorTony Lindgren <tony@atomide.com>
Tue, 10 Oct 2017 21:27:13 +0000 (14:27 -0700)
committerTony Lindgren <tony@atomide.com>
Tue, 10 Oct 2017 21:27:13 +0000 (14:27 -0700)
We have the PRM IRQ mapped in device tree and this legacy code
is no longer needed.

Cc: Lokesh Vutla <lokeshvutla@ti.com>
Cc: Paul Walmsley <paul@pwsan.com>
Cc: Tero Kristo <t-kristo@ti.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
arch/arm/mach-omap2/prcm-common.h
arch/arm/mach-omap2/prm.h
arch/arm/mach-omap2/prm44xx.c
arch/arm/mach-omap2/prm_common.c

index ee7041d523cf9d64cbffda1abd9834af676775c1..0592b23902c6885b03985085ec5c4d7415966d01 100644 (file)
@@ -506,7 +506,6 @@ struct omap_prcm_irq_setup {
        u8 nr_irqs;
        const struct omap_prcm_irq *irqs;
        int irq;
-       unsigned int (*xlate_irq)(unsigned int);
        void (*read_pending_irqs)(unsigned long *events);
        void (*ocp_barrier)(void);
        void (*save_and_clear_irqen)(u32 *saved_mask);
index 94dc3565add818071270c980db0cb03f62d41c49..f0fb508710550713655191784debbeed88a16fac 100644 (file)
@@ -29,11 +29,9 @@ int omap2_prcm_base_init(void);
  *
  * PRM_HAS_IO_WAKEUP: has IO wakeup capability
  * PRM_HAS_VOLTAGE: has voltage domains
- * PRM_IRQ_DEFAULT: use default irq number for PRM irq
  */
 #define PRM_HAS_IO_WAKEUP      BIT(0)
 #define PRM_HAS_VOLTAGE                BIT(1)
-#define PRM_IRQ_DEFAULT                BIT(2)
 
 /*
  * MAX_MODULE_SOFTRESET_WAIT: Maximum microseconds to wait for OMAP
index 1c0c1663f078ae583c0b43350c01c2379c85e276..acb95936dfe74c350e9cea47e2b57dcfbb7e28f9 100644 (file)
@@ -50,8 +50,6 @@ static struct omap_prcm_irq_setup omap4_prcm_irq_setup = {
        .nr_regs                = 2,
        .irqs                   = omap4_prcm_irqs,
        .nr_irqs                = ARRAY_SIZE(omap4_prcm_irqs),
-       .irq                    = 11 + OMAP44XX_IRQ_GIC_START,
-       .xlate_irq              = omap4_xlate_irq,
        .read_pending_irqs      = &omap44xx_prm_read_pending_irqs,
        .ocp_barrier            = &omap44xx_prm_ocp_barrier,
        .save_and_clear_irqen   = &omap44xx_prm_save_and_clear_irqen,
@@ -743,23 +741,10 @@ static int omap44xx_prm_late_init(void)
                return 0;
 
        irq_num = of_irq_get(prm_init_data->np, 0);
-       /*
-        * Already have OMAP4 IRQ num. For all other platforms, we need
-        * IRQ numbers from DT
-        */
-       if (irq_num <= 0 && !(prm_init_data->flags & PRM_IRQ_DEFAULT)) {
-               if (irq_num == -EPROBE_DEFER)
-                       return irq_num;
-
-               /* Have nothing to do */
-               return 0;
-       }
+       if (irq_num == -EPROBE_DEFER)
+               return irq_num;
 
-       /* Once OMAP4 DT is filled as well */
-       if (irq_num > 0) {
-               omap4_prcm_irq_setup.irq = irq_num;
-               omap4_prcm_irq_setup.xlate_irq = NULL;
-       }
+       omap4_prcm_irq_setup.irq = irq_num;
 
        omap44xx_prm_enable_io_wakeup();
 
index 09180a59b1c99bbc8d004f5a7436fc1b0c255166..021b5a8b9c0a6200ca6b8632fdc130fc3735ce54 100644 (file)
@@ -218,10 +218,7 @@ void omap_prcm_irq_cleanup(void)
        kfree(prcm_irq_setup->priority_mask);
        prcm_irq_setup->priority_mask = NULL;
 
-       if (prcm_irq_setup->xlate_irq)
-               irq = prcm_irq_setup->xlate_irq(prcm_irq_setup->irq);
-       else
-               irq = prcm_irq_setup->irq;
+       irq = prcm_irq_setup->irq;
        irq_set_chained_handler(irq, NULL);
 
        if (prcm_irq_setup->base_irq > 0)
@@ -307,10 +304,7 @@ int omap_prcm_register_chain_handler(struct omap_prcm_irq_setup *irq_setup)
                                1 << (offset & 0x1f);
        }
 
-       if (irq_setup->xlate_irq)
-               irq = irq_setup->xlate_irq(irq_setup->irq);
-       else
-               irq = irq_setup->irq;
+       irq = irq_setup->irq;
        irq_set_chained_handler(irq, omap_prcm_irq_handler);
 
        irq_setup->base_irq = irq_alloc_descs(-1, 0, irq_setup->nr_regs * 32,
@@ -671,7 +665,7 @@ static struct omap_prcm_init_data omap4_prm_data __initdata = {
        .index = TI_CLKM_PRM,
        .init = omap44xx_prm_init,
        .device_inst_offset = OMAP4430_PRM_DEVICE_INST,
-       .flags = PRM_HAS_IO_WAKEUP | PRM_HAS_VOLTAGE | PRM_IRQ_DEFAULT,
+       .flags = PRM_HAS_IO_WAKEUP | PRM_HAS_VOLTAGE,
 };
 #endif