2
0
mirror of https://github.com/edk2-porting/linux-next.git synced 2024-11-20 16:46:23 +08:00

arm: plat-samsung: Use proper irq accessor functions

Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
This commit is contained in:
Thomas Gleixner 2011-03-24 12:36:46 +01:00
parent e83bbb115e
commit 7222f3912f
3 changed files with 10 additions and 14 deletions

View File

@ -107,7 +107,6 @@ static struct irq_chip s3c_irq_uart = {
static void __init s3c_init_uart_irq(struct s3c_uart_irq *uirq)
{
struct irq_desc *desc = irq_to_desc(uirq->parent_irq);
void __iomem *reg_base = uirq->regs;
unsigned int irq;
int offs;
@ -124,8 +123,8 @@ static void __init s3c_init_uart_irq(struct s3c_uart_irq *uirq)
set_irq_flags(irq, IRQF_VALID);
}
desc->irq_data.handler_data = uirq;
set_irq_chained_handler(uirq->parent_irq, s3c_irq_demux_uart);
irq_set_handler_data(uirq->parent_irq, uirq);
irq_set_chained_handler(uirq->parent_irq, s3c_irq_demux_uart);
}
/**

View File

@ -77,14 +77,11 @@ static struct irq_chip s3c_irq_timer = {
void __init s3c_init_vic_timer_irq(unsigned int parent_irq,
unsigned int timer_irq)
{
struct irq_desc *desc = irq_to_desc(parent_irq);
set_irq_chained_handler(parent_irq, s3c_irq_demux_vic_timer);
irq_set_chained_handler(parent_irq, s3c_irq_demux_vic_timer);
irq_set_handler_data(parent_irq, (void *)timer_irq);
set_irq_chip(timer_irq, &s3c_irq_timer);
set_irq_chip_data(timer_irq, (void *)(1 << (timer_irq - IRQ_TIMER0)));
set_irq_handler(timer_irq, handle_level_irq);
irq_set_chip_and_handler(timer_irq, &s3c_irq_timer, handle_level_irq);
irq_set_chip_data(timer_irq, (void *)(1 << (timer_irq - IRQ_TIMER0)));
set_irq_flags(timer_irq, IRQF_VALID);
desc->irq_data.handler_data = (void *)timer_irq;
}

View File

@ -22,7 +22,7 @@
void samsung_sync_wakemask(void __iomem *reg,
struct samsung_wakeup_mask *mask, int nr_mask)
{
struct irq_desc *desc;
struct irq_data *data;
u32 val;
val = __raw_readl(reg);
@ -33,10 +33,10 @@ void samsung_sync_wakemask(void __iomem *reg,
continue;
}
desc = irq_to_desc(mask->irq);
data = irq_get_irq_data(mask->irq);
/* bit of a liberty to read this directly from irq_desc. */
if (desc->wake_depth > 0)
/* bit of a liberty to read this directly from irq_data. */
if (irqd_is_wakeup_set(data))
val &= ~mask->bit;
else
val |= mask->bit;