Displaying 20 results from an estimated 100 matches for "vram_size".
2009 Aug 19
1
[PATCH] drm/nouveau: Add a MM for mappable VRAM that isn't usable as scanout.
..._PL_VRAM);
ttm_bo_device_release(&dev_priv->ttm.bdev);
@@ -410,6 +412,17 @@ uint64_t nouveau_mem_fb_amount(struct drm_device *dev)
return 0;
}
+static uint64_t nouveau_mem_scanout_limit(struct drm_device *dev)
+{
+ struct drm_nouveau_private *dev_priv=dev->dev_private;
+ uint64_t vram_size = dev_priv->fb_available_size;
+
+ if (dev_priv->card_type == NV_04)
+ return min(16ull*1024*1024, vram_size);
+
+ return vram_size;
+}
+
static void nouveau_mem_reset_agp(struct drm_device *dev)
{
uint32_t saved_pci_nv_1, saved_pci_nv_19, pmc_enable;
@@ -482,7 +495,7 @@ nouveau_mem_init...
2011 Nov 06
0
[PATCH] drm/nouveau: add nouveau.vram_limit module option
...@@ nouveau_mem_detect_nforce(struct drm_device *dev)
return 0;
}
+void nouveau_limit_vram(struct drm_device *dev)
+{
+ struct drm_nouveau_private *dev_priv = dev->dev_private;
+ u64 tmp;
+ if (!nouveau_vram_limit)
+ return;
+
+ tmp = min((u64)(nouveau_vram_limit << 20), dev_priv->vram_size);
+ if (tmp != dev_priv->vram_size) {
+ NV_INFO(dev, "limiting size of VRAM to %d MiB (from %d MiB)\n",
+ (int)(tmp >> 20), (int)(dev_priv->vram_size >> 20));
+ dev_priv->vram_size = tmp;
+ }
+}
+
int
nouveau_mem_detect(struct drm_device *dev)
{
@@ -255,6 +270...
2019 Sep 09
5
[PATCH 0/4] Merge VRAM MM and GEM VRAM source files
VRAM MM and GEM VRAM are only used with each other. This patch set
moves VRAM MM into GEM VRAM source files and cleans up the helper's
public interface.
Thomas Zimmermann (4):
drm/vram: Move VRAM memory manager to GEM VRAM implementation
drm/vram: Have VRAM MM call GEM VRAM functions directly
drm/vram: Unexport internal functions of VRAM MM
drm/vram: Unconditonally set BO call-back
2019 Sep 11
4
[PATCH v2 0/4] Merge VRAM MM and GEM VRAM source files
VRAM MM and GEM VRAM are only used with each other. This patch set
moves VRAM MM into GEM VRAM source files and cleans up the helper's
public interface.
Version 2 of the patch set doesn't contain functional changes. I'm
reposting due to the rebasing onto the debugfs patches.
v2:
* updated for debugfs support
* fixed typos in comments
Thomas Zimmermann (4):
drm/vram: Move VRAM
2010 Jun 01
1
"typo" in "drm/nv50: cast IGP memory location to u64 before shifting"
...ook right:
diff --git a/drivers/gpu/drm/nouveau/nouveau_mem.c b/drivers/gpu/drm/nouveau/nouveau_mem.c
index 775a701..c1fd42b 100644
--- a/drivers/gpu/drm/nouveau/nouveau_mem.c
+++ b/drivers/gpu/drm/nouveau/nouveau_mem.c
@@ -540,7 +540,8 @@ nouveau_mem_detect(struct drm_device *dev)
dev_priv->vram_size = nv_rd32(dev, NV04_FIFO_DATA);
dev_priv->vram_size &= NV10_FIFO_DATA_RAM_AMOUNT_MB_MASK;
if (dev_priv->chipset == 0xaa || dev_priv->chipset == 0xac)
- dev_priv->vram_sys_base = nv_rd32(dev, 0x100e10) << 12;
+ dev_priv->vram_sys_base = nv_rd32(dev, 0x100e10);
+...
2015 Mar 14
1
[PATCH ddx] Add support for VRAM-less devices to the ddx
...;scratch, 0, pNv->client);
diff --git a/src/nv_driver.c b/src/nv_driver.c
index 8e2ae03..b0e9d11 100644
--- a/src/nv_driver.c
+++ b/src/nv_driver.c
@@ -954,7 +954,10 @@ NVPreInit(ScrnInfoPtr pScrn, int flags)
* The first thing we should figure out is the depth, bpp, etc.
*/
- if (dev->vram_size <= 16 * 1024 * 1024)
+ pNv->vram_domain = NOUVEAU_BO_VRAM;
+ if (!dev->vram_size)
+ pNv->vram_domain = NOUVEAU_BO_GART;
+ else if (dev->vram_size <= 16 * 1024 * 1024)
defaultDepth = 16;
if (!xf86SetDepthBpp(pScrn, defaultDepth, 0, 0, Support32bppFb)) {
NVPreInitFail("...
2019 Sep 13
2
[PATCH 8/8] drm/vram: drop DRM_VRAM_MM_FILE_OPERATIONS
...m/drm_gem_vram_helper.h b/include/drm/drm_gem_vram_helper.h
index 9d5526650291..3503ff784803 100644
--- a/include/drm/drm_gem_vram_helper.h
+++ b/include/drm/drm_gem_vram_helper.h
@@ -180,22 +180,4 @@ struct drm_vram_mm *drm_vram_helper_alloc_mm(
struct drm_device *dev, uint64_t vram_base, size_t vram_size);
void drm_vram_helper_release_mm(struct drm_device *dev);
-/**
- * define DRM_VRAM_MM_FILE_OPERATIONS - default callback functions for \
- &struct file_operations
- *
- * Drivers that use VRAM MM can use this macro to initialize
- * &struct file_operations with default functions.
- */
-...
2019 Sep 13
2
[PATCH 8/8] drm/vram: drop DRM_VRAM_MM_FILE_OPERATIONS
...m/drm_gem_vram_helper.h b/include/drm/drm_gem_vram_helper.h
index 9d5526650291..3503ff784803 100644
--- a/include/drm/drm_gem_vram_helper.h
+++ b/include/drm/drm_gem_vram_helper.h
@@ -180,22 +180,4 @@ struct drm_vram_mm *drm_vram_helper_alloc_mm(
struct drm_device *dev, uint64_t vram_base, size_t vram_size);
void drm_vram_helper_release_mm(struct drm_device *dev);
-/**
- * define DRM_VRAM_MM_FILE_OPERATIONS - default callback functions for \
- &struct file_operations
- *
- * Drivers that use VRAM MM can use this macro to initialize
- * &struct file_operations with default functions.
- */
-...
2019 Apr 24
0
[PATCH v2 05/17] drm: Add VRAM MM, a simple memory manager for dedicated VRAM
...bo_driver_io_mem_reserve,
+ .io_mem_free = bo_driver_io_mem_free,
+};
+
+/*
+ * struct drm_vram_mm
+ */
+
+/**
+ * drm_vram_mm_init() - Initialize an instance of VRAM MM.
+ * @vmm: the VRAM MM instance to initialize
+ * @dev: the DRM device
+ * @vram_base: the base address of the video memory
+ * @vram_size: the size of the video memory in bytes
+ * @funcs: callback functions for buffer objects
+ *
+ * Returns:
+ * 0 on success, or
+ * a negative error code otherwise.
+ */
+int drm_vram_mm_init(struct drm_vram_mm *vmm, struct drm_device *dev,
+ u64 vram_base, unsigned long vram_size,
+ con...
2019 Sep 13
0
[PATCH 8/8] drm/vram: drop DRM_VRAM_MM_FILE_OPERATIONS
.../include/drm/drm_gem_vram_helper.h
> index 9d5526650291..3503ff784803 100644
> --- a/include/drm/drm_gem_vram_helper.h
> +++ b/include/drm/drm_gem_vram_helper.h
> @@ -180,22 +180,4 @@ struct drm_vram_mm *drm_vram_helper_alloc_mm(
> struct drm_device *dev, uint64_t vram_base, size_t vram_size);
> void drm_vram_helper_release_mm(struct drm_device *dev);
>
> -/**
> - * define DRM_VRAM_MM_FILE_OPERATIONS - default callback functions for \
> - &struct file_operations
> - *
> - * Drivers that use VRAM MM can use this macro to initialize
> - * &struct file_o...
2015 Jun 19
2
[Mesa-dev] [PATCH v3 0/2] nouveau: support for custom VRAM domains
...> On 19/06/2015 13:02, Alexandre Courbot wrote:
>>
>> New revision of this patchset that prevents VRAM objects from being
>> allocated on VRAM-less systems like Tegra. This is required for Mesa
>> to work on such systems.
>>
>> Changes since v2:
>> - Use vram_size to detect systems without VRAM and set the correct
>> domain instead of expecting each chip to set its domain explicitly.
>
>
> This question may have been asked a ton of times, but what is the difference
> with the nvac (Ion)?
>
> Would the nvac have some reserved memory...
2006 Mar 16
0
[PATCH 3a/3] Add shadow VRAM
...ic void vga_draw_graphic(VGAState *s
printf("w=%d h=%d v=%d line_offset=%d cr[0x09]=0x%02x cr[0x17]=0x%02x linecmp=%d sr[0x01]=0x%02x\n",
width, height, v, line_offset, s->cr[9], s->cr[0x17], s->line_compare, s->sr[0x01]);
#endif
+ for (y = 0; y < s->vram_size; y += TARGET_PAGE_SIZE)
+ if (vram_dirty(s, y, TARGET_PAGE_SIZE))
+ cpu_physical_memory_set_dirty(s->vram_offset + y);
addr1 = (s->start_addr * 4);
bwidth = width * 4;
y_start = -1;
@@ -1536,8 +1619,17 @@ static void vga_draw_blank(VGAState *s,
void vga_update_display(v...
2016 Aug 03
2
Libvirt: dynamic ownership did not work
...a machine (gcc 4.9.4 glibc 2.12) and on
this machine libvirt did not change the ownership of the image files
which results in this error:
libvirtError: internal error: process exited while connecting to
monitor: able-ticketing,seamless-migration=on -device
qxl-vga,id=video0,ram_size=67108864,vram_size=67108864,vram64_size_mb=0,vgamem_mb=16,bus=pci.0,addr=0x2
-device intel-hda,id=sound0,bus=pci.0,addr=0x4 -device
hda-duplex,id=sound0-codec0,bus=sound0.0,cad=0 -chardev
spicevmc,id=charredir0,name=usbredir -device
usb-redir,chardev=charredir0,id=redir0 -device
virtio-balloon-pci,id=balloon0,bu...
2011 Nov 06
0
[PATCH] drm/nouveau: by default use low bpp framebuffer on low memory cards
...p;
int ret;
nfbdev = kzalloc(sizeof(struct nouveau_fbdev), GFP_KERNEL);
@@ -505,7 +506,15 @@ int nouveau_fbcon_init(struct drm_device *dev)
}
drm_fb_helper_single_add_all_connectors(&nfbdev->helper);
- drm_fb_helper_initial_config(&nfbdev->helper, 32);
+
+ if (dev_priv->vram_size <= 32 * 1024 * 1024)
+ preferred_bpp = 8;
+ else if (dev_priv->vram_size <= 64 * 1024 * 1024)
+ preferred_bpp = 16;
+ else
+ preferred_bpp = 32;
+
+ drm_fb_helper_initial_config(&nfbdev->helper, preferred_bpp);
return 0;
}
--
1.7.7
2011 Nov 06
1
[PATCH] drm/nv10: disable perf hack on low memory cards
.../gpu/drm/nouveau/nouveau_bo.c
+++ b/drivers/gpu/drm/nouveau/nouveau_bo.c
@@ -148,6 +148,7 @@ set_placement_range(struct nouveau_bo *nvbo, uint32_t type)
if (dev_priv->card_type == NV_10 &&
nvbo->tile_mode && (type & TTM_PL_FLAG_VRAM) &&
+ dev_priv->vram_size >= 32 * 1024 * 1024 &&
nvbo->bo.mem.num_pages < vram_pages / 2) {
/*
* Make sure that the color and depth buffers are handled
--
1.7.7
2016 Aug 04
2
Re: Libvirt: dynamic ownership did not work
...libvirt did not change the ownership of the image files
>> which results in this error:
>>
>> libvirtError: internal error: process exited while connecting to
>> monitor: able-ticketing,seamless-migration=on -device
>>
>> qxl-vga,id=video0,ram_size=67108864,vram_size=67108864,vram64_size_mb=0,vgamem_mb=16,bus=pci.0,addr=0x2
>> -device intel-hda,id=sound0,bus=pci.0,addr=0x4 -device
>> hda-duplex,id=sound0-codec0,bus=sound0.0,cad=0 -chardev
>> spicevmc,id=charredir0,name=usbredir -device
>> usb-redir,chardev=charredir0,id=redir0 -devic...
2016 Aug 04
3
Re: Libvirt: dynamic ownership did not work
...gt; which results in this error:
>>>>
>>>> libvirtError: internal error: process exited while connecting to
>>>> monitor: able-ticketing,seamless-migration=on -device
>>>>
>>>>
>>>> qxl-vga,id=video0,ram_size=67108864,vram_size=67108864,vram64_size_mb=0,vgamem_mb=16,bus=pci.0,addr=0x2
>>>>
>>>> -device intel-hda,id=sound0,bus=pci.0,addr=0x4 -device
>>>> hda-duplex,id=sound0-codec0,bus=sound0.0,cad=0 -chardev
>>>> spicevmc,id=charredir0,name=usbredir -device
>>&g...
2015 Jun 19
5
[PATCH v3 0/2] nouveau: support for custom VRAM domains
New revision of this patchset that prevents VRAM objects from being
allocated on VRAM-less systems like Tegra. This is required for Mesa
to work on such systems.
Changes since v2:
- Use vram_size to detect systems without VRAM and set the correct
domain instead of expecting each chip to set its domain explicitly.
Alexandre Courbot (2):
nouveau: support for custom VRAM domains
nvc0: use NV_VRAM_DOMAIN() macro
src/gallium/drivers/nouveau/nouveau_buffer.c | 6 ++----
src/ga...
2019 Apr 24
0
[PATCH v2 07/17] drm/ast: Convert AST driver to VRAM MM
...tm.bdev;
-
- ret = ttm_bo_device_init(&ast->ttm.bdev,
- &ast_bo_driver,
- dev->anon_inode->i_mapping,
- true);
- if (ret) {
- DRM_ERROR("Error initialising bo driver; %d\n", ret);
- return ret;
- }
- ret = ttm_bo_init_mm(bdev, TTM_PL_VRAM,
- ast->vram_size >> PAGE_SHIFT);
+ ret = drm_vram_mm_init(&ast->vmm, dev,
+ pci_resource_start(dev->pdev, 0),
+ ast->vram_size, &ast_vram_mm_funcs);
if (ret) {
- DRM_ERROR("Failed ttm VRAM init: %d\n", ret);
+ DRM_ERROR("Error initializing VRAM MM; %d\n&qu...
2017 Oct 03
2
Re: error: internal error: missing backend for pool type 11 (zfs)
@Michal: Thanks for your reply!
Indeed I have found a package in the AUR (libvirt-zfs) and only had to
change to the current version and add zfs-utils as dependency in the
PKGBUILD. Now I don't get the previous error anymore but I still cannot
setup a VM because I constantly get errors due to wrong permissions.
I have tried to change the permissions in:
- /etc/libvirt/qemu.conf
-