From: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>
To: Christoph Hellwig <hch@lst.de>
Cc: iommu@lists.linux-foundation.org, x86@kernel.org,
Anshuman Khandual <anshuman.khandual@arm.com>,
Stefano Stabellini <sstabellini@kernel.org>,
Boris Ostrovsky <boris.ostrovsky@oracle.com>,
Juergen Gross <jgross@suse.com>, Joerg Roedel <joro@8bytes.org>,
David Woodhouse <dwmw2@infradead.org>,
Lu Baolu <baolu.lu@linux.intel.com>,
Robin Murphy <robin.murphy@arm.com>,
linux-arm-kernel@lists.infradead.org,
xen-devel@lists.xenproject.org, linux-ia64@vger.kernel.org,
linux-mips@vger.kernel.org, linuxppc-dev@lists.ozlabs.org,
linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org,
linux-hyperv@vger.kernel.org, tboot-devel@lists.sourceforge.net,
linux-pci@vger.kernel.org
Subject: Re: [PATCH 07/11] x86: remove the IOMMU table infrastructure
Date: Tue, 1 Mar 2022 13:20:22 -0500 [thread overview]
Message-ID: <Yh5j5q5n/GyU0/1n@0xbeefdead.lan> (raw)
In-Reply-To: <20220227143055.335596-8-hch@lst.de>
> -#include <asm/swiotlb.h>
> -
> -/*
> - * History lesson:
> - * The execution chain of IOMMUs in 2.6.36 looks as so:
> - *
> - * [xen-swiotlb]
> - * |
> - * +----[swiotlb *]--+
> - * / | \
> - * / | \
> - * [GART] [Calgary] [Intel VT-d]
> - * /
> - * /
> - * [AMD-Vi]
.. snip..
> - *
> void __init pci_iommu_alloc(void)
> {
> - struct iommu_table_entry *p;
> -
> - sort_iommu_table(__iommu_table, __iommu_table_end);
> - check_iommu_entries(__iommu_table, __iommu_table_end);
> -
> - for (p = __iommu_table; p < __iommu_table_end; p++) {
> - if (p && p->detect && p->detect() > 0) {
> - p->flags |= IOMMU_DETECTED;
> - if (p->early_init)
> - p->early_init();
> - if (p->flags & IOMMU_FINISH_IF_DETECTED)
> - break;
> - }
> + if (xen_pv_domain()) {
> + pci_xen_swiotlb_init();
> + return;
> }
> + pci_swiotlb_detect_4gb();
I think you also need to check for IBM Calgary?
> + gart_iommu_hole_init();
> + amd_iommu_detect();
> + detect_intel_iommu();
> + if (x86_swiotlb_enable)
> + swiotlb_init(0);
_______________________________________________
linux-riscv mailing list
linux-riscv@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-riscv
next prev parent reply other threads:[~2022-03-01 18:21 UTC|newest]
Thread overview: 22+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-02-27 14:30 cleanup swiotlb initialization v2 Christoph Hellwig
2022-02-27 14:30 ` [PATCH 01/11] dma-direct: use is_swiotlb_active in dma_direct_map_page Christoph Hellwig
2022-02-27 14:30 ` [PATCH 02/11] swiotlb: make swiotlb_exit a no-op if SWIOTLB_FORCE is set Christoph Hellwig
2022-02-27 14:30 ` [PATCH 03/11] swiotlb: simplify swiotlb_max_segment Christoph Hellwig
2022-02-27 14:30 ` [PATCH 04/11] swiotlb: rename swiotlb_late_init_with_default_size Christoph Hellwig
2022-02-27 14:30 ` [PATCH 05/11] swiotlb: pass a gfp_mask argument to swiotlb_init_late Christoph Hellwig
2022-02-27 14:30 ` [PATCH 06/11] MIPS/octeon: use swiotlb_init instead of open coding it Christoph Hellwig
2022-02-27 14:30 ` [PATCH 07/11] x86: remove the IOMMU table infrastructure Christoph Hellwig
2022-03-01 18:20 ` Konrad Rzeszutek Wilk [this message]
2022-03-02 8:07 ` Christoph Hellwig
2022-03-02 9:18 ` Anatoly Pugachev
2022-03-02 9:22 ` Christoph Hellwig
2022-02-27 14:30 ` [PATCH 08/11] swiotlb: make the swiotlb_init interface more useful Christoph Hellwig
2022-02-27 18:15 ` Christophe Leroy
2022-02-28 2:53 ` Michael Kelley (LINUX)
2022-02-28 11:30 ` Christoph Hellwig
2022-02-28 17:21 ` Michael Kelley (LINUX)
2022-02-27 14:30 ` [PATCH 09/11] swiotlb: add a SWIOTLB_ANY flag to lift the low memory restriction Christoph Hellwig
2022-02-27 14:30 ` [PATCH 10/11] swiotlb: merge swiotlb-xen initialization into swiotlb Christoph Hellwig
2022-02-27 14:30 ` [PATCH 11/11] x86: remove cruft from <asm/dma-mapping.h> Christoph Hellwig
-- strict thread matches above, loose matches on Subject: below --
2022-02-22 15:35 cleanup swiotlb initialization Christoph Hellwig
2022-02-22 15:35 ` [PATCH 07/11] x86: remove the IOMMU table infrastructure Christoph Hellwig
2022-02-24 10:18 ` Anshuman Khandual
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=Yh5j5q5n/GyU0/1n@0xbeefdead.lan \
--to=konrad.wilk@oracle.com \
--cc=anshuman.khandual@arm.com \
--cc=baolu.lu@linux.intel.com \
--cc=boris.ostrovsky@oracle.com \
--cc=dwmw2@infradead.org \
--cc=hch@lst.de \
--cc=iommu@lists.linux-foundation.org \
--cc=jgross@suse.com \
--cc=joro@8bytes.org \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-hyperv@vger.kernel.org \
--cc=linux-ia64@vger.kernel.org \
--cc=linux-mips@vger.kernel.org \
--cc=linux-pci@vger.kernel.org \
--cc=linux-riscv@lists.infradead.org \
--cc=linux-s390@vger.kernel.org \
--cc=linuxppc-dev@lists.ozlabs.org \
--cc=robin.murphy@arm.com \
--cc=sstabellini@kernel.org \
--cc=tboot-devel@lists.sourceforge.net \
--cc=x86@kernel.org \
--cc=xen-devel@lists.xenproject.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