public inbox for u-boot@lists.denx.de
 help / color / mirror / Atom feed
From: "André Schwarz" <andre.schwarz@matrix-vision.de>
To: u-boot@lists.denx.de
Subject: [U-Boot-Users] PCI stopped working on MPC8343
Date: Fri, 18 Apr 2008 16:27:25 +0200	[thread overview]
Message-ID: <4808AFCD.5070909@matrix-vision.de> (raw)
In-Reply-To: <4808AD5C.8080202@acm.org>

Larry,

you're right - but it doesn't fix my problem.


Thanks,
Andr?


Larry Johnson schrieb:
> Andre Schwarz wrote:
>> Last week my PCI bus has been running fine showing all devices.
>> Right now no devices are shown on the bus.
>>
>> I'm using CONFIG_83XX_GENERIC_PCI with common setup code for PCI.
>>
>> Nothing changed from my side during the last 2 weeks.
>>
>>
>> Did I miss any changes in u-boot ?
>>
>>
>> regards,
>> Andre Schwarz
>> Matrix Vision
> 
> Hi Andre and everyone,
> 
> I was just about to post on I problem I belatedly found with PCI on our
> Korat PPC400EPx board.  (I believe the same problem exists on the
> Sequoia board, but have not proved it.)  What appears to have broken it
> was the following patch (I got to use "git bisect" for the first time):
> 
> <patch>
> commit 55774b512fdf63c0516d441cc5da7c54bbffb7f2
> Author: Nobuhiro Iwamatsu <iwamatsu@nigauri.org>
> Date:   Fri Mar 7 16:04:25 2008 +0900
> 
>    pci: Add CONFIG_PCI_SKIP_HOST_BRIDGE config option
>       In current source code, when the device number of PCI is 0, 
> process PCI
>    bridge without fail. However, when the device number is 0, it is not PCI
>    always bridge. There are times when device of PCI allocates.
>       When CONFIG_PCI_SKIP_HOST_BRIDGE is enable, this problem is solved 
> when
>    use this patch.
>       Signed-off-by: Nobuhiro Iwamatsu <iwamatsu@nigauri.org>
>    Acked-by: Stefan Roese <sr@denx.de>
> 
> diff --git a/drivers/pci/pci.c b/drivers/pci/pci.c
> index 50ca6b0..7944b66 100644
> --- a/drivers/pci/pci.c
> +++ b/drivers/pci/pci.c
> @@ -425,6 +425,9 @@ int pci_hose_scan_bus(struct pci_controller *hose, 
> int bus)
>          dev <  PCI_BDF(bus,PCI_MAX_PCI_DEVICES-1,PCI_MAX_PCI_FUNCTIONS-1);
>          dev += PCI_BDF(0,0,1))
>     {
> +
> +    /* Bus 0 is not necessarily PCI bridge. */
> +#if defined(CONFIG_PCI_SKIP_HOST_BRIDGE)
>         /* Skip our host bridge */
>         if ( dev == PCI_BDF(hose->first_busno,0,0) ) {
> #if defined(CONFIG_PCI_CONFIG_HOST_BRIDGE)              /* don't skip 
> host bridge */
> @@ -434,10 +437,11 @@ int pci_hose_scan_bus(struct pci_controller *hose, 
> int bus)
>             if (getenv("pciconfighost") == NULL) {
>                 continue; /* Skip our host bridge */
>             }
> -#else
> +#else /* CONFIG_PCI_CONFIG_HOST_BRIDGE */
>             continue; /* Skip our host bridge */
> -#endif
> +#endif /* CONFIG_PCI_CONFIG_HOST_BRIDGE */
>         }
> +#endif /* CONFIG_PCI_SKIP_HOST_BRIDGE */
> 
>         if (PCI_FUNC(dev) && !found_multi)
>             continue;
> @@ -473,8 +477,11 @@ int pci_hose_scan_bus(struct pci_controller *hose, 
> int bus)
>                 hose->fixup_irq(hose, dev);
> 
> #ifdef CONFIG_PCI_SCAN_SHOW
> +#if defined(CONFIG_PCI_SKIP_HOST_BRIDGE)
>             /* Skip our host bridge */
> -            if ( dev != PCI_BDF(hose->first_busno,0,0) ) {
> +            if ( dev != PCI_BDF(hose->first_busno,0,0) )
> +#endif
> +            {
>                 unsigned char int_line;
> 
>                 pci_hose_read_config_byte(hose, dev, PCI_INTERRUPT_LINE,
> 
> </patch>
> 
> The patch changes the behavior of the code _unless_
> CONFIG_PCI_SKIP_HOST_BRIDGE is defined.  Defining that switch in the
> Korat configuration fixes the problem.  The MPC8323ERDB configuration
> has also been patched to add the switch, so maybe this is is the cause
> of your problem as well.
> 
> I was going to submit the patch for Korat, but then decided I'd first
> like to ask Nobuhiro and the group whether it might not be better to
> change the occurrences of
> 
> #if defined(CONFIG_PCI_SKIP_HOST_BRIDGE)
> 
> in "drivers/pci/pci.c" to
> 
> #if !defined(CONFIG_PCI_NO_SKIP_HOST_BRIDGE)
> 
> That would allow those boards that need to patch to specify it
> explicity, while leaving the default functionality unchanged.
> 
> Comments?
> 
> Best regards,
> Larry
> 


MATRIX VISION GmbH, Talstra?e 16, DE-71570 Oppenweiler  - Registergericht: Amtsgericht Stuttgart, HRB 271090
Gesch?ftsf?hrer: Gerhard Thullner, Werner Armingeon, Uwe Furtner

  reply	other threads:[~2008-04-18 14:27 UTC|newest]

Thread overview: 19+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-04-18 11:20 [U-Boot-Users] PCI stopped working on MPC8343 Andre Schwarz
2008-04-18 14:17 ` Larry Johnson
2008-04-18 14:27   ` André Schwarz [this message]
2008-04-18 16:51     ` Larry Johnson
2008-04-18 14:57   ` Stefan Roese
2008-04-28  8:00     ` [U-Boot-Users] [PATCH][RFC] pci: Remove CONFIG_PCI_SKIP_HOST_BRIDGE and Add check PCI class of host bridge (Re: PCI stopped working on MPC8343) Nobuhiro Iwamatsu
2008-05-05 15:34       ` [U-Boot-Users] [PATCH][RFC] pci: Remove CONFIG_PCI_SKIP_HOST_BRIDGE and Add check PCI class of host bridge Larry Johnson
2008-05-05 18:41         ` Stefan Roese
2008-05-07 16:31           ` Anton Vorontsov
2008-05-09  2:01             ` Larry Johnson
2008-05-11 23:13             ` Wolfgang Denk
2008-05-12 13:43         ` Nobuhiro Iwamatsu
2008-05-12 18:32           ` Wolfgang Denk
2008-06-17  4:59             ` Nobuhiro Iwamatsu
2008-06-17  6:39               ` [U-Boot-Users] [PATCH][RFC] pci: Add check PCI bridge class (Re: [PATCH][RFC] pci: Remove CONFIG_PCI_SKIP_HOST_BRIDGE and Add check PCI class of host bridge) Nobuhiro Iwamatsu
2008-07-07 13:58                 ` Stefan Roese
2008-07-08  6:51                   ` Nobuhiro Iwamatsu
2008-07-08  9:27                     ` Stefan Roese
2008-07-05 22:32               ` [U-Boot-Users] [PATCH][RFC] pci: Remove CONFIG_PCI_SKIP_HOST_BRIDGE and Add check PCI class of host bridge Wolfgang Denk

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=4808AFCD.5070909@matrix-vision.de \
    --to=andre.schwarz@matrix-vision.de \
    --cc=u-boot@lists.denx.de \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox