Subject: Re: Patch (Re: Interrupts)
To: Tim Kelly <hockey@dialectronics.com>
From: Michael <macallan18@earthlink.net>
List: port-macppc
Date: 12/07/2004 08:32:02
Hello,

> In if_mc.c., revert registering the irq 2 to not doing so. Other than that,
> the changes to make if_mc.c use its own media change and status routines
> should work better than the generic AMD methods. You pulled out the not
> sharing virqs (which I got wrong anyways), and I don't think you included
> the code I did to set the IPL to the current handler's in case of shared
> virqs.
Yeah, I guess it's the mc interrupt - what is it used for anyway? Obviously the driver doesn't need it, and so far the hang-on-boot bug only affected people who had the mc problem. My source tree still tries to establish it, I'll comment it out again and see if it helps Riccardo...

>  The only thing I can think of is that I am finding enabling PSL_EE
> in Idle() before lcsplx (from locore_subr.S) conflicts with sync
> negotiation on mesh with single processor (and with everything on MP).
This shouldn't be in the kernel I made for Riccardo which is single CPU anyway.

> Probably resolvable, but I've had to revert to no sync until I solve the
> PSL_EE/MP interaction. For SP, I found it hung when trying to attach mesh
> to scsibus1.
Even with the latest patch? Now it shouldn't retry a lost interrupt more than once. I guess enabling interrupts too early could cause a hangup with some of the patches I posted yesterday.

have fun
Michael