From: CK Hu <ck.hu@mediatek.com>
To: yongqiang.niu@mediatek.com
Cc: mark.rutland@arm.com, devicetree@vger.kernel.org,
airlied@linux.ie, linux-kernel@vger.kernel.org,
dri-devel@lists.freedesktop.org, robh+dt@kernel.org,
linux-mediatek@lists.infradead.org, matthias.bgg@gmail.com,
linux-arm-kernel@lists.infradead.org
Subject: Re: [PATCH v2 09/25] drm/mediatek: add mmsys private data for ddp path config
Date: Thu, 11 Apr 2019 18:42:01 +0800 [thread overview]
Message-ID: <1554979321.31912.9.camel@mtksdaap41> (raw)
In-Reply-To: <1553667561-25447-10-git-send-email-yongqiang.niu@mediatek.com>
Hi, Yongqiang:
On Wed, 2019-03-27 at 14:19 +0800, yongqiang.niu@mediatek.com wrote:
> From: Yongqiang Niu <yongqiang.niu@mediatek.com>
>
> This patch add mmsys private data for ddp path config
> all these register offset and value will be different in future SOC
> add these define into mmsys private data
> u32 ovl0_mout_en;
> u32 rdma0_sout_sel_in;
> u32 rdma0_sout_color0;
> u32 rdma1_sout_sel_in;
> u32 rdma1_sout_dpi0;
> u32 rdma1_sout_dsi0;
> u32 dpi0_sel_in;
> u32 dpi0_sel_in_rdma1;
> u32 dsi0_sel_in;
> u32 dsi0_sel_in_rdma1;
>
> Signed-off-by: Yongqiang Niu <yongqiang.niu@mediatek.com>
> ---
> drivers/gpu/drm/mediatek/mtk_drm_crtc.c | 4 ++
> drivers/gpu/drm/mediatek/mtk_drm_ddp.c | 103 ++++++++++++++++++++++++++------
> drivers/gpu/drm/mediatek/mtk_drm_ddp.h | 10 ++++
> drivers/gpu/drm/mediatek/mtk_drm_drv.c | 11 ++++
> drivers/gpu/drm/mediatek/mtk_drm_drv.h | 4 ++
> 5 files changed, 113 insertions(+), 19 deletions(-)
[snip]
>
> +const struct mtk_mmsys_reg_data *mtk_ddp_get_mmsys_data(enum mtk_mmsys_id id)
> +{
> + const struct mtk_mmsys_reg_data *data = NULL;
> +
> + switch (id) {
> + case MMSYS_MT2701:
> + data = &mt2701_mmsys_reg_data;
> + break;
> + case MMSYS_MT2712:
> + data = &mt8173_mmsys_reg_data;
> + break;
> + case MMSYS_MT8173:
> + data = &mt8173_mmsys_reg_data;
> + break;
> + default:
> + pr_info("mtk drm not support mmsys id %d\n",
> + id);
> + break;
> + }
> +
> + return data;
> +}
> +
> struct mtk_disp_mutex *mtk_disp_mutex_get(struct device *dev, unsigned int id)
> {
> struct mtk_ddp *ddp = dev_get_drvdata(dev);
> diff --git a/drivers/gpu/drm/mediatek/mtk_drm_ddp.h b/drivers/gpu/drm/mediatek/mtk_drm_ddp.h
> index f9a7991..ed2b702 100644
> --- a/drivers/gpu/drm/mediatek/mtk_drm_ddp.h
> +++ b/drivers/gpu/drm/mediatek/mtk_drm_ddp.h
> @@ -19,11 +19,21 @@
> struct regmap;
> struct device;
> struct mtk_disp_mutex;
> +struct mtk_mmsys_reg_data;
> +enum mtk_mmsys_id {
> + MMSYS_MT2701,
> + MMSYS_MT2712,
> + MMSYS_MT8173,
> + MMSYS_MAX,
> +};
>
> +const struct mtk_mmsys_reg_data *mtk_ddp_get_mmsys_data(enum mtk_mmsys_id id);
> void mtk_ddp_add_comp_to_path(void __iomem *config_regs,
> + const struct mtk_mmsys_reg_data *reg_data,
> enum mtk_ddp_comp_id cur,
> enum mtk_ddp_comp_id next);
> void mtk_ddp_remove_comp_from_path(void __iomem *config_regs,
> + const struct mtk_mmsys_reg_data *reg_data,
> enum mtk_ddp_comp_id cur,
> enum mtk_ddp_comp_id next);
>
> diff --git a/drivers/gpu/drm/mediatek/mtk_drm_drv.c b/drivers/gpu/drm/mediatek/mtk_drm_drv.c
> index cf59ea9..356853c 100644
> --- a/drivers/gpu/drm/mediatek/mtk_drm_drv.c
> +++ b/drivers/gpu/drm/mediatek/mtk_drm_drv.c
> @@ -196,6 +196,7 @@ static int mtk_atomic_commit(struct drm_device *drm,
> .main_len = ARRAY_SIZE(mt2701_mtk_ddp_main),
> .ext_path = mt2701_mtk_ddp_ext,
> .ext_len = ARRAY_SIZE(mt2701_mtk_ddp_ext),
> + .mmsys_id = MMSYS_MT2701,
> .shadow_register = true,
> };
>
> @@ -206,6 +207,7 @@ static int mtk_atomic_commit(struct drm_device *drm,
> .ext_len = ARRAY_SIZE(mt2712_mtk_ddp_ext),
> .third_path = mt2712_mtk_ddp_third,
> .third_len = ARRAY_SIZE(mt2712_mtk_ddp_third),
> + .mmsys_id = MMSYS_MT2712,
> };
>
> static const struct mtk_mmsys_driver_data mt8173_mmsys_driver_data = {
> @@ -213,6 +215,7 @@ static int mtk_atomic_commit(struct drm_device *drm,
> .main_len = ARRAY_SIZE(mt8173_mtk_ddp_main),
> .ext_path = mt8173_mtk_ddp_ext,
> .ext_len = ARRAY_SIZE(mt8173_mtk_ddp_ext),
> + .mmsys_id = MMSYS_MT8173,
> };
>
> static int mtk_drm_kms_init(struct drm_device *drm)
> @@ -461,6 +464,14 @@ static int mtk_drm_probe(struct platform_device *pdev)
> INIT_WORK(&private->commit.work, mtk_atomic_work);
> private->data = of_device_get_match_data(dev);
>
> + private->reg_data = mtk_ddp_get_mmsys_data(private->data->mmsys_id);
Why do you create a function to select reg_data, I think you could just
add reg_data in struct mtk_mmsys_driver_data so you don't need a
function to select it.
Regards,
CK
> + if (IS_ERR(private->reg_data)) {
> + ret = PTR_ERR(private->config_regs);
> + pr_info("Failed to get mmsys register data: %d\n",
> + ret);
> + return ret;
> + }
> +
> mem = platform_get_resource(pdev, IORESOURCE_MEM, 0);
> private->config_regs = devm_ioremap_resource(dev, mem);
> if (IS_ERR(private->config_regs)) {
> diff --git a/drivers/gpu/drm/mediatek/mtk_drm_drv.h b/drivers/gpu/drm/mediatek/mtk_drm_drv.h
> index ecc00ca..11de7f8 100644
> --- a/drivers/gpu/drm/mediatek/mtk_drm_drv.h
> +++ b/drivers/gpu/drm/mediatek/mtk_drm_drv.h
> @@ -15,6 +15,7 @@
> #define MTK_DRM_DRV_H
>
> #include <linux/io.h>
> +#include "mtk_drm_ddp.h"
> #include "mtk_drm_ddp_comp.h"
>
> #define MAX_CRTC 3
> @@ -36,6 +37,8 @@ struct mtk_mmsys_driver_data {
> const enum mtk_ddp_comp_id *third_path;
> unsigned int third_len;
>
> + enum mtk_mmsys_id mmsys_id;
> +
> bool shadow_register;
> };
>
> @@ -48,6 +51,7 @@ struct mtk_drm_private {
> struct device_node *mutex_node;
> struct device *mutex_dev;
> void __iomem *config_regs;
> + const struct mtk_mmsys_reg_data *reg_data;
> struct device_node *comp_node[DDP_COMPONENT_ID_MAX];
> struct mtk_ddp_comp *ddp_comp[DDP_COMPONENT_ID_MAX];
> const struct mtk_mmsys_driver_data *data;
_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel
WARNING: multiple messages have this Message-ID (diff)
From: CK Hu <ck.hu@mediatek.com>
To: <yongqiang.niu@mediatek.com>
Cc: mark.rutland@arm.com, devicetree@vger.kernel.org,
Bibby.Hsieh@mediatek.com, airlied@linux.ie,
linux-kernel@vger.kernel.org, dri-devel@lists.freedesktop.org,
yt.shen@mediatek.com, robh+dt@kernel.org,
linux-mediatek@lists.infradead.org, p.zabel@pengutronix.de,
matthias.bgg@gmail.com, linux-arm-kernel@lists.infradead.org
Subject: Re: [PATCH v2 09/25] drm/mediatek: add mmsys private data for ddp path config
Date: Thu, 11 Apr 2019 18:42:01 +0800 [thread overview]
Message-ID: <1554979321.31912.9.camel@mtksdaap41> (raw)
In-Reply-To: <1553667561-25447-10-git-send-email-yongqiang.niu@mediatek.com>
Hi, Yongqiang:
On Wed, 2019-03-27 at 14:19 +0800, yongqiang.niu@mediatek.com wrote:
> From: Yongqiang Niu <yongqiang.niu@mediatek.com>
>
> This patch add mmsys private data for ddp path config
> all these register offset and value will be different in future SOC
> add these define into mmsys private data
> u32 ovl0_mout_en;
> u32 rdma0_sout_sel_in;
> u32 rdma0_sout_color0;
> u32 rdma1_sout_sel_in;
> u32 rdma1_sout_dpi0;
> u32 rdma1_sout_dsi0;
> u32 dpi0_sel_in;
> u32 dpi0_sel_in_rdma1;
> u32 dsi0_sel_in;
> u32 dsi0_sel_in_rdma1;
>
> Signed-off-by: Yongqiang Niu <yongqiang.niu@mediatek.com>
> ---
> drivers/gpu/drm/mediatek/mtk_drm_crtc.c | 4 ++
> drivers/gpu/drm/mediatek/mtk_drm_ddp.c | 103 ++++++++++++++++++++++++++------
> drivers/gpu/drm/mediatek/mtk_drm_ddp.h | 10 ++++
> drivers/gpu/drm/mediatek/mtk_drm_drv.c | 11 ++++
> drivers/gpu/drm/mediatek/mtk_drm_drv.h | 4 ++
> 5 files changed, 113 insertions(+), 19 deletions(-)
[snip]
>
> +const struct mtk_mmsys_reg_data *mtk_ddp_get_mmsys_data(enum mtk_mmsys_id id)
> +{
> + const struct mtk_mmsys_reg_data *data = NULL;
> +
> + switch (id) {
> + case MMSYS_MT2701:
> + data = &mt2701_mmsys_reg_data;
> + break;
> + case MMSYS_MT2712:
> + data = &mt8173_mmsys_reg_data;
> + break;
> + case MMSYS_MT8173:
> + data = &mt8173_mmsys_reg_data;
> + break;
> + default:
> + pr_info("mtk drm not support mmsys id %d\n",
> + id);
> + break;
> + }
> +
> + return data;
> +}
> +
> struct mtk_disp_mutex *mtk_disp_mutex_get(struct device *dev, unsigned int id)
> {
> struct mtk_ddp *ddp = dev_get_drvdata(dev);
> diff --git a/drivers/gpu/drm/mediatek/mtk_drm_ddp.h b/drivers/gpu/drm/mediatek/mtk_drm_ddp.h
> index f9a7991..ed2b702 100644
> --- a/drivers/gpu/drm/mediatek/mtk_drm_ddp.h
> +++ b/drivers/gpu/drm/mediatek/mtk_drm_ddp.h
> @@ -19,11 +19,21 @@
> struct regmap;
> struct device;
> struct mtk_disp_mutex;
> +struct mtk_mmsys_reg_data;
> +enum mtk_mmsys_id {
> + MMSYS_MT2701,
> + MMSYS_MT2712,
> + MMSYS_MT8173,
> + MMSYS_MAX,
> +};
>
> +const struct mtk_mmsys_reg_data *mtk_ddp_get_mmsys_data(enum mtk_mmsys_id id);
> void mtk_ddp_add_comp_to_path(void __iomem *config_regs,
> + const struct mtk_mmsys_reg_data *reg_data,
> enum mtk_ddp_comp_id cur,
> enum mtk_ddp_comp_id next);
> void mtk_ddp_remove_comp_from_path(void __iomem *config_regs,
> + const struct mtk_mmsys_reg_data *reg_data,
> enum mtk_ddp_comp_id cur,
> enum mtk_ddp_comp_id next);
>
> diff --git a/drivers/gpu/drm/mediatek/mtk_drm_drv.c b/drivers/gpu/drm/mediatek/mtk_drm_drv.c
> index cf59ea9..356853c 100644
> --- a/drivers/gpu/drm/mediatek/mtk_drm_drv.c
> +++ b/drivers/gpu/drm/mediatek/mtk_drm_drv.c
> @@ -196,6 +196,7 @@ static int mtk_atomic_commit(struct drm_device *drm,
> .main_len = ARRAY_SIZE(mt2701_mtk_ddp_main),
> .ext_path = mt2701_mtk_ddp_ext,
> .ext_len = ARRAY_SIZE(mt2701_mtk_ddp_ext),
> + .mmsys_id = MMSYS_MT2701,
> .shadow_register = true,
> };
>
> @@ -206,6 +207,7 @@ static int mtk_atomic_commit(struct drm_device *drm,
> .ext_len = ARRAY_SIZE(mt2712_mtk_ddp_ext),
> .third_path = mt2712_mtk_ddp_third,
> .third_len = ARRAY_SIZE(mt2712_mtk_ddp_third),
> + .mmsys_id = MMSYS_MT2712,
> };
>
> static const struct mtk_mmsys_driver_data mt8173_mmsys_driver_data = {
> @@ -213,6 +215,7 @@ static int mtk_atomic_commit(struct drm_device *drm,
> .main_len = ARRAY_SIZE(mt8173_mtk_ddp_main),
> .ext_path = mt8173_mtk_ddp_ext,
> .ext_len = ARRAY_SIZE(mt8173_mtk_ddp_ext),
> + .mmsys_id = MMSYS_MT8173,
> };
>
> static int mtk_drm_kms_init(struct drm_device *drm)
> @@ -461,6 +464,14 @@ static int mtk_drm_probe(struct platform_device *pdev)
> INIT_WORK(&private->commit.work, mtk_atomic_work);
> private->data = of_device_get_match_data(dev);
>
> + private->reg_data = mtk_ddp_get_mmsys_data(private->data->mmsys_id);
Why do you create a function to select reg_data, I think you could just
add reg_data in struct mtk_mmsys_driver_data so you don't need a
function to select it.
Regards,
CK
> + if (IS_ERR(private->reg_data)) {
> + ret = PTR_ERR(private->config_regs);
> + pr_info("Failed to get mmsys register data: %d\n",
> + ret);
> + return ret;
> + }
> +
> mem = platform_get_resource(pdev, IORESOURCE_MEM, 0);
> private->config_regs = devm_ioremap_resource(dev, mem);
> if (IS_ERR(private->config_regs)) {
> diff --git a/drivers/gpu/drm/mediatek/mtk_drm_drv.h b/drivers/gpu/drm/mediatek/mtk_drm_drv.h
> index ecc00ca..11de7f8 100644
> --- a/drivers/gpu/drm/mediatek/mtk_drm_drv.h
> +++ b/drivers/gpu/drm/mediatek/mtk_drm_drv.h
> @@ -15,6 +15,7 @@
> #define MTK_DRM_DRV_H
>
> #include <linux/io.h>
> +#include "mtk_drm_ddp.h"
> #include "mtk_drm_ddp_comp.h"
>
> #define MAX_CRTC 3
> @@ -36,6 +37,8 @@ struct mtk_mmsys_driver_data {
> const enum mtk_ddp_comp_id *third_path;
> unsigned int third_len;
>
> + enum mtk_mmsys_id mmsys_id;
> +
> bool shadow_register;
> };
>
> @@ -48,6 +51,7 @@ struct mtk_drm_private {
> struct device_node *mutex_node;
> struct device *mutex_dev;
> void __iomem *config_regs;
> + const struct mtk_mmsys_reg_data *reg_data;
> struct device_node *comp_node[DDP_COMPONENT_ID_MAX];
> struct mtk_ddp_comp *ddp_comp[DDP_COMPONENT_ID_MAX];
> const struct mtk_mmsys_driver_data *data;
_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
WARNING: multiple messages have this Message-ID (diff)
From: CK Hu <ck.hu@mediatek.com>
To: <yongqiang.niu@mediatek.com>
Cc: <p.zabel@pengutronix.de>, <robh+dt@kernel.org>,
<matthias.bgg@gmail.com>, <airlied@linux.ie>,
<mark.rutland@arm.com>, <dri-devel@lists.freedesktop.org>,
<devicetree@vger.kernel.org>, <linux-kernel@vger.kernel.org>,
<linux-arm-kernel@lists.infradead.org>,
<linux-mediatek@lists.infradead.org>, <Bibby.Hsieh@mediatek.com>,
<yt.shen@mediatek.com>
Subject: Re: [PATCH v2 09/25] drm/mediatek: add mmsys private data for ddp path config
Date: Thu, 11 Apr 2019 18:42:01 +0800 [thread overview]
Message-ID: <1554979321.31912.9.camel@mtksdaap41> (raw)
In-Reply-To: <1553667561-25447-10-git-send-email-yongqiang.niu@mediatek.com>
Hi, Yongqiang:
On Wed, 2019-03-27 at 14:19 +0800, yongqiang.niu@mediatek.com wrote:
> From: Yongqiang Niu <yongqiang.niu@mediatek.com>
>
> This patch add mmsys private data for ddp path config
> all these register offset and value will be different in future SOC
> add these define into mmsys private data
> u32 ovl0_mout_en;
> u32 rdma0_sout_sel_in;
> u32 rdma0_sout_color0;
> u32 rdma1_sout_sel_in;
> u32 rdma1_sout_dpi0;
> u32 rdma1_sout_dsi0;
> u32 dpi0_sel_in;
> u32 dpi0_sel_in_rdma1;
> u32 dsi0_sel_in;
> u32 dsi0_sel_in_rdma1;
>
> Signed-off-by: Yongqiang Niu <yongqiang.niu@mediatek.com>
> ---
> drivers/gpu/drm/mediatek/mtk_drm_crtc.c | 4 ++
> drivers/gpu/drm/mediatek/mtk_drm_ddp.c | 103 ++++++++++++++++++++++++++------
> drivers/gpu/drm/mediatek/mtk_drm_ddp.h | 10 ++++
> drivers/gpu/drm/mediatek/mtk_drm_drv.c | 11 ++++
> drivers/gpu/drm/mediatek/mtk_drm_drv.h | 4 ++
> 5 files changed, 113 insertions(+), 19 deletions(-)
[snip]
>
> +const struct mtk_mmsys_reg_data *mtk_ddp_get_mmsys_data(enum mtk_mmsys_id id)
> +{
> + const struct mtk_mmsys_reg_data *data = NULL;
> +
> + switch (id) {
> + case MMSYS_MT2701:
> + data = &mt2701_mmsys_reg_data;
> + break;
> + case MMSYS_MT2712:
> + data = &mt8173_mmsys_reg_data;
> + break;
> + case MMSYS_MT8173:
> + data = &mt8173_mmsys_reg_data;
> + break;
> + default:
> + pr_info("mtk drm not support mmsys id %d\n",
> + id);
> + break;
> + }
> +
> + return data;
> +}
> +
> struct mtk_disp_mutex *mtk_disp_mutex_get(struct device *dev, unsigned int id)
> {
> struct mtk_ddp *ddp = dev_get_drvdata(dev);
> diff --git a/drivers/gpu/drm/mediatek/mtk_drm_ddp.h b/drivers/gpu/drm/mediatek/mtk_drm_ddp.h
> index f9a7991..ed2b702 100644
> --- a/drivers/gpu/drm/mediatek/mtk_drm_ddp.h
> +++ b/drivers/gpu/drm/mediatek/mtk_drm_ddp.h
> @@ -19,11 +19,21 @@
> struct regmap;
> struct device;
> struct mtk_disp_mutex;
> +struct mtk_mmsys_reg_data;
> +enum mtk_mmsys_id {
> + MMSYS_MT2701,
> + MMSYS_MT2712,
> + MMSYS_MT8173,
> + MMSYS_MAX,
> +};
>
> +const struct mtk_mmsys_reg_data *mtk_ddp_get_mmsys_data(enum mtk_mmsys_id id);
> void mtk_ddp_add_comp_to_path(void __iomem *config_regs,
> + const struct mtk_mmsys_reg_data *reg_data,
> enum mtk_ddp_comp_id cur,
> enum mtk_ddp_comp_id next);
> void mtk_ddp_remove_comp_from_path(void __iomem *config_regs,
> + const struct mtk_mmsys_reg_data *reg_data,
> enum mtk_ddp_comp_id cur,
> enum mtk_ddp_comp_id next);
>
> diff --git a/drivers/gpu/drm/mediatek/mtk_drm_drv.c b/drivers/gpu/drm/mediatek/mtk_drm_drv.c
> index cf59ea9..356853c 100644
> --- a/drivers/gpu/drm/mediatek/mtk_drm_drv.c
> +++ b/drivers/gpu/drm/mediatek/mtk_drm_drv.c
> @@ -196,6 +196,7 @@ static int mtk_atomic_commit(struct drm_device *drm,
> .main_len = ARRAY_SIZE(mt2701_mtk_ddp_main),
> .ext_path = mt2701_mtk_ddp_ext,
> .ext_len = ARRAY_SIZE(mt2701_mtk_ddp_ext),
> + .mmsys_id = MMSYS_MT2701,
> .shadow_register = true,
> };
>
> @@ -206,6 +207,7 @@ static int mtk_atomic_commit(struct drm_device *drm,
> .ext_len = ARRAY_SIZE(mt2712_mtk_ddp_ext),
> .third_path = mt2712_mtk_ddp_third,
> .third_len = ARRAY_SIZE(mt2712_mtk_ddp_third),
> + .mmsys_id = MMSYS_MT2712,
> };
>
> static const struct mtk_mmsys_driver_data mt8173_mmsys_driver_data = {
> @@ -213,6 +215,7 @@ static int mtk_atomic_commit(struct drm_device *drm,
> .main_len = ARRAY_SIZE(mt8173_mtk_ddp_main),
> .ext_path = mt8173_mtk_ddp_ext,
> .ext_len = ARRAY_SIZE(mt8173_mtk_ddp_ext),
> + .mmsys_id = MMSYS_MT8173,
> };
>
> static int mtk_drm_kms_init(struct drm_device *drm)
> @@ -461,6 +464,14 @@ static int mtk_drm_probe(struct platform_device *pdev)
> INIT_WORK(&private->commit.work, mtk_atomic_work);
> private->data = of_device_get_match_data(dev);
>
> + private->reg_data = mtk_ddp_get_mmsys_data(private->data->mmsys_id);
Why do you create a function to select reg_data, I think you could just
add reg_data in struct mtk_mmsys_driver_data so you don't need a
function to select it.
Regards,
CK
> + if (IS_ERR(private->reg_data)) {
> + ret = PTR_ERR(private->config_regs);
> + pr_info("Failed to get mmsys register data: %d\n",
> + ret);
> + return ret;
> + }
> +
> mem = platform_get_resource(pdev, IORESOURCE_MEM, 0);
> private->config_regs = devm_ioremap_resource(dev, mem);
> if (IS_ERR(private->config_regs)) {
> diff --git a/drivers/gpu/drm/mediatek/mtk_drm_drv.h b/drivers/gpu/drm/mediatek/mtk_drm_drv.h
> index ecc00ca..11de7f8 100644
> --- a/drivers/gpu/drm/mediatek/mtk_drm_drv.h
> +++ b/drivers/gpu/drm/mediatek/mtk_drm_drv.h
> @@ -15,6 +15,7 @@
> #define MTK_DRM_DRV_H
>
> #include <linux/io.h>
> +#include "mtk_drm_ddp.h"
> #include "mtk_drm_ddp_comp.h"
>
> #define MAX_CRTC 3
> @@ -36,6 +37,8 @@ struct mtk_mmsys_driver_data {
> const enum mtk_ddp_comp_id *third_path;
> unsigned int third_len;
>
> + enum mtk_mmsys_id mmsys_id;
> +
> bool shadow_register;
> };
>
> @@ -48,6 +51,7 @@ struct mtk_drm_private {
> struct device_node *mutex_node;
> struct device *mutex_dev;
> void __iomem *config_regs;
> + const struct mtk_mmsys_reg_data *reg_data;
> struct device_node *comp_node[DDP_COMPONENT_ID_MAX];
> struct mtk_ddp_comp *ddp_comp[DDP_COMPONENT_ID_MAX];
> const struct mtk_mmsys_driver_data *data;
next prev parent reply other threads:[~2019-04-11 10:42 UTC|newest]
Thread overview: 159+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-03-27 6:18 [PATCH v2 00/25] add drm support for MT8183 yongqiang.niu
2019-03-27 6:18 ` yongqiang.niu
2019-03-27 6:18 ` yongqiang.niu
2019-03-27 6:18 ` [PATCH v2 01/25] arm64: dts: add display nodes for mt8183 yongqiang.niu
2019-03-27 6:18 ` yongqiang.niu
2019-03-27 6:18 ` yongqiang.niu
2019-03-28 3:18 ` CK Hu
2019-03-28 3:18 ` CK Hu
2019-03-28 3:18 ` CK Hu
2019-03-27 6:18 ` [PATCH v2 02/25] dt-bindings: mediatek: add binding for mt8183 display yongqiang.niu
2019-03-27 6:18 ` yongqiang.niu
2019-03-27 6:18 ` yongqiang.niu
2019-03-27 9:39 ` CK Hu
2019-03-27 9:39 ` CK Hu
2019-03-27 9:39 ` CK Hu
2019-03-31 6:42 ` Rob Herring
2019-03-31 6:42 ` Rob Herring
2019-03-31 6:42 ` Rob Herring
[not found] ` <1553667561-25447-1-git-send-email-yongqiang.niu-NuS5LvNUpcJWk0Htik3J/w@public.gmane.org>
2019-03-27 6:18 ` [PATCH v2 03/25] drm/mediatek: add mutex mod into ddp private data yongqiang.niu-NuS5LvNUpcJWk0Htik3J/w
2019-03-27 6:18 ` yongqiang.niu
2019-03-27 6:18 ` yongqiang.niu
2019-03-28 1:33 ` CK Hu
2019-03-28 1:33 ` CK Hu
2019-03-28 1:33 ` CK Hu
2019-03-27 6:19 ` [PATCH v2 04/25] drm/mediatek: add mutex sof " yongqiang.niu-NuS5LvNUpcJWk0Htik3J/w
2019-03-27 6:19 ` yongqiang.niu
2019-03-27 6:19 ` yongqiang.niu
2019-03-28 3:02 ` CK Hu
2019-03-28 3:02 ` CK Hu
2019-03-28 3:02 ` CK Hu
2019-03-27 6:19 ` [PATCH v2 05/25] drm/mediatek: split DISP_REG_CONFIG_DSI_SEL setting into another use case yongqiang.niu
2019-03-27 6:19 ` yongqiang.niu
2019-03-27 6:19 ` yongqiang.niu
2019-03-28 3:37 ` CK Hu
2019-03-28 3:37 ` CK Hu
2019-03-28 3:37 ` CK Hu
2019-03-27 6:19 ` [PATCH v2 06/25] drm/mediatek: redefine mtk_ddp_sout_sel yongqiang.niu
2019-03-27 6:19 ` yongqiang.niu
2019-03-27 6:19 ` yongqiang.niu
2019-04-11 6:09 ` CK Hu
2019-04-11 6:09 ` CK Hu
2019-04-11 6:09 ` CK Hu
2019-03-27 6:19 ` [PATCH v2 07/25] drm/mediatek: move rdma sout from mtk_ddp_mout_en into mtk_ddp_sout_sel yongqiang.niu
2019-03-27 6:19 ` yongqiang.niu
2019-03-27 6:19 ` yongqiang.niu
2019-04-11 5:30 ` CK Hu
2019-04-11 5:30 ` CK Hu
2019-04-11 5:30 ` CK Hu
2019-03-27 6:19 ` [PATCH v2 08/25] drm/mediatek: add ddp component CCORR yongqiang.niu
2019-03-27 6:19 ` yongqiang.niu
2019-03-27 6:19 ` yongqiang.niu
2019-04-11 5:57 ` CK Hu
2019-04-11 5:57 ` CK Hu
2019-04-11 5:57 ` CK Hu
2019-03-27 6:19 ` [PATCH v2 09/25] drm/mediatek: add mmsys private data for ddp path config yongqiang.niu
2019-03-27 6:19 ` yongqiang.niu
2019-03-27 6:19 ` yongqiang.niu
2019-04-11 10:42 ` CK Hu [this message]
2019-04-11 10:42 ` CK Hu
2019-04-11 10:42 ` CK Hu
2019-03-27 6:19 ` [PATCH v2 10/25] drm/mediatek: add commponent OVL0_2L yongqiang.niu
2019-03-27 6:19 ` yongqiang.niu
2019-03-27 6:19 ` yongqiang.niu
2019-04-11 6:14 ` CK Hu
2019-04-11 6:14 ` CK Hu
2019-04-11 6:14 ` CK Hu
2019-03-27 6:19 ` [PATCH v2 11/25] drm/mediatek: add component OVL1_2L yongqiang.niu
2019-03-27 6:19 ` yongqiang.niu
2019-03-27 6:19 ` yongqiang.niu
2019-03-27 6:19 ` [PATCH v2 12/25] drm/mediatek: add component DITHER yongqiang.niu
2019-03-27 6:19 ` yongqiang.niu
2019-03-27 6:19 ` yongqiang.niu
2019-04-11 6:28 ` CK Hu
2019-04-11 6:28 ` CK Hu
2019-04-11 6:28 ` CK Hu
2019-03-27 6:19 ` [PATCH v2 13/25] drm/mediatek: add gmc_bits for ovl private data yongqiang.niu
2019-03-27 6:19 ` yongqiang.niu
2019-03-27 6:19 ` yongqiang.niu
2019-04-11 6:48 ` CK Hu
2019-04-11 6:48 ` CK Hu
2019-04-11 6:48 ` CK Hu
2019-03-27 6:19 ` [PATCH v2 14/25] drm/medaitek: add layer_nr " yongqiang.niu
2019-03-27 6:19 ` yongqiang.niu
2019-03-27 6:19 ` yongqiang.niu
2019-04-11 10:57 ` CK Hu
2019-04-11 10:57 ` CK Hu
2019-04-11 10:57 ` CK Hu
2019-03-27 6:19 ` [PATCH v2 15/25] drm/mediatek: add function to background color input select for ovl/ovl_2l direct link yongqiang.niu
2019-03-27 6:19 ` yongqiang.niu
2019-03-27 6:19 ` yongqiang.niu
2019-04-11 11:01 ` CK Hu
2019-04-11 11:01 ` CK Hu
2019-04-11 11:01 ` CK Hu
2019-03-27 6:19 ` [PATCH v2 16/25] drm/mediatek: add ddp write register common api yongqiang.niu
2019-03-27 6:19 ` yongqiang.niu
2019-03-27 6:19 ` yongqiang.niu
2019-04-11 11:15 ` CK Hu
2019-04-11 11:15 ` CK Hu
2019-04-11 11:15 ` CK Hu
2019-03-27 6:19 ` [PATCH v2 17/25] drm/mediatek: add background color input select function for ovl/ovl_2l yongqiang.niu
2019-03-27 6:19 ` yongqiang.niu
2019-03-27 6:19 ` yongqiang.niu
2019-04-16 7:38 ` CK Hu
2019-04-16 7:38 ` CK Hu
2019-04-16 7:38 ` CK Hu
2019-03-27 6:19 ` [PATCH v2 18/25] drm/mediatek: add RDMA fifo size error handle yongqiang.niu
2019-03-27 6:19 ` yongqiang.niu
2019-03-27 6:19 ` yongqiang.niu
2019-04-16 8:00 ` CK Hu
2019-04-16 8:00 ` CK Hu
2019-04-16 8:00 ` CK Hu
2019-04-16 8:37 ` Yongqiang Niu
2019-04-16 8:37 ` Yongqiang Niu
2019-04-16 8:37 ` Yongqiang Niu
2019-04-16 11:31 ` YT Shen
2019-04-16 11:31 ` YT Shen
2019-04-16 11:31 ` YT Shen
2019-03-27 6:19 ` [PATCH v2 19/25] drm/mediatek: add function mtk_ddp_comp_get_type yongqiang.niu
2019-03-27 6:19 ` yongqiang.niu
2019-03-27 6:19 ` yongqiang.niu
2019-03-27 6:19 ` [PATCH v2 20/25] drm/mediatek: add ovl0/ovl0_2l usecase yongqiang.niu
2019-03-27 6:19 ` yongqiang.niu
2019-03-27 6:19 ` yongqiang.niu
2019-04-16 8:20 ` CK Hu
2019-04-16 8:20 ` CK Hu
2019-04-16 8:20 ` CK Hu
2019-03-27 6:19 ` [PATCH v2 21/25] drm/mediatek: add support for mediatek SOC MT8183 yongqiang.niu
2019-03-27 6:19 ` yongqiang.niu
2019-03-27 6:19 ` yongqiang.niu
2019-04-11 10:33 ` CK Hu
2019-04-11 10:33 ` CK Hu
2019-04-11 10:33 ` CK Hu
2019-03-27 6:19 ` [PATCH v2 22/25] drm/mediatek: adjust ddp clock control flow yongqiang.niu
2019-03-27 6:19 ` yongqiang.niu
2019-03-27 6:19 ` yongqiang.niu
2019-04-16 8:24 ` CK Hu
2019-04-16 8:24 ` CK Hu
2019-04-16 8:24 ` CK Hu
2019-05-28 5:35 ` CK Hu
2019-05-28 5:35 ` CK Hu
2019-05-28 5:35 ` CK Hu
2019-03-27 6:19 ` [PATCH v2 23/25] drm/mediatek: add vmap support for mediatek drm yongqiang.niu
2019-03-27 6:19 ` yongqiang.niu
2019-03-27 6:19 ` yongqiang.niu
2019-04-16 8:30 ` CK Hu
2019-04-16 8:30 ` CK Hu
2019-04-16 8:30 ` CK Hu
2019-03-27 6:19 ` [PATCH v2 24/25] drm/mediatek: respect page offset for PRIME mmap calls yongqiang.niu
2019-03-27 6:19 ` yongqiang.niu
2019-03-27 6:19 ` yongqiang.niu
2019-04-16 8:33 ` CK Hu
2019-04-16 8:33 ` CK Hu
2019-04-16 8:33 ` CK Hu
2019-05-28 5:35 ` CK Hu
2019-05-28 5:35 ` CK Hu
2019-05-28 5:35 ` CK Hu
2019-03-27 6:19 ` [PATCH v2 25/25] drm/mediatek: enable allow_fb_modifiers for mediatek drm yongqiang.niu
2019-03-27 6:19 ` yongqiang.niu
2019-03-27 6:19 ` yongqiang.niu
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1554979321.31912.9.camel@mtksdaap41 \
--to=ck.hu@mediatek.com \
--cc=airlied@linux.ie \
--cc=devicetree@vger.kernel.org \
--cc=dri-devel@lists.freedesktop.org \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-mediatek@lists.infradead.org \
--cc=mark.rutland@arm.com \
--cc=matthias.bgg@gmail.com \
--cc=robh+dt@kernel.org \
--cc=yongqiang.niu@mediatek.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.