From owner-cvs-all Tue May 28 10:13:39 2002 Delivered-To: cvs-all@freebsd.org Received: from odin.ac.hmc.edu (Odin.AC.HMC.Edu [134.173.32.75]) by hub.freebsd.org (Postfix) with ESMTP id 46ADF37B406; Tue, 28 May 2002 10:13:22 -0700 (PDT) Received: from odin.ac.hmc.edu (IDENT:brdavis@localhost.localdomain [127.0.0.1]) by odin.ac.hmc.edu (8.12.3/8.12.3) with ESMTP id g4SHDKeE022509; Tue, 28 May 2002 10:13:20 -0700 Received: (from brdavis@localhost) by odin.ac.hmc.edu (8.12.3/8.12.3/Submit) id g4SHDKqO022508; Tue, 28 May 2002 10:13:20 -0700 Date: Tue, 28 May 2002 10:13:20 -0700 From: Brooks Davis To: "M. Warner Losh" Cc: brooks@one-eyed-alien.net, cvs-committers@FreeBSD.org, cvs-all@FreeBSD.org Subject: Re: cvs commit: src/sys/i386/pci pci_cfgreg.c Message-ID: <20020528101320.A13458@Odin.AC.HMC.Edu> References: <200204241530.g3OFUCL52082@freefall.freebsd.org> <20020527150933.A18324@Odin.AC.HMC.Edu> <20020527.185811.128396494.imp@village.org> Mime-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-md5; protocol="application/pgp-signature"; boundary="EeQfGwPcQSOJBaQU" Content-Disposition: inline User-Agent: Mutt/1.2.5.1i In-Reply-To: <20020527.185811.128396494.imp@village.org>; from imp@village.org on Mon, May 27, 2002 at 06:58:11PM -0600 X-Virus-Scanned: by amavisd-milter (http://amavis.org/) Sender: owner-cvs-all@FreeBSD.ORG Precedence: bulk List-ID: List-Archive: (Web Archive) List-Help: (List Instructions) List-Subscribe: List-Unsubscribe: X-Loop: FreeBSD.ORG --EeQfGwPcQSOJBaQU Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Mon, May 27, 2002 at 06:58:11PM -0600, M. Warner Losh wrote: > In message: <20020527150933.A18324@Odin.AC.HMC.Edu> > Brooks Davis writes: > : On Wed, Apr 24, 2002 at 08:30:12AM -0700, Warner Losh wrote: > : > imp 2002/04/24 08:30:12 PDT > : >=20 > : > Modified files: > : > sys/i386/pci pci_cfgreg.c=20 > : > Log: > : > o Work around bugs in the powerof2 macro: It thinks that 0 is a pow= er of > : > 2, but that's not the case. This fixes the case where there were= slots > : > in the PIR table that had no bits set, but we assumed they did an= d used > : > strange results as a result. > : > o Map invalid INTLINE registers to 255 in pci_cfgreg.c. This shoul= d allow > : > us to remove the bogus checks in MI code for non-255 values. > : > =20 > : > I put these changes out for review a while ago, but no one responded > : > to them, so into current they go. > :=20 > : After a month of not having time to do anything about it and looking do= wn > : the wrong path several times, I found that the second part of this comm= it > : hoses my HP Omnibook 500. The symptom is that the console doesn't flush > : except when the kernel prints something and other timers don't seem to > : fire so dhcp hangs forever. Any idea how to debug this? >=20 > What bogus value is mapping to 255? Sounds like we're now maybe > routing an interrupt to something that didn't have/want one before. > First step would be to do a before/after test and see which devices, > if any, get a new interrupt. Next best would be to send me a dmesg > before/after and I can help you interpret it. Here's the intresting portion of of a "diff -u dmesg.working dmesg.broken": uhub2: Texas Instruments UT-USB41 hub, class 9/0, rev 1.10/1.10, addr 4 uhub2: 4 ports with 4 removable, self powered pci0: at device 7.3 (no driver attached) -pci_cfgintr_linked: linked (60) to hard-routed irq 10 -pci_cfgintr: 0:10 INTA routed to irq 10 -pcic0: irq 10 at device 10.0 on pci0 +pci_cfgintr_search: linked (60) to configured irq 0 at 0:0:0 +pci_cfgintr: 0:10 INTA routed to irq 0 +pcic0: irq 0 at device 10.0 on pci0 pcic0: PCI Memory allocated: 0x44000000 +pci_cfgintr_search: linked (60) to configured irq 0 at 0:0:0 +pci_cfgintr: 0:10 INTA routed to irq 0 pcic0: TI12XX PCI Config Reg: [ring enable][speaker enable][pwr save][pci = only] pccard0: on pcic0 xl0: <3Com 3c556 Fast Etherlink XL> port 0x1080-0x10ff mem 0xf4000000-0xf4= 00007f,0xf4000400-0xf400047f irq 10 at device 11.0 on pci0 It looks like the previous hack for irq=3D0 worked, but then new one isn't working with my pcic. I've got hw.pcic.init_routing=3D1 in my loader.conf since that seems to be required for this system. On a whim, I tried turning it off to see if that would fix things, but no luck. -- Brooks --=20 Any statement of the form "X is the one, true Y" is FALSE. PGP fingerprint 655D 519C 26A7 82E7 2529 9BF0 5D8E 8BE9 F238 1AD4 --EeQfGwPcQSOJBaQU Content-Type: application/pgp-signature Content-Disposition: inline -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.0.6 (GNU/Linux) Comment: For info see http://www.gnupg.org iD8DBQE887qvXY6L6fI4GtQRAqaYAJ9BhfOzl3O5S+UaOW/tLv3G5bFaQQCfcM7c lRWgL/3Bzt1ci2MwCpjcJQo= =0uVN -----END PGP SIGNATURE----- --EeQfGwPcQSOJBaQU-- To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe cvs-all" in the body of the message