Skip to content

Commit

Permalink
irqchip: spear_shirq: Move private structs to source
Browse files Browse the repository at this point in the history
No point in having them in a separate header file. Make the init
functions static.

Signed-off-by: Thomas Gleixner <[email protected]>
Link: https://lkml.kernel.org/r/[email protected]
Acked-by: Viresh Kumar <[email protected]>
Signed-off-by: Jason Cooper <[email protected]>
  • Loading branch information
KAGA-KOKO authored and Jason Cooper committed Jun 24, 2014
1 parent a26c06f commit 078bc00
Show file tree
Hide file tree
Showing 2 changed files with 45 additions and 71 deletions.
52 changes: 45 additions & 7 deletions drivers/irqchip/spear-shirq.c
Original file line number Diff line number Diff line change
Expand Up @@ -19,14 +19,52 @@
#include <linux/io.h>
#include <linux/irq.h>
#include <linux/irqdomain.h>
#include <linux/irqchip/spear-shirq.h>
#include <linux/of.h>
#include <linux/of_address.h>
#include <linux/of_irq.h>
#include <linux/spinlock.h>

#include "irqchip.h"

/*
* struct shirq_regs: shared irq register configuration
*
* enb_reg: enable register offset
* reset_to_enb: val 1 indicates, we need to clear bit for enabling interrupt
* status_reg: status register offset
* status_reg_mask: status register valid mask
* clear_reg: clear register offset
* reset_to_clear: val 1 indicates, we need to clear bit for clearing interrupt
*/
struct shirq_regs {
u32 enb_reg;
u32 reset_to_enb;
u32 status_reg;
u32 clear_reg;
u32 reset_to_clear;
};

/*
* struct spear_shirq: shared irq structure
*
* irq: hardware irq number
* irq_base: base irq in linux domain
* irq_nr: no. of shared interrupts in a particular block
* irq_bit_off: starting bit offset in the status register
* invalid_irq: irq group is currently disabled
* base: base address of shared irq register
* regs: register configuration for shared irq block
*/
struct spear_shirq {
u32 irq;
u32 irq_base;
u32 irq_nr;
u32 irq_bit_off;
int invalid_irq;
void __iomem *base;
struct shirq_regs regs;
};

static DEFINE_SPINLOCK(lock);

/* spear300 shared irq registers offsets and masks */
Expand Down Expand Up @@ -296,24 +334,24 @@ static int __init shirq_init(struct spear_shirq **shirq_blocks, int block_nr,
return -ENXIO;
}

int __init spear300_shirq_of_init(struct device_node *np,
struct device_node *parent)
static int __init spear300_shirq_of_init(struct device_node *np,
struct device_node *parent)
{
return shirq_init(spear300_shirq_blocks,
ARRAY_SIZE(spear300_shirq_blocks), np);
}
IRQCHIP_DECLARE(spear300_shirq, "st,spear300-shirq", spear300_shirq_of_init);

int __init spear310_shirq_of_init(struct device_node *np,
struct device_node *parent)
static int __init spear310_shirq_of_init(struct device_node *np,
struct device_node *parent)
{
return shirq_init(spear310_shirq_blocks,
ARRAY_SIZE(spear310_shirq_blocks), np);
}
IRQCHIP_DECLARE(spear310_shirq, "st,spear310-shirq", spear310_shirq_of_init);

int __init spear320_shirq_of_init(struct device_node *np,
struct device_node *parent)
static int __init spear320_shirq_of_init(struct device_node *np,
struct device_node *parent)
{
return shirq_init(spear320_shirq_blocks,
ARRAY_SIZE(spear320_shirq_blocks), np);
Expand Down
64 changes: 0 additions & 64 deletions include/linux/irqchip/spear-shirq.h

This file was deleted.

0 comments on commit 078bc00

Please sign in to comment.