From owner-freebsd-amd64@FreeBSD.ORG Fri Feb 18 17:25:11 2005 Return-Path: Delivered-To: freebsd-amd64@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 8C11B16A4CE for ; Fri, 18 Feb 2005 17:25:11 +0000 (GMT) Received: from harmony.village.org (rover.village.org [168.103.84.182]) by mx1.FreeBSD.org (Postfix) with ESMTP id D22CF43D5E for ; Fri, 18 Feb 2005 17:25:10 +0000 (GMT) (envelope-from imp@bsdimp.com) Received: from localhost (localhost [IPv6:::1]) by harmony.village.org (8.13.1/8.13.1) with ESMTP id j1IHNBnd046216 for ; Fri, 18 Feb 2005 10:23:11 -0700 (MST) (envelope-from imp@bsdimp.com) Date: Fri, 18 Feb 2005 10:23:10 -0700 (MST) Message-Id: <20050218.102310.74705720.imp@bsdimp.com> To: amd64@freebsd.org From: Warner Losh X-Mailer: Mew version 3.3 on Emacs 21.3 / Mule 5.0 (SAKAKI) Mime-Version: 1.0 Content-Type: Text/Plain; charset=us-ascii Content-Transfer-Encoding: 7bit Subject: PC Card subpart to R3000 thread X-BeenThere: freebsd-amd64@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: Porting FreeBSD to the AMD64 platform List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 18 Feb 2005 17:25:11 -0000 # I'll note that I really like to be cc'd on changes that impact the # pccard part of the system :-) : Yeah the recipient of the fix just emailed me about this, I am : guessing that the #if 0 is the uncommitable part. Is there any way : that this can be done by the kernel (the PCI reg write, that is)? Is : there any reason that it can't be done there? I'd be extremely reluctant to commit the #if 0 part of the fix. The problem is that we don't quite do bus numbering/renumbering correctly for pci busses in general. There's some kludges in cardbus bridge to cope with this, but I don't like them much at all. So, yes, something can be done about this in the kernel, but that something is rather more complicated than this overly simplistic kludge. --- src/sys/dev/pci/pci_pci.c.orig Thu Jul 1 03:46:28 2004 +++ src/sys/dev/pci/pci_pci.c Sat Jan 22 01:21:50 2005 @@ -319,6 +319,8 @@ start = sc->iobase; if (end > sc->iolimit) end = sc->iolimit; + if (start <= end) + ok = 1; This looks OK to me. At first I thought it was crazy and unnecessary to set this, but I think it might be OK. It does seem very odd that we've not seen this before now. Oh, wait, the <= should be <. == would imply that the range is 0. Warner