From: "Pali Rohár" <pali@kernel.org>
To: Mark Kettenis <mark.kettenis@xs4all.nl>
Cc: Alistair Delva <adelva@google.com>,
trini@konsulko.com, sjg@chromium.org, sr@denx.de,
marek.behun@nic.cz, u-boot@lists.denx.de
Subject: Re: Commit 4f2e2280862a ("RFC: arm: pci: Add PCI cam support to PCI-E ecam driver")
Date: Thu, 20 Jan 2022 14:55:51 +0100 [thread overview]
Message-ID: <20220120135551.d5heaeq2u4chdjbb@pali> (raw)
In-Reply-To: <d3cbc3106fc50ec6@bloch.sibelius.xs4all.nl>
Hello Mark!
On Thursday 20 January 2022 00:23:02 Mark Kettenis wrote:
> CAM is just a version of ECAM that only gives you access to the
> classic PCI config space (register offsets < 256). This has very
> little to do with the classic "mode 1" and "mode 2" config space
> access methods of the x86 PCI host bridges.
Interesting... as I have not found anything about CAM in specs... That
is why I thought it must be some proprietary, vendor-specific or
non-standard access method.
"mode 1" is indirect access method and "mode 2" has mapped config space
into (io) memory space. But this "CAM" is neither "mode 1" nor "mode 2".
That is why it looked suspicious to me.
> I don't think there is a
> CAM standard at all, but some of the PCI host bridges found on PowerPC
> and SPARC hardware implemented a straight mapping of PCI config space
> into mmio space like that.
Interesting... But at least it looks like that U-Boot does not have
support for these kind of hardware.
Anyway, is not that mapping in that old hardware of PCI config space
into mmio space according to "mode 2" layout? I know that both "mode 1"
and "mode 2" are IO-space orientated, but on non-x86 HW there probably
does not have to be IO-space and same layout can be used also for
memory-space mapping.
> It is a little bit strange that crosvm implements CAM instead of ECAM,
> but I guess they don't care about passthrough of arbitrary PCIe
> devices. And as long as all (emulated) PCIe devices only have
> registers with offsets < 256, this will work just fine.
>
> And yes, you should check that the register offset is limited to
> 0..255.
next prev parent reply other threads:[~2022-01-20 13:56 UTC|newest]
Thread overview: 11+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-01-13 12:34 Commit 4f2e2280862a ("RFC: arm: pci: Add PCI cam support to PCI-E ecam driver") Pali Rohár
2022-01-19 22:48 ` Alistair Delva
2022-01-19 23:23 ` Mark Kettenis
2022-01-20 13:55 ` Pali Rohár [this message]
2022-01-20 13:48 ` Pali Rohár
2022-02-07 19:39 ` Pali Rohár
2022-02-07 19:48 ` Alistair Delva
2022-02-09 16:09 ` Pali Rohár
2022-02-09 16:24 ` Alistair Delva
2022-02-09 16:32 ` Pali Rohár
2022-02-09 17:00 ` Mark Kettenis
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=20220120135551.d5heaeq2u4chdjbb@pali \
--to=pali@kernel.org \
--cc=adelva@google.com \
--cc=marek.behun@nic.cz \
--cc=mark.kettenis@xs4all.nl \
--cc=sjg@chromium.org \
--cc=sr@denx.de \
--cc=trini@konsulko.com \
--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