Port-sparc64 archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

re: powerfail interrupt (Re: Netra X1 with WD0 and AcerIDE)



> One solution is to check the machine model when installing the
> interrupt handler. So I would like to commit the following patch if
> anyone have no objection.

please commit.

> -- Takeshi Nakayama
> 
> Index: dev/psycho.c
> ===================================================================
> RCS file: /cvsroot/src/sys/arch/sparc64/dev/psycho.c,v
> retrieving revision 1.101
> diff -u -d -r1.101 psycho.c
> --- dev/psycho.c      10 Jul 2010 10:07:40 -0000      1.101
> +++ dev/psycho.c      11 Feb 2011 22:35:54 -0000
> @@ -299,6 +299,7 @@
>       int psycho_br[2], n, i;
>       bus_space_handle_t pci_ctl;
>       char *model = prom_getpropstring(ma->ma_node, "model");
> +     extern char machine_model[];

eeh:

sparc64/autoconf.c:   OF_getprop(findroot(), "name", machine_model, sizeof 
machine_model);

>       aprint_normal("\n");
>  
> @@ -527,10 +528,15 @@
>               psycho_set_intr(sc, 15, psycho_bus_a,
>                       &sc->sc_regs->pciaerr_int_map,
>                       &sc->sc_regs->pciaerr_clr_int);
> -             psycho_set_intr(sc, 15, psycho_powerfail,
> -                     &sc->sc_regs->power_int_map,
> -                     &sc->sc_regs->power_clr_int);
> -             psycho_register_power_button(sc);
> +             /*
> +              * Netra X1 may hang when the powerfail interrupt is enabled.
> +              */
> +             if (strcmp(machine_model, "SUNW,UltraAX-i2") != 0) {
> +                     psycho_set_intr(sc, 15, psycho_powerfail,
> +                             &sc->sc_regs->power_int_map,
> +                             &sc->sc_regs->power_clr_int);
> +                     psycho_register_power_button(sc);
> +             }
>               if (sc->sc_mode != PSYCHO_MODE_SABRE) {
>                       /* sabre doesn't have these interrupts */
>                       psycho_set_intr(sc, 15, psycho_bus_b,


.mrg.


Home | Main Index | Thread Index | Old Index