From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S966807AbdAEG4J (ORCPT ); Thu, 5 Jan 2017 01:56:09 -0500 Received: from mailout1.w1.samsung.com ([210.118.77.11]:34137 "EHLO mailout1.w1.samsung.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S965507AbdAEGzh (ORCPT ); Thu, 5 Jan 2017 01:55:37 -0500 X-AuditID: cbfec7f1-f79626d000005d7d-87-586dede493cf Subject: Re: [PATCH v5 2/3] drm/panel: Add support for S6E3HA2 panel driver on TM2 board To: Rob Herring , Hoegeun Kwon Cc: thierry.reding@gmail.com, airlied@linux.ie, kgene@kernel.org, krzk@kernel.org, inki.dae@samsung.com, dri-devel@lists.freedesktop.org, linux-kernel@vger.kernel.org, devicetree@vger.kernel.org, linux-samsung-soc@vger.kernel.org, cw00.choi@samsung.com, jh80.chung@samsung.com, Donghwa Lee , Hyungwon Hwang From: Andrzej Hajda Message-id: <412a0238-dd8e-6c74-46a7-876e112189f1@samsung.com> Date: Thu, 05 Jan 2017 07:55:29 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Thunderbird/45.5.1 MIME-version: 1.0 In-reply-to: <20170104144439.bzjab3ovixyt3i5b@rob-hp-laptop> Content-type: text/plain; charset=windows-1252 Content-transfer-encoding: 7bit X-Brightmail-Tracker: H4sIAAAAAAAAA02SbUiTURTHu8/bHkfL22Z5siwZFhm1SvzwZGb2Ao2+ZEQ2haiRD2ptKptK 9SHEwmxmmgmuZSqO9WKSMcWWTYtlzt6cZWElaqCY5czMMjVcuT0Gfvude373HP6Xy5LSZjqI TUnN4HWpao2cEVMNrVOuDQMjWtWmsZEVXEH7M4Lr+vmZ5ipa2mmuyxXNvf01ynCjNw0MZzFe orniviKKez+dS3OF/cMk53LdE3GdjWUMZ3Q1E9xfu03ETTWWUzH+ygemHpHSWn2BUd6f+EQr +/KdhPJSfTVSjltXxjIJ4qhEXpOSxes2Rh8VJ98qbmXSPWtOms1uMhu5wYBYFnAEVD8KMyC/ WVwKHb21jAGJWSm2ILhan0MLxTiCqlfPGcGKgJyJb3PWDQQDhjpKKAYRXG96SnstGU6AoWvF lJcD8F5o+dBEeCUSuwmYLDsv8jYYHAYzdR98YyU4GsrLa33nFF4Nhbc7fLwEq8DR2k0KzmKY vNLrG+qHo+DaHZdvGYk3gbHkCSHwKqirGSG9ywCPiCC/s4UUggaD9fEc7oY3eYeFNDL46qwX CbwCOq/kU8LVfAQ/CttEQlGCwPPdSArWVnjifD23eBEUN5TODZVAXq5UUJRwsXyMEngH/Ox4 g4QXKiDA/rGdKkKrTPPymOZlMM3LUInIahTAZ+q1Sbw+XKFXa/WZqUmKY2laK5r9VS88zjEb Gm2LdCDMIvlCyftJjUpKq7P0p7QOBCwpD5AMD2tVUkmi+tRpXpd2RJep4fUOtJyl5IESe+Xb Q1KcpM7gT/B8Oq/73yVYv6Bs1HNgedpOa+L6wLMzU1VHl0XGFu3vj4zb7r6vQUR8uKLXMW1L qKGCQ6qmS3On+aG14WbNcUWFRff9i+xl8MNtA3bX7RNRDVva4tKx7VyjecEe2eAZVYUkdF8c tvy5/G7JoGzXs287Q+88vBjTHZb89LjDdtfU51+Q+7s3JCZ+l+egnNInqzevI3V69T+jHg5o UQMAAA== X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFrrNIsWRmVeSWpSXmKPExsVy+t/xK7o33+ZGGOzstrDoPXeSyeL6l+es FvOPnGO1uH7ezuLK1/dsFu+Xd7FZLJ3Rx2ox6f4EFosbv9pYLfofv2a2OH9+A7vF5V1z2Cxm nN/HZPF/zw52i5+75rE48HvsnHWX3WPTqk42j+3fHrB63O8+zuTRt2UVo8fnTXIBbFFuNhmp iSmpRQqpecn5KZl56bZKoSFuuhZKCnmJuam2ShG6viFBSgpliTmlQJ6RARpwcA5wD1bSt0tw y1gx6RhbwT+1isWL3zA3ML6R6GLk5JAQMJFo+vaODcIWk7hwbz2QzcUhJLCEUWLqqoXMEM4z RomNmy6ydzFycAgLREm0LmECaRAR8JI4cnMvE0RNL5PErktfwBxmgTdMErPPHWYFqWIT0JT4 u/km2ApeATuJefPWs4PYLAKqEv0rL4ANFRWIkGg4nA5RIijxY/I9FhCbU8BGYvbq86wgJcwC ehL3L2qBhJkF5CU2r3nLPIFRYBaSjlkIVbOQVC1gZF7FKJJaWpybnltspFecmFtcmpeul5yf u4kRGLHbjv3csoOx613wIUYBDkYlHt6GbzkRQqyJZcWVuYcYJTiYlUR4X7/OjRDiTUmsrEot yo8vKs1JLT7EaAr0wURmKdHkfGAyySuJNzQxNLc0NDK2sDA3MlIS55364Uq4kEB6Yklqdmpq QWoRTB8TB6dUA2N7n3ppifMzSxW5H7Jx//+9dV6V8Pxfy74720zvPCxsPaSs6c9oJ3Rh+fPr Be+Xif6N+SQV82rmnPfbbitJJy3ukS0oWJb8bGqt7xWGGceqkho4vzMm8hzOLg6dfSAsz+// 492pxlrrDU78FDW9fv3l35tXi2PXffwj7fJvRcLVXYmrX8jmB35VYinOSDTUYi4qTgQAIVaS ju4CAAA= X-MTR: 20000000000000000@CPGS X-CMS-MailID: 20170105065531eucas1p19d05d6999ebfa6679366fe4698c924d0 X-Msg-Generator: CA X-Sender-IP: 182.198.249.180 X-Local-Sender: =?UTF-8?B?QW5kcnplaiBIYWpkYRtTUlBPTC1LZXJuZWwgKFRQKRvsgrw=?= =?UTF-8?B?7ISx7KCE7J6QG1NlbmlvciBTb2Z0d2FyZSBFbmdpbmVlcg==?= X-Global-Sender: =?UTF-8?B?QW5kcnplaiBIYWpkYRtTUlBPTC1LZXJuZWwgKFRQKRtTYW1z?= =?UTF-8?B?dW5nIEVsZWN0cm9uaWNzG1NlbmlvciBTb2Z0d2FyZSBFbmdpbmVlcg==?= X-Sender-Code: =?UTF-8?B?QzEwG0VIURtDMTBDRDAyQ0QwMjczOTI=?= CMS-TYPE: 201P X-HopCount: 7 X-CMS-RootMailID: 20170104081522epcas5p112698b2499e56dc9027ec1f57f8964ee X-RootMTR: 20170104081522epcas5p112698b2499e56dc9027ec1f57f8964ee References: <1483517711-23849-1-git-send-email-hoegeun.kwon@samsung.com> <1483517711-23849-3-git-send-email-hoegeun.kwon@samsung.com> <20170104144439.bzjab3ovixyt3i5b@rob-hp-laptop> Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On 04.01.2017 15:44, Rob Herring wrote: > On Wed, Jan 04, 2017 at 05:15:10PM +0900, Hoegeun Kwon wrote: >> This patch add support for MIPI-DSI based S6E3HA2 AMOLED panel >> driver. This panel has 1440x2560 resolution in 5.7-inch physical >> panel in the TM2 device. >> >> Signed-off-by: Donghwa Lee >> Signed-off-by: Hyungwon Hwang >> Signed-off-by: Hoegeun Kwon >> --- >> .../bindings/display/panel/samsung,s6e3ha2.txt | 40 ++ >> drivers/gpu/drm/panel/Kconfig | 6 + >> drivers/gpu/drm/panel/Makefile | 1 + >> drivers/gpu/drm/panel/panel-samsung-s6e3ha2.c | 741 +++++++++++++++++++++ >> 4 files changed, 788 insertions(+) >> create mode 100644 Documentation/devicetree/bindings/display/panel/samsung,s6e3ha2.txt >> create mode 100644 drivers/gpu/drm/panel/panel-samsung-s6e3ha2.c >> >> diff --git a/Documentation/devicetree/bindings/display/panel/samsung,s6e3ha2.txt b/Documentation/devicetree/bindings/display/panel/samsung,s6e3ha2.txt >> new file mode 100644 >> index 0000000..6879f51 >> --- /dev/null >> +++ b/Documentation/devicetree/bindings/display/panel/samsung,s6e3ha2.txt >> @@ -0,0 +1,40 @@ >> +Samsung S6E3HA2 5.7" 1440x2560 AMOLED panel >> + >> +Required properties: >> + - compatible: "samsung,s6e3ha2" >> + - reg: the virtual channel number of a DSI peripheral >> + - vdd3-supply: I/O voltage supply >> + - vci-supply: voltage supply for analog circuits >> + - reset-gpios: a GPIO spec for the reset pin (active low) >> + - enable-gpios: a GPIO spec for the panel enable pin (active high) >> + - te-gpios: a GPIO spec for the tearing effect synchronization signal >> + gpio pin (active high) >> + >> +The device node can contain one 'port' child node with one child >> +'endpoint' node, according to the bindings defined in [1]. This >> +node should describe panel's video bus. >> + >> +[1]: Documentation/devicetree/bindings/media/video-interfaces.txt >> + >> +Example: >> + >> +&dsi { >> + ... >> + >> + panel@0 { >> + compatible = "samsung,s6e3ha2"; >> + 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>; >> + >> + port { >> + panel_in: endpoint { >> + remote-endpoint = <&dsi_out>; > As I said previously, it makes no sense to have a graph to dsi_out it is > simply the parent node. The problem is that exynos_dsi requires presence of endpoint node, when it was written the policy was that graphs must be always present. DSI reads from this node samsung,burst-clock-frequency and samsung,esc-clock-frequency. For example in exynos4412-trats2.dts: > dsi_0: dsi@11C80000 { > ... > ports { > #address-cells = <1>; > #size-cells = <0>; > > port@1 { > reg = <1>; > > dsi_out: endpoint { > remote-endpoint = <&dsi_in>; > samsung,burst-clock-frequency > = <500000000>; > samsung,esc-clock-frequency = > <20000000>; > }; > }; > }; > > panel@0 { > ... > port { > dsi_in: endpoint { > remote-endpoint = <&dsi_out>; > }; > }; > }; > }; However, DSI driver does not use remote-endpoint property, it is here only to fulfill of_graph policy. So if something like below is acceptable, we can get rid of port node in panel: > dsi_0: dsi@11C80000 { > ... > ports { > #address-cells = <1>; > #size-cells = <0>; > > port@1 { > reg = <1>; > > dsi_out: endpoint { > samsung,burst-clock-frequency > = <500000000>; > samsung,esc-clock-frequency = > <20000000>; > }; > }; > }; > > panel@0 { > ... > }; > }; What do you think? Other solution is to move problematic properties somewhere else, but this require change of bindings. Anyway I would be glad to remove port nodes in other samsung panels: s6e8aa0, ld9040. Regards Andrzej