diff options
| author | Linus Torvalds <torvalds@g5.osdl.org> | 2006-07-15 00:57:23 -0400 |
|---|---|---|
| committer | Linus Torvalds <torvalds@g5.osdl.org> | 2006-07-15 00:57:23 -0400 |
| commit | 5694ca9f46202c50df525472abb6d8c1dee4f8eb (patch) | |
| tree | c16a4ff264b024ea2017a88a29d8f03695bd2656 | |
| parent | 76aba64a6608fcaa02c715e93c572192f3621195 (diff) | |
| parent | ee7022dcfbf660727d6b8553cb0dbc0d4eae8f44 (diff) | |
Merge master.kernel.org:/pub/scm/linux/kernel/git/davem/sparc-2.6
* master.kernel.org:/pub/scm/linux/kernel/git/davem/sparc-2.6:
[SPARC64] Fix PSYCHO PCI controler init.
[SPARC64] psycho: Fix pbm->name handling in pbm_register_toplevel_resources()
[SERIAL] sunsab: Fix significant typo in sab_probe()
[SERIAL] sunsu: Report keyboard and mouse ports in kernel log.
[SPARC64]: Make sure IRQs are disabled properly during early boot.
| -rw-r--r-- | arch/sparc64/kernel/head.S | 13 | ||||
| -rw-r--r-- | arch/sparc64/kernel/pci_psycho.c | 6 | ||||
| -rw-r--r-- | arch/sparc64/kernel/time.c | 2 | ||||
| -rw-r--r-- | drivers/serial/sunsab.c | 2 | ||||
| -rw-r--r-- | drivers/serial/sunsu.c | 5 |
5 files changed, 14 insertions, 14 deletions
diff --git a/arch/sparc64/kernel/head.S b/arch/sparc64/kernel/head.S index 75684b56767e..c8e9dc9d68a9 100644 --- a/arch/sparc64/kernel/head.S +++ b/arch/sparc64/kernel/head.S | |||
| @@ -551,9 +551,10 @@ setup_trap_table: | |||
| 551 | save %sp, -192, %sp | 551 | save %sp, -192, %sp |
| 552 | 552 | ||
| 553 | /* Force interrupts to be disabled. */ | 553 | /* Force interrupts to be disabled. */ |
| 554 | rdpr %pstate, %o1 | 554 | rdpr %pstate, %l0 |
| 555 | andn %o1, PSTATE_IE, %o1 | 555 | andn %l0, PSTATE_IE, %o1 |
| 556 | wrpr %o1, 0x0, %pstate | 556 | wrpr %o1, 0x0, %pstate |
| 557 | rdpr %pil, %l1 | ||
| 557 | wrpr %g0, 15, %pil | 558 | wrpr %g0, 15, %pil |
| 558 | 559 | ||
| 559 | /* Make the firmware call to jump over to the Linux trap table. */ | 560 | /* Make the firmware call to jump over to the Linux trap table. */ |
| @@ -622,11 +623,9 @@ setup_trap_table: | |||
| 622 | call init_irqwork_curcpu | 623 | call init_irqwork_curcpu |
| 623 | nop | 624 | nop |
| 624 | 625 | ||
| 625 | /* Now we can turn interrupts back on. */ | 626 | /* Now we can restore interrupt state. */ |
| 626 | rdpr %pstate, %o1 | 627 | wrpr %l0, 0, %pstate |
| 627 | or %o1, PSTATE_IE, %o1 | 628 | wrpr %l1, 0x0, %pil |
| 628 | wrpr %o1, 0, %pstate | ||
| 629 | wrpr %g0, 0x0, %pil | ||
| 630 | 629 | ||
| 631 | ret | 630 | ret |
| 632 | restore | 631 | restore |
diff --git a/arch/sparc64/kernel/pci_psycho.c b/arch/sparc64/kernel/pci_psycho.c index 197a7ffd57ee..1ec0aab68c08 100644 --- a/arch/sparc64/kernel/pci_psycho.c +++ b/arch/sparc64/kernel/pci_psycho.c | |||
| @@ -1099,9 +1099,6 @@ static void pbm_register_toplevel_resources(struct pci_controller_info *p, | |||
| 1099 | { | 1099 | { |
| 1100 | char *name = pbm->name; | 1100 | char *name = pbm->name; |
| 1101 | 1101 | ||
| 1102 | sprintf(name, "PSYCHO%d PBM%c", | ||
| 1103 | p->index, | ||
| 1104 | (pbm == &p->pbm_A ? 'A' : 'B')); | ||
| 1105 | pbm->io_space.name = pbm->mem_space.name = name; | 1102 | pbm->io_space.name = pbm->mem_space.name = name; |
| 1106 | 1103 | ||
| 1107 | request_resource(&ioport_resource, &pbm->io_space); | 1104 | request_resource(&ioport_resource, &pbm->io_space); |
| @@ -1203,12 +1200,13 @@ static void psycho_pbm_init(struct pci_controller_info *p, | |||
| 1203 | pbm->io_space.flags = IORESOURCE_IO; | 1200 | pbm->io_space.flags = IORESOURCE_IO; |
| 1204 | pbm->mem_space.end = pbm->mem_space.start + PSYCHO_MEMSPACE_SIZE; | 1201 | pbm->mem_space.end = pbm->mem_space.start + PSYCHO_MEMSPACE_SIZE; |
| 1205 | pbm->mem_space.flags = IORESOURCE_MEM; | 1202 | pbm->mem_space.flags = IORESOURCE_MEM; |
| 1206 | pbm_register_toplevel_resources(p, pbm); | ||
| 1207 | 1203 | ||
| 1208 | pbm->parent = p; | 1204 | pbm->parent = p; |
| 1209 | pbm->prom_node = dp; | 1205 | pbm->prom_node = dp; |
| 1210 | pbm->name = dp->full_name; | 1206 | pbm->name = dp->full_name; |
| 1211 | 1207 | ||
| 1208 | pbm_register_toplevel_resources(p, pbm); | ||
| 1209 | |||
| 1212 | printk("%s: PSYCHO PCI Bus Module ver[%x:%x]\n", | 1210 | printk("%s: PSYCHO PCI Bus Module ver[%x:%x]\n", |
| 1213 | pbm->name, | 1211 | pbm->name, |
| 1214 | pbm->chip_version, pbm->chip_revision); | 1212 | pbm->chip_version, pbm->chip_revision); |
diff --git a/arch/sparc64/kernel/time.c b/arch/sparc64/kernel/time.c index b43de647ba73..094d3e35be18 100644 --- a/arch/sparc64/kernel/time.c +++ b/arch/sparc64/kernel/time.c | |||
| @@ -928,8 +928,6 @@ static void sparc64_start_timers(void) | |||
| 928 | __asm__ __volatile__("wrpr %0, 0x0, %%pstate" | 928 | __asm__ __volatile__("wrpr %0, 0x0, %%pstate" |
| 929 | : /* no outputs */ | 929 | : /* no outputs */ |
| 930 | : "r" (pstate)); | 930 | : "r" (pstate)); |
| 931 | |||
| 932 | local_irq_enable(); | ||
| 933 | } | 931 | } |
| 934 | 932 | ||
| 935 | struct freq_table { | 933 | struct freq_table { |
diff --git a/drivers/serial/sunsab.c b/drivers/serial/sunsab.c index 0dbd4df44c05..979497f108c8 100644 --- a/drivers/serial/sunsab.c +++ b/drivers/serial/sunsab.c | |||
| @@ -1052,7 +1052,7 @@ static int __devinit sab_probe(struct of_device *op, const struct of_device_id * | |||
| 1052 | if (err) | 1052 | if (err) |
| 1053 | return err; | 1053 | return err; |
| 1054 | 1054 | ||
| 1055 | err = sunsab_init_one(&up[0], op, 0, | 1055 | err = sunsab_init_one(&up[1], op, 0, |
| 1056 | (inst * 2) + 1); | 1056 | (inst * 2) + 1); |
| 1057 | if (err) { | 1057 | if (err) { |
| 1058 | of_iounmap(up[0].port.membase, | 1058 | of_iounmap(up[0].port.membase, |
diff --git a/drivers/serial/sunsu.c b/drivers/serial/sunsu.c index 93bdaa3169fc..d3a5aeee73a3 100644 --- a/drivers/serial/sunsu.c +++ b/drivers/serial/sunsu.c | |||
| @@ -1200,6 +1200,11 @@ static int __init sunsu_kbd_ms_init(struct uart_sunsu_port *up) | |||
| 1200 | if (up->port.type == PORT_UNKNOWN) | 1200 | if (up->port.type == PORT_UNKNOWN) |
| 1201 | return -ENODEV; | 1201 | return -ENODEV; |
| 1202 | 1202 | ||
| 1203 | printk("%s: %s port at %lx, irq %u\n", | ||
| 1204 | to_of_device(up->port.dev)->node->full_name, | ||
| 1205 | (up->su_type == SU_PORT_KBD) ? "Keyboard" : "Mouse", | ||
| 1206 | up->port.mapbase, up->port.irq); | ||
| 1207 | |||
| 1203 | #ifdef CONFIG_SERIO | 1208 | #ifdef CONFIG_SERIO |
| 1204 | serio = &up->serio; | 1209 | serio = &up->serio; |
| 1205 | serio->port_data = up; | 1210 | serio->port_data = up; |
