From b9a577a407d99638522ba6a0fc4fb360aacc01d0 Mon Sep 17 00:00:00 2001 From: Thomas Zimmermann Date: Wed, 1 Jun 2022 13:25:18 +0200 Subject: drm/mgag200: Add struct mgag200_device_info While currently empty, struct mgag200_device_info, will provide static, constant information on each device model. Signed-off-by: Thomas Zimmermann Reviewed-by: Jocelyn Falempe Tested-by: Jocelyn Falempe Link: https://patchwork.freedesktop.org/patch/msgid/20220601112522.5774-7-tzimmermann@suse.de --- drivers/gpu/drm/mgag200/mgag200_drv.c | 4 +++- drivers/gpu/drm/mgag200/mgag200_drv.h | 12 +++++++++++- drivers/gpu/drm/mgag200/mgag200_g200.c | 5 ++++- drivers/gpu/drm/mgag200/mgag200_g200eh.c | 5 ++++- drivers/gpu/drm/mgag200/mgag200_g200eh3.c | 5 ++++- drivers/gpu/drm/mgag200/mgag200_g200er.c | 5 ++++- drivers/gpu/drm/mgag200/mgag200_g200ev.c | 5 ++++- drivers/gpu/drm/mgag200/mgag200_g200ew3.c | 5 ++++- drivers/gpu/drm/mgag200/mgag200_g200se.c | 5 ++++- drivers/gpu/drm/mgag200/mgag200_g200wb.c | 5 ++++- 10 files changed, 46 insertions(+), 10 deletions(-) diff --git a/drivers/gpu/drm/mgag200/mgag200_drv.c b/drivers/gpu/drm/mgag200/mgag200_drv.c index 8f636db4a723..90ed7770ff72 100644 --- a/drivers/gpu/drm/mgag200/mgag200_drv.c +++ b/drivers/gpu/drm/mgag200/mgag200_drv.c @@ -162,13 +162,15 @@ int mgag200_device_preinit(struct mga_device *mdev) return 0; } -int mgag200_device_init(struct mga_device *mdev, enum mga_type type, unsigned long flags) +int mgag200_device_init(struct mga_device *mdev, enum mga_type type, unsigned long flags, + const struct mgag200_device_info *info) { struct drm_device *dev = &mdev->base; u8 crtcext3, misc; int ret; mdev->flags = flags; + mdev->info = info; mdev->type = type; ret = drmm_mutex_init(dev, &mdev->rmmio_lock); diff --git a/drivers/gpu/drm/mgag200/mgag200_drv.h b/drivers/gpu/drm/mgag200/mgag200_drv.h index 9abecf366268..89cb4e476119 100644 --- a/drivers/gpu/drm/mgag200/mgag200_drv.h +++ b/drivers/gpu/drm/mgag200/mgag200_drv.h @@ -196,10 +196,19 @@ enum mga_type { #define IS_G200_SE(mdev) (mdev->type == G200_SE_A || mdev->type == G200_SE_B) +struct mgag200_device_info { +}; + +#define MGAG200_DEVICE_INFO_INIT() \ + { \ + } + struct mga_device { struct drm_device base; unsigned long flags; + const struct mgag200_device_info *info; + struct resource *rmmio_res; void __iomem *rmmio; struct mutex rmmio_lock; /* Protects access to rmmio */ @@ -252,7 +261,8 @@ 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); 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, enum mga_type type, unsigned long flags); +int mgag200_device_init(struct mga_device *mdev, enum mga_type type, unsigned long flags, + const struct mgag200_device_info *info); /* mgag200_.c */ struct mga_device *mgag200_g200_device_create(struct pci_dev *pdev, const struct drm_driver *drv, diff --git a/drivers/gpu/drm/mgag200/mgag200_g200.c b/drivers/gpu/drm/mgag200/mgag200_g200.c index 4300a472c0a3..b2969a1f1e0b 100644 --- a/drivers/gpu/drm/mgag200/mgag200_g200.c +++ b/drivers/gpu/drm/mgag200/mgag200_g200.c @@ -33,6 +33,9 @@ static int mgag200_g200_init_pci_options(struct pci_dev *pdev) * DRM Device */ +static const struct mgag200_device_info mgag200_g200_device_info = + MGAG200_DEVICE_INFO_INIT(); + static void mgag200_g200_interpret_bios(struct mgag200_g200_device *g200, const unsigned char *bios, size_t size) { @@ -183,7 +186,7 @@ struct mga_device *mgag200_g200_device_create(struct pci_dev *pdev, const struct mgag200_g200_init_refclk(g200); - ret = mgag200_device_init(mdev, type, flags); + ret = mgag200_device_init(mdev, type, flags, &mgag200_g200_device_info); if (ret) return ERR_PTR(ret); diff --git a/drivers/gpu/drm/mgag200/mgag200_g200eh.c b/drivers/gpu/drm/mgag200/mgag200_g200eh.c index 7af9bdfb03c7..6284fedc1b8a 100644 --- a/drivers/gpu/drm/mgag200/mgag200_g200eh.c +++ b/drivers/gpu/drm/mgag200/mgag200_g200eh.c @@ -10,6 +10,9 @@ * DRM device */ +static const struct mgag200_device_info mgag200_g200eh_device_info = + MGAG200_DEVICE_INFO_INIT(); + struct mga_device *mgag200_g200eh_device_create(struct pci_dev *pdev, const struct drm_driver *drv, enum mga_type type, unsigned long flags) { @@ -33,7 +36,7 @@ struct mga_device *mgag200_g200eh_device_create(struct pci_dev *pdev, const stru if (ret) return ERR_PTR(ret); - ret = mgag200_device_init(mdev, type, flags); + ret = mgag200_device_init(mdev, type, flags, &mgag200_g200eh_device_info); if (ret) return ERR_PTR(ret); diff --git a/drivers/gpu/drm/mgag200/mgag200_g200eh3.c b/drivers/gpu/drm/mgag200/mgag200_g200eh3.c index c0695d5c4f68..c8e46b89286f 100644 --- a/drivers/gpu/drm/mgag200/mgag200_g200eh3.c +++ b/drivers/gpu/drm/mgag200/mgag200_g200eh3.c @@ -10,6 +10,9 @@ * DRM device */ +static const struct mgag200_device_info mgag200_g200eh3_device_info = + MGAG200_DEVICE_INFO_INIT(); + struct mga_device *mgag200_g200eh3_device_create(struct pci_dev *pdev, const struct drm_driver *drv, enum mga_type type, unsigned long flags) @@ -34,7 +37,7 @@ struct mga_device *mgag200_g200eh3_device_create(struct pci_dev *pdev, if (ret) return ERR_PTR(ret); - ret = mgag200_device_init(mdev, type, flags); + ret = mgag200_device_init(mdev, type, flags, &mgag200_g200eh3_device_info); if (ret) return ERR_PTR(ret); diff --git a/drivers/gpu/drm/mgag200/mgag200_g200er.c b/drivers/gpu/drm/mgag200/mgag200_g200er.c index 281317450fad..ef16ce4adecd 100644 --- a/drivers/gpu/drm/mgag200/mgag200_g200er.c +++ b/drivers/gpu/drm/mgag200/mgag200_g200er.c @@ -10,6 +10,9 @@ * DRM device */ +static const struct mgag200_device_info mgag200_g200er_device_info = + MGAG200_DEVICE_INFO_INIT(); + struct mga_device *mgag200_g200er_device_create(struct pci_dev *pdev, const struct drm_driver *drv, enum mga_type type, unsigned long flags) { @@ -29,7 +32,7 @@ struct mga_device *mgag200_g200er_device_create(struct pci_dev *pdev, const stru if (ret) return ERR_PTR(ret); - ret = mgag200_device_init(mdev, type, flags); + ret = mgag200_device_init(mdev, type, flags, &mgag200_g200er_device_info); if (ret) return ERR_PTR(ret); diff --git a/drivers/gpu/drm/mgag200/mgag200_g200ev.c b/drivers/gpu/drm/mgag200/mgag200_g200ev.c index 41f948962b93..75d08fb503bb 100644 --- a/drivers/gpu/drm/mgag200/mgag200_g200ev.c +++ b/drivers/gpu/drm/mgag200/mgag200_g200ev.c @@ -10,6 +10,9 @@ * DRM device */ +static const struct mgag200_device_info mgag200_g200ev_device_info = + MGAG200_DEVICE_INFO_INIT(); + struct mga_device *mgag200_g200ev_device_create(struct pci_dev *pdev, const struct drm_driver *drv, enum mga_type type, unsigned long flags) { @@ -33,7 +36,7 @@ struct mga_device *mgag200_g200ev_device_create(struct pci_dev *pdev, const stru if (ret) return ERR_PTR(ret); - ret = mgag200_device_init(mdev, type, flags); + ret = mgag200_device_init(mdev, type, flags, &mgag200_g200ev_device_info); if (ret) return ERR_PTR(ret); diff --git a/drivers/gpu/drm/mgag200/mgag200_g200ew3.c b/drivers/gpu/drm/mgag200/mgag200_g200ew3.c index 89346815e107..7cb18685b98d 100644 --- a/drivers/gpu/drm/mgag200/mgag200_g200ew3.c +++ b/drivers/gpu/drm/mgag200/mgag200_g200ew3.c @@ -10,6 +10,9 @@ * DRM device */ +static const struct mgag200_device_info mgag200_g200ew3_device_info = + MGAG200_DEVICE_INFO_INIT(); + static resource_size_t mgag200_g200ew3_device_probe_vram(struct mga_device *mdev) { resource_size_t vram_size = resource_size(mdev->vram_res); @@ -43,7 +46,7 @@ struct mga_device *mgag200_g200ew3_device_create(struct pci_dev *pdev, if (ret) return ERR_PTR(ret); - ret = mgag200_device_init(mdev, type, flags); + ret = mgag200_device_init(mdev, type, flags, &mgag200_g200ew3_device_info); if (ret) return ERR_PTR(ret); diff --git a/drivers/gpu/drm/mgag200/mgag200_g200se.c b/drivers/gpu/drm/mgag200/mgag200_g200se.c index b23459710372..69a17f057b32 100644 --- a/drivers/gpu/drm/mgag200/mgag200_g200se.c +++ b/drivers/gpu/drm/mgag200/mgag200_g200se.c @@ -32,6 +32,9 @@ static int mgag200_g200se_init_pci_options(struct pci_dev *pdev) * DRM device */ +static const struct mgag200_device_info mgag200_g200se_device_info = + MGAG200_DEVICE_INFO_INIT(); + static void mgag200_g200se_init_unique_id(struct mgag200_g200se_device *g200se) { struct mga_device *mdev = &g200se->base; @@ -70,7 +73,7 @@ struct mga_device *mgag200_g200se_device_create(struct pci_dev *pdev, const stru mgag200_g200se_init_unique_id(g200se); - ret = mgag200_device_init(mdev, type, flags); + ret = mgag200_device_init(mdev, type, flags, &mgag200_g200se_device_info); if (ret) return ERR_PTR(ret); diff --git a/drivers/gpu/drm/mgag200/mgag200_g200wb.c b/drivers/gpu/drm/mgag200/mgag200_g200wb.c index 776bad867b4d..921c55ec309e 100644 --- a/drivers/gpu/drm/mgag200/mgag200_g200wb.c +++ b/drivers/gpu/drm/mgag200/mgag200_g200wb.c @@ -10,6 +10,9 @@ * DRM device */ +static const struct mgag200_device_info mgag200_g200wb_device_info = + MGAG200_DEVICE_INFO_INIT(); + struct mga_device *mgag200_g200wb_device_create(struct pci_dev *pdev, const struct drm_driver *drv, enum mga_type type, unsigned long flags) { @@ -33,7 +36,7 @@ struct mga_device *mgag200_g200wb_device_create(struct pci_dev *pdev, const stru if (ret) return ERR_PTR(ret); - ret = mgag200_device_init(mdev, type, flags); + ret = mgag200_device_init(mdev, type, flags, &mgag200_g200wb_device_info); if (ret) return ERR_PTR(ret); -- cgit v1.2.3