From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1755601AbcEXKRk (ORCPT ); Tue, 24 May 2016 06:17:40 -0400 Received: from gloria.sntech.de ([95.129.55.99]:49067 "EHLO gloria.sntech.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1753730AbcEXKRi convert rfc822-to-8bit (ORCPT ); Tue, 24 May 2016 06:17:38 -0400 From: Heiko Stuebner To: Yakir Yang Cc: David Airlie , Inki Dae , Mark Yao , Thierry Reding , Jingoo Han , Rob Herring , Krzysztof Kozlowski , Douglas Anderson , Daniel Vetter , Javier Martinez Canillas , emil.l.velikov@gmail.com, Dan Carpenter , linux-kernel@vger.kernel.org, dri-devel@lists.freedesktop.org, linux-samsung-soc@vger.kernel.org, linux-rockchip@lists.infradead.org Subject: Re: [PATCH v2 05/10] drm/rockchip: analogix_dp: add rk3399 eDP support Date: Tue, 24 May 2016 12:17:12 +0200 Message-ID: <6183955.XzKjc41sjW@phil> User-Agent: KMail/4.14.10 (Linux/4.3.0-1-amd64; KDE/4.14.14; x86_64; ; ) In-Reply-To: <1464073043-4931-1-git-send-email-ykk@rock-chips.com> References: <1464066147-22734-1-git-send-email-ykk@rock-chips.com> <1464073043-4931-1-git-send-email-ykk@rock-chips.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8BIT Content-Type: text/plain; charset="utf-8" Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Am Dienstag, 24. Mai 2016, 14:57:23 schrieb Yakir Yang: > RK3399 and RK3288 shared the same eDP IP controller, only some light > difference with VOP configure and GRF configure. > > Signed-off-by: Yakir Yang > --- > Changes in v2: > - rebase with drm-next, fix some conflicts > > .../bindings/display/bridge/analogix_dp.txt | 1 + > .../display/rockchip/analogix_dp-rockchip.txt | 2 +- > drivers/gpu/drm/rockchip/analogix_dp-rockchip.c | 36 > ++++++++++++++++++++-- include/drm/bridge/analogix_dp.h > | 1 + > 4 files changed, 37 insertions(+), 3 deletions(-) > > diff --git > a/Documentation/devicetree/bindings/display/bridge/analogix_dp.txt > b/Documentation/devicetree/bindings/display/bridge/analogix_dp.txt index > 4f2ba8c..4a0f4f7 100644 > --- a/Documentation/devicetree/bindings/display/bridge/analogix_dp.txt > +++ b/Documentation/devicetree/bindings/display/bridge/analogix_dp.txt > @@ -5,6 +5,7 @@ Required properties for dp-controller: > platform specific such as: > * "samsung,exynos5-dp" > * "rockchip,rk3288-dp" > + * "rockchip,rk3399-edp" the cleanlines-freak in my likes to know if there is a difference between the rk3399 being called -edp here and -dp on the rk3288 :-) [...] > diff --git a/drivers/gpu/drm/rockchip/analogix_dp-rockchip.c > b/drivers/gpu/drm/rockchip/analogix_dp-rockchip.c index 29c4105..d5d4e04 > 100644 > --- a/drivers/gpu/drm/rockchip/analogix_dp-rockchip.c > +++ b/drivers/gpu/drm/rockchip/analogix_dp-rockchip.c > @@ -148,6 +148,10 @@ rockchip_dp_drm_encoder_atomic_check(struct > drm_encoder *encoder, struct drm_connector_state *conn_state) > { > struct rockchip_crtc_state *s = to_rockchip_crtc_state(crtc_state); > + struct rockchip_dp_device *dp = to_dp(encoder); > + int ret; > + > + s->output_type = DRM_MODE_CONNECTOR_eDP; > > /* > * FIXME(Yakir): driver should configure the CRTC output video > @@ -162,8 +166,27 @@ rockchip_dp_drm_encoder_atomic_check(struct > drm_encoder *encoder, * But if I configure CTRC to RGBaaa, and eDP driver > still keep * RGB666 input video mode, then screen would works prefect. > */ > - s->output_mode = ROCKCHIP_OUT_MODE_AAAA; > - s->output_type = DRM_MODE_CONNECTOR_eDP; > + > + ret = drm_of_encoder_active_endpoint_id(dp->dev->of_node, encoder); > + if (ret < 0) > + return; this needs a value returned (probably ret), otherwise you create a warning: ‘return’ with no value, in function returning non-void drm_of_encoder_active_endpoint_id also always returns -EINVAL on rk3288- veyron-jerry because encoder->crtc is unset in drm_of_encoder_active_endpoint and that breaks display output right now. Looking through drm code it seems only two functions would set encoder->crtc - drm_atomic_helper_update_legacy_modeset_state - drm_crtc_helper_set_config drm_crtc_helper_set_config callback got dropped in the atomic-conversion and the other sounds to be somewhat in the legacy area. After that drm-internals get a bit confusing. Heiko