Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > linux.kernel > #1624550 > unrolled thread
| Started by | Hoegeun Kwon <hoegeun.kwon@samsung.com> |
|---|---|
| First post | 2017-04-17 08:10 +0200 |
| Last post | 2017-04-18 10:30 +0200 |
| Articles | 9 — 3 participants |
Back to article view | Back to linux.kernel
This discussion starts older than the indexed window; earlier articles aren't shown. The article labeled Started by
below is the oldest one visible, not the original post.
[PATCH v2 0/3] Add support for the S6E3HF2 panel on TM2e board Hoegeun Kwon <hoegeun.kwon@samsung.com> - 2017-04-17 08:10 +0200
[PATCH v2 2/3] drm/panel: s6e3ha2: Add support for s6e3hf2 panel on TM2e board Hoegeun Kwon <hoegeun.kwon@samsung.com> - 2017-04-17 08:10 +0200
Re: [PATCH v2 2/3] drm/panel: s6e3ha2: Add support for s6e3hf2 panel on TM2e board Andrzej Hajda <a.hajda@samsung.com> - 2017-04-18 08:00 +0200
Re: [PATCH v2 2/3] drm/panel: s6e3ha2: Add support for s6e3hf2 panel on TM2e board Inki Dae <inki.dae@samsung.com> - 2017-04-18 10:10 +0200
[PATCH v2 3/3] arm64: dts: exynos: Add support for s6e3hf2 panel device on TM2e board Hoegeun Kwon <hoegeun.kwon@samsung.com> - 2017-04-17 08:10 +0200
Re: [PATCH v2 3/3] arm64: dts: exynos: Add support for s6e3hf2 panel device on TM2e board Andrzej Hajda <a.hajda@samsung.com> - 2017-04-18 08:10 +0200
Re: [PATCH v2 3/3] arm64: dts: exynos: Add support for s6e3hf2 panel device on TM2e board Hoegeun Kwon <hoegeun.kwon@samsung.com> - 2017-04-18 09:50 +0200
Re: [PATCH v2 3/3] arm64: dts: exynos: Add support for s6e3hf2 panel device on TM2e board Andrzej Hajda <a.hajda@samsung.com> - 2017-04-18 10:00 +0200
Re: [PATCH v2 3/3] arm64: dts: exynos: Add support for s6e3hf2 panel device on TM2e board Hoegeun Kwon <hoegeun.kwon@samsung.com> - 2017-04-18 10:30 +0200
| From | Hoegeun Kwon <hoegeun.kwon@samsung.com> |
|---|---|
| Date | 2017-04-17 08:10 +0200 |
| Subject | [PATCH v2 0/3] Add support for the S6E3HF2 panel on TM2e board |
| Message-ID | <tx81k-5DY-21@gated-at.bofh.it> |
Hi all, First, thanks for Andrzej review. The purpose of this patch is add support for s6e3hf2 AMOLED panel on the TM2e board. The panel has 1600x2560 resolution in 5.65" physical panel in the TM2e device. The s6e3hf2 panel(5.65") is simliar to the previous s6e3ha2 panel(5.7"), but resolution and some command message are different. So it can be distinguished as a compatiblitiy string. Best regards, Hoegeun Changes for V2: - Add new compatible string to "samsung,s6e3ha2.txt binding with comments. - Fix the panel name from s6e3ha2-e to s6e3hf2 Hoegeun Kwon (3): dt-bindings: Add support for samsung s6e3hf2 panel drm/panel: s6e3ha2: Add support for s6e3hf2 panel on TM2e board arm64: dts: exynos: Add support for s6e3hf2 panel device on TM2e board .../bindings/display/panel/samsung,s6e3ha2.txt | 5 +- arch/arm64/boot/dts/exynos/exynos5433-tm2e.dts | 12 ++++ drivers/gpu/drm/panel/panel-samsung-s6e3ha2.c | 64 +++++++++++++++++++--- 3 files changed, 73 insertions(+), 8 deletions(-) -- 1.9.1
[toc] | [next] | [standalone]
| From | Hoegeun Kwon <hoegeun.kwon@samsung.com> |
|---|---|
| Date | 2017-04-17 08:10 +0200 |
| Subject | [PATCH v2 2/3] drm/panel: s6e3ha2: Add support for s6e3hf2 panel on TM2e board |
| Message-ID | <tx81l-5DY-49@gated-at.bofh.it> |
| In reply to | #1624550 |
This patch supports TM2e panel and the panel has 1600x2560 resolution
in 5.65" physical.
This identify panel type with compatibility string, also invoke
display mode that matches the type. So add the check code for s6e3ha2
compatibility and s6e3hf2 type and select the drm_display_mode of
default and edge type.
Signed-off-by: Hoegeun Kwon <hoegeun.kwon@samsung.com>
---
drivers/gpu/drm/panel/panel-samsung-s6e3ha2.c | 64 ++++++++++++++++++++++++---
1 file changed, 57 insertions(+), 7 deletions(-)
diff --git a/drivers/gpu/drm/panel/panel-samsung-s6e3ha2.c b/drivers/gpu/drm/panel/panel-samsung-s6e3ha2.c
index 4cc08d7..c7b418b 100644
--- a/drivers/gpu/drm/panel/panel-samsung-s6e3ha2.c
+++ b/drivers/gpu/drm/panel/panel-samsung-s6e3ha2.c
@@ -16,6 +16,7 @@
#include <drm/drm_panel.h>
#include <linux/backlight.h>
#include <linux/gpio/consumer.h>
+#include <linux/of_device.h>
#include <linux/regulator/consumer.h>
#define S6E3HA2_MIN_BRIGHTNESS 0
@@ -218,6 +219,16 @@
0x1d, 0x1e, 0x1f, 0x20, 0x21
};
+enum s6e3ha2_type {
+ HA2_TYPE,
+ HF2_TYPE,
+};
+
+struct s6e3ha2_panel_desc {
+ const struct drm_display_mode *mode;
+ enum s6e3ha2_type type;
+};
+
struct s6e3ha2 {
struct device *dev;
struct drm_panel panel;
@@ -226,6 +237,8 @@ struct s6e3ha2 {
struct regulator_bulk_data supplies[2];
struct gpio_desc *reset_gpio;
struct gpio_desc *enable_gpio;
+
+ const struct s6e3ha2_panel_desc *desc;
};
static int s6e3ha2_dcs_write(struct s6e3ha2 *ctx, const void *data, size_t len)
@@ -283,11 +296,19 @@ static int s6e3ha2_single_dsi_set(struct s6e3ha2 *ctx)
static int s6e3ha2_freq_calibration(struct s6e3ha2 *ctx)
{
s6e3ha2_dcs_write_seq_static(ctx, 0xfd, 0x1c);
+ if (ctx->desc->type == HF2_TYPE)
+ s6e3ha2_dcs_write_seq_static(ctx, 0xf2, 0x67, 0x40, 0xc5);
s6e3ha2_dcs_write_seq_static(ctx, 0xfe, 0x20, 0x39);
s6e3ha2_dcs_write_seq_static(ctx, 0xfe, 0xa0);
s6e3ha2_dcs_write_seq_static(ctx, 0xfe, 0x20);
- s6e3ha2_dcs_write_seq_static(ctx, 0xce, 0x03, 0x3b, 0x12, 0x62, 0x40,
- 0x80, 0xc0, 0x28, 0x28, 0x28, 0x28, 0x39, 0xc5);
+
+ if (ctx->desc->type == HA2_TYPE)
+ s6e3ha2_dcs_write_seq_static(ctx, 0xce, 0x03, 0x3b, 0x12, 0x62,
+ 0x40, 0x80, 0xc0, 0x28, 0x28, 0x28, 0x28, 0x39, 0xc5);
+ else
+ s6e3ha2_dcs_write_seq_static(ctx, 0xce, 0x03, 0x3b, 0x14, 0x6d,
+ 0x40, 0x80, 0xc0, 0x28, 0x28, 0x28, 0x28, 0x39, 0xc5);
+
return 0;
}
@@ -583,7 +604,7 @@ static int s6e3ha2_enable(struct drm_panel *panel)
return 0;
}
-static const struct drm_display_mode default_mode = {
+static const struct drm_display_mode s6e3ha2_mode = {
.clock = 222372,
.hdisplay = 1440,
.hsync_start = 1440 + 1,
@@ -597,16 +618,41 @@ static int s6e3ha2_enable(struct drm_panel *panel)
.flags = 0,
};
+static const struct s6e3ha2_panel_desc samsung_s6e3ha2 = {
+ .mode = &s6e3ha2_mode,
+ .type = HA2_TYPE,
+};
+
+static const struct drm_display_mode s6e3hf2_mode = {
+ .clock = 247856,
+ .hdisplay = 1600,
+ .hsync_start = 1600 + 1,
+ .hsync_end = 1600 + 1 + 1,
+ .htotal = 1600 + 1 + 1 + 1,
+ .vdisplay = 2560,
+ .vsync_start = 2560 + 1,
+ .vsync_end = 2560 + 1 + 1,
+ .vtotal = 2560 + 1 + 1 + 15,
+ .vrefresh = 60,
+ .flags = 0,
+};
+
+static const struct s6e3ha2_panel_desc samsung_s6e3hf2 = {
+ .mode = &s6e3hf2_mode,
+ .type = HF2_TYPE,
+};
+
static int s6e3ha2_get_modes(struct drm_panel *panel)
{
struct drm_connector *connector = panel->connector;
+ struct s6e3ha2 *ctx = container_of(panel, struct s6e3ha2, panel);
struct drm_display_mode *mode;
- mode = drm_mode_duplicate(panel->drm, &default_mode);
+ mode = drm_mode_duplicate(panel->drm, ctx->desc->mode);
if (!mode) {
DRM_ERROR("failed to add mode %ux%ux@%u\n",
- default_mode.hdisplay, default_mode.vdisplay,
- default_mode.vrefresh);
+ ctx->desc->mode->hdisplay, ctx->desc->mode->vdisplay,
+ ctx->desc->mode->vrefresh);
return -ENOMEM;
}
@@ -642,6 +688,7 @@ static int s6e3ha2_probe(struct mipi_dsi_device *dsi)
mipi_dsi_set_drvdata(dsi, ctx);
ctx->dev = dev;
+ ctx->desc = of_device_get_match_data(dev);
dsi->lanes = 4;
dsi->format = MIPI_DSI_FMT_RGB888;
@@ -717,7 +764,10 @@ static int s6e3ha2_remove(struct mipi_dsi_device *dsi)
}
static const struct of_device_id s6e3ha2_of_match[] = {
- { .compatible = "samsung,s6e3ha2" },
+ { .compatible = "samsung,s6e3ha2",
+ .data = &samsung_s6e3ha2 },
+ { .compatible = "samsung,s6e3hf2",
+ .data = &samsung_s6e3hf2 },
{ }
};
MODULE_DEVICE_TABLE(of, s6e3ha2_of_match);
--
1.9.1
[toc] | [prev] | [next] | [standalone]
| From | Andrzej Hajda <a.hajda@samsung.com> |
|---|---|
| Date | 2017-04-18 08:00 +0200 |
| Subject | Re: [PATCH v2 2/3] drm/panel: s6e3ha2: Add support for s6e3hf2 panel on TM2e board |
| Message-ID | <txulc-2nb-11@gated-at.bofh.it> |
| In reply to | #1624560 |
On 17.04.2017 08:02, Hoegeun Kwon wrote: > This patch supports TM2e panel and the panel has 1600x2560 resolution > in 5.65" physical. > > This identify panel type with compatibility string, also invoke > display mode that matches the type. So add the check code for s6e3ha2 > compatibility and s6e3hf2 type and select the drm_display_mode of > default and edge type. > > Signed-off-by: Hoegeun Kwon <hoegeun.kwon@samsung.com> Reviewed-by: Andrzej Hajda <a.hajda@samsung.com> -- Regards Andrzej
[toc] | [prev] | [next] | [standalone]
| From | Inki Dae <inki.dae@samsung.com> |
|---|---|
| Date | 2017-04-18 10:10 +0200 |
| Subject | Re: [PATCH v2 2/3] drm/panel: s6e3ha2: Add support for s6e3hf2 panel on TM2e board |
| Message-ID | <txwmZ-3MT-5@gated-at.bofh.it> |
| In reply to | #1625041 |
2017년 04월 18일 14:55에 Andrzej Hajda 이(가) 쓴 글: > On 17.04.2017 08:02, Hoegeun Kwon wrote: >> This patch supports TM2e panel and the panel has 1600x2560 resolution >> in 5.65" physical. >> >> This identify panel type with compatibility string, also invoke >> display mode that matches the type. So add the check code for s6e3ha2 >> compatibility and s6e3hf2 type and select the drm_display_mode of >> default and edge type. >> >> Signed-off-by: Hoegeun Kwon <hoegeun.kwon@samsung.com> > Reviewed-by: Andrzej Hajda <a.hajda@samsung.com> Reviewed-by: Inki Dae <inki.dae@samsung.com> Thanks, Inki Dae > > -- > Regards > Andrzej > -- > To unsubscribe from this list: send the line "unsubscribe devicetree" in > the body of a message to majordomo@vger.kernel.org > More majordomo info at http://vger.kernel.org/majordomo-info.html > > >
[toc] | [prev] | [next] | [standalone]
| From | Hoegeun Kwon <hoegeun.kwon@samsung.com> |
|---|---|
| Date | 2017-04-17 08:10 +0200 |
| Subject | [PATCH v2 3/3] arm64: dts: exynos: Add support for s6e3hf2 panel device on TM2e board |
| Message-ID | <tx81l-5DY-43@gated-at.bofh.it> |
| In reply to | #1624550 |
This patch add the panel device tree node for s6e3hf2 display
controller to TM2e dts.
Signed-off-by: Hoegeun Kwon <hoegeun.kwon@samsung.com>
---
arch/arm64/boot/dts/exynos/exynos5433-tm2e.dts | 12 ++++++++++++
1 file changed, 12 insertions(+)
diff --git a/arch/arm64/boot/dts/exynos/exynos5433-tm2e.dts b/arch/arm64/boot/dts/exynos/exynos5433-tm2e.dts
index 694717a..98ad094 100644
--- a/arch/arm64/boot/dts/exynos/exynos5433-tm2e.dts
+++ b/arch/arm64/boot/dts/exynos/exynos5433-tm2e.dts
@@ -52,6 +52,18 @@
assigned-clock-rates = <278000000>, <400000000>;
};
+&dsi {
+ panel@0 {
+ compatible = "samsung,s6e3hf2";
+ reg = <0>;
+ vdd3-supply = <&ldo27_reg>;
+ vci-supply = <&ldo28_reg>;
+ reset-gpios = <&gpg0 0 GPIO_ACTIVE_LOW>;
+ enable-gpios = <&gpf1 5 GPIO_ACTIVE_HIGH>;
+ te-gpios = <&gpf1 3 GPIO_ACTIVE_HIGH>;
+ };
+};
+
&ldo31_reg {
regulator-name = "TSP_VDD_1.8V_AP";
regulator-min-microvolt = <1800000>;
--
1.9.1
[toc] | [prev] | [next] | [standalone]
| From | Andrzej Hajda <a.hajda@samsung.com> |
|---|---|
| Date | 2017-04-18 08:10 +0200 |
| Subject | Re: [PATCH v2 3/3] arm64: dts: exynos: Add support for s6e3hf2 panel device on TM2e board |
| Message-ID | <txuuS-2Go-5@gated-at.bofh.it> |
| In reply to | #1624568 |
On 17.04.2017 08:02, Hoegeun Kwon wrote:
> This patch add the panel device tree node for s6e3hf2 display
> controller to TM2e dts.
>
> Signed-off-by: Hoegeun Kwon <hoegeun.kwon@samsung.com>
Maybe it would be good to remove te-gpios property - tm2/tm2e uses
hardware trigger, so it is not necessary and generates useless interrupts.
Beside this:
Reviewed-by: Andrzej Hajda <a.hajda@samsung.com>
--
Regards
Andrzej
> ---
> arch/arm64/boot/dts/exynos/exynos5433-tm2e.dts | 12 ++++++++++++
> 1 file changed, 12 insertions(+)
>
> diff --git a/arch/arm64/boot/dts/exynos/exynos5433-tm2e.dts b/arch/arm64/boot/dts/exynos/exynos5433-tm2e.dts
> index 694717a..98ad094 100644
> --- a/arch/arm64/boot/dts/exynos/exynos5433-tm2e.dts
> +++ b/arch/arm64/boot/dts/exynos/exynos5433-tm2e.dts
> @@ -52,6 +52,18 @@
> assigned-clock-rates = <278000000>, <400000000>;
> };
>
> +&dsi {
> + panel@0 {
> + compatible = "samsung,s6e3hf2";
> + reg = <0>;
> + vdd3-supply = <&ldo27_reg>;
> + vci-supply = <&ldo28_reg>;
> + reset-gpios = <&gpg0 0 GPIO_ACTIVE_LOW>;
> + enable-gpios = <&gpf1 5 GPIO_ACTIVE_HIGH>;
> + te-gpios = <&gpf1 3 GPIO_ACTIVE_HIGH>;
> + };
> +};
> +
> &ldo31_reg {
> regulator-name = "TSP_VDD_1.8V_AP";
> regulator-min-microvolt = <1800000>;
[toc] | [prev] | [next] | [standalone]
| From | Hoegeun Kwon <hoegeun.kwon@samsung.com> |
|---|---|
| Date | 2017-04-18 09:50 +0200 |
| Subject | Re: [PATCH v2 3/3] arm64: dts: exynos: Add support for s6e3hf2 panel device on TM2e board |
| Message-ID | <txw3E-3rt-5@gated-at.bofh.it> |
| In reply to | #1625045 |
On 04/18/2017 03:00 PM, Andrzej Hajda wrote:
> On 17.04.2017 08:02, Hoegeun Kwon wrote:
>> This patch add the panel device tree node for s6e3hf2 display
>> controller to TM2e dts.
>>
>> Signed-off-by: Hoegeun Kwon <hoegeun.kwon@samsung.com>
> Maybe it would be good to remove te-gpios property - tm2/tm2e uses
> hardware trigger, so it is not necessary and generates useless interrupts.
Thanks for your review.
I agree, but I thinks remove the te-gpio property after your patch [1]
has been merged.
[1] https://patchwork.kernel.org/patch/9625383/
Best regards,
Hoegeun
>
> Beside this:
> Reviewed-by: Andrzej Hajda <a.hajda@samsung.com>
> --
> Regards
> Andrzej
>> ---
>> arch/arm64/boot/dts/exynos/exynos5433-tm2e.dts | 12 ++++++++++++
>> 1 file changed, 12 insertions(+)
>>
>> diff --git a/arch/arm64/boot/dts/exynos/exynos5433-tm2e.dts b/arch/arm64/boot/dts/exynos/exynos5433-tm2e.dts
>> index 694717a..98ad094 100644
>> --- a/arch/arm64/boot/dts/exynos/exynos5433-tm2e.dts
>> +++ b/arch/arm64/boot/dts/exynos/exynos5433-tm2e.dts
>> @@ -52,6 +52,18 @@
>> assigned-clock-rates = <278000000>, <400000000>;
>> };
>>
>> +&dsi {
>> + panel@0 {
>> + compatible = "samsung,s6e3hf2";
>> + reg = <0>;
>> + vdd3-supply = <&ldo27_reg>;
>> + vci-supply = <&ldo28_reg>;
>> + reset-gpios = <&gpg0 0 GPIO_ACTIVE_LOW>;
>> + enable-gpios = <&gpf1 5 GPIO_ACTIVE_HIGH>;
>> + te-gpios = <&gpf1 3 GPIO_ACTIVE_HIGH>;
>> + };
>> +};
>> +
>> &ldo31_reg {
>> regulator-name = "TSP_VDD_1.8V_AP";
>> regulator-min-microvolt = <1800000>;
>
>
>
[toc] | [prev] | [next] | [standalone]
| From | Andrzej Hajda <a.hajda@samsung.com> |
|---|---|
| Date | 2017-04-18 10:00 +0200 |
| Subject | Re: [PATCH v2 3/3] arm64: dts: exynos: Add support for s6e3hf2 panel device on TM2e board |
| Message-ID | <txwdk-3uy-11@gated-at.bofh.it> |
| In reply to | #1625107 |
On 18.04.2017 09:44, Hoegeun Kwon wrote:
> On 04/18/2017 03:00 PM, Andrzej Hajda wrote:
>> On 17.04.2017 08:02, Hoegeun Kwon wrote:
>>> This patch add the panel device tree node for s6e3hf2 display
>>> controller to TM2e dts.
>>>
>>> Signed-off-by: Hoegeun Kwon <hoegeun.kwon@samsung.com>
>> Maybe it would be good to remove te-gpios property - tm2/tm2e uses
>> hardware trigger, so it is not necessary and generates useless interrupts.
> Thanks for your review.
>
> I agree, but I thinks remove the te-gpio property after your patch [1]
> has been merged.
Patch [1] has been merged about month ago :)
Regards
Andrzej
>
>
> [1] https://patchwork.kernel.org/patch/9625383/
>
> Best regards,
> Hoegeun
>
>> Beside this:
>> Reviewed-by: Andrzej Hajda <a.hajda@samsung.com>
>> --
>> Regards
>> Andrzej
>>> ---
>>> arch/arm64/boot/dts/exynos/exynos5433-tm2e.dts | 12 ++++++++++++
>>> 1 file changed, 12 insertions(+)
>>>
>>> diff --git a/arch/arm64/boot/dts/exynos/exynos5433-tm2e.dts b/arch/arm64/boot/dts/exynos/exynos5433-tm2e.dts
>>> index 694717a..98ad094 100644
>>> --- a/arch/arm64/boot/dts/exynos/exynos5433-tm2e.dts
>>> +++ b/arch/arm64/boot/dts/exynos/exynos5433-tm2e.dts
>>> @@ -52,6 +52,18 @@
>>> assigned-clock-rates = <278000000>, <400000000>;
>>> };
>>>
>>> +&dsi {
>>> + panel@0 {
>>> + compatible = "samsung,s6e3hf2";
>>> + reg = <0>;
>>> + vdd3-supply = <&ldo27_reg>;
>>> + vci-supply = <&ldo28_reg>;
>>> + reset-gpios = <&gpg0 0 GPIO_ACTIVE_LOW>;
>>> + enable-gpios = <&gpf1 5 GPIO_ACTIVE_HIGH>;
>>> + te-gpios = <&gpf1 3 GPIO_ACTIVE_HIGH>;
>>> + };
>>> +};
>>> +
>>> &ldo31_reg {
>>> regulator-name = "TSP_VDD_1.8V_AP";
>>> regulator-min-microvolt = <1800000>;
>>
>>
> --
> To unsubscribe from this list: send the line "unsubscribe linux-samsung-soc" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at http://vger.kernel.org/majordomo-info.html
>
>
>
[toc] | [prev] | [next] | [standalone]
| From | Hoegeun Kwon <hoegeun.kwon@samsung.com> |
|---|---|
| Date | 2017-04-18 10:30 +0200 |
| Subject | Re: [PATCH v2 3/3] arm64: dts: exynos: Add support for s6e3hf2 panel device on TM2e board |
| Message-ID | <txwGl-3Te-5@gated-at.bofh.it> |
| In reply to | #1625113 |
On 04/18/2017 04:56 PM, Andrzej Hajda wrote: > On 18.04.2017 09:44, Hoegeun Kwon wrote: >> On 04/18/2017 03:00 PM, Andrzej Hajda wrote: >>> On 17.04.2017 08:02, Hoegeun Kwon wrote: >>>> This patch add the panel device tree node for s6e3hf2 display >>>> controller to TM2e dts. >>>> >>>> Signed-off-by: Hoegeun Kwon <hoegeun.kwon@samsung.com> >>> Maybe it would be good to remove te-gpios property - tm2/tm2e uses >>> hardware trigger, so it is not necessary and generates useless interrupts. >> Thanks for your review. >> >> I agree, but I thinks remove the te-gpio property after your patch [1] >> has been merged. > Patch [1] has been merged about month ago :) Ah..., My mistake.... :) I will send ver3 patchset without te-gpio property. Best regards, Hoegeun
[toc] | [prev] | [standalone]
Back to top | Article view | linux.kernel
csiph-web