Lines Matching +full:video +full:- +full:mem

1 // SPDX-License-Identifier: GPL-2.0-only
21 #define DRIVER_DESC "DRM driver for Hyper-V synthetic video device"
72 struct drm_device *dev = &hv->dev; in hyperv_setup_vram()
75 hv->fb_size = (unsigned long)hv->mmio_megabytes * 1024 * 1024; in hyperv_setup_vram()
77 ret = vmbus_allocate_mmio(&hv->mem, hdev, 0, -1, hv->fb_size, 0x100000, in hyperv_setup_vram()
81 return -ENOMEM; in hyperv_setup_vram()
89 hv->vram = ioremap_cache(hv->mem->start, hv->fb_size); in hyperv_setup_vram()
90 if (!hv->vram) { in hyperv_setup_vram()
92 ret = -ENOMEM; in hyperv_setup_vram()
96 hv->fb_base = hv->mem->start; in hyperv_setup_vram()
100 vmbus_free_mmio(hv->mem->start, hv->fb_size); in hyperv_setup_vram()
111 hv = devm_drm_dev_alloc(&hdev->device, &hyperv_driver, in hyperv_vmbus_probe()
116 dev = &hv->dev; in hyperv_vmbus_probe()
117 init_completion(&hv->wait); in hyperv_vmbus_probe()
119 hv->hdev = hdev; in hyperv_vmbus_probe()
138 ret = hyperv_update_vram_location(hdev, hv->fb_base); in hyperv_vmbus_probe()
157 vmbus_free_mmio(hv->mem->start, hv->fb_size); in hyperv_vmbus_probe()
159 vmbus_close(hdev->channel); in hyperv_vmbus_probe()
172 vmbus_close(hdev->channel); in hyperv_vmbus_remove()
175 vmbus_free_mmio(hv->mem->start, hv->fb_size); in hyperv_vmbus_remove()
192 vmbus_close(hdev->channel); in hyperv_vmbus_suspend()
207 ret = hyperv_update_vram_location(hdev, hv->fb_base); in hyperv_vmbus_resume()
215 /* Synthetic Video Device GUID */
238 return -ENODEV; in hyperv_init()
260 MODULE_DESCRIPTION("DRM driver for Hyper-V synthetic video device");