All of lore.kernel.org
 help / color / mirror / Atom feed
From: Felix Radensky <felix@embedded-sol.com>
To: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Cc: linuxppc-dev@ozlabs.org, Stefan Roese <sr@denx.de>,
	Feng Kan <fkan@amcc.com>
Subject: Re: PCI-PCI bridge scanning broken on 460EX
Date: Sun, 10 Jan 2010 23:13:43 +0200	[thread overview]
Message-ID: <4B4A4307.5050704@embedded-sol.com> (raw)
In-Reply-To: <1263155906.724.2.camel@pasglop>

Benjamin Herrenschmidt wrote:
> On Sun, 2010-01-10 at 14:56 +0200, Felix Radensky wrote:
>
>   
>> I now have a custom board with 460EX and the same PLX bridge, running 
>> 2.6.23-rc3
>> Things look better here, as u-boot is now able to properly detect PLX 
>> and device behind
>> it, but kernel still has problems. First, I'm still getting hard reset on
>>
>> pci_write_config_dword(dev, PCI_PRIMARY_BUS,
>>                                buses & ~0xffffff);
>>
>> If this line is removed, PLX is detected twice, see below. I also get 
>> hard reset
>> if pass test is modified as you requested and broken test removed.
>>
>> Any ideas how to fix this ? I was suspecting PLX evaluation board, but
>> PLX on our custom board seems to be OK, so it looks like kernel needs 
>> fixing.
>>     
>
> I have no idea no. It looks like something is wrong with the PLX bridge
> but again, I don't know why that would cause the 460EX to hard reset
> like that, unless some of the PCIe error handling of the 460 has been
> configured to cause such a reset on some kind of errors (which it
> shouldn't at least not in host mode).
>
> Can you try instead of writing all the bus number related registers in
> one single dword write above, writing them byte by byte ? Which one is
> causing the reset ? Does it reset whatever the value you write there
> is ?
>
> It looks like something is causing a hard reset as soon as you try to
> configure the PLX bridge and without configuring it properly I fail to
> see how you'll get things working.
>
>   

OK, I'll try writing byte by byte. The funny thing is the u-boot also 
writes the
same value to PCI_PRIMARY_BUS register and it doesn't cause reset.

Thanks a lot.

Felix.

  reply	other threads:[~2010-01-10 21:13 UTC|newest]

Thread overview: 15+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-12-28 10:51 PCI-PCI bridge scanning broken on 460EX Felix Radensky
2010-01-04  5:55 ` Benjamin Herrenschmidt
2010-01-04  8:59   ` Felix Radensky
2010-01-10 12:56     ` Felix Radensky
2010-01-10 20:38       ` Benjamin Herrenschmidt
2010-01-10 21:13         ` Felix Radensky [this message]
2010-01-10 21:31           ` Benjamin Herrenschmidt
2010-01-11  9:58             ` Stef van Os
2010-01-11 11:48               ` Felix Radensky
2010-01-11 16:46                 ` Felix Radensky
2010-01-11 20:53                   ` Benjamin Herrenschmidt
2010-01-11 22:48                     ` Felix Radensky
2010-01-11 22:53                       ` Benjamin Herrenschmidt
2010-01-12 11:02                         ` Felix Radensky
2010-01-12 11:14                           ` Stef van Os

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=4B4A4307.5050704@embedded-sol.com \
    --to=felix@embedded-sol.com \
    --cc=benh@kernel.crashing.org \
    --cc=fkan@amcc.com \
    --cc=linuxppc-dev@ozlabs.org \
    --cc=sr@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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.