Commit 729e7d7e4dc6b905e40992b6439b07153db4bd63
1 parent
15f1483404
Exists in
master
and in
7 other branches
[SPARC64]: Minor irq handling cleanups.
Use struct irq_chip instead of hw_interrupt_type. Delete hw_resend_irq(), totally unused. Signed-off-by: David S. Miller <davem@davemloft.net>
Showing 2 changed files with 4 additions and 22 deletions Side-by-side Diff
arch/sparc64/kernel/irq.c
... | ... | @@ -372,14 +372,14 @@ |
372 | 372 | } |
373 | 373 | } |
374 | 374 | |
375 | -static struct hw_interrupt_type sun4u_irq = { | |
375 | +static struct irq_chip sun4u_irq = { | |
376 | 376 | .typename = "sun4u", |
377 | 377 | .enable = sun4u_irq_enable, |
378 | 378 | .disable = sun4u_irq_disable, |
379 | 379 | .end = sun4u_irq_end, |
380 | 380 | }; |
381 | 381 | |
382 | -static struct hw_interrupt_type sun4u_irq_ack = { | |
382 | +static struct irq_chip sun4u_irq_ack = { | |
383 | 383 | .typename = "sun4u+ack", |
384 | 384 | .enable = sun4u_irq_enable, |
385 | 385 | .disable = sun4u_irq_disable, |
386 | 386 | |
... | ... | @@ -387,14 +387,14 @@ |
387 | 387 | .end = sun4u_irq_end, |
388 | 388 | }; |
389 | 389 | |
390 | -static struct hw_interrupt_type sun4v_irq = { | |
390 | +static struct irq_chip sun4v_irq = { | |
391 | 391 | .typename = "sun4v", |
392 | 392 | .enable = sun4v_irq_enable, |
393 | 393 | .disable = sun4v_irq_disable, |
394 | 394 | .end = sun4v_irq_end, |
395 | 395 | }; |
396 | 396 | |
397 | -static struct hw_interrupt_type sun4v_irq_ack = { | |
397 | +static struct irq_chip sun4v_irq_ack = { | |
398 | 398 | .typename = "sun4v+ack", |
399 | 399 | .enable = sun4v_irq_enable, |
400 | 400 | .disable = sun4v_irq_disable, |
... | ... | @@ -491,22 +491,6 @@ |
491 | 491 | |
492 | 492 | out: |
493 | 493 | return bucket->virt_irq; |
494 | -} | |
495 | - | |
496 | -void hw_resend_irq(struct hw_interrupt_type *handler, unsigned int virt_irq) | |
497 | -{ | |
498 | - struct ino_bucket *bucket = virt_irq_to_bucket(virt_irq); | |
499 | - unsigned long pstate; | |
500 | - unsigned int *ent; | |
501 | - | |
502 | - __asm__ __volatile__("rdpr %%pstate, %0" : "=r" (pstate)); | |
503 | - __asm__ __volatile__("wrpr %0, %1, %%pstate" | |
504 | - : : "r" (pstate), "i" (PSTATE_IE)); | |
505 | - ent = irq_work(smp_processor_id()); | |
506 | - bucket->irq_chain = *ent; | |
507 | - *ent = __irq(bucket); | |
508 | - set_softint(1 << PIL_DEVICE_IRQ); | |
509 | - __asm__ __volatile__("wrpr %0, 0x0, %%pstate" : : "r" (pstate)); | |
510 | 494 | } |
511 | 495 | |
512 | 496 | void ack_bad_irq(unsigned int virt_irq) |