Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 25 Feb 2013 16:05:42 -0500
From:      Chris Ross <cross+freebsd@distal.com>
To:        Marius Strobl <marius@alchemy.franken.de>
Cc:        "freebsd-sparc64@freebsd.org" <freebsd-sparc64@freebsd.org>
Subject:   Re: Problems booting 9.1-STABLE on Netra X1
Message-ID:  <76C74932-5BB0-4194-86CE-F121F6D18D84@distal.com>
In-Reply-To: <20130225101315.GA79064@alchemy.franken.de>
References:  <CE371F2B-CF62-4695-A9F0-B56995BA3CC6@distal.com> <20130225101315.GA79064@alchemy.franken.de>

next in thread | previous in thread | raw e-mail | index | archive | help

On Feb 25, 2013, at 5:13 AM, Marius Strobl wrote:
> This means that the machine is generating a power failure interrupt,
> which causes FreeBSD to initiate a graceful shutdown rather than
> waiting for the power to supply to suddenly die, which could cause
> data loss.
> In general, it's very model specific whether Sun hooked up that
> interrupt to anything and to what. F.e., in U5/U10 it's just
> connected to the power button rather than a circuit that monitors
> the power supply. I don't know for certain what it is connected to
> in X1. However, given that these latter use an ACPI-style power
> button and were intended as servers, it's quite likely that their
> power failure interrupt actually is connected to a power supply
> monitoring circuit.
> You could hack psycho(4) to just not register the power failure
> interrupt handler. Whether you really want to use that machine in
> this configuration (it could be either the power supply actually
> starting to fail or also just the monitoring circuit being broken)
> is something you have to decide on your own.

  Okay.  My memory is sketchy at best, but email is forever.  The following
thread, and the second URL to a notable piece there-in where I found a
pointer to the core problem, documents my efforts to get NetBSD running
on this same system 3 years ago.

http://mail-index.netbsd.org/port-sparc64/2010/05/07/msg001259.html
http://mail-index.netbsd.org/port-sparc64/2010/05/08/msg001267.html

  The solution that I think was to ignore the power fail on this hardware.
A reference in that thread mentions a OpenBSD commit:

| revision 1.11
| date: 2002/01/29 20:33:19;  author: jason;  state: Exp;  lines: +3 -1
| Don't install a handler for powerfail... this causes weird problems with
| the Netra X1 (interactions with lom)

  Numerous things were attempted during the course of that port-sparc64
netbsd thread, some of which were tied to not installing the handler
in the case of a machine identified as a Netra X1.

  It appears the code in place now in psycho.c is:

		/*
		 * 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);
		}
  Would that be unacceptable for placing into FreeBSD?  Clearly, I can
put it in my own tree for testing and use, but would prefer it live in the
main sources long-term.  :-)

                                - Chris






Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?76C74932-5BB0-4194-86CE-F121F6D18D84>