VirtualBox

Ignore:
Timestamp:
Jul 25, 2013 12:12:10 PM (12 years ago)
Author:
vboxsync
Message:

Additions/linux/drm: next mode-setting code drop.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/Additions/linux/drm/vboxvideo_device.c

    r44529 r47388  
    5353#include <VBox/VBoxVideoGuest.h>
    5454
     55static int vboxvideo_vram_init(struct vboxvideo_device *gdev)
     56{
     57    /* work out accessible VRAM */
     58    gdev->mc.aper_base = pci_resource_start(gdev->ddev->pdev, 1);
     59    gdev->mc.aper_size = pci_resource_len(gdev->ddev->pdev, 1);
     60
     61    gdev->mc.vram = ioremap(gdev->mc.aper_base, gdev->mc.aper_size);
     62    if (!gdev->mc.vram) {
     63        VBOXVIDEO_ERROR("Unable to ioremap %lu MB of VRAM. Bailing out.\n", (unsigned long)gdev->mc.aper_size / MB);
     64        return -1;
     65    }
     66    gdev->fAnyX        = VBoxVideoAnyWidthAllowed();
     67    gdev->mc.vram_size = VBoxVideoGetVRAMSize();
     68
     69    return 0;
     70}
     71
     72static void vboxvideo_vram_fini(struct vboxvideo_device *gdev)
     73{
     74    iounmap(gdev->mc.vram);
     75    gdev->mc.vram = NULL;
     76}
     77
    5578int vboxvideo_device_init(struct vboxvideo_device *gdev,
    5679              struct drm_device *ddev,
     
    5881              uint32_t flags)
    5982{
     83    int ret;
     84
    6085    gdev->dev      = &pdev->dev;
    6186    gdev->ddev     = ddev;
     
    6792     *        stuff.
    6893     */
    69     gdev->fAnyX        = VBoxVideoAnyWidthAllowed();
    70     gdev->mc.vram_size = VBoxVideoGetVRAMSize();
     94    ret = vboxvideo_vram_init(gdev);
     95    if (ret)
     96        return ret;
    7197
    7298    return 0;
     
    75101void vboxvideo_device_fini(struct vboxvideo_device *gdev)
    76102{
    77 
     103    vboxvideo_vram_fini(gdev);
    78104}
    79105#endif /* LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 27) */
Note: See TracChangeset for help on using the changeset viewer.

© 2024 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette