[Top] [All Lists]

Re: [PATCH] Register PCI host bridge resource earlier

To: Thomas Bogendoerfer <>
Subject: Re: [PATCH] Register PCI host bridge resource earlier
From: Sergei Shtylyov <>
Date: Sun, 08 Apr 2007 17:26:45 +0400
In-reply-to: <>
Organization: MontaVista Software Inc.
Original-recipient: rfc822;
References: <> <> <>
User-agent: Mozilla/5.0 (X11; U; Linux i686; rv:1.7.2) Gecko/20040803

Thomas Bogendoerfer wrote:

PCI based SNI RM machines have their EISA bus behind an Intel PCI/EISA
bridge. So the PCI IO range must start at 0x0000. Changing that will
break the PCI bus, because i8259.c already has registered it's IO
addresses before the PCI bus gets initialized. Below is a patch,
which will register the PCI host bridge resources inside
register_pci_controller(). It also changes i8259.c to use insert_region(),
because request_resource() will fail, if the IO space of the PIT hanging
of the PCI host bridge (maybe passing the resource parent to
init_i8259_irqs() is a cleaner fix for that).

First, I don't understand how PIT and PIC resources may intersect. Then,

oops, I meant PIC resources.

IIUC, using inert_resource() will cause PIT resource be the child of the PIC resource which doesn't make sense either.

the insert_resource will make it child of the PCI resource, which makes
perfect sense, because the ISA bus is behind the PCI host bridge.

If you read the comment to insert_resource() you'll see that it works contrarywise, i. e. the inserted resource is made parent of the conflicting ones. I.e. it should't work as you're intending it to.


WBR, Sergei

<Prev in Thread] Current Thread [Next in Thread>