From patchwork Sun Jan 17 14:25:14 2016 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: =?utf-8?q?Heiko_St=C3=BCbner?= X-Patchwork-Id: 8050651 Return-Path: X-Original-To: patchwork-linux-rockchip@patchwork.kernel.org Delivered-To: patchwork-parsemail@patchwork2.web.kernel.org Received: from mail.kernel.org (mail.kernel.org [198.145.29.136]) by patchwork2.web.kernel.org (Postfix) with ESMTP id 348F0BEEE5 for ; Sun, 17 Jan 2016 14:26:23 +0000 (UTC) Received: from mail.kernel.org (localhost [127.0.0.1]) by mail.kernel.org (Postfix) with ESMTP id 34FD220259 for ; Sun, 17 Jan 2016 14:26:22 +0000 (UTC) Received: from bombadil.infradead.org (bombadil.infradead.org [198.137.202.9]) (using TLSv1.2 with cipher AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id 46C2020218 for ; Sun, 17 Jan 2016 14:26:21 +0000 (UTC) Received: from localhost ([127.0.0.1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.80.1 #2 (Red Hat Linux)) id 1aKoHX-0006Bo-7q; Sun, 17 Jan 2016 14:26:15 +0000 Received: from gloria.sntech.de ([95.129.55.99]) by bombadil.infradead.org with esmtps (Exim 4.80.1 #2 (Red Hat Linux)) id 1aKoHU-00069b-0z; Sun, 17 Jan 2016 14:26:13 +0000 Received: from ip545477c2.speed.planet.nl ([84.84.119.194] helo=phil.localnet) by gloria.sntech.de with esmtpsa (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.80) (envelope-from ) id 1aKoGd-0001qs-Iy; Sun, 17 Jan 2016 15:25:19 +0100 From: Heiko Stuebner To: Yakir Yang Subject: Re: [PATCH v12 0/18] Add Analogix Core Display Port Driver Date: Sun, 17 Jan 2016 15:25:14 +0100 Message-ID: <1670568.VBNHbJuGkf@phil> User-Agent: KMail/4.14.10 (Linux/4.3.0-1-amd64; KDE/4.14.14; x86_64; ; ) In-Reply-To: <2322926.s1viZ6tSS3@phil> References: <1450873538-18304-1-git-send-email-ykk@rock-chips.com> <2322926.s1viZ6tSS3@phil> MIME-Version: 1.0 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20160117_062612_300321_5196C3EE X-CRM114-Status: GOOD ( 23.55 ) X-Spam-Score: -1.9 (-) X-BeenThere: linux-rockchip@lists.infradead.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: Upstream kernel work for Rockchip platforms List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: devicetree@vger.kernel.org, Krzysztof Kozlowski , linux-samsung-soc@vger.kernel.org, Russell King , linux-rockchip@lists.infradead.org, Jingoo Han , emil.l.velikov@gmail.com, linux-kernel@vger.kernel.org, dri-devel@lists.freedesktop.org, Kishon Vijay Abraham I , Inki Dae , javier@osg.samsung.com, Rob Herring , Andy Yan , Thierry Reding , Gustavo Padovan , linux-arm-kernel@lists.infradead.org, Mark Yao Sender: "Linux-rockchip" Errors-To: linux-rockchip-bounces+patchwork-linux-rockchip=patchwork.kernel.org@lists.infradead.org X-Spam-Status: No, score=-4.2 required=5.0 tests=BAYES_00, RCVD_IN_DNSWL_MED, RP_MATCHES_RCVD, UNPARSEABLE_RELAY autolearn=unavailable version=3.3.1 X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on mail.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP Hi Yakir, Am Mittwoch, 13. Januar 2016, 15:59:51 schrieb Heiko Stuebner: > Am Mittwoch, 23. Dezember 2015, 20:25:38 schrieb Yakir Yang: > > The Samsung Exynos eDP controller and Rockchip RK3288 eDP controller > > > > share the same IP, so a lot of parts can be re-used. I split the common > > code into bridge directory, then rk3288 and exynos only need to keep > > some platform code. Cause I can't find the exact IP name of exynos dp > > controller, so I decide to name dp core driver with "analogix" which I > > find in rk3288 eDP TRM > > could you rebase your patches on top of Dave's drm-next branch [0] please? > The exynos part got some const attributes for the *_func_ops structs and > drm_encoder_init got an additional parameter. > I'm still hoping that we can get this finally committed once 4.5-rc1 is > released in 1.5 weeks :-) . > > I did try to merge things together [1], the system at least comes up and > detects the panel (EDID is read correctly and it turns the backlight on) > but I don't see any output on the display - hdmi works fine though and > X11 is claiming everything to be fine in both cases. > > So I don't know yet if I made a mistake when putting this together or > there is an issue on the driver-side. I was able to debug this a bit more, and it seems the encoder_helper_funcs don't like the prepare/commit callbacks and like enable better. So when I do something similar to Marks patch a8eef71d38da ("drm/rockchip: dw_hdmi: use encoder enable function"), like in the attached patch (to be folded into the original addition of those functions), I get display output again. Heiko > [0] http://cgit.freedesktop.org/~airlied/linux/log/?h=drm-next > [1] https://github.com/mmind/linux-rockchip/tree/tmp/analogixdp_v12-veyron > I left out patch16, per your talk with Jingoo and me not seeing any AUX > CH errors without it. From 46e5badf6cf9b07461fc72279fe4617b644f8589 Mon Sep 17 00:00:00 2001 From: Heiko Stuebner Date: Sun, 17 Jan 2016 15:16:29 +0100 Subject: [PATCH] analogix_dp-rockchip: use .enable instead of preprare/commit in encoder_helper_funcs --- drivers/gpu/drm/rockchip/analogix_dp-rockchip.c | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/drivers/gpu/drm/rockchip/analogix_dp-rockchip.c b/drivers/gpu/drm/rockchip/analogix_dp-rockchip.c index 7cb3f6b..15619c5 100644 --- a/drivers/gpu/drm/rockchip/analogix_dp-rockchip.c +++ b/drivers/gpu/drm/rockchip/analogix_dp-rockchip.c @@ -108,7 +108,7 @@ static void rockchip_dp_drm_encoder_mode_set(struct drm_encoder *encoder, /* do nothing */ } -static void rockchip_dp_drm_encoder_prepare(struct drm_encoder *encoder) +static void rockchip_dp_drm_encoder_enable(struct drm_encoder *encoder) { struct rockchip_dp_device *dp = to_dp(encoder); int ret; @@ -161,8 +161,7 @@ static void rockchip_dp_drm_encoder_nop(struct drm_encoder *encoder) static const struct drm_encoder_helper_funcs rockchip_dp_encoder_helper_funcs = { .mode_fixup = rockchip_dp_drm_encoder_mode_fixup, .mode_set = rockchip_dp_drm_encoder_mode_set, - .prepare = rockchip_dp_drm_encoder_prepare, - .commit = rockchip_dp_drm_encoder_nop, + .enable = rockchip_dp_drm_encoder_enable, .disable = rockchip_dp_drm_encoder_nop, }; -- 2.6.4