Date: Mon, 27 May 2002 09:06:31 -0400 (EDT) From: Thomas David Rivers <rivers@dignus.com> To: imp@village.org, rivers@dignus.com Cc: freebsd-hackers@freebsd.org Subject: Re: more info on pccard insertion hang... Message-ID: <200205271306.g4RD6Vs84653@lakes.dignus.com> In-Reply-To: <20020526.221029.14977685.imp@village.org>
next in thread | previous in thread | raw e-mail | index | archive | help
"M. Warner Losh" <imp@village.org> wrote:
>
> In message: <200205270214.g4R2Ef483353@lakes.dignus.com>
> Thomas David Rivers <rivers@dignus.com> 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 -
--
rivers@dignus.com Work: (919) 676-0847
Get your mainframe programming tools at http://www.dignus.com
To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-hackers" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200205271306.g4RD6Vs84653>
