#include <linux/module.h>
#include <linux/pci.h>
#include <drm/drm_aperture.h>
#include <drm/drm_atomic_helper.h>
#include <drm/drm_drv.h>
#include <drm/drm_fbdev_shmem.h>
#include <drm/drm_file.h>
#include <drm/drm_ioctl.h>
#include <drm/drm_managed.h>
#include <drm/drm_module.h>
#include <drm/drm_pciids.h>
#include "mgag200_drv.h"
static int mgag200_modeset = …;
MODULE_PARM_DESC(…) …;
module_param_named(modeset, mgag200_modeset, int, 0400);
int mgag200_init_pci_options(struct pci_dev *pdev, u32 option, u32 option2)
{ … }
resource_size_t mgag200_probe_vram(void __iomem *mem, resource_size_t size)
{ … }
DEFINE_DRM_GEM_FOPS(mgag200_driver_fops);
static const struct drm_driver mgag200_driver = …;
resource_size_t mgag200_device_probe_vram(struct mga_device *mdev)
{ … }
int mgag200_device_preinit(struct mga_device *mdev)
{ … }
int mgag200_device_init(struct mga_device *mdev,
const struct mgag200_device_info *info,
const struct mgag200_device_funcs *funcs)
{ … }
static const struct pci_device_id mgag200_pciidlist[] = …;
MODULE_DEVICE_TABLE(pci, mgag200_pciidlist);
static int
mgag200_pci_probe(struct pci_dev *pdev, const struct pci_device_id *ent)
{ … }
static void mgag200_pci_remove(struct pci_dev *pdev)
{ … }
static void mgag200_pci_shutdown(struct pci_dev *pdev)
{ … }
static struct pci_driver mgag200_pci_driver = …;
drm_module_pci_driver_if_modeset(…);
MODULE_AUTHOR(…);
MODULE_DESCRIPTION(…);
MODULE_LICENSE(…) …;