search for: iommu_present

Displaying 20 results from an estimated 28 matches for "iommu_present".

2016 Aug 30
4
[PATCH v2 2/2] vfio: add virtio pci quirk
...QUMRANET) { Perhaps a vfio_pci_is_virtio() like vga below? Let's test the device ID range initially as well, this test raised a big red flag for me whether all devices within this vendor ID were virtio. > + bool noiommu = vfio_is_noiommu_group_dev(&pdev->dev); I think you can use iommu_present() for this and avoid patch 1of2. noiommu is mutually exclusive to an iommu being present. Seems like all of this logic should be in the quirk itself, I'm not sure what it buys to get the value here but wait until later to use it. Using iommu_present() could also move this test much earlier in...
2016 Aug 30
4
[PATCH v2 2/2] vfio: add virtio pci quirk
...QUMRANET) { Perhaps a vfio_pci_is_virtio() like vga below? Let's test the device ID range initially as well, this test raised a big red flag for me whether all devices within this vendor ID were virtio. > + bool noiommu = vfio_is_noiommu_group_dev(&pdev->dev); I think you can use iommu_present() for this and avoid patch 1of2. noiommu is mutually exclusive to an iommu being present. Seems like all of this logic should be in the quirk itself, I'm not sure what it buys to get the value here but wait until later to use it. Using iommu_present() could also move this test much earlier in...
2016 Aug 30
2
[PATCH v2 2/2] vfio: add virtio pci quirk
...39;s test the device > > ID range initially as well, this test raised a big red flag for me > > whether all devices within this vendor ID were virtio. > > > > > + bool noiommu = vfio_is_noiommu_group_dev(&pdev->dev); > > > > I think you can use iommu_present() for this and avoid patch 1of2. > > noiommu is mutually exclusive to an iommu being present. Seems like > > all of this logic should be in the quirk itself, I'm not sure what it > > buys to get the value here but wait until later to use it. Using > > iommu_present() c...
2016 Aug 30
2
[PATCH v2 2/2] vfio: add virtio pci quirk
...39;s test the device > > ID range initially as well, this test raised a big red flag for me > > whether all devices within this vendor ID were virtio. > > > > > + bool noiommu = vfio_is_noiommu_group_dev(&pdev->dev); > > > > I think you can use iommu_present() for this and avoid patch 1of2. > > noiommu is mutually exclusive to an iommu being present. Seems like > > all of this logic should be in the quirk itself, I'm not sure what it > > buys to get the value here but wait until later to use it. Using > > iommu_present() c...
2016 Aug 30
0
[PATCH v2 2/2] vfio: add virtio pci quirk
...is_virtio() like vga below? Let's test the device > ID range initially as well, this test raised a big red flag for me > whether all devices within this vendor ID were virtio. > > > + bool noiommu = vfio_is_noiommu_group_dev(&pdev->dev); > > I think you can use iommu_present() for this and avoid patch 1of2. > noiommu is mutually exclusive to an iommu being present. Seems like > all of this logic should be in the quirk itself, I'm not sure what it > buys to get the value here but wait until later to use it. Using > iommu_present() could also move this...
2016 Aug 30
0
[PATCH v2 2/2] vfio: add virtio pci quirk
...> ID range initially as well, this test raised a big red flag for me > > > whether all devices within this vendor ID were virtio. > > > > > > > + bool noiommu = vfio_is_noiommu_group_dev(&pdev->dev); > > > > > > I think you can use iommu_present() for this and avoid patch 1of2. > > > noiommu is mutually exclusive to an iommu being present. Seems like > > > all of this logic should be in the quirk itself, I'm not sure what it > > > buys to get the value here but wait until later to use it. Using > > &g...
2016 Jul 06
1
[PATCH -next] drm/nouveau/device: fix return value check in nvkm_device_tegra_probe_iommu()
...vice/tegra.c b/drivers/gpu/drm/nouveau/nvkm/engine/device/tegra.c index ec12efb..2ed025d 100644 --- a/drivers/gpu/drm/nouveau/nvkm/engine/device/tegra.c +++ b/drivers/gpu/drm/nouveau/nvkm/engine/device/tegra.c @@ -102,7 +102,7 @@ nvkm_device_tegra_probe_iommu(struct nvkm_device_tegra *tdev) if (iommu_present(&platform_bus_type)) { tdev->iommu.domain = iommu_domain_alloc(&platform_bus_type); - if (IS_ERR(tdev->iommu.domain)) + if (!tdev->iommu.domain) goto error; /*
2016 Aug 15
1
[PATCH] drm/nouveau/tegra: Modify error handling
...vice/tegra.c b/drivers/gpu/drm/nouveau/nvkm/engine/device/tegra.c index 939682f..ffd8def 100644 --- a/drivers/gpu/drm/nouveau/nvkm/engine/device/tegra.c +++ b/drivers/gpu/drm/nouveau/nvkm/engine/device/tegra.c @@ -102,7 +102,7 @@ nvkm_device_tegra_probe_iommu(struct nvkm_device_tegra *tdev) if (iommu_present(&platform_bus_type)) { tdev->iommu.domain = iommu_domain_alloc(&platform_bus_type); - if (IS_ERR(tdev->iommu.domain)) + if (!tdev->iommu.domain) goto error; /* -- 1.9.1
2016 Oct 31
1
[PATCH] drm/nouveau/tegra: Fix error handling
....c b/drivers/gpu/drm/nouveau/nvkm/engine/device/tegra.c index 9b638bd905ff..f2bc0b7d9b93 100644 --- a/drivers/gpu/drm/nouveau/nvkm/engine/device/tegra.c +++ b/drivers/gpu/drm/nouveau/nvkm/engine/device/tegra.c @@ -102,7 +102,7 @@ nvkm_device_tegra_probe_iommu(struct nvkm_device_tegra *tdev) if (iommu_present(&platform_bus_type)) { tdev->iommu.domain = iommu_domain_alloc(&platform_bus_type); - if (IS_ERR(tdev->iommu.domain)) + if (!tdev->iommu.domain) goto error; /* -- 2.9.3
2020 Apr 14
0
[PATCH v2 13/33] iommu: Export bus_iommu_probe() and make is safe for re-probing
...45,7 @@ static inline void iommu_iotlb_gather_init(struct iommu_iotlb_gather *gather) #define IOMMU_GROUP_NOTIFY_UNBOUND_DRIVER 6 /* Post Driver unbind */ extern int bus_set_iommu(struct bus_type *bus, const struct iommu_ops *ops); +extern int bus_iommu_probe(struct bus_type *bus); extern bool iommu_present(struct bus_type *bus); extern bool iommu_capable(struct bus_type *bus, enum iommu_cap cap); extern struct iommu_domain *iommu_domain_alloc(struct bus_type *bus); -- 2.17.1
2018 Jan 11
1
[PATCH 1/2] drm/nouveau: Remove redundant _get
From: Thierry Reding <treding at nvidia.com> The nouveau_fence_get_get_driver_name() function has a redundant _get in its name. Remove it. Signed-off-by: Thierry Reding <treding at nvidia.com> --- drivers/gpu/drm/nouveau/nouveau_fence.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/drivers/gpu/drm/nouveau/nouveau_fence.c
2024 Aug 12
2
[PATCH 1/3] drm/nouveau/tegra: Use iommu_paging_domain_alloc()
In nvkm_device_tegra_probe_iommu(), a paging domain is allocated for @dev and attached to it on success. Use iommu_paging_domain_alloc() to make it explicit. Signed-off-by: Lu Baolu <baolu.lu at linux.intel.com> Link: https://lore.kernel.org/r/20240610085555.88197-7-baolu.lu at linux.intel.com --- drivers/gpu/drm/nouveau/nvkm/engine/device/tegra.c | 4 ++-- 1 file changed, 2 insertions(+),
2024 Sep 02
3
[PATCH v2 0/3] drm: Use iommu_paging_domain_alloc()
Commit <17de3f5fdd35> ("iommu: Retire bus ops") removes iommu ops from the bus structure. The iommu subsystem no longer relies on bus for operations. So iommu_domain_alloc() interface is no longer relevant. A new helper named iommu_paging_domain_alloc() was introduced in the iommu subsystem as a replacement of iommu_domain_alloc(). This helper relies on the device for IOMMU API
2016 Aug 30
6
[PATCH v2 0/2] vfio: blacklist legacy virtio devices
Legacy virtio devices always bypassed an IOMMU, so using them with vfio was never safe. This adds a quirk detecting these and disabling VFIO unless the noiommu mode is used. At the moment, this only applies to virtio-pci devices. The patch might make sense on stable as well. Michael S. Tsirkin (2): vfio: report group noiommu status vfio: add virtio pci quirk
2016 Aug 30
6
[PATCH v2 0/2] vfio: blacklist legacy virtio devices
Legacy virtio devices always bypassed an IOMMU, so using them with vfio was never safe. This adds a quirk detecting these and disabling VFIO unless the noiommu mode is used. At the moment, this only applies to virtio-pci devices. The patch might make sense on stable as well. Michael S. Tsirkin (2): vfio: report group noiommu status vfio: add virtio pci quirk
2015 Sep 04
4
[PATCH 0/4] tegra: DMA mask and IOMMU bit fixes
These 4 patches fix two issues that existed on Tegra regarding DMA: 1) The bit indicating whether to use an IOMMU or not was hardcoded ; make this a platform property and use it in instmem 2) The DMA mask was not set for platform devices. Fix this by converting more pci_dma* to the DMA API, and use that more generic code to set the DMA mask properly for all platforms. Tested on both x86
2019 Sep 16
15
[PATCH 00/11] drm/nouveau: Enable GP10B by default
From: Thierry Reding <treding at nvidia.com> Hi, the GPU on Jetson TX2 (GP10B) does not work properly on all devices. Why exactly is not clear, but there are slight differences between the SKUs that were tested. It turns out that the biggest issue is that on some devices (e.g. the one that I have), pulsing the GPU reset twice as is done in the current code (once as part of the power-ungate
2015 Feb 20
6
[PATCH v4 0/6] nouveau/gk20a: RAM device removal & IOMMU support
Changes since v3: - Use a single dma_attr for all DMA-API allocations in instmem instead of one per allocation - Use device.info.ram_size instead of pfb->ram to check whether VRAM is present outside of nvkm Changes since v2: - Cleaner changes for ltc - Fixed typos in gk20a instmem IOMMU comments Changes since v1: - Add missing else condition in ltc - Remove extra flags that slipped into
2015 Feb 11
9
[PATCH v2 0/6] nouveau/gk20a: RAM device removal & IOMMU support
Changes since v1: - Add missing else condition in ltc - Remove extra flags that slipped into nouveau_display.c and nv84_fence.c. Original cover letter: Patches 1-3 make the presence of a RAM device optional, and remove GK20A's dummy RAM driver we were using so far. On chips using shared memory, such a device can confuse the driver into moving objects where there is no need to, and can trick
2015 Jan 23
8
[PATCH 0/6] nouveau/gk20a: RAM device removal & IOMMU support
A series I have waited too long to submit, and the recent refactoring made me pay the price of my perfectionism, so here are the features that are at least completed Patches 1-3 make the presence of a RAM device optional, and remove GK20A's dummy RAM driver we were using so far. On chips using shared memory, such a device can confuse the driver into moving objects where there is no need to,