public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: Benjamin Herrenschmidt <benh@kernel.crashing.org>
To: Bjorn Helgaas <bjorn.helgaas@hp.com>
Cc: Paul Mackerras <paulus@samba.org>,
	Jesse Barnes <jbarnes@engr.sgi.com>,
	werner@sgi.com, Linus Torvalds <torvalds@osdl.org>,
	davej@redhat.com,
	Linux Kernel list <linux-kernel@vger.kernel.org>
Subject: Re: AGP bogosities
Date: Sat, 12 Mar 2005 11:12:38 +1100	[thread overview]
Message-ID: <1110586359.5810.139.camel@gaston> (raw)
In-Reply-To: <1110583375.4822.88.camel@eeyore>


> I still don't quite understand this.  If the host bridge is not a
> PCI device, what PCI device contains the AGP capability that controls
> the host bridge?  I assume you're saying that you are required to
> have TWO PCI devices that have the AGP capability, one for the AGP
> device and one for the bridge.
> 
> HP boxes certainly don't have that (zx6000 sample below).  I guess
> it wouldn't be the first time we deviated from a spec ;-)

We are basically hitting a "hole" in the PCI spec itself :) It doesn't
really defines how a host bridge can expose itself as a device. That
means that in most cases, the host bridge either isn't visible at all,
or is as a random device at the first level (which makes it a sibling of
other devices, quite broken ....). Also, there is no standard "devfn"
for it, so it can be anywhere and there is no "simple" way of knowing
which devie is actually the host in a generic way. Most of the time,
looking for a devie with the class "host bridge" will work, but it's not
guaranteed. Some hosts also expose the AGP stuff differently.

In some cases, like Apple U3 HT host, it also has a set of registers
that mimmic a PCI config space, but aren't implemented in the PCI config
space proper, and thus, unless you add special case to your pci_ops, you
won't see it on the bus. (Apple's AGP host appears as a device on it's
own bus though).

So while AGP requires a set of PCI config space registers with the AGP
capabilities for the host, it's very possible that you have those in a
space that don't appear on the PCI (just as MMIO registers on your
bridge somewhere), or whatever other fancy setup. In fact, that part of
the spec hits the above hole, so I wouldn't be surprised if vendors
decided to ignore it and do fancy things.

Ben.


  reply	other threads:[~2005-03-12  0:18 UTC|newest]

Thread overview: 81+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2005-03-11  1:24 AGP bogosities Paul Mackerras
2005-03-11  2:04 ` Jesse Barnes
2005-03-11  2:11   ` Paul Mackerras
2005-03-11  2:18     ` Jesse Barnes
2005-03-11  2:38       ` Benjamin Herrenschmidt
2005-03-11  4:02         ` Jesse Barnes
2005-03-11  4:30           ` Benjamin Herrenschmidt
2005-03-11 16:39             ` Jesse Barnes
2005-03-11 17:59               ` Bjorn Helgaas
2005-03-11 18:04                 ` Jesse Barnes
2005-03-12  3:27                   ` Mike Werner
2005-03-12  3:58                     ` Dave Jones
2005-03-13  3:13                       ` Jesse Barnes
2005-03-13  4:08                         ` Dave Jones
2005-03-13  4:28                           ` Dave Jones
2005-03-11 22:43                 ` Paul Mackerras
2005-03-11 23:22                   ` Bjorn Helgaas
2005-03-12  0:12                     ` Benjamin Herrenschmidt [this message]
2005-03-12  1:34                     ` Paul Mackerras
2005-03-11 18:04   ` James Simmons
2005-03-11 18:08     ` Jesse Barnes
2005-03-11  2:04 ` Linus Torvalds
2005-03-11  2:12 ` Dave Jones
2005-03-11  2:18   ` Paul Mackerras
2005-03-11  2:23     ` Dave Jones
2005-03-11  2:40       ` Benjamin Herrenschmidt
2005-03-11  2:49         ` Dave Jones
2005-03-12 20:49           ` Greg KH
2005-03-11  2:42     ` Linus Torvalds
2005-03-11 22:18       ` OGAWA Hirofumi
2005-03-11 22:26         ` Dave Jones
2005-03-11 22:33           ` Chris Wedgwood
2005-03-11 23:52             ` Gene Heskett
2005-03-11 22:44           ` Linus Torvalds
2005-03-11 23:09           ` Paul Mackerras
2005-03-12  0:06             ` Gene Heskett
2005-03-14  8:17           ` Pavel Machek
2005-03-14  8:27             ` David Lang
2005-03-14  8:37               ` dmesg verbosity [was Re: AGP bogosities] Pavel Machek
2005-03-14 16:55                 ` Jesse Barnes
2005-03-14 17:03                   ` Pavel Machek
2005-03-14 17:17                   ` Dave Jones
2005-03-14 17:18                   ` Linus Torvalds
2005-03-14 17:27                     ` Jesse Barnes
2005-03-14 17:27                     ` Pavel Machek
2005-03-15 20:18                     ` Greg Stark
2005-03-14 18:12                   ` Diego Calleja
2005-03-14 19:07                     ` Lee Revell
2005-03-20  6:44                       ` David Lang
2005-03-23  0:37                       ` Diego Calleja
2005-03-23  0:53                         ` Lee Revell
2005-03-23  1:13                           ` Dave Jones
2005-03-23  1:29                             ` Andrew Morton
2005-03-23  8:21                             ` Giuseppe Bilotta
2005-03-23 16:14                               ` Dave Jones
2005-03-23 16:49                                 ` Giuseppe Bilotta
2005-03-23 17:17                                   ` Dave Jones
2005-03-23 14:10                             ` Diego Calleja
2005-03-23  8:19                           ` Giuseppe Bilotta
2005-03-30  9:45                           ` Pavel Machek
2005-03-23  0:53                         ` Zan Lynx
2005-03-23  0:55                         ` Grant Coady
2005-03-14 21:55                   ` Benjamin Herrenschmidt
2005-03-14 22:08                     ` David Lang
2005-03-15  0:02                     ` Pavel Machek
2005-03-11 22:42         ` AGP bogosities Dmitry Torokhov
2005-03-11 22:47           ` Dmitry Torokhov
2005-03-12 17:09         ` Linus Torvalds
2005-03-12 22:26           ` OGAWA Hirofumi
2005-03-12 22:34             ` Linus Torvalds
2005-03-11  2:35   ` Benjamin Herrenschmidt
2005-03-11  2:43     ` Dave Jones
2005-03-11  2:37   ` Linus Torvalds
2005-03-11 22:11 ` J.A. Magallon
2005-03-11 22:18   ` Dave Jones
2005-03-11 22:46     ` J.A. Magallon
2005-03-11 23:16       ` Martin Schlemmer
2005-03-11 23:17         ` J.A. Magallon
2005-03-11 23:23           ` Martin Schlemmer
2005-03-11 23:24             ` J.A. Magallon
  -- strict thread matches above, loose matches on Subject: below --
2005-03-12  4:33 Ken Ryan

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=1110586359.5810.139.camel@gaston \
    --to=benh@kernel.crashing.org \
    --cc=bjorn.helgaas@hp.com \
    --cc=davej@redhat.com \
    --cc=jbarnes@engr.sgi.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=paulus@samba.org \
    --cc=torvalds@osdl.org \
    --cc=werner@sgi.com \
    /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