Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1762974AbYALH1b (ORCPT ); Sat, 12 Jan 2008 02:27:31 -0500 Received: (majordomo@vger.kernel.org) by vger.kernel.org id S1761086AbYALH1X (ORCPT ); Sat, 12 Jan 2008 02:27:23 -0500 Received: from colo.lackof.org ([198.49.126.79]:54147 "EHLO colo.lackof.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1761031AbYALH1X (ORCPT ); Sat, 12 Jan 2008 02:27:23 -0500 Date: Sat, 12 Jan 2008 00:27:05 -0700 From: Grant Grundler To: Kumar Gala Cc: Greg KH , LKML , linuxppc-dev list , linux-pci@atrey.karlin.mff.cuni.cz Subject: Re: PCI Failed to allocate mem for PCI ROM Message-ID: <20080112072705.GB7234@colo.lackof.org> References: <1B75C5A8-E512-40CB-A6F3-351640701D0D@kernel.crashing.org> <20080111175039.GB7916@kroah.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: X-Home-Page: http://www.parisc-linux.org/ User-Agent: Mutt/1.5.16 (2007-06-11) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1378 Lines: 37 On Fri, Jan 11, 2008 at 02:27:16PM -0600, Kumar Gala wrote: >>> I'm getting the following message from the kernel on an embedded ppc32 >>> system: >>> >>> PCI: Failed to allocate mem resource #9:100000@e0000000 for 0000:00:00.0 >>> >>> The HW setup is a PCIe host controller and an e1000 NIC card. ... > I'm happy to debug, is the fact that the resno == 9 ok or does that seem > wrong? That is fine for the Bridge. See include/linux/pci.h : #define PCI_ROM_RESOURCE 6 #define PCI_BRIDGE_RESOURCES 7 #define PCI_NUM_RESOURCES 11 IIRC, Bridges may have two 32-bit or one 64-bit BAR, Expansion ROM BAR and three "range" registers: IO Port, MMIO (Prefetchable and non-prefetchable). The BRIDGE_RESOURCES (7-10) are what failed to be assigned for some reason. Looking at setup-bus.c:pci_bridge_check_ranges(), I'm concluding that: [7] is IO Range. [8] is MMIO [9] is Prefetchable MMIO [10] no clue...maybe used by host PCI bus controllers. 0x100000 is 1MB and would be the minimum MMIO range that can be allocated. So that looks right too. Probably need to find out what is allocating 0xe0000000 instead. hth, grant -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/