From owner-freebsd-current Sat Nov 24 11: 4:53 2001 Delivered-To: freebsd-current@freebsd.org Received: from rover.village.org (rover.bsdimp.com [204.144.255.66]) by hub.freebsd.org (Postfix) with ESMTP id 7282937B418; Sat, 24 Nov 2001 10:56:47 -0800 (PST) Received: from harmony.village.org (harmony.village.org [10.0.0.6]) by rover.village.org (8.11.3/8.11.3) with ESMTP id fAOIuka91703; Sat, 24 Nov 2001 11:56:46 -0700 (MST) (envelope-from imp@harmony.village.org) Received: from harmony.village.org (localhost [127.0.0.1]) by harmony.village.org (8.11.6/8.11.6) with ESMTP id fAOIuj739451; Sat, 24 Nov 2001 11:56:45 -0700 (MST) (envelope-from imp@harmony.village.org) Message-Id: <200111241856.fAOIuj739451@harmony.village.org> To: Andy Sparrow Subject: Re: PCCARD/NEWCARD won't configure on 5.0 Cc: current@FreeBSD.ORG, mobile@FreeBSD.ORG In-reply-to: Your message of "Fri, 23 Nov 2001 21:52:09 PST." <20011124055209.D0E203E31@CRWdog.demon.co.uk> References: <20011124055209.D0E203E31@CRWdog.demon.co.uk> Date: Sat, 24 Nov 2001 11:56:45 -0700 From: Warner Losh Sender: owner-freebsd-current@FreeBSD.ORG Precedence: bulk List-ID: List-Archive: (Web Archive) List-Help: (List Instructions) List-Subscribe: List-Unsubscribe: X-Loop: FreeBSD.ORG In message <20011124055209.D0E203E31@CRWdog.demon.co.uk> Andy Sparrow writes: : pci_cfgintr_search: linked (62) to configured irq 0 at 0:31:0 : pci_cfgintr: 0:30 INTC routed to irq 0 : pcib2: routed slot 5 INTA to irq 0 : pcic0: irq 0 at device 5.0 on pci2 : pcib2: device pcic0 requested unsupported memory range 0x44000000-0xffffffff (decoding 0xd0200000-0xd02fffff, 0xf0000000-0xf00fffff) : pcic0: Could not grab register memory : device_probe_and_attach: pcic0 attach returned 12 OK. Here we see the confluance of two problems. First, irq 0 is bogus and likely illegal per the pci spec for devices that do interrupt. Even if it isn't illegal, it is wrong wrong wrong wrong, but lots of people do it. I have a patch for -stable, but not for current. The second problem is, at its base, that we're not assigning memory for this device in the pci layer. However, pccbb tries to work around that by asking the pci layer for a specific range, triggering an allocation. That allocation is failing (the third of two problems :-) because the bridge code isn't clipping the request to what's decoded, but rather rejecting it. Until problem 1 is fixed, problem is moot for you. NEWCARD doesn't have the concept of polling, which is problem number 4 of 2, so you can't do the OLDCARD trick of using ISA interupts (which NEWCARD doesn't support either, problem number 5 of 2). Gotta love one problem report hitting 5 problems all at once :-) Warner To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-current" in the body of the message