"M. Warner Losh" <[EMAIL PROTECTED]> wrote:
>
> In message: <[EMAIL PROTECTED]>
> Thomas David Rivers <[EMAIL PROTECTED]> writes:
> : Warner - any ideas?
> : pci_write_config(..., bcr,2); <<<< hangs
>
> Interesting....
>
> So this pretty much confirms what I'd expect. We establish the
> interrupt handler, then turn on the interrupts, then hang. I suspect
> that there's an interrupt in the bridge that isn't being acked. Maybe
> there's something in the pcic_pci_intr that should do that it isn't.
>
> There's also one thing that I've been thinking about in the back of my
> mind that you might want to check. I read in the mindshare books that
> the we're supposed to mask one of the interrupts while we're powering
> the card up. Maybe that's left over and we're not clearing it
> properly.
>
> Does adding
> for (i = 0; i < 0x40) sp->getb(sp, i);
> at the end pcic_pci_intr do anything for you? The PCIC_STAT_CHG
> should do that, but I'm not sure why it isn't.
I added:
{
int i;
for(i=0;i<0x40;i++) {
sp->getb(sp,i);
}
}
to the end of pcic_pci_intr() - but that didn't change anything...
got the same hang in exactly the same place...
- Dave Rivers -
--
[EMAIL PROTECTED] Work: (919) 676-0847
Get your mainframe programming tools at http://www.dignus.com
To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-hackers" in the body of the message