From: Matthew Wilcox <willy@debian.org>
To: Geert Uytterhoeven <geert@linux-m68k.org>
Cc: Jon Smirl <jonsmirl@gmail.com>,
Jesse Barnes <jbarnes@engr.sgi.com>,
"David S. Miller" <davem@davemloft.net>,
willy@debian.org,
Linux Kernel Development <linux-kernel@vger.kernel.org>
Subject: Re: multi-domain PCI and sysfs
Date: Wed, 8 Sep 2004 12:38:16 +0100 [thread overview]
Message-ID: <20040908113816.GL642@parcelfarce.linux.theplanet.co.uk> (raw)
In-Reply-To: <Pine.GSO.4.58.0409081302040.20726@waterleaf.sonytel.be>
On Wed, Sep 08, 2004 at 01:11:36PM +0200, Geert Uytterhoeven wrote:
> On ia32, you access PCI I/O space (`I/O ports') using IN/OUT instructions.
> On non-ia32, you access PCI I/O space by accessing a special region of the CPU
> address space.
That's one way of doing it, sure ... ;-)
With HP's Dino PCI controller, you generate I/O cycles on the PCI bus by
writing the address to the DINO_PCI_ADDR register, then reading or writing
the DINO_IO_DATA register.
> You access PCI memory space by accessing a special region of the CPU
> address space on all platforms I'm aware of.
The PPC64 iSeries port seems to do a hypervisor call for readb() et al.
Nasty stuff.
> On ia32, it starts at CPU address
> zero, and there's no offset between CPU physical addresses and PCI bus
> addresses. On other platforms, there may be offsets.
It can even depend on machine model ... only some ia64 platforms have
different bus view and physical view (see Documentation/IO-mapping.txt)
> For access to PCI config space, there are even more possibilities. On ia32
> it's usually done using indirect access to PCI I/O space 0xcf8 etc. On other
> platforms it's usually done by accessing a special region of the CPU address
> space. Or in a different way ;-)
We have four options on i386 -- direct1, direct2, bios and mmconfig.
Other platforms ... well, get even weirder. Magic registers, firmware
calls, memory mapped. It's all been done.
--
"Next the statesmen will invent cheap lies, putting the blame upon
the nation that is attacked, and every man will be glad of those
conscience-soothing falsities, and will diligently study them, and refuse
to examine any refutations of them; and thus he will by and by convince
himself that the war is just, and will thank God for the better sleep
he enjoys after this process of grotesque self-deception." -- Mark Twain
next prev parent reply other threads:[~2004-09-08 11:38 UTC|newest]
Thread overview: 35+ messages / expand[flat|nested] mbox.gz Atom feed top
2004-09-04 20:00 Jon Smirl
2004-09-04 21:57 ` Jesse Barnes
2004-09-04 22:12 ` Jon Smirl
2004-09-04 22:27 ` Jesse Barnes
2004-09-04 22:45 ` Jon Smirl
2004-09-04 23:03 ` Jesse Barnes
2004-09-05 23:04 ` Matthew Wilcox
2004-09-05 23:50 ` Jon Smirl
2004-09-05 23:00 ` Alan Cox
2004-09-06 1:40 ` Matthew Wilcox
2004-09-07 22:58 ` Jon Smirl
2004-09-07 23:11 ` David S. Miller
2004-09-08 3:39 ` Jon Smirl
2004-09-08 4:12 ` David S. Miller
2004-09-08 4:16 ` Jesse Barnes
2004-09-08 4:15 ` Jesse Barnes
2004-09-08 4:16 ` David S. Miller
2004-09-08 4:25 ` Jesse Barnes
2004-09-08 6:01 ` Jon Smirl
2004-09-08 13:02 ` Alan Cox
2004-09-08 16:02 ` Jesse Barnes
2004-09-08 18:20 ` David S. Miller
2004-09-08 18:32 ` Jesse Barnes
2004-09-08 18:54 ` David S. Miller
2004-09-08 6:55 ` Jon Smirl
2004-09-08 11:11 ` Geert Uytterhoeven
2004-09-08 11:38 ` Matthew Wilcox [this message]
2004-09-08 18:21 ` David S. Miller
2004-09-08 22:41 ` Alan Cox
2004-09-09 0:31 ` Jon Smirl
2004-09-09 13:06 ` Alan Cox
2004-09-08 15:03 ` Matthew Wilcox
2004-09-06 0:06 ` Jesse Barnes
2004-09-06 0:31 ` Jon Smirl
2004-09-06 1:38 ` Jon Smirl
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=20040908113816.GL642@parcelfarce.linux.theplanet.co.uk \
--to=willy@debian.org \
--cc=davem@davemloft.net \
--cc=geert@linux-m68k.org \
--cc=jbarnes@engr.sgi.com \
--cc=jonsmirl@gmail.com \
--cc=linux-kernel@vger.kernel.org \
/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
Powered by JetHome