|
@@ -99,16 +99,16 @@ static DEFINE_PER_CPU(struct ps3_private, ps3_private);
|
|
|
* Sets ps3_bmp.mask and calls lv1_did_update_interrupt_mask().
|
|
|
*/
|
|
|
|
|
|
-static void ps3_chip_mask(unsigned int virq)
|
|
|
+static void ps3_chip_mask(struct irq_data *d)
|
|
|
{
|
|
|
- struct ps3_private *pd = get_irq_chip_data(virq);
|
|
|
+ struct ps3_private *pd = irq_data_get_irq_chip_data(d);
|
|
|
unsigned long flags;
|
|
|
|
|
|
pr_debug("%s:%d: thread_id %llu, virq %d\n", __func__, __LINE__,
|
|
|
- pd->thread_id, virq);
|
|
|
+ pd->thread_id, d->irq);
|
|
|
|
|
|
local_irq_save(flags);
|
|
|
- clear_bit(63 - virq, &pd->bmp.mask);
|
|
|
+ clear_bit(63 - d->irq, &pd->bmp.mask);
|
|
|
lv1_did_update_interrupt_mask(pd->ppe_id, pd->thread_id);
|
|
|
local_irq_restore(flags);
|
|
|
}
|
|
@@ -120,16 +120,16 @@ static void ps3_chip_mask(unsigned int virq)
|
|
|
* Clears ps3_bmp.mask and calls lv1_did_update_interrupt_mask().
|
|
|
*/
|
|
|
|
|
|
-static void ps3_chip_unmask(unsigned int virq)
|
|
|
+static void ps3_chip_unmask(struct irq_data *d)
|
|
|
{
|
|
|
- struct ps3_private *pd = get_irq_chip_data(virq);
|
|
|
+ struct ps3_private *pd = irq_data_get_irq_chip_data(d);
|
|
|
unsigned long flags;
|
|
|
|
|
|
pr_debug("%s:%d: thread_id %llu, virq %d\n", __func__, __LINE__,
|
|
|
- pd->thread_id, virq);
|
|
|
+ pd->thread_id, d->irq);
|
|
|
|
|
|
local_irq_save(flags);
|
|
|
- set_bit(63 - virq, &pd->bmp.mask);
|
|
|
+ set_bit(63 - d->irq, &pd->bmp.mask);
|
|
|
lv1_did_update_interrupt_mask(pd->ppe_id, pd->thread_id);
|
|
|
local_irq_restore(flags);
|
|
|
}
|
|
@@ -141,10 +141,10 @@ static void ps3_chip_unmask(unsigned int virq)
|
|
|
* Calls lv1_end_of_interrupt_ext().
|
|
|
*/
|
|
|
|
|
|
-static void ps3_chip_eoi(unsigned int virq)
|
|
|
+static void ps3_chip_eoi(struct irq_data *d)
|
|
|
{
|
|
|
- const struct ps3_private *pd = get_irq_chip_data(virq);
|
|
|
- lv1_end_of_interrupt_ext(pd->ppe_id, pd->thread_id, virq);
|
|
|
+ const struct ps3_private *pd = irq_data_get_irq_chip_data(d);
|
|
|
+ lv1_end_of_interrupt_ext(pd->ppe_id, pd->thread_id, d->irq);
|
|
|
}
|
|
|
|
|
|
/**
|
|
@@ -153,9 +153,9 @@ static void ps3_chip_eoi(unsigned int virq)
|
|
|
|
|
|
static struct irq_chip ps3_irq_chip = {
|
|
|
.name = "ps3",
|
|
|
- .mask = ps3_chip_mask,
|
|
|
- .unmask = ps3_chip_unmask,
|
|
|
- .eoi = ps3_chip_eoi,
|
|
|
+ .irq_mask = ps3_chip_mask,
|
|
|
+ .irq_unmask = ps3_chip_unmask,
|
|
|
+ .irq_eoi = ps3_chip_eoi,
|
|
|
};
|
|
|
|
|
|
/**
|
|
@@ -202,7 +202,7 @@ static int ps3_virq_setup(enum ps3_cpu_binding cpu, unsigned long outlet,
|
|
|
goto fail_set;
|
|
|
}
|
|
|
|
|
|
- ps3_chip_mask(*virq);
|
|
|
+ ps3_chip_mask(irq_get_irq_data(*virq));
|
|
|
|
|
|
return result;
|
|
|
|
|
@@ -296,7 +296,7 @@ int ps3_irq_plug_destroy(unsigned int virq)
|
|
|
pr_debug("%s:%d: ppe_id %llu, thread_id %llu, virq %u\n", __func__,
|
|
|
__LINE__, pd->ppe_id, pd->thread_id, virq);
|
|
|
|
|
|
- ps3_chip_mask(virq);
|
|
|
+ ps3_chip_mask(irq_get_irq_data(virq));
|
|
|
|
|
|
result = lv1_disconnect_irq_plug_ext(pd->ppe_id, pd->thread_id, virq);
|
|
|
|
|
@@ -357,7 +357,7 @@ int ps3_event_receive_port_destroy(unsigned int virq)
|
|
|
|
|
|
pr_debug(" -> %s:%d virq %u\n", __func__, __LINE__, virq);
|
|
|
|
|
|
- ps3_chip_mask(virq);
|
|
|
+ ps3_chip_mask(irq_get_irq_data(virq));
|
|
|
|
|
|
result = lv1_destruct_event_receive_port(virq_to_hw(virq));
|
|
|
|
|
@@ -492,7 +492,7 @@ int ps3_io_irq_destroy(unsigned int virq)
|
|
|
int result;
|
|
|
unsigned long outlet = virq_to_hw(virq);
|
|
|
|
|
|
- ps3_chip_mask(virq);
|
|
|
+ ps3_chip_mask(irq_get_irq_data(virq));
|
|
|
|
|
|
/*
|
|
|
* lv1_destruct_io_irq_outlet() will destroy the IRQ plug,
|
|
@@ -553,7 +553,7 @@ int ps3_vuart_irq_destroy(unsigned int virq)
|
|
|
{
|
|
|
int result;
|
|
|
|
|
|
- ps3_chip_mask(virq);
|
|
|
+ ps3_chip_mask(irq_get_irq_data(virq));
|
|
|
result = lv1_deconfigure_virtual_uart_irq();
|
|
|
|
|
|
if (result) {
|
|
@@ -605,7 +605,7 @@ int ps3_spe_irq_destroy(unsigned int virq)
|
|
|
{
|
|
|
int result;
|
|
|
|
|
|
- ps3_chip_mask(virq);
|
|
|
+ ps3_chip_mask(irq_get_irq_data(virq));
|
|
|
|
|
|
result = ps3_irq_plug_destroy(virq);
|
|
|
BUG_ON(result);
|