OSDN Git Service

drm/ast: Remove references to struct drm_device.pdev
authorThomas Zimmermann <tzimmermann@suse.de>
Tue, 1 Dec 2020 10:35:25 +0000 (11:35 +0100)
committerThomas Zimmermann <tzimmermann@suse.de>
Wed, 6 Jan 2021 14:38:30 +0000 (15:38 +0100)
Using struct drm_device.pdev is deprecated. Convert ast to struct
drm_device.dev. No functional changes.

Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de>
Acked-by: Sam Ravnborg <sam@ravnborg.org>
Link: https://patchwork.freedesktop.org/patch/msgid/20201201103542.2182-4-tzimmermann@suse.de
drivers/gpu/drm/ast/ast_drv.c
drivers/gpu/drm/ast/ast_main.c
drivers/gpu/drm/ast/ast_mm.c
drivers/gpu/drm/ast/ast_mode.c
drivers/gpu/drm/ast/ast_post.c

index 667b450..ea8164e 100644 (file)
@@ -147,7 +147,7 @@ static int ast_drm_freeze(struct drm_device *dev)
        error = drm_mode_config_helper_suspend(dev);
        if (error)
                return error;
-       pci_save_state(dev->pdev);
+       pci_save_state(to_pci_dev(dev->dev));
        return 0;
 }
 
@@ -162,7 +162,7 @@ static int ast_drm_resume(struct drm_device *dev)
 {
        int ret;
 
-       if (pci_enable_device(dev->pdev))
+       if (pci_enable_device(to_pci_dev(dev->dev)))
                return -EIO;
 
        ret = ast_drm_thaw(dev);
index 1b13199..0ac3c20 100644 (file)
@@ -67,8 +67,9 @@ uint8_t ast_get_index_reg_mask(struct ast_private *ast,
 
 static void ast_detect_config_mode(struct drm_device *dev, u32 *scu_rev)
 {
-       struct device_node *np = dev->pdev->dev.of_node;
+       struct device_node *np = dev->dev->of_node;
        struct ast_private *ast = to_ast_private(dev);
+       struct pci_dev *pdev = to_pci_dev(dev->dev);
        uint32_t data, jregd0, jregd1;
 
        /* Defaults */
@@ -85,7 +86,7 @@ static void ast_detect_config_mode(struct drm_device *dev, u32 *scu_rev)
        }
 
        /* Not all families have a P2A bridge */
-       if (dev->pdev->device != PCI_CHIP_AST2000)
+       if (pdev->device != PCI_CHIP_AST2000)
                return;
 
        /*
@@ -119,6 +120,7 @@ static void ast_detect_config_mode(struct drm_device *dev, u32 *scu_rev)
 static int ast_detect_chip(struct drm_device *dev, bool *need_post)
 {
        struct ast_private *ast = to_ast_private(dev);
+       struct pci_dev *pdev = to_pci_dev(dev->dev);
        uint32_t jreg, scu_rev;
 
        /*
@@ -143,19 +145,19 @@ static int ast_detect_chip(struct drm_device *dev, bool *need_post)
        ast_detect_config_mode(dev, &scu_rev);
 
        /* Identify chipset */
-       if (dev->pdev->revision >= 0x50) {
+       if (pdev->revision >= 0x50) {
                ast->chip = AST2600;
                drm_info(dev, "AST 2600 detected\n");
-       } else if (dev->pdev->revision >= 0x40) {
+       } else if (pdev->revision >= 0x40) {
                ast->chip = AST2500;
                drm_info(dev, "AST 2500 detected\n");
-       } else if (dev->pdev->revision >= 0x30) {
+       } else if (pdev->revision >= 0x30) {
                ast->chip = AST2400;
                drm_info(dev, "AST 2400 detected\n");
-       } else if (dev->pdev->revision >= 0x20) {
+       } else if (pdev->revision >= 0x20) {
                ast->chip = AST2300;
                drm_info(dev, "AST 2300 detected\n");
-       } else if (dev->pdev->revision >= 0x10) {
+       } else if (pdev->revision >= 0x10) {
                switch (scu_rev & 0x0300) {
                case 0x0200:
                        ast->chip = AST1100;
@@ -265,7 +267,7 @@ static int ast_detect_chip(struct drm_device *dev, bool *need_post)
 
 static int ast_get_dram_info(struct drm_device *dev)
 {
-       struct device_node *np = dev->pdev->dev.of_node;
+       struct device_node *np = dev->dev->of_node;
        struct ast_private *ast = to_ast_private(dev);
        uint32_t mcr_cfg, mcr_scu_mpll, mcr_scu_strap;
        uint32_t denum, num, div, ref_pll, dsel;
@@ -409,10 +411,9 @@ struct ast_private *ast_device_create(const struct drm_driver *drv,
                return ast;
        dev = &ast->base;
 
-       dev->pdev = pdev;
        pci_set_drvdata(pdev, dev);
 
-       ast->regs = pci_iomap(dev->pdev, 1, 0);
+       ast->regs = pci_iomap(pdev, 1, 0);
        if (!ast->regs)
                return ERR_PTR(-EIO);
 
@@ -421,14 +422,14 @@ struct ast_private *ast_device_create(const struct drm_driver *drv,
         * assume the chip has MMIO enabled by default (rev 0x20
         * and higher).
         */
-       if (!(pci_resource_flags(dev->pdev, 2) & IORESOURCE_IO)) {
+       if (!(pci_resource_flags(pdev, 2) & IORESOURCE_IO)) {
                drm_info(dev, "platform has no IO space, trying MMIO\n");
                ast->ioregs = ast->regs + AST_IO_MM_OFFSET;
        }
 
        /* "map" IO regs if the above hasn't done so already */
        if (!ast->ioregs) {
-               ast->ioregs = pci_iomap(dev->pdev, 2, 0);
+               ast->ioregs = pci_iomap(pdev, 2, 0);
                if (!ast->ioregs)
                        return ERR_PTR(-EIO);
        }
index 8392ebd..7592f1b 100644 (file)
@@ -77,31 +77,32 @@ static u32 ast_get_vram_size(struct ast_private *ast)
 static void ast_mm_release(struct drm_device *dev, void *ptr)
 {
        struct ast_private *ast = to_ast_private(dev);
+       struct pci_dev *pdev = to_pci_dev(dev->dev);
 
        arch_phys_wc_del(ast->fb_mtrr);
-       arch_io_free_memtype_wc(pci_resource_start(dev->pdev, 0),
-                               pci_resource_len(dev->pdev, 0));
+       arch_io_free_memtype_wc(pci_resource_start(pdev, 0),
+                               pci_resource_len(pdev, 0));
 }
 
 int ast_mm_init(struct ast_private *ast)
 {
        struct drm_device *dev = &ast->base;
+       struct pci_dev *pdev = to_pci_dev(dev->dev);
        u32 vram_size;
        int ret;
 
        vram_size = ast_get_vram_size(ast);
 
-       ret = drmm_vram_helper_init(dev, pci_resource_start(dev->pdev, 0),
-                                   vram_size);
+       ret = drmm_vram_helper_init(dev, pci_resource_start(pdev, 0), vram_size);
        if (ret) {
                drm_err(dev, "Error initializing VRAM MM; %d\n", ret);
                return ret;
        }
 
-       arch_io_reserve_memtype_wc(pci_resource_start(dev->pdev, 0),
-                                  pci_resource_len(dev->pdev, 0));
-       ast->fb_mtrr = arch_phys_wc_add(pci_resource_start(dev->pdev, 0),
-                                       pci_resource_len(dev->pdev, 0));
+       arch_io_reserve_memtype_wc(pci_resource_start(pdev, 0),
+                                  pci_resource_len(pdev, 0));
+       ast->fb_mtrr = arch_phys_wc_add(pci_resource_start(pdev, 0),
+                                       pci_resource_len(pdev, 0));
 
        return drmm_add_action_or_reset(dev, ast_mm_release, NULL);
 }
index 5b0ec78..988b270 100644 (file)
@@ -1106,6 +1106,7 @@ static const struct drm_mode_config_funcs ast_mode_config_funcs = {
 int ast_mode_config_init(struct ast_private *ast)
 {
        struct drm_device *dev = &ast->base;
+       struct pci_dev *pdev = to_pci_dev(dev->dev);
        int ret;
 
        ret = ast_cursor_init(ast);
@@ -1121,7 +1122,7 @@ int ast_mode_config_init(struct ast_private *ast)
        dev->mode_config.min_height = 0;
        dev->mode_config.preferred_depth = 24;
        dev->mode_config.prefer_shadow = 1;
-       dev->mode_config.fb_base = pci_resource_start(dev->pdev, 0);
+       dev->mode_config.fb_base = pci_resource_start(pdev, 0);
 
        if (ast->chip == AST2100 ||
            ast->chip == AST2200 ||
@@ -1258,7 +1259,7 @@ static struct ast_i2c_chan *ast_i2c_create(struct drm_device *dev)
 
        i2c->adapter.owner = THIS_MODULE;
        i2c->adapter.class = I2C_CLASS_DDC;
-       i2c->adapter.dev.parent = &dev->pdev->dev;
+       i2c->adapter.dev.parent = dev->dev;
        i2c->dev = dev;
        i2c_set_adapdata(&i2c->adapter, i2c);
        snprintf(i2c->adapter.name, sizeof(i2c->adapter.name),
index 8902c2f..0607658 100644 (file)
@@ -71,6 +71,7 @@ static void
 ast_set_def_ext_reg(struct drm_device *dev)
 {
        struct ast_private *ast = to_ast_private(dev);
+       struct pci_dev *pdev = to_pci_dev(dev->dev);
        u8 i, index, reg;
        const u8 *ext_reg_info;
 
@@ -80,7 +81,7 @@ ast_set_def_ext_reg(struct drm_device *dev)
 
        if (ast->chip == AST2300 || ast->chip == AST2400 ||
            ast->chip == AST2500) {
-               if (dev->pdev->revision >= 0x20)
+               if (pdev->revision >= 0x20)
                        ext_reg_info = extreginfo_ast2300;
                else
                        ext_reg_info = extreginfo_ast2300a0;
@@ -366,11 +367,12 @@ static void ast_init_dram_reg(struct drm_device *dev)
 void ast_post_gpu(struct drm_device *dev)
 {
        struct ast_private *ast = to_ast_private(dev);
+       struct pci_dev *pdev = to_pci_dev(dev->dev);
        u32 reg;
 
-       pci_read_config_dword(dev->pdev, 0x04, &reg);
+       pci_read_config_dword(pdev, 0x04, &reg);
        reg |= 0x3;
-       pci_write_config_dword(dev->pdev, 0x04, reg);
+       pci_write_config_dword(pdev, 0x04, reg);
 
        ast_enable_vga(dev);
        ast_open_key(ast);