Each model's specific code is located in a separate file. The type
field in struct mga_device is no unused. Remove it.

Signed-off-by: Thomas Zimmermann <tzimmerm...@suse.de>
Reviewed-by: Jocelyn Falempe <jfale...@redhat.com>
Tested-by: Jocelyn Falempe <jfale...@redhat.com>
Acked-by: Sam Ravnborg <s...@ravnborg.org>
---
 drivers/gpu/drm/mgag200/mgag200_drv.c     | 17 +++++++------
 drivers/gpu/drm/mgag200/mgag200_drv.h     | 29 ++++++++++-------------
 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  |  2 +-
 drivers/gpu/drm/mgag200/mgag200_g200wb.c  |  5 ++--
 10 files changed, 35 insertions(+), 48 deletions(-)

diff --git a/drivers/gpu/drm/mgag200/mgag200_drv.c 
b/drivers/gpu/drm/mgag200/mgag200_drv.c
index 9296b9f5455b..4d38b8e18030 100644
--- a/drivers/gpu/drm/mgag200/mgag200_drv.c
+++ b/drivers/gpu/drm/mgag200/mgag200_drv.c
@@ -155,7 +155,7 @@ int mgag200_device_preinit(struct mga_device *mdev)
        return 0;
 }
 
-int mgag200_device_init(struct mga_device *mdev, enum mga_type type,
+int mgag200_device_init(struct mga_device *mdev,
                        const struct mgag200_device_info *info,
                        const struct mgag200_device_funcs *funcs)
 {
@@ -165,7 +165,6 @@ int mgag200_device_init(struct mga_device *mdev, enum 
mga_type type,
 
        mdev->info = info;
        mdev->funcs = funcs;
-       mdev->type = type;
 
        ret = drmm_mutex_init(dev, &mdev->rmmio_lock);
        if (ret)
@@ -228,29 +227,29 @@ mgag200_pci_probe(struct pci_dev *pdev, const struct 
pci_device_id *ent)
        switch (type) {
        case G200_PCI:
        case G200_AGP:
-               mdev = mgag200_g200_device_create(pdev, &mgag200_driver, type);
+               mdev = mgag200_g200_device_create(pdev, &mgag200_driver);
                break;
        case G200_SE_A:
        case G200_SE_B:
                mdev = mgag200_g200se_device_create(pdev, &mgag200_driver, 
type);
                break;
        case G200_WB:
-               mdev = mgag200_g200wb_device_create(pdev, &mgag200_driver, 
type);
+               mdev = mgag200_g200wb_device_create(pdev, &mgag200_driver);
                break;
        case G200_EV:
-               mdev = mgag200_g200ev_device_create(pdev, &mgag200_driver, 
type);
+               mdev = mgag200_g200ev_device_create(pdev, &mgag200_driver);
                break;
        case G200_EH:
-               mdev = mgag200_g200eh_device_create(pdev, &mgag200_driver, 
type);
+               mdev = mgag200_g200eh_device_create(pdev, &mgag200_driver);
                break;
        case G200_EH3:
-               mdev = mgag200_g200eh3_device_create(pdev, &mgag200_driver, 
type);
+               mdev = mgag200_g200eh3_device_create(pdev, &mgag200_driver);
                break;
        case G200_ER:
-               mdev = mgag200_g200er_device_create(pdev, &mgag200_driver, 
type);
+               mdev = mgag200_g200er_device_create(pdev, &mgag200_driver);
                break;
        case G200_EW3:
-               mdev = mgag200_g200ew3_device_create(pdev, &mgag200_driver, 
type);
+               mdev = mgag200_g200ew3_device_create(pdev, &mgag200_driver);
                break;
        default:
                dev_err(&pdev->dev, "Device type %d is unsupported\n", type);
diff --git a/drivers/gpu/drm/mgag200/mgag200_drv.h 
b/drivers/gpu/drm/mgag200/mgag200_drv.h
index 26038fa3cf09..f0c2349404b4 100644
--- a/drivers/gpu/drm/mgag200/mgag200_drv.h
+++ b/drivers/gpu/drm/mgag200/mgag200_drv.h
@@ -292,8 +292,6 @@ struct mga_device {
        void __iomem                    *vram;
        resource_size_t                 vram_available;
 
-       enum mga_type                   type;
-
        struct drm_plane primary_plane;
        struct drm_crtc crtc;
        struct drm_encoder encoder;
@@ -337,31 +335,28 @@ 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,
+int mgag200_device_init(struct mga_device *mdev,
                        const struct mgag200_device_info *info,
                        const struct mgag200_device_funcs *funcs);
 
                                /* mgag200_<device type>.c */
-struct mga_device *mgag200_g200_device_create(struct pci_dev *pdev, const 
struct drm_driver *drv,
-                                             enum mga_type type);
+struct mga_device *mgag200_g200_device_create(struct pci_dev *pdev, const 
struct drm_driver *drv);
 struct mga_device *mgag200_g200se_device_create(struct pci_dev *pdev, const 
struct drm_driver *drv,
                                                enum mga_type type);
 void mgag200_g200wb_init_registers(struct mga_device *mdev);
 void mgag200_g200wb_pixpllc_atomic_update(struct drm_crtc *crtc, struct 
drm_atomic_state *old_state);
-struct mga_device *mgag200_g200wb_device_create(struct pci_dev *pdev, const 
struct drm_driver *drv,
-                                               enum mga_type type);
-struct mga_device *mgag200_g200ev_device_create(struct pci_dev *pdev, const 
struct drm_driver *drv,
-                                               enum mga_type type);
+struct mga_device *mgag200_g200wb_device_create(struct pci_dev *pdev, const 
struct drm_driver *drv);
+struct mga_device *mgag200_g200ev_device_create(struct pci_dev *pdev, const 
struct drm_driver *drv);
 void mgag200_g200eh_init_registers(struct mga_device *mdev);
 void mgag200_g200eh_pixpllc_atomic_update(struct drm_crtc *crtc, struct 
drm_atomic_state *old_state);
-struct mga_device *mgag200_g200eh_device_create(struct pci_dev *pdev, const 
struct drm_driver *drv,
-                                               enum mga_type type);
-struct mga_device *mgag200_g200eh3_device_create(struct pci_dev *pdev, const 
struct drm_driver *drv,
-                                                enum mga_type type);
-struct mga_device *mgag200_g200er_device_create(struct pci_dev *pdev, const 
struct drm_driver *drv,
-                                               enum mga_type type);
-struct mga_device *mgag200_g200ew3_device_create(struct pci_dev *pdev, const 
struct drm_driver *drv,
-                                                enum mga_type type);
+struct mga_device *mgag200_g200eh_device_create(struct pci_dev *pdev,
+                                               const struct drm_driver *drv);
+struct mga_device *mgag200_g200eh3_device_create(struct pci_dev *pdev,
+                                                const struct drm_driver *drv);
+struct mga_device *mgag200_g200er_device_create(struct pci_dev *pdev,
+                                               const struct drm_driver *drv);
+struct mga_device *mgag200_g200ew3_device_create(struct pci_dev *pdev,
+                                                const struct drm_driver *drv);
 
 /*
  * mgag200_mode.c
diff --git a/drivers/gpu/drm/mgag200/mgag200_g200.c 
b/drivers/gpu/drm/mgag200/mgag200_g200.c
index dffcfa83ae74..bf5d7fe525a3 100644
--- a/drivers/gpu/drm/mgag200/mgag200_g200.c
+++ b/drivers/gpu/drm/mgag200/mgag200_g200.c
@@ -398,8 +398,7 @@ static const struct mgag200_device_funcs 
mgag200_g200_device_funcs = {
        .pixpllc_atomic_update = mgag200_g200_pixpllc_atomic_update,
 };
 
-struct mga_device *mgag200_g200_device_create(struct pci_dev *pdev, const 
struct drm_driver *drv,
-                                             enum mga_type type)
+struct mga_device *mgag200_g200_device_create(struct pci_dev *pdev, const 
struct drm_driver *drv)
 {
        struct mgag200_g200_device *g200;
        struct mga_device *mdev;
@@ -425,7 +424,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, &mgag200_g200_device_info,
+       ret = mgag200_device_init(mdev, &mgag200_g200_device_info,
                                  &mgag200_g200_device_funcs);
        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 54568d1f603a..fad62453a91d 100644
--- a/drivers/gpu/drm/mgag200/mgag200_g200eh.c
+++ b/drivers/gpu/drm/mgag200/mgag200_g200eh.c
@@ -274,8 +274,7 @@ static const struct mgag200_device_funcs 
mgag200_g200eh_device_funcs = {
        .pixpllc_atomic_update = mgag200_g200eh_pixpllc_atomic_update,
 };
 
-struct mga_device *mgag200_g200eh_device_create(struct pci_dev *pdev, const 
struct drm_driver *drv,
-                                               enum mga_type type)
+struct mga_device *mgag200_g200eh_device_create(struct pci_dev *pdev, const 
struct drm_driver *drv)
 {
        struct mga_device *mdev;
        struct drm_device *dev;
@@ -297,7 +296,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, &mgag200_g200eh_device_info,
+       ret = mgag200_device_init(mdev, &mgag200_g200eh_device_info,
                                  &mgag200_g200eh_device_funcs);
        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 3e2929fd6145..0f7d8112cd49 100644
--- a/drivers/gpu/drm/mgag200/mgag200_g200eh3.c
+++ b/drivers/gpu/drm/mgag200/mgag200_g200eh3.c
@@ -179,8 +179,7 @@ static const struct mgag200_device_funcs 
mgag200_g200eh3_device_funcs = {
 };
 
 struct mga_device *mgag200_g200eh3_device_create(struct pci_dev *pdev,
-                                                const struct drm_driver *drv,
-                                                enum mga_type type)
+                                                const struct drm_driver *drv)
 {
        struct mga_device *mdev;
        struct drm_device *dev;
@@ -202,7 +201,7 @@ struct mga_device *mgag200_g200eh3_device_create(struct 
pci_dev *pdev,
        if (ret)
                return ERR_PTR(ret);
 
-       ret = mgag200_device_init(mdev, type, &mgag200_g200eh3_device_info,
+       ret = mgag200_device_init(mdev, &mgag200_g200eh3_device_info,
                                  &mgag200_g200eh3_device_funcs);
        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 ae9bb38c1ac0..bce267e0f7de 100644
--- a/drivers/gpu/drm/mgag200/mgag200_g200er.c
+++ b/drivers/gpu/drm/mgag200/mgag200_g200er.c
@@ -312,8 +312,7 @@ static const struct mgag200_device_funcs 
mgag200_g200er_device_funcs = {
        .pixpllc_atomic_update = mgag200_g200er_pixpllc_atomic_update,
 };
 
-struct mga_device *mgag200_g200er_device_create(struct pci_dev *pdev, const 
struct drm_driver *drv,
-                                               enum mga_type type)
+struct mga_device *mgag200_g200er_device_create(struct pci_dev *pdev, const 
struct drm_driver *drv)
 {
        struct mga_device *mdev;
        struct drm_device *dev;
@@ -331,7 +330,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, &mgag200_g200er_device_info,
+       ret = mgag200_device_init(mdev, &mgag200_g200er_device_info,
                                  &mgag200_g200er_device_funcs);
        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 ec324d942b47..ac957f42abe1 100644
--- a/drivers/gpu/drm/mgag200/mgag200_g200ev.c
+++ b/drivers/gpu/drm/mgag200/mgag200_g200ev.c
@@ -313,8 +313,7 @@ static const struct mgag200_device_funcs 
mgag200_g200ev_device_funcs = {
        .pixpllc_atomic_update = mgag200_g200ev_pixpllc_atomic_update,
 };
 
-struct mga_device *mgag200_g200ev_device_create(struct pci_dev *pdev, const 
struct drm_driver *drv,
-                                               enum mga_type type)
+struct mga_device *mgag200_g200ev_device_create(struct pci_dev *pdev, const 
struct drm_driver *drv)
 {
        struct mga_device *mdev;
        struct drm_device *dev;
@@ -336,7 +335,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, &mgag200_g200ev_device_info,
+       ret = mgag200_device_init(mdev, &mgag200_g200ev_device_info,
                                  &mgag200_g200ev_device_funcs);
        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 25b7bce31e0b..170934414d7d 100644
--- a/drivers/gpu/drm/mgag200/mgag200_g200ew3.c
+++ b/drivers/gpu/drm/mgag200/mgag200_g200ew3.c
@@ -199,8 +199,7 @@ static resource_size_t 
mgag200_g200ew3_device_probe_vram(struct mga_device *mdev
 }
 
 struct mga_device *mgag200_g200ew3_device_create(struct pci_dev *pdev,
-                                                const struct drm_driver *drv,
-                                                enum mga_type type)
+                                                const struct drm_driver *drv)
 {
        struct mga_device *mdev;
        struct drm_device *dev;
@@ -222,7 +221,7 @@ struct mga_device *mgag200_g200ew3_device_create(struct 
pci_dev *pdev,
        if (ret)
                return ERR_PTR(ret);
 
-       ret = mgag200_device_init(mdev, type, &mgag200_g200ew3_device_info,
+       ret = mgag200_device_init(mdev, &mgag200_g200ew3_device_info,
                                  &mgag200_g200ew3_device_funcs);
        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 0addc3750413..be389ed91cbd 100644
--- a/drivers/gpu/drm/mgag200/mgag200_g200se.c
+++ b/drivers/gpu/drm/mgag200/mgag200_g200se.c
@@ -535,7 +535,7 @@ struct mga_device *mgag200_g200se_device_create(struct 
pci_dev *pdev, const stru
        else
                funcs = &mgag200_g200se_00_device_funcs;
 
-       ret = mgag200_device_init(mdev, type, info, funcs);
+       ret = mgag200_device_init(mdev, info, funcs);
        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 01d21b6a4ce9..9baa727ac6f9 100644
--- a/drivers/gpu/drm/mgag200/mgag200_g200wb.c
+++ b/drivers/gpu/drm/mgag200/mgag200_g200wb.c
@@ -323,8 +323,7 @@ static const struct mgag200_device_funcs 
mgag200_g200wb_device_funcs = {
        .pixpllc_atomic_update = mgag200_g200wb_pixpllc_atomic_update,
 };
 
-struct mga_device *mgag200_g200wb_device_create(struct pci_dev *pdev, const 
struct drm_driver *drv,
-                                               enum mga_type type)
+struct mga_device *mgag200_g200wb_device_create(struct pci_dev *pdev, const 
struct drm_driver *drv)
 {
        struct mga_device *mdev;
        struct drm_device *dev;
@@ -346,7 +345,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, &mgag200_g200wb_device_info,
+       ret = mgag200_device_init(mdev, &mgag200_g200wb_device_info,
                                  &mgag200_g200wb_device_funcs);
        if (ret)
                return ERR_PTR(ret);
-- 
2.37.1

Reply via email to