Port-sparc64 archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
Re: NetBSD-8.xx fails to boot on ultra 45
On Tue, 5 Mar 2019, Magnus Lindholm wrote:
> usb3 at ehci0: USB revision 2.0
> auacer0 at pci3 dev 29 function 0Breakpoint in pid 0.1 (system) at
> netbsd:auacer_attach: save %
> sp, -0x140, %sp
> db{0}>
> : Acer Labs M5455 Audio controller
> auacer0: interrupting at ivec 785
> auacer0: ac97: Analog Devices AD1981B codec; headphone, 20 bit DAC, no 3D
> stereo
> auacer0: ac97: ext id 0x601<AC97_22,AMAP,VRA>
> audio0 at auacer0: full duplex, playback, capture, mmap, independent
>
> SIR
>
> ERROR: Software Initiated Reset has occurred.
>
> WARNING: sync callback did not work.
>
> reset reason: 0000.0000.0000.0001
> Fire TLU-A OE Status Clear: 0003.0100.0000.0100
> Fire TLU-B OE Status Clear: 0000.0100.0000.0100
> @(#)OBP 4.30.4 2009/08/19 07:14 Sun Ultra 45 Workstation
>
The CPU is executing a software initiated reset instruction.
Those instructions are sprinkled throughout locore.s in places the kernel
gets too stuffed up to recover. On the machines I've worked on openboot
would do a full register dump when the CPU executed an SIR instruction.
Obviously that's not happenning on your machine.
You can try to replace all the `sir' instructions in locore.s with either
`ta 1' instructions to try to enter DDB or `ta 2' to use the
standard illegal trap handler to try to dump state.
If those don't work things get ugly because you would need to write a trap
handler that saves all the registers somewhere and then recovers the
machine state enough to be able to dump those values on the console.
Eduardo
Home |
Main Index |
Thread Index |
Old Index