diff options
author | Linus Torvalds <torvalds@woody.linux-foundation.org> | 2007-06-30 00:30:18 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@woody.linux-foundation.org> | 2007-06-30 00:30:18 -0400 |
commit | abdba717253382a669af9c719313ec602cc95a2d (patch) | |
tree | 9368199c0812569f796a6e9d6c3696c2e428f0cf | |
parent | 2d408b42ed0a287c64a94b48e24c6bfa95035019 (diff) | |
parent | 9f462a1a5de06503fd247186b91d4205ac1cf1ba (diff) |
Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/sparc-2.6
* 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/sparc-2.6:
[SPARC64]: Add linux/pagemap.h to asm/tlb.h
[SPARC64]: Need to set state to IDLE during sun4v IRQ enable.
[SPARC64]: Fix VIRQ enabling.
[SPARC64]: Add irqs to mdesc_node.
-rw-r--r-- | arch/sparc64/kernel/irq.c | 12 | ||||
-rw-r--r-- | include/asm-sparc64/mdesc.h | 1 | ||||
-rw-r--r-- | include/asm-sparc64/tlb.h | 1 |
3 files changed, 13 insertions, 1 deletions
diff --git a/arch/sparc64/kernel/irq.c b/arch/sparc64/kernel/irq.c index e60d283f60bc..6b6165d36fd8 100644 --- a/arch/sparc64/kernel/irq.c +++ b/arch/sparc64/kernel/irq.c | |||
@@ -329,6 +329,10 @@ static void sun4v_irq_enable(unsigned int virt_irq) | |||
329 | if (err != HV_EOK) | 329 | if (err != HV_EOK) |
330 | printk("sun4v_intr_settarget(%x,%lu): err(%d)\n", | 330 | printk("sun4v_intr_settarget(%x,%lu): err(%d)\n", |
331 | ino, cpuid, err); | 331 | ino, cpuid, err); |
332 | err = sun4v_intr_setstate(ino, HV_INTR_STATE_IDLE); | ||
333 | if (err != HV_EOK) | ||
334 | printk("sun4v_intr_setstate(%x): " | ||
335 | "err(%d)\n", ino, err); | ||
332 | err = sun4v_intr_setenabled(ino, HV_INTR_ENABLED); | 336 | err = sun4v_intr_setenabled(ino, HV_INTR_ENABLED); |
333 | if (err != HV_EOK) | 337 | if (err != HV_EOK) |
334 | printk("sun4v_intr_setenabled(%x): err(%d)\n", | 338 | printk("sun4v_intr_setenabled(%x): err(%d)\n", |
@@ -400,6 +404,12 @@ static void sun4v_virq_enable(unsigned int virt_irq) | |||
400 | "err(%d)\n", | 404 | "err(%d)\n", |
401 | dev_handle, dev_ino, cpuid, err); | 405 | dev_handle, dev_ino, cpuid, err); |
402 | err = sun4v_vintr_set_state(dev_handle, dev_ino, | 406 | err = sun4v_vintr_set_state(dev_handle, dev_ino, |
407 | HV_INTR_STATE_IDLE); | ||
408 | if (err != HV_EOK) | ||
409 | printk("sun4v_vintr_set_state(%lx,%lx," | ||
410 | "HV_INTR_STATE_IDLE): err(%d)\n", | ||
411 | dev_handle, dev_ino, err); | ||
412 | err = sun4v_vintr_set_valid(dev_handle, dev_ino, | ||
403 | HV_INTR_ENABLED); | 413 | HV_INTR_ENABLED); |
404 | if (err != HV_EOK) | 414 | if (err != HV_EOK) |
405 | printk("sun4v_vintr_set_state(%lx,%lx," | 415 | printk("sun4v_vintr_set_state(%lx,%lx," |
@@ -420,7 +430,7 @@ static void sun4v_virq_disable(unsigned int virt_irq) | |||
420 | dev_handle = ino & IMAP_IGN; | 430 | dev_handle = ino & IMAP_IGN; |
421 | dev_ino = ino & IMAP_INO; | 431 | dev_ino = ino & IMAP_INO; |
422 | 432 | ||
423 | err = sun4v_vintr_set_state(dev_handle, dev_ino, | 433 | err = sun4v_vintr_set_valid(dev_handle, dev_ino, |
424 | HV_INTR_DISABLED); | 434 | HV_INTR_DISABLED); |
425 | if (err != HV_EOK) | 435 | if (err != HV_EOK) |
426 | printk("sun4v_vintr_set_state(%lx,%lx," | 436 | printk("sun4v_vintr_set_state(%lx,%lx," |
diff --git a/include/asm-sparc64/mdesc.h b/include/asm-sparc64/mdesc.h index 124eb8ca2378..c6383982b53d 100644 --- a/include/asm-sparc64/mdesc.h +++ b/include/asm-sparc64/mdesc.h | |||
@@ -15,6 +15,7 @@ struct mdesc_node { | |||
15 | u64 node; | 15 | u64 node; |
16 | unsigned int unique_id; | 16 | unsigned int unique_id; |
17 | unsigned int num_arcs; | 17 | unsigned int num_arcs; |
18 | unsigned int irqs[2]; | ||
18 | struct property *properties; | 19 | struct property *properties; |
19 | struct mdesc_node *hash_next; | 20 | struct mdesc_node *hash_next; |
20 | struct mdesc_node *allnodes_next; | 21 | struct mdesc_node *allnodes_next; |
diff --git a/include/asm-sparc64/tlb.h b/include/asm-sparc64/tlb.h index 7af1e1109c49..349d1d3e9c27 100644 --- a/include/asm-sparc64/tlb.h +++ b/include/asm-sparc64/tlb.h | |||
@@ -2,6 +2,7 @@ | |||
2 | #define _SPARC64_TLB_H | 2 | #define _SPARC64_TLB_H |
3 | 3 | ||
4 | #include <linux/swap.h> | 4 | #include <linux/swap.h> |
5 | #include <linux/pagemap.h> | ||
5 | #include <asm/pgalloc.h> | 6 | #include <asm/pgalloc.h> |
6 | #include <asm/tlbflush.h> | 7 | #include <asm/tlbflush.h> |
7 | #include <asm/mmu_context.h> | 8 | #include <asm/mmu_context.h> |