From: Jonathan Cameron via <qemu-devel@nongnu.org>
To: Yuquan Wang <wangyuquan1236@phytium.com.cn>
Cc: qemu-arm <qemu-arm@nongnu.org>,
"gregory.price@memverge.com" <gregory.price@memverge.com>,
<qemu-devel@nongnu.org>
Subject: Re: CXL Namespaces of ACPI disappearing in Qemu demo
Date: Mon, 4 Sep 2023 13:43:42 +0100 [thread overview]
Message-ID: <20230904134342.000048bf@Huawei.com> (raw)
In-Reply-To: <2023090418270957278822@phytium.com.cn>
On Mon, 4 Sep 2023 18:27:10 +0800
Yuquan Wang <wangyuquan1236@phytium.com.cn> wrote:
> Hi, Jonathan
>
Hi Yuquan
Given this question isn't just ARM specific included qemu-devel in the cc list as
that gets much wider reading than qemu-arm.
> Due to my poor experience and knowledge on cxl development history, I am sorry to continue
> to ask some very simple and fundamental questions : (
>
> In hw/arm/virt :
> [VIRT_CXL_HOST] = { 0x0, 64 * KiB * 16 }, /* 16 UID */
>
> It seems like the specific space for MMIO of cxl host bridges. Why not just use the existing "VIRT_PCIE_MMIO"
> space for them?
At the system design level, MMIO space of Root complex register space via RCRB
does not map in a similar fashion to PCIE MMIO space (which is handled via
address decoding in the PCIE fabric). It is much more similar to MMIO for platform
devices - as such the implementation handles in like a platform device (well 16 of
them which seemed enough for any sane usecase).
Now the next bit I've only quickly explored so may have some errors!
For instance on a GPEX the main MMIO region is an alias to the sysbus mmio region 1.
https://elixir.bootlin.com/qemu/latest/source/hw/arm/virt.c#L1452
That region is then mapped to a generic pci_root_bus for use by bar
mappings etc.
https://elixir.bootlin.com/qemu/latest/source/hw/pci-host/gpex.c#L136
So in theory we could make some space for the CXL root bridge RCRB registers
but it would make various generic paths more complex. In a real system
those registers are likely to be far from the PCI MMIO space anyway so the
way it's modeled is probably more realistic than pushing the RCRB into the
existing allocation.
I hope that clarifies our reasoning for handling this MMIO region separately.
Jonathan
>
> I would be grateful if you have some free time to help check this issue : )
>
> Many thanks
> Yuquan
next parent reply other threads:[~2023-09-04 12:46 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <2023082215220191352877@phytium.com.cn>
[not found] ` <2023090418270957278822@phytium.com.cn>
2023-09-04 12:43 ` Jonathan Cameron via [this message]
2023-09-05 10:45 ` CXL Namespaces of ACPI disappearing in Qemu demo Yuquan Wang
2023-09-05 14:34 ` Jonathan Cameron via
2023-09-06 11:22 ` Yuquan Wang
2023-09-07 10:58 ` Jonathan Cameron via
2023-06-16 7:43 A confusion about CXL in arm virt machine Yuquan Wang
[not found] ` <2023081118312729037834@phytium.com.cn>
2023-08-22 15:23 ` CXL Namespaces of ACPI disappearing in Qemu demo Jonathan Cameron via
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=20230904134342.000048bf@Huawei.com \
--to=qemu-devel@nongnu.org \
--cc=Jonathan.Cameron@Huawei.com \
--cc=gregory.price@memverge.com \
--cc=qemu-arm@nongnu.org \
--cc=wangyuquan1236@phytium.com.cn \
/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;
as well as URLs for NNTP newsgroup(s).