From: Manivannan Sadhasivam <mani@kernel.org>
To: Szymon Durawa <szymon.durawa@linux.intel.com>
Cc: nirmal.patel@linux.intel.com, bhelgaas@google.com,
robh@kernel.org, kwilczynski@kernel.org, lpieralisi@kernel.org,
asutosh.pathak@linux.intel.com, linux-pci@vger.kernel.org,
linux-kernel@vger.kernel.org
Subject: Re: [PATCH v9 0/7] VMD add second root bus support
Date: Thu, 5 Nov 2026 20:17:10 +0530 [thread overview]
Message-ID: <auyWYoWOL5Lq9CsN@debian> (raw)
In-Reply-To: <20261026205502.3502574-1-szymon.durawa@linux.intel.com>
On Mon, Oct 26, 2026 at 08:54:53PM +0000, Szymon Durawa wrote:
> This series adds support for a second VMD root bus.
>
> Today the VMD driver can enumerate and manage devices only behind the
> first VMD root bus. Starting with Intel Arrow Lake, VMD may expose a
> second root bus (BUS1), and devices behind that bus are not discovered
> by the current driver.
>
> The hardware model for Intel Arrow Lake VMD is slightly different
> from earlier VMD generations:
>
> - CFGBAR, MEMBAR1, and MEMBAR2 are shared by both VMD root buses.
> - Root ports on BUS1 have PCI_PRIMARY_BUS hardwired to 0x80.
> - Interrupt handling remains based on the existing VMD MSI/MSI-X and
> irq_domain model; this series does not introduce a separate interrupt
> domain for BUS1.
>
> To support that layout, the series first refactors the current code so
> resource setup, bus creation, and enumeration are split into helpers.
> It then partitions the shared CFGBAR/MEMBAR apertures between BUS0 and
> BUS1 and creates a second root bus in its own emulated PCI domain.
> Reads of PCI_PRIMARY_BUS from BUS1 root port bridges are emulated to
> return the actual root bus number, so PCI core bridge scanning does not
> detect a mismatch and lose BUS1 subordinate device discovery. This
> replaces the separate workaround patch used in v8.
>
> Patch overview:
>
> - Patches 1-4 extract helper functions for bus enumeration, CFGBAR and
> MEMBAR configuration, and root-bus creation.
> - Patch 5 replaces hardcoded resource indices and constants with enums
> and defines.
> - Patch 6 converts single-bus state (bus, busn_start, sysdata) into
> per-root-bus arrays.
> - Patch 7 adds BUS1 resource partitioning, a separate PCI domain for
> BUS1, PCI_PRIMARY_BUS read emulation for BUS1 root ports, and
> second-root-bus support.
>
> Tested on an Arrow Lake platform with NVMe devices present behind both
> VMD root buses. With the series applied, devices behind BUS0 and BUS1
> are enumerated and become visible to the kernel.
>
Series doesn't apply on top of v7.4-rc1. Please rebase and resend.
- Mani
--
மணிவண்ணன் சதாசிவம்
prev parent reply other threads:[~2026-11-05 14:47 UTC|newest]
Thread overview: 9+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-10-26 20:54 [PATCH v9 0/7] VMD add second root bus support Szymon Durawa
2026-10-26 20:54 ` [PATCH v9 1/7] PCI: vmd: Add vmd_bus_enumeration() helper function Szymon Durawa
2026-10-26 20:54 ` [PATCH v9 2/7] PCI: vmd: Add vmd_configure_cfgbar() " Szymon Durawa
2026-10-26 20:54 ` [PATCH v9 3/7] PCI: vmd: Add vmd_configure_membar() and vmd_configure_membar1_membar2() Szymon Durawa
2026-10-26 20:54 ` [PATCH v9 4/7] PCI: vmd: Add vmd_create_bus() Szymon Durawa
2026-10-26 20:54 ` [PATCH v9 5/7] PCI: vmd: Replace hardcoded values with enum and defines Szymon Durawa
2026-10-26 20:54 ` [PATCH v9 6/7] PCI: vmd: Convert bus, busn_start and sysdata to an array Szymon Durawa
2026-10-26 20:55 ` [PATCH v9 7/7] PCI: vmd: Add support for second rootbus under VMD Szymon Durawa
2026-11-05 14:47 ` Manivannan Sadhasivam [this message]
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=auyWYoWOL5Lq9CsN@debian \
--to=mani@kernel.org \
--cc=asutosh.pathak@linux.intel.com \
--cc=bhelgaas@google.com \
--cc=kwilczynski@kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-pci@vger.kernel.org \
--cc=lpieralisi@kernel.org \
--cc=nirmal.patel@linux.intel.com \
--cc=robh@kernel.org \
--cc=szymon.durawa@linux.intel.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.