From: Jason Gunthorpe <jgg@nvidia.com>
To: Will Deacon <will@kernel.org>
Cc: Nicolin Chen <nicolinc@nvidia.com>,
robin.murphy@arm.com, kevin.tian@intel.com, joro@8bytes.org,
linux-tegra@vger.kernel.org,
linux-arm-kernel@lists.infradead.org, iommu@lists.linux.dev,
linux-kernel@vger.kernel.org, eric.auger@redhat.com,
skolothumtho@nvidia.com
Subject: Re: [PATCH 2/2] iommu/tegra241-cmdqv: Update uAPI to clarify HYP_OWN requirement
Date: Mon, 23 Mar 2026 10:12:58 -0300 [thread overview]
Message-ID: <20260323131258.GF7340@nvidia.com> (raw)
In-Reply-To: <abwMcZZHtEuaMEdZ@willie-the-truck>
On Thu, Mar 19, 2026 at 02:47:13PM +0000, Will Deacon wrote:
> On Thu, Mar 12, 2026 at 05:36:35PM -0700, Nicolin Chen wrote:
> > From hardware implementation perspective, a guest tegra241-cmdqv hardware
> > is different than the host hardware:
> > - Host HW is backed by a VINTF (HYP_OWN=1)
> > - Guest HW is backed by a VINTF (HYP_OWN=0)
> >
> > The kernel driver has an implementation requirement of the HYP_OWN bit in
> > the VM. So, VMM must follow that to allow the same copy of Linux to work.
> >
> > Add this requirement to the uAPI, which is currently missing.
> >
> > Fixes: 4dc0d12474f9 ("iommu/tegra241-cmdqv: Add user-space use support")
> > Signed-off-by: Nicolin Chen <nicolinc@nvidia.com>
> > ---
> > include/uapi/linux/iommufd.h | 5 +++++
> > 1 file changed, 5 insertions(+)
> >
> > diff --git a/include/uapi/linux/iommufd.h b/include/uapi/linux/iommufd.h
> > index 1dafbc552d37d..f63edbe71d542 100644
> > --- a/include/uapi/linux/iommufd.h
> > +++ b/include/uapi/linux/iommufd.h
> > @@ -1052,6 +1052,11 @@ struct iommu_fault_alloc {
> > enum iommu_viommu_type {
> > IOMMU_VIOMMU_TYPE_DEFAULT = 0,
> > IOMMU_VIOMMU_TYPE_ARM_SMMUV3 = 1,
> > + /*
> > + * TEGRA241_CMDQV requirements (otherwise, VCMDQs will not work)
> > + * - Kernel will allocate a VINTF (HYP_OWN=0) to back this VIOMMU. So,
> > + * VMM must wire the HYP_OWN bit to 0 in guest VINTF_CONFIG register
> > + */
> > IOMMU_VIOMMU_TYPE_TEGRA241_CMDQV = 2,
> > };
>
> Jason, are you happy with this one?
Yes, please pick up the series
Reviewed-by: Jason Gunthorpe <jgg@nvidia.com>
Jason
next prev parent reply other threads:[~2026-03-23 13:13 UTC|newest]
Thread overview: 9+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-03-13 0:36 [PATCH 0/2] iommu/tegra241-cmdqv: Fix initialization and uAPI related to HYP_OWN Nicolin Chen
2026-03-13 0:36 ` [PATCH 1/2] iommu/tegra241-cmdqv: Set supports_cmd op in tegra241_vcmdq_hw_init() Nicolin Chen
2026-03-13 9:37 ` Shameer Kolothum Thodi
2026-03-23 13:58 ` Eric Auger
2026-03-13 0:36 ` [PATCH 2/2] iommu/tegra241-cmdqv: Update uAPI to clarify HYP_OWN requirement Nicolin Chen
2026-03-19 14:47 ` Will Deacon
2026-03-23 13:12 ` Jason Gunthorpe [this message]
2026-03-23 14:03 ` Eric Auger
2026-03-24 15:08 ` [PATCH 0/2] iommu/tegra241-cmdqv: Fix initialization and uAPI related to HYP_OWN Will Deacon
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=20260323131258.GF7340@nvidia.com \
--to=jgg@nvidia.com \
--cc=eric.auger@redhat.com \
--cc=iommu@lists.linux.dev \
--cc=joro@8bytes.org \
--cc=kevin.tian@intel.com \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-tegra@vger.kernel.org \
--cc=nicolinc@nvidia.com \
--cc=robin.murphy@arm.com \
--cc=skolothumtho@nvidia.com \
--cc=will@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 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.