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>