[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <4ce462b2-cd48-0e80-0c09-15f0d42f9c55@suse.de>
Date: Thu, 3 Dec 2020 10:39:58 +0100
From: Thomas Zimmermann <tzimmermann@...e.de>
To: Tian Tao <tiantao6@...ilicon.com>, airlied@...ux.ie,
daniel@...ll.ch, kraxel@...hat.com, alexander.deucher@....com,
tglx@...utronix.de, dri-devel@...ts.freedesktop.org,
xinliang.liu@...aro.org, linux-kernel@...r.kernel.org
Subject: Re: [PATCH] drm/hisilicon: Deletted the entire file hibmc_ttm.c
Hi
Am 03.12.20 um 10:05 schrieb Tian Tao:
> Deletted the entire file hibmc_ttm.c. drmm_vram_helper_init() can be
Deletted -> Delete
Here and in the subject line.
> called directly from hibmc_load(). hibmc_dumb_create() and
> hibmc_mode_funcs can go to hibmc_drm_drv.c
>
> Signed-off-by: Tian Tao <tiantao6@...ilicon.com>
Code changes look good.
Reviewed-by: Thomas Zimmermann <tzimmermann@...e.de>
> ---
> drivers/gpu/drm/hisilicon/hibmc/Makefile | 2 +-
> drivers/gpu/drm/hisilicon/hibmc/hibmc_drm_drv.c | 21 ++++++++++-
> drivers/gpu/drm/hisilicon/hibmc/hibmc_drm_drv.h | 4 --
> drivers/gpu/drm/hisilicon/hibmc/hibmc_ttm.c | 50 -------------------------
> 4 files changed, 20 insertions(+), 57 deletions(-)
> delete mode 100644 drivers/gpu/drm/hisilicon/hibmc/hibmc_ttm.c
>
> diff --git a/drivers/gpu/drm/hisilicon/hibmc/Makefile b/drivers/gpu/drm/hisilicon/hibmc/Makefile
> index 684ef79..d25c75e 100644
> --- a/drivers/gpu/drm/hisilicon/hibmc/Makefile
> +++ b/drivers/gpu/drm/hisilicon/hibmc/Makefile
> @@ -1,4 +1,4 @@
> # SPDX-License-Identifier: GPL-2.0-only
> -hibmc-drm-y := hibmc_drm_drv.o hibmc_drm_de.o hibmc_drm_vdac.o hibmc_ttm.o hibmc_drm_i2c.o
> +hibmc-drm-y := hibmc_drm_drv.o hibmc_drm_de.o hibmc_drm_vdac.o hibmc_drm_i2c.o
>
> obj-$(CONFIG_DRM_HISI_HIBMC) += hibmc-drm.o
> diff --git a/drivers/gpu/drm/hisilicon/hibmc/hibmc_drm_drv.c b/drivers/gpu/drm/hisilicon/hibmc/hibmc_drm_drv.c
> index 5aea2e9..3687753 100644
> --- a/drivers/gpu/drm/hisilicon/hibmc/hibmc_drm_drv.c
> +++ b/drivers/gpu/drm/hisilicon/hibmc/hibmc_drm_drv.c
> @@ -16,6 +16,7 @@
>
> #include <drm/drm_atomic_helper.h>
> #include <drm/drm_drv.h>
> +#include <drm/drm_gem_framebuffer_helper.h>
> #include <drm/drm_gem_vram_helper.h>
> #include <drm/drm_irq.h>
> #include <drm/drm_managed.h>
> @@ -43,6 +44,12 @@ static irqreturn_t hibmc_drm_interrupt(int irq, void *arg)
> return IRQ_HANDLED;
> }
>
> +static int hibmc_dumb_create(struct drm_file *file, struct drm_device *dev,
> + struct drm_mode_create_dumb *args)
> +{
> + return drm_gem_vram_fill_create_dumb(file, dev, 0, 128, args);
> +}
> +
> static const struct drm_driver hibmc_driver = {
> .driver_features = DRIVER_GEM | DRIVER_MODESET | DRIVER_ATOMIC,
> .fops = &hibmc_fops,
> @@ -77,6 +84,13 @@ static const struct dev_pm_ops hibmc_pm_ops = {
> hibmc_pm_resume)
> };
>
> +static const struct drm_mode_config_funcs hibmc_mode_funcs = {
> + .mode_valid = drm_vram_helper_mode_valid,
> + .atomic_check = drm_atomic_helper_check,
> + .atomic_commit = drm_atomic_helper_commit,
> + .fb_create = drm_gem_fb_create,
> +};
> +
> static int hibmc_kms_init(struct hibmc_drm_private *priv)
> {
> struct drm_device *dev = &priv->dev;
> @@ -262,9 +276,12 @@ static int hibmc_load(struct drm_device *dev)
> if (ret)
> goto err;
>
> - ret = hibmc_mm_init(priv);
> - if (ret)
> + ret = drmm_vram_helper_init(dev, pci_resource_start(dev->pdev, 0),
> + priv->fb_size);
> + if (ret) {
> + drm_err(dev, "Error initializing VRAM MM; %d\n", ret);
> goto err;
> + }
>
> ret = hibmc_kms_init(priv);
> if (ret)
> diff --git a/drivers/gpu/drm/hisilicon/hibmc/hibmc_drm_drv.h b/drivers/gpu/drm/hisilicon/hibmc/hibmc_drm_drv.h
> index 2786de5..a49c10e 100644
> --- a/drivers/gpu/drm/hisilicon/hibmc/hibmc_drm_drv.h
> +++ b/drivers/gpu/drm/hisilicon/hibmc/hibmc_drm_drv.h
> @@ -64,10 +64,6 @@ int hibmc_de_init(struct hibmc_drm_private *priv);
> int hibmc_vdac_init(struct hibmc_drm_private *priv);
>
> int hibmc_mm_init(struct hibmc_drm_private *hibmc);
> -int hibmc_dumb_create(struct drm_file *file, struct drm_device *dev,
> - struct drm_mode_create_dumb *args);
> int hibmc_ddc_create(struct drm_device *drm_dev, struct hibmc_connector *connector);
>
> -extern const struct drm_mode_config_funcs hibmc_mode_funcs;
> -
> #endif
> diff --git a/drivers/gpu/drm/hisilicon/hibmc/hibmc_ttm.c b/drivers/gpu/drm/hisilicon/hibmc/hibmc_ttm.c
> deleted file mode 100644
> index 892d566..0000000
> --- a/drivers/gpu/drm/hisilicon/hibmc/hibmc_ttm.c
> +++ /dev/null
> @@ -1,50 +0,0 @@
> -// SPDX-License-Identifier: GPL-2.0-or-later
> -/* Hisilicon Hibmc SoC drm driver
> - *
> - * Based on the bochs drm driver.
> - *
> - * Copyright (c) 2016 Huawei Limited.
> - *
> - * Author:
> - * Rongrong Zou <zourongrong@...wei.com>
> - * Rongrong Zou <zourongrong@...il.com>
> - * Jianhua Li <lijianhua@...wei.com>
> - */
> -
> -#include <linux/pci.h>
> -
> -#include <drm/drm_atomic_helper.h>
> -#include <drm/drm_gem.h>
> -#include <drm/drm_gem_framebuffer_helper.h>
> -#include <drm/drm_gem_vram_helper.h>
> -#include <drm/drm_print.h>
> -
> -#include "hibmc_drm_drv.h"
> -
> -int hibmc_mm_init(struct hibmc_drm_private *hibmc)
> -{
> - int ret;
> - struct drm_device *dev = &hibmc->dev;
> -
> - ret = drmm_vram_helper_init(dev, pci_resource_start(dev->pdev, 0),
> - hibmc->fb_size);
> - if (ret) {
> - drm_err(dev, "Error initializing VRAM MM; %d\n", ret);
> - return ret;
> - }
> -
> - return 0;
> -}
> -
> -int hibmc_dumb_create(struct drm_file *file, struct drm_device *dev,
> - struct drm_mode_create_dumb *args)
> -{
> - return drm_gem_vram_fill_create_dumb(file, dev, 0, 128, args);
> -}
> -
> -const struct drm_mode_config_funcs hibmc_mode_funcs = {
> - .mode_valid = drm_vram_helper_mode_valid,
> - .atomic_check = drm_atomic_helper_check,
> - .atomic_commit = drm_atomic_helper_commit,
> - .fb_create = drm_gem_fb_create,
> -};
>
--
Thomas Zimmermann
Graphics Driver Developer
SUSE Software Solutions Germany GmbH
Maxfeldstr. 5, 90409 Nürnberg, Germany
(HRB 36809, AG Nürnberg)
Geschäftsführer: Felix Imendörffer
Download attachment "OpenPGP_signature" of type "application/pgp-signature" (841 bytes)
Powered by blists - more mailing lists