search for: nvkm_device_pci_new

Displaying 13 results from an estimated 13 matches for "nvkm_device_pci_new".

2018 Dec 07
2
next/master boot bisection: Oops in nouveau driver on jetson-tk1
...e *device; - struct apertures_struct *aper; - bool boot = false; - int ret; - - if (vga_switcheroo_client_probe_defer(pdev)) - return -EPROBE_DEFER; - - /* We need to check that the chipset is supported before booting - * fbdev off the hardware, as there's no way to put it back. - */ - ret = nvkm_device_pci_new(pdev, NULL, "error", true, false, 0, &device); - if (ret) - return ret; - - nvkm_device_del(&device); - - /* Remove conflicting drivers (vesafb, efifb etc). */ - aper = alloc_apertures(3); - if (!aper) - return -ENOMEM; - - aper->ranges[0].base = pci_resource_start(pdev, 1);...
2018 Dec 08
0
next/master boot bisection: Oops in nouveau driver on jetson-tk1
...bool boot = false; > - int ret; > - > - if (vga_switcheroo_client_probe_defer(pdev)) > - return -EPROBE_DEFER; > - > - /* We need to check that the chipset is supported before booting > - * fbdev off the hardware, as there's no way to put it back. > - */ > - ret = nvkm_device_pci_new(pdev, NULL, "error", true, false, 0, > &device); > - if (ret) > - return ret; > - > - nvkm_device_del(&device); > - > - /* Remove conflicting drivers (vesafb, efifb etc). */ > - aper = alloc_apertures(3); > - if (!aper) > - return -ENOMEM; > - &g...
2018 Dec 10
2
next/master boot bisection: Oops in nouveau driver on jetson-tk1
...et; >> - >> - if (vga_switcheroo_client_probe_defer(pdev)) >> - return -EPROBE_DEFER; >> - >> - /* We need to check that the chipset is supported before booting >> - * fbdev off the hardware, as there's no way to put it back. >> - */ >> - ret = nvkm_device_pci_new(pdev, NULL, "error", true, false, 0, >> &device); >> - if (ret) >> - return ret; >> - >> - nvkm_device_del(&device); >> - >> - /* Remove conflicting drivers (vesafb, efifb etc). */ >> - aper = alloc_apertures(3); >> - if (!ape...
2016 Oct 06
6
[PATCH v5 0/3] drm/nouveau: set DMA mask before mapping scratch page
...nouveau: probe of 0000:02:00.0 failed with error -14 So fix this by setting a preliminary DMA mask based on the MMU device 'dma_bits' property (patch #1), and postpone mapping the scratch pages to the respective FB .init() hooks. (#2 and #3) v5: move setting of preliminary DMA mask to nvkm_device_pci_new() (#1) move allocation and DMA mapping of scratch pages to .oneinit hooks (#2, #3) v4: split and move dma_set_mask to probe hook (Alexander) v3: rework code to get rid of DMA_ERROR_CODE references, which is not defined on all architectures v2: replace incorrect comparison of dma_addr_t type...
2016 Oct 03
1
[PATCH v4 1/3] drm/nouveau: set streaming DMA mask early
...s where the default DMA mask of 32 > + * does not cover any system memory, i.e., when all RAM is > 4 GB. > + */ > + dma_set_mask_and_coherent(device->dev, > + DMA_BIT_MASK(device->mmu->dma_bits)); I would just move this to nvkm_device_pci_new() so that it perfectly mirrors the same call done in nvkm_device_tegra_new(), which was done for the same purpose. Otherwise, looks good to me.
2018 Aug 23
3
[PATCH 0/3] drm/nouveau: Fixup module probe to add ->shutdown()
This series is intended to add support for shutting down the GPU on kernel shutdown/reboot using the ->shutdown() hook, similar to what amdgpu does. This is mainly intended to workaround a bios issue on the P50 that was preventing nouveau from initializing the dedicated GM107 GPU on that system properly. You can find more details on this issue in the patch labeled "Shut down GPU on kernel
2016 Oct 16
1
[PATCH v5 0/3] drm/nouveau: set DMA mask before mapping scratch page
...-14 >> >> So fix this by setting a preliminary DMA mask based on the MMU device 'dma_bits' >> property (patch #1), and postpone mapping the scratch pages to the respective >> FB .init() hooks. (#2 and #3) >> >> v5: move setting of preliminary DMA mask to nvkm_device_pci_new() (#1) >> move allocation and DMA mapping of scratch pages to .oneinit hooks (#2, #3) >> v4: split and move dma_set_mask to probe hook (Alexander) >> v3: rework code to get rid of DMA_ERROR_CODE references, which is not >> defined on all architectures >> v2: re...
2016 Jul 15
1
[PATCH v3] drm/nouveau/fb/nv50: set DMA mask before mapping scratch page
..., 11 deletions(-) > > I think the same problem exists in fb/gf100.c, would be nice to fix it > there as well. > > I have faced similar issues on Tegra before. I wonder whether this > could not be addressed the same way I did, i.e. by setting a > temporary, fail-safe DMA mask in nvkm_device_pci_new()? That would > allow all subdevs to map pages to the device safely in their init. > With your solution, each subdev in that scenario needs to set a DMA > mask to be safe. > > Not sure whether that's practical as I suppose you want to make the > DMA mask larger than 32 bits? &...
2016 Oct 07
0
[PATCH v5 0/3] drm/nouveau: set DMA mask before mapping scratch page
...2:00.0 failed with error -14 > > So fix this by setting a preliminary DMA mask based on the MMU device 'dma_bits' > property (patch #1), and postpone mapping the scratch pages to the respective > FB .init() hooks. (#2 and #3) > > v5: move setting of preliminary DMA mask to nvkm_device_pci_new() (#1) > move allocation and DMA mapping of scratch pages to .oneinit hooks (#2, #3) > v4: split and move dma_set_mask to probe hook (Alexander) > v3: rework code to get rid of DMA_ERROR_CODE references, which is not > defined on all architectures > v2: replace incorrect comp...
2016 Jul 15
0
[PATCH v3] drm/nouveau/fb/nv50: set DMA mask before mapping scratch page
...1 file changed, 29 insertions(+), 11 deletions(-) I think the same problem exists in fb/gf100.c, would be nice to fix it there as well. I have faced similar issues on Tegra before. I wonder whether this could not be addressed the same way I did, i.e. by setting a temporary, fail-safe DMA mask in nvkm_device_pci_new()? That would allow all subdevs to map pages to the device safely in their init. With your solution, each subdev in that scenario needs to set a DMA mask to be safe. Not sure whether that's practical as I suppose you want to make the DMA mask larger than 32 bits? If you absolutely need to do...
2016 Oct 17
0
[PATCH v5 0/3] drm/nouveau: set DMA mask before mapping scratch page
...-14 >> >> So fix this by setting a preliminary DMA mask based on the MMU device 'dma_bits' >> property (patch #1), and postpone mapping the scratch pages to the respective >> FB .init() hooks. (#2 and #3) >> >> v5: move setting of preliminary DMA mask to nvkm_device_pci_new() (#1) >> move allocation and DMA mapping of scratch pages to .oneinit hooks (#2, #3) >> v4: split and move dma_set_mask to probe hook (Alexander) >> v3: rework code to get rid of DMA_ERROR_CODE references, which is not >> defined on all architectures >> v2: re...
2016 Jul 07
3
[PATCH v3] drm/nouveau/fb/nv50: set DMA mask before mapping scratch page
The 100c08 scratch page is mapped using dma_map_page() before the TTM layer has had a chance to set the DMA mask. This means we are still running with the default of 32 when this code executes, and this causes problems for platforms with no memory below 4 GB (such as AMD Seattle) So move the dma_map_page() to the .init hook, and set the streaming DMA mask based on the MMU subdev parameters before
2016 Sep 26
6
[PATCH v4 0/3] drm/nouveau: set DMA mask before mapping scratch page
This v4 is now a 3 piece series, after Alexandre pointed out that both GF 100 and NV50 are affected by the same issue, and that a related issue has been solved already for Tegra in commit 9d0394c6bed5 ("drm/nouveau/instmem/gk20a: set DMA mask early"). The issue that this series addresses is the fact that the Nouveau driver invokes the DMA API before setting the DMA mask. In both cases