From: Aaron Sierra <asierra@xes-inc•com>
To: Scott Wood <scottwood@freescale•com>
Cc: Minghuan Lian <Minghuan.Lian@freescale•com>,
linuxppc-dev@lists•ozlabs.org
Subject: Re: [PATCH] powerpc: fsl_pci: Fix PCI/PCI-X regression
Date: Fri, 22 Aug 2014 14:00:21 -0500 (CDT) [thread overview]
Message-ID: <1876951015.136131.1408734021445.JavaMail.zimbra@xes-inc.com> (raw)
In-Reply-To: <1408732591.6510.5.camel@snotra.buserror.net>
----- Original Message -----
> From: "Scott Wood" <scottwood@freescale•com>
> To: "Aaron Sierra" <asierra@xes-inc•com>
> Cc: linuxppc-dev@lists•ozlabs.org, "Minghuan Lian" <Minghuan.Lian@freescale•com>
> Sent: Friday, August 22, 2014 1:36:31 PM
> Subject: Re: [PATCH] powerpc: fsl_pci: Fix PCI/PCI-X regression
>
> On Fri, 2014-08-22 at 12:54 -0500, Aaron Sierra wrote:
> > ----- Original Message -----
> > > From: "Scott Wood" <scottwood@freescale•com>
> > > Sent: Thursday, August 21, 2014 5:01:46 PM
> > >
> > > On Thu, 2014-08-21 at 16:54 -0500, Aaron Sierra wrote:
> > > > ----- Original Message -----
> > > > > From: "Scott Wood" <scottwood@freescale•com>
> > > > > Sent: Thursday, August 21, 2014 4:19:56 PM
> > > > >
> > > > > Why wouldn't a normal PCI agent be able to bus master?
> > > > >
> > > > > -Scott
> > > > >
> > > >
> > > > Short answer:
> > > >
> > > > Simply because the hardware strapping for Host/Agent determines the
> > > > default state of the Bus Master bit in the Command register. Without
> > > > that bit being set, an Agent won't be able to send the PCI cycles
> > > > necessary to enumerate the bus.
> > >
> > > But what if the host has already set that bit before Linux boots?
> >
> > That's a very good point. I think that concern can be addressed by looking
> > for another telltale sign of enumeration, whether an address has been
> > assigned to the bridge's BAR 0 (PCSRBAR).
>
> I don't see how that's any different. The host may or may not have
> assigned an address.
I don't agree with that. If the host has enabled bus mastering for the
device, then it also surely would also have assigned an address to the
always on PCSRBAR during enumeration.
In what sort of environment would a host have enabled bus mastering for
a peripheral device _before_ assigning addresses to its BARs?
> > > I understand why you need to do this -- I just don't think this is a
> > > reliable way of detecting that you're in that situation. How about a
> > > kernel command line setting?
> >
> > I'd like to avoid requiring a kernel command-line option for this.
>
> It's hardware description, so you could use a device tree property.
>
I like this better than a command-line option, but what are you
suggesting? Would you want a device-tree property to gate the logic that
I've proposed?
-Aaron
next prev parent reply other threads:[~2014-08-22 19:02 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <1884375274.96749.1408578481814.JavaMail.zimbra@xes-inc.com>
2014-08-20 23:51 ` [PATCH] powerpc: fsl_pci: Fix PCI/PCI-X regression Aaron Sierra
2014-08-21 21:19 ` Scott Wood
2014-08-21 21:54 ` Aaron Sierra
2014-08-21 22:01 ` Scott Wood
2014-08-22 17:54 ` Aaron Sierra
2014-08-22 18:36 ` Scott Wood
2014-08-22 19:00 ` Aaron Sierra [this message]
2014-08-22 19:53 ` Scott Wood
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=1876951015.136131.1408734021445.JavaMail.zimbra@xes-inc.com \
--to=asierra@xes-inc$(echo .)com \
--cc=Minghuan.Lian@freescale$(echo .)com \
--cc=linuxppc-dev@lists$(echo .)ozlabs.org \
--cc=scottwood@freescale$(echo .)com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
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