From mboxrd@z Thu Jan 1 00:00:00 1970 From: eric@anholt.net (Eric Anholt) Date: Thu, 11 Jan 2018 12:19:53 -0800 Subject: [PATCH 4/4 v6] drm/pl111: Support handling bridge timings In-Reply-To: <20180110141226.27826-4-linus.walleij@linaro.org> References: <20180110141226.27826-1-linus.walleij@linaro.org> <20180110141226.27826-4-linus.walleij@linaro.org> Message-ID: <87h8rsup06.fsf@anholt.net> To: linux-arm-kernel@lists.infradead.org List-Id: linux-arm-kernel.lists.infradead.org Linus Walleij writes: > If the bridge has a too strict setup time for the incoming > signals, we may not be fast enough and then we need to > compensate by outputting the signal on the inverse clock > edge so it is for sure stable when the bridge samples it. > > Since bridges in difference to panels does not expose their > connectors, make the connector optional in the display > setup code. > > Acked-by: Laurent Pinchart > Signed-off-by: Linus Walleij > --- > ChangeLog v5->v6: > - Collect Laurent's ACK. > ChangeLog v4->v5: > - Use the new bridge timings setup method. > --- > drivers/gpu/drm/pl111/Kconfig | 1 + > drivers/gpu/drm/pl111/pl111_display.c | 35 +++++++++++++++++++++++++++++++---- > drivers/gpu/drm/pl111/pl111_drv.c | 20 +++++++++++--------- > 3 files changed, 43 insertions(+), 13 deletions(-) > > diff --git a/drivers/gpu/drm/pl111/Kconfig b/drivers/gpu/drm/pl111/Kconfig > index e5e2abd66491..82cb3e60ddc8 100644 > --- a/drivers/gpu/drm/pl111/Kconfig > +++ b/drivers/gpu/drm/pl111/Kconfig > @@ -8,6 +8,7 @@ config DRM_PL111 > select DRM_GEM_CMA_HELPER > select DRM_BRIDGE > select DRM_PANEL_BRIDGE > + select DRM_DUMB_VGA_DAC > select VT_HW_CONSOLE_BINDING if FRAMEBUFFER_CONSOLE > help > Choose this option for DRM support for the PL111 CLCD controller. Should this be in PL111, or in whatever machine is a consumer of this driver plus a dumb dac? I'm OK either way, it's not a big deal for the platform I've got. > diff --git a/drivers/gpu/drm/pl111/pl111_drv.c b/drivers/gpu/drm/pl111/pl111_drv.c > index 201d57d5cb54..101a9c7db6ff 100644 > --- a/drivers/gpu/drm/pl111/pl111_drv.c > +++ b/drivers/gpu/drm/pl111/pl111_drv.c > @@ -107,11 +107,17 @@ static int pl111_modeset_init(struct drm_device *dev) > ret = PTR_ERR(bridge); > goto out_config; > } > - /* > - * TODO: when we are using a different bridge than a panel > - * (such as a dumb VGA connector) we need to devise a different > - * method to get the connector out of the bridge. > - */ > + } else if (bridge) { > + dev_info(dev->dev, "Using non-panel bridge\n"); This looks like it might be a debug printf you didn't intend to leave in. Either way, the patch gets my: Reviewed-by: Eric Anholt -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 832 bytes Desc: not available URL: From mboxrd@z Thu Jan 1 00:00:00 1970 From: Eric Anholt Subject: Re: [PATCH 4/4 v6] drm/pl111: Support handling bridge timings Date: Thu, 11 Jan 2018 12:19:53 -0800 Message-ID: <87h8rsup06.fsf@anholt.net> References: <20180110141226.27826-1-linus.walleij@linaro.org> <20180110141226.27826-4-linus.walleij@linaro.org> Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="===============1665261121==" Return-path: Received: from anholt.net (anholt.net [50.246.234.109]) by gabe.freedesktop.org (Postfix) with ESMTP id BC48E6E32F for ; Thu, 11 Jan 2018 20:19:58 +0000 (UTC) In-Reply-To: <20180110141226.27826-4-linus.walleij@linaro.org> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: Linus Walleij , Archit Taneja , Andrzej Hajda , Laurent Pinchart Cc: linux-arm-kernel@lists.infradead.org, dri-devel@lists.freedesktop.org List-Id: dri-devel@lists.freedesktop.org --===============1665261121== Content-Type: multipart/signed; boundary="=-=-="; micalg=pgp-sha512; protocol="application/pgp-signature" --=-=-= Content-Type: text/plain Linus Walleij writes: > If the bridge has a too strict setup time for the incoming > signals, we may not be fast enough and then we need to > compensate by outputting the signal on the inverse clock > edge so it is for sure stable when the bridge samples it. > > Since bridges in difference to panels does not expose their > connectors, make the connector optional in the display > setup code. > > Acked-by: Laurent Pinchart > Signed-off-by: Linus Walleij > --- > ChangeLog v5->v6: > - Collect Laurent's ACK. > ChangeLog v4->v5: > - Use the new bridge timings setup method. > --- > drivers/gpu/drm/pl111/Kconfig | 1 + > drivers/gpu/drm/pl111/pl111_display.c | 35 +++++++++++++++++++++++++++++++---- > drivers/gpu/drm/pl111/pl111_drv.c | 20 +++++++++++--------- > 3 files changed, 43 insertions(+), 13 deletions(-) > > diff --git a/drivers/gpu/drm/pl111/Kconfig b/drivers/gpu/drm/pl111/Kconfig > index e5e2abd66491..82cb3e60ddc8 100644 > --- a/drivers/gpu/drm/pl111/Kconfig > +++ b/drivers/gpu/drm/pl111/Kconfig > @@ -8,6 +8,7 @@ config DRM_PL111 > select DRM_GEM_CMA_HELPER > select DRM_BRIDGE > select DRM_PANEL_BRIDGE > + select DRM_DUMB_VGA_DAC > select VT_HW_CONSOLE_BINDING if FRAMEBUFFER_CONSOLE > help > Choose this option for DRM support for the PL111 CLCD controller. Should this be in PL111, or in whatever machine is a consumer of this driver plus a dumb dac? I'm OK either way, it's not a big deal for the platform I've got. > diff --git a/drivers/gpu/drm/pl111/pl111_drv.c b/drivers/gpu/drm/pl111/pl111_drv.c > index 201d57d5cb54..101a9c7db6ff 100644 > --- a/drivers/gpu/drm/pl111/pl111_drv.c > +++ b/drivers/gpu/drm/pl111/pl111_drv.c > @@ -107,11 +107,17 @@ static int pl111_modeset_init(struct drm_device *dev) > ret = PTR_ERR(bridge); > goto out_config; > } > - /* > - * TODO: when we are using a different bridge than a panel > - * (such as a dumb VGA connector) we need to devise a different > - * method to get the connector out of the bridge. > - */ > + } else if (bridge) { > + dev_info(dev->dev, "Using non-panel bridge\n"); This looks like it might be a debug printf you didn't intend to leave in. Either way, the patch gets my: Reviewed-by: Eric Anholt --=-=-= Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- iQIzBAEBCgAdFiEE/JuuFDWp9/ZkuCBXtdYpNtH8nugFAlpXxukACgkQtdYpNtH8 nugh6Q/9HekTYEMeBe9pNGDnHmKjr8qOfNffaCAyhMzrLDNUBV+hxvl/o5yIFnk6 uDky+6hEFdTshOgr1ijF/0abuDp/1/5vOvduvT1cHzU1XE1eEHOpzwF2CfsOCb7a dpMTe3zMN0T0kkdHyLrtgfbQLiLHe2LDW57zV9Xl52q/SbYMcG6T4Dpc+XUr/tmn ghpWsAKZsus7foNaomdaoc6VZe12q8XSUd/H7jpEy02vjVbgbf8j2wYwWuK4kGOQ UMnYkRo10YBDmLIavr68zjUYeKU8mi+Lcmufr1wu3uL+x4JEXumIZ/3nw40GqCKI 6+oZZ3oHRNf8Q53Fp08AF7Kqt074jjeSodp1+wCTBZbv2o876pv5JYsa49DuQXWY XB8BXtEK5uqmkg3CgSkmjU1XfEYPifVwpsWXCyjjkXc2x1oVbBanf9cwXPVAgf3C 3KAkV+esQ4dMByoyuwkHT1UUGN5gNVZkCJ+u8D82o9+tw/F2ib2780gWpeNrJyz3 H1Lqzr8lADW2wzr5AbVu23TN9GtPbZrBEM2qa11zEE+H/tQK0cmTkrazZIw0n0RO PJMr1/fzcEbrIojRqzhvg8hXLpuZ1Z0R/A2A+7UHsisaCcYLXIGXRlM+6RsNyGoI QtZ5oxAiQCVI3sXyzVSxwOQWoU4V4cLLL0jCLHfYi2HLzMzBF48= =RLx7 -----END PGP SIGNATURE----- --=-=-=-- --===============1665261121== Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 Content-Disposition: inline X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KZHJpLWRldmVs IG1haWxpbmcgbGlzdApkcmktZGV2ZWxAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlz dHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vZHJpLWRldmVsCg== --===============1665261121==--