From mboxrd@z Thu Jan 1 00:00:00 1970 From: Sergei Shtylyov Subject: Re: [PATCH] mark PCI resource with start 0 as unassigned Date: Mon, 04 Dec 2006 15:47:11 +0300 Message-ID: <457418CF.9040303@ru.mvista.com> References: <20061130165202.GA23205@aepfle.de> <20061204123854.GA28159@aepfle.de> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Return-path: In-Reply-To: <20061204123854.GA28159@aepfle.de> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: linuxppc-dev-bounces+glppd-linuxppc64-dev=m.gmane.org@ozlabs.org Errors-To: linuxppc-dev-bounces+glppd-linuxppc64-dev=m.gmane.org@ozlabs.org To: Olaf Hering Cc: linux-ide@vger.kernel.org, linuxppc-dev@ozlabs.org List-Id: linux-ide@vger.kernel.org Hello. Olaf Hering wrote: > mark pci resources with start 0 as unassigned > libata calls pci_request_regions to claim bar 0 - 5 > bar 5 has base 0. > Tested on a p630 in SMP mode with pata_sl82c105 [...] > --- a/arch/powerpc/kernel/pci_64.c > +++ b/arch/powerpc/kernel/pci_64.c > @@ -1234,6 +1234,14 @@ static void __devinit fixup_resource(str > struct pci_controller *hose = pci_bus_to_host(dev->bus); > unsigned long start, end, mask, offset; > > + /* > + * tell the core code that this ressource is unassigned > + * fixes p630 winbond IDE with libata > + */ > + if (res->start == 0) { > + res->flags = 0; Wouldn't it be better to set flags to IORESOURCE_UNSET to get it reassigned? > + return; > + } > if (res->flags & IORESOURCE_IO) { > offset = (unsigned long)hose->io_base_virt - pci_io_base; > WBR, Sergei