From: Huang Jiachai <hjc@rock-chips.com>
To: "Benjamin Gaignard" <benjamin.gaignard@collabora.com>,
heiko@sntech.de, airlied@linux.ie, daniel@ffwll.ch,
robh+dt@kernel.org, 操瑞杰 <algea.cao@rock-chips.com>,
闫孝军 <andy.yan@rock-chips.com>
Cc: dri-devel@lists.freedesktop.org, devicetree@vger.kernel.org,
linux-arm-kernel@lists.infradead.org,
linux-rockchip@lists.infradead.org, linux-kernel@vger.kernel.org,
kernel@collabora.com
Subject: Re: [PATCH 2/2] drm/rockchip: dw_hdmi: add rk3568 support
Date: Tue, 6 Jul 2021 09:04:23 +0800 [thread overview]
Message-ID: <2658816b-e6c1-06f7-03c2-3ec76fa49217@rock-chips.com> (raw)
In-Reply-To: <20210705140304.652929-3-benjamin.gaignard@collabora.com>
add algea.cao and andy.yan
在 2021/7/5 22:03, Benjamin Gaignard 写道:
> Add a new dw_hdmi_plat_data struct and new compatible for rk3568.
>
> Signed-off-by: Benjamin Gaignard <benjamin.gaignard@collabora.com>
> ---
> drivers/gpu/drm/rockchip/dw_hdmi-rockchip.c | 28 +++++++++++++++++++++
> 1 file changed, 28 insertions(+)
>
> diff --git a/drivers/gpu/drm/rockchip/dw_hdmi-rockchip.c b/drivers/gpu/drm/rockchip/dw_hdmi-rockchip.c
> index 830bdd5e9b7ce..5817c3a9fe64b 100644
> --- a/drivers/gpu/drm/rockchip/dw_hdmi-rockchip.c
> +++ b/drivers/gpu/drm/rockchip/dw_hdmi-rockchip.c
> @@ -50,6 +50,10 @@
> #define RK3399_GRF_SOC_CON20 0x6250
> #define RK3399_HDMI_LCDC_SEL BIT(6)
>
> +#define RK3568_GRF_VO_CON1 0x0364
> +#define RK3568_HDMI_SDAIN_MSK BIT(15)
> +#define RK3568_HDMI_SCLIN_MSK BIT(14)
> +
> #define HIWORD_UPDATE(val, mask) (val | (mask) << 16)
>
> /**
> @@ -467,6 +471,19 @@ static const struct dw_hdmi_plat_data rk3399_hdmi_drv_data = {
> .use_drm_infoframe = true,
> };
>
> +static struct rockchip_hdmi_chip_data rk3568_chip_data = {
> + .lcdsel_grf_reg = -1,
> +};
> +
> +static const struct dw_hdmi_plat_data rk3568_hdmi_drv_data = {
> + .mode_valid = dw_hdmi_rockchip_mode_valid,
> + .mpll_cfg = rockchip_mpll_cfg,
> + .cur_ctr = rockchip_cur_ctr,
> + .phy_config = rockchip_phy_config,
> + .phy_data = &rk3568_chip_data,
> + .use_drm_infoframe = true,
> +};
> +
> static const struct of_device_id dw_hdmi_rockchip_dt_ids[] = {
> { .compatible = "rockchip,rk3228-dw-hdmi",
> .data = &rk3228_hdmi_drv_data
> @@ -480,6 +497,9 @@ static const struct of_device_id dw_hdmi_rockchip_dt_ids[] = {
> { .compatible = "rockchip,rk3399-dw-hdmi",
> .data = &rk3399_hdmi_drv_data
> },
> + { .compatible = "rockchip,rk3568-dw-hdmi",
> + .data = &rk3568_hdmi_drv_data
> + },
> {},
> };
> MODULE_DEVICE_TABLE(of, dw_hdmi_rockchip_dt_ids);
> @@ -536,6 +556,14 @@ static int dw_hdmi_rockchip_bind(struct device *dev, struct device *master,
> return ret;
> }
>
> + if (hdmi->chip_data == &rk3568_chip_data) {
> + regmap_write(hdmi->regmap, RK3568_GRF_VO_CON1,
> + HIWORD_UPDATE(RK3568_HDMI_SDAIN_MSK |
> + RK3568_HDMI_SCLIN_MSK,
> + RK3568_HDMI_SDAIN_MSK |
> + RK3568_HDMI_SCLIN_MSK));
> + }
> +
> hdmi->phy = devm_phy_optional_get(dev, "hdmi");
> if (IS_ERR(hdmi->phy)) {
> ret = PTR_ERR(hdmi->phy);
--
Best Regard
黄家钗
Sandy Huang
Addr: 福州市鼓楼区铜盘路软件大道89号福州软件园A区21号楼(350003)
No. 21 Building, A District, No.89,software Boulevard Fuzhou,Fujian,PRC
Tel:+86 0591-87884919 8690
E-mail:hjc@rock-chips.com
WARNING: multiple messages have this Message-ID (diff)
From: Huang Jiachai <hjc@rock-chips.com>
To: "Benjamin Gaignard" <benjamin.gaignard@collabora.com>,
heiko@sntech.de, airlied@linux.ie, daniel@ffwll.ch,
robh+dt@kernel.org, 操瑞杰 <algea.cao@rock-chips.com>,
闫孝军 <andy.yan@rock-chips.com>
Cc: dri-devel@lists.freedesktop.org, devicetree@vger.kernel.org,
linux-arm-kernel@lists.infradead.org,
linux-rockchip@lists.infradead.org, linux-kernel@vger.kernel.org,
kernel@collabora.com
Subject: Re: [PATCH 2/2] drm/rockchip: dw_hdmi: add rk3568 support
Date: Tue, 6 Jul 2021 09:04:23 +0800 [thread overview]
Message-ID: <2658816b-e6c1-06f7-03c2-3ec76fa49217@rock-chips.com> (raw)
In-Reply-To: <20210705140304.652929-3-benjamin.gaignard@collabora.com>
add algea.cao and andy.yan
在 2021/7/5 22:03, Benjamin Gaignard 写道:
> Add a new dw_hdmi_plat_data struct and new compatible for rk3568.
>
> Signed-off-by: Benjamin Gaignard <benjamin.gaignard@collabora.com>
> ---
> drivers/gpu/drm/rockchip/dw_hdmi-rockchip.c | 28 +++++++++++++++++++++
> 1 file changed, 28 insertions(+)
>
> diff --git a/drivers/gpu/drm/rockchip/dw_hdmi-rockchip.c b/drivers/gpu/drm/rockchip/dw_hdmi-rockchip.c
> index 830bdd5e9b7ce..5817c3a9fe64b 100644
> --- a/drivers/gpu/drm/rockchip/dw_hdmi-rockchip.c
> +++ b/drivers/gpu/drm/rockchip/dw_hdmi-rockchip.c
> @@ -50,6 +50,10 @@
> #define RK3399_GRF_SOC_CON20 0x6250
> #define RK3399_HDMI_LCDC_SEL BIT(6)
>
> +#define RK3568_GRF_VO_CON1 0x0364
> +#define RK3568_HDMI_SDAIN_MSK BIT(15)
> +#define RK3568_HDMI_SCLIN_MSK BIT(14)
> +
> #define HIWORD_UPDATE(val, mask) (val | (mask) << 16)
>
> /**
> @@ -467,6 +471,19 @@ static const struct dw_hdmi_plat_data rk3399_hdmi_drv_data = {
> .use_drm_infoframe = true,
> };
>
> +static struct rockchip_hdmi_chip_data rk3568_chip_data = {
> + .lcdsel_grf_reg = -1,
> +};
> +
> +static const struct dw_hdmi_plat_data rk3568_hdmi_drv_data = {
> + .mode_valid = dw_hdmi_rockchip_mode_valid,
> + .mpll_cfg = rockchip_mpll_cfg,
> + .cur_ctr = rockchip_cur_ctr,
> + .phy_config = rockchip_phy_config,
> + .phy_data = &rk3568_chip_data,
> + .use_drm_infoframe = true,
> +};
> +
> static const struct of_device_id dw_hdmi_rockchip_dt_ids[] = {
> { .compatible = "rockchip,rk3228-dw-hdmi",
> .data = &rk3228_hdmi_drv_data
> @@ -480,6 +497,9 @@ static const struct of_device_id dw_hdmi_rockchip_dt_ids[] = {
> { .compatible = "rockchip,rk3399-dw-hdmi",
> .data = &rk3399_hdmi_drv_data
> },
> + { .compatible = "rockchip,rk3568-dw-hdmi",
> + .data = &rk3568_hdmi_drv_data
> + },
> {},
> };
> MODULE_DEVICE_TABLE(of, dw_hdmi_rockchip_dt_ids);
> @@ -536,6 +556,14 @@ static int dw_hdmi_rockchip_bind(struct device *dev, struct device *master,
> return ret;
> }
>
> + if (hdmi->chip_data == &rk3568_chip_data) {
> + regmap_write(hdmi->regmap, RK3568_GRF_VO_CON1,
> + HIWORD_UPDATE(RK3568_HDMI_SDAIN_MSK |
> + RK3568_HDMI_SCLIN_MSK,
> + RK3568_HDMI_SDAIN_MSK |
> + RK3568_HDMI_SCLIN_MSK));
> + }
> +
> hdmi->phy = devm_phy_optional_get(dev, "hdmi");
> if (IS_ERR(hdmi->phy)) {
> ret = PTR_ERR(hdmi->phy);
--
Best Regard
黄家钗
Sandy Huang
Addr: 福州市鼓楼区铜盘路软件大道89号福州软件园A区21号楼(350003)
No. 21 Building, A District, No.89,software Boulevard Fuzhou,Fujian,PRC
Tel:+86 0591-87884919 8690
E-mail:hjc@rock-chips.com
_______________________________________________
Linux-rockchip mailing list
Linux-rockchip@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-rockchip
WARNING: multiple messages have this Message-ID (diff)
From: Huang Jiachai <hjc@rock-chips.com>
To: "Benjamin Gaignard" <benjamin.gaignard@collabora.com>,
heiko@sntech.de, airlied@linux.ie, daniel@ffwll.ch,
robh+dt@kernel.org, 操瑞杰 <algea.cao@rock-chips.com>,
闫孝军 <andy.yan@rock-chips.com>
Cc: dri-devel@lists.freedesktop.org, devicetree@vger.kernel.org,
linux-arm-kernel@lists.infradead.org,
linux-rockchip@lists.infradead.org, linux-kernel@vger.kernel.org,
kernel@collabora.com
Subject: Re: [PATCH 2/2] drm/rockchip: dw_hdmi: add rk3568 support
Date: Tue, 6 Jul 2021 09:04:23 +0800 [thread overview]
Message-ID: <2658816b-e6c1-06f7-03c2-3ec76fa49217@rock-chips.com> (raw)
In-Reply-To: <20210705140304.652929-3-benjamin.gaignard@collabora.com>
add algea.cao and andy.yan
在 2021/7/5 22:03, Benjamin Gaignard 写道:
> Add a new dw_hdmi_plat_data struct and new compatible for rk3568.
>
> Signed-off-by: Benjamin Gaignard <benjamin.gaignard@collabora.com>
> ---
> drivers/gpu/drm/rockchip/dw_hdmi-rockchip.c | 28 +++++++++++++++++++++
> 1 file changed, 28 insertions(+)
>
> diff --git a/drivers/gpu/drm/rockchip/dw_hdmi-rockchip.c b/drivers/gpu/drm/rockchip/dw_hdmi-rockchip.c
> index 830bdd5e9b7ce..5817c3a9fe64b 100644
> --- a/drivers/gpu/drm/rockchip/dw_hdmi-rockchip.c
> +++ b/drivers/gpu/drm/rockchip/dw_hdmi-rockchip.c
> @@ -50,6 +50,10 @@
> #define RK3399_GRF_SOC_CON20 0x6250
> #define RK3399_HDMI_LCDC_SEL BIT(6)
>
> +#define RK3568_GRF_VO_CON1 0x0364
> +#define RK3568_HDMI_SDAIN_MSK BIT(15)
> +#define RK3568_HDMI_SCLIN_MSK BIT(14)
> +
> #define HIWORD_UPDATE(val, mask) (val | (mask) << 16)
>
> /**
> @@ -467,6 +471,19 @@ static const struct dw_hdmi_plat_data rk3399_hdmi_drv_data = {
> .use_drm_infoframe = true,
> };
>
> +static struct rockchip_hdmi_chip_data rk3568_chip_data = {
> + .lcdsel_grf_reg = -1,
> +};
> +
> +static const struct dw_hdmi_plat_data rk3568_hdmi_drv_data = {
> + .mode_valid = dw_hdmi_rockchip_mode_valid,
> + .mpll_cfg = rockchip_mpll_cfg,
> + .cur_ctr = rockchip_cur_ctr,
> + .phy_config = rockchip_phy_config,
> + .phy_data = &rk3568_chip_data,
> + .use_drm_infoframe = true,
> +};
> +
> static const struct of_device_id dw_hdmi_rockchip_dt_ids[] = {
> { .compatible = "rockchip,rk3228-dw-hdmi",
> .data = &rk3228_hdmi_drv_data
> @@ -480,6 +497,9 @@ static const struct of_device_id dw_hdmi_rockchip_dt_ids[] = {
> { .compatible = "rockchip,rk3399-dw-hdmi",
> .data = &rk3399_hdmi_drv_data
> },
> + { .compatible = "rockchip,rk3568-dw-hdmi",
> + .data = &rk3568_hdmi_drv_data
> + },
> {},
> };
> MODULE_DEVICE_TABLE(of, dw_hdmi_rockchip_dt_ids);
> @@ -536,6 +556,14 @@ static int dw_hdmi_rockchip_bind(struct device *dev, struct device *master,
> return ret;
> }
>
> + if (hdmi->chip_data == &rk3568_chip_data) {
> + regmap_write(hdmi->regmap, RK3568_GRF_VO_CON1,
> + HIWORD_UPDATE(RK3568_HDMI_SDAIN_MSK |
> + RK3568_HDMI_SCLIN_MSK,
> + RK3568_HDMI_SDAIN_MSK |
> + RK3568_HDMI_SCLIN_MSK));
> + }
> +
> hdmi->phy = devm_phy_optional_get(dev, "hdmi");
> if (IS_ERR(hdmi->phy)) {
> ret = PTR_ERR(hdmi->phy);
--
Best Regard
黄家钗
Sandy Huang
Addr: 福州市鼓楼区铜盘路软件大道89号福州软件园A区21号楼(350003)
No. 21 Building, A District, No.89,software Boulevard Fuzhou,Fujian,PRC
Tel:+86 0591-87884919 8690
E-mail:hjc@rock-chips.com
_______________________________________________
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: Huang Jiachai <hjc@rock-chips.com>
To: "Benjamin Gaignard" <benjamin.gaignard@collabora.com>,
heiko@sntech.de, airlied@linux.ie, daniel@ffwll.ch,
robh+dt@kernel.org, 操瑞杰 <algea.cao@rock-chips.com>,
闫孝军 <andy.yan@rock-chips.com>
Cc: devicetree@vger.kernel.org, linux-kernel@vger.kernel.org,
dri-devel@lists.freedesktop.org,
linux-rockchip@lists.infradead.org, kernel@collabora.com,
linux-arm-kernel@lists.infradead.org
Subject: Re: [PATCH 2/2] drm/rockchip: dw_hdmi: add rk3568 support
Date: Tue, 6 Jul 2021 09:04:23 +0800 [thread overview]
Message-ID: <2658816b-e6c1-06f7-03c2-3ec76fa49217@rock-chips.com> (raw)
In-Reply-To: <20210705140304.652929-3-benjamin.gaignard@collabora.com>
add algea.cao and andy.yan
在 2021/7/5 22:03, Benjamin Gaignard 写道:
> Add a new dw_hdmi_plat_data struct and new compatible for rk3568.
>
> Signed-off-by: Benjamin Gaignard <benjamin.gaignard@collabora.com>
> ---
> drivers/gpu/drm/rockchip/dw_hdmi-rockchip.c | 28 +++++++++++++++++++++
> 1 file changed, 28 insertions(+)
>
> diff --git a/drivers/gpu/drm/rockchip/dw_hdmi-rockchip.c b/drivers/gpu/drm/rockchip/dw_hdmi-rockchip.c
> index 830bdd5e9b7ce..5817c3a9fe64b 100644
> --- a/drivers/gpu/drm/rockchip/dw_hdmi-rockchip.c
> +++ b/drivers/gpu/drm/rockchip/dw_hdmi-rockchip.c
> @@ -50,6 +50,10 @@
> #define RK3399_GRF_SOC_CON20 0x6250
> #define RK3399_HDMI_LCDC_SEL BIT(6)
>
> +#define RK3568_GRF_VO_CON1 0x0364
> +#define RK3568_HDMI_SDAIN_MSK BIT(15)
> +#define RK3568_HDMI_SCLIN_MSK BIT(14)
> +
> #define HIWORD_UPDATE(val, mask) (val | (mask) << 16)
>
> /**
> @@ -467,6 +471,19 @@ static const struct dw_hdmi_plat_data rk3399_hdmi_drv_data = {
> .use_drm_infoframe = true,
> };
>
> +static struct rockchip_hdmi_chip_data rk3568_chip_data = {
> + .lcdsel_grf_reg = -1,
> +};
> +
> +static const struct dw_hdmi_plat_data rk3568_hdmi_drv_data = {
> + .mode_valid = dw_hdmi_rockchip_mode_valid,
> + .mpll_cfg = rockchip_mpll_cfg,
> + .cur_ctr = rockchip_cur_ctr,
> + .phy_config = rockchip_phy_config,
> + .phy_data = &rk3568_chip_data,
> + .use_drm_infoframe = true,
> +};
> +
> static const struct of_device_id dw_hdmi_rockchip_dt_ids[] = {
> { .compatible = "rockchip,rk3228-dw-hdmi",
> .data = &rk3228_hdmi_drv_data
> @@ -480,6 +497,9 @@ static const struct of_device_id dw_hdmi_rockchip_dt_ids[] = {
> { .compatible = "rockchip,rk3399-dw-hdmi",
> .data = &rk3399_hdmi_drv_data
> },
> + { .compatible = "rockchip,rk3568-dw-hdmi",
> + .data = &rk3568_hdmi_drv_data
> + },
> {},
> };
> MODULE_DEVICE_TABLE(of, dw_hdmi_rockchip_dt_ids);
> @@ -536,6 +556,14 @@ static int dw_hdmi_rockchip_bind(struct device *dev, struct device *master,
> return ret;
> }
>
> + if (hdmi->chip_data == &rk3568_chip_data) {
> + regmap_write(hdmi->regmap, RK3568_GRF_VO_CON1,
> + HIWORD_UPDATE(RK3568_HDMI_SDAIN_MSK |
> + RK3568_HDMI_SCLIN_MSK,
> + RK3568_HDMI_SDAIN_MSK |
> + RK3568_HDMI_SCLIN_MSK));
> + }
> +
> hdmi->phy = devm_phy_optional_get(dev, "hdmi");
> if (IS_ERR(hdmi->phy)) {
> ret = PTR_ERR(hdmi->phy);
--
Best Regard
黄家钗
Sandy Huang
Addr: 福州市鼓楼区铜盘路软件大道89号福州软件园A区21号楼(350003)
No. 21 Building, A District, No.89,software Boulevard Fuzhou,Fujian,PRC
Tel:+86 0591-87884919 8690
E-mail:hjc@rock-chips.com
next prev parent reply other threads:[~2021-07-06 1:12 UTC|newest]
Thread overview: 20+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-07-05 14:03 [PATCH 0/2] Add support of HDMI for rk3568 Benjamin Gaignard
2021-07-05 14:03 ` Benjamin Gaignard
2021-07-05 14:03 ` Benjamin Gaignard
2021-07-05 14:03 ` Benjamin Gaignard
2021-07-05 14:03 ` [PATCH 1/2] dt-bindings: display: rockchip: Add compatible for rk3568 HDMI Benjamin Gaignard
2021-07-05 14:03 ` Benjamin Gaignard
2021-07-05 14:03 ` Benjamin Gaignard
2021-07-05 14:03 ` Benjamin Gaignard
2021-07-05 14:03 ` [PATCH 2/2] drm/rockchip: dw_hdmi: add rk3568 support Benjamin Gaignard
2021-07-05 14:03 ` Benjamin Gaignard
2021-07-05 14:03 ` Benjamin Gaignard
2021-07-05 14:03 ` Benjamin Gaignard
2021-07-06 1:04 ` Huang Jiachai [this message]
2021-07-06 1:04 ` Huang Jiachai
2021-07-06 1:04 ` Huang Jiachai
2021-07-06 1:04 ` Huang Jiachai
2021-07-07 1:23 ` [PATCH 2/2] drm/rockchip: dw_hdmi: add rk3568 support【请注意,邮件由linux-rockchip-bounces+algea.cao=rock-chips.com@lists.infradead.org代发】 crj
2021-07-07 1:23 ` crj
2021-07-07 1:23 ` crj
2021-07-07 1:23 ` crj
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=2658816b-e6c1-06f7-03c2-3ec76fa49217@rock-chips.com \
--to=hjc@rock-chips.com \
--cc=airlied@linux.ie \
--cc=algea.cao@rock-chips.com \
--cc=andy.yan@rock-chips.com \
--cc=benjamin.gaignard@collabora.com \
--cc=daniel@ffwll.ch \
--cc=devicetree@vger.kernel.org \
--cc=dri-devel@lists.freedesktop.org \
--cc=heiko@sntech.de \
--cc=kernel@collabora.com \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-rockchip@lists.infradead.org \
--cc=robh+dt@kernel.org \
/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.