Received: by 2002:a05:6a10:f347:0:0:0:0 with SMTP id d7csp735974pxu; Mon, 23 Nov 2020 02:50:15 -0800 (PST) X-Google-Smtp-Source: ABdhPJxsPBFeiHQAOeEv12bv+xQHcQ7Kdf9p7ZpUIKMZogixx/YT9JMyjPoViPitEQx8WHqs8RN/ X-Received: by 2002:a17:906:4881:: with SMTP id v1mr5448992ejq.465.1606128615487; Mon, 23 Nov 2020 02:50:15 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1606128615; cv=none; d=google.com; s=arc-20160816; b=HHB0Ml4+OcNPROODxMZpdXldqIg6Q5kAmRceCLZdYPmXk30c5XcRJQ5o7o5DzAlcEC lzhLzqnLONGM2n5l+y9PHWL0Tinyj/00ysrQfK4wJtyoRBvECjfDZoyKrZmh9+EV8Y0+ KLRqVEVioQJP/JMbXk0lZt/IxH8S+dyq7UlX4o+vEDomW+77bV2fnLQUv9VKg5R1QZi4 1meyt7Vpbo3ykqtyrhNZoNtyMw/PbREop8HC5GWek3uHPDoo7yUfaRYcU/kUHg9yGjJo K5ditZPJQ1C41EPgwDRCGD7D/PuiP85Qo7cY7LZwGi1kTyG6xmRinLxDmMGzj0Mf7wfF AvIA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :message-id:date:subject:cc:to:from:dkim-signature; bh=bf3Dad1zscNI33FoKwPu/py5sOPRwrYDQb8QYdxZRy4=; b=mle0INAbPjl6nD5C7fAJjdTAuSk/mLS+lY8xVfM/8dpi/X7WAx7ywm+TYVw2EikAg9 5hJ9aaZvMnUM2VnGLnDGZ2qGEjWrrAb7Co+wP9j35+ZWco59iwJGK0hQlBTINz+OlaWA 13YSGvtXqgJcRQ7LHrm6ZJ+gr402tLSd4SV0gNb3zjZdBrDN9sDRmB943lQbgtJZX207 Kl5uUI1oY6IhjunhszeAAhEHiAFw2Se/lqRGphJo+dfKouZsBE/7vK4g4P5sKTA6ZVso Lo0+znWbd7ma0vqlazyHfnMS2nTwMHBdzpkKr8wyHjG7MxK77yk2lzSsh2EEs24MF4Ix 3WcA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b="VyY/UaY2"; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id y2si5727708ejf.663.2020.11.23.02.49.52; Mon, 23 Nov 2020 02:50:15 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b="VyY/UaY2"; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1728707AbgKWKqv (ORCPT + 99 others); Mon, 23 Nov 2020 05:46:51 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:39812 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1728690AbgKWKqv (ORCPT ); Mon, 23 Nov 2020 05:46:51 -0500 Received: from mail-ej1-x644.google.com (mail-ej1-x644.google.com [IPv6:2a00:1450:4864:20::644]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 139E1C0613CF for ; Mon, 23 Nov 2020 02:46:51 -0800 (PST) Received: by mail-ej1-x644.google.com with SMTP id 7so22623312ejm.0 for ; Mon, 23 Nov 2020 02:46:51 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=from:to:cc:subject:date:message-id:mime-version :content-transfer-encoding; bh=bf3Dad1zscNI33FoKwPu/py5sOPRwrYDQb8QYdxZRy4=; b=VyY/UaY2A1uZvQ9rve79LjJiOJL1CI3dvsrV3swg09sAABwIgosjjta5q8zhkrPoZZ 5zImlhFEsF3ai58SF4irPNNvGoRzCyvQztYAx8s+zLmSXjGZPa4RtMzUBMMT0cLt23/C yHjZ1Yj8/hds3Ex7rjyXLJLmFMIi2ICX9C4t2uVm1Fse395iKjIwzbqEi+10ZfRgT6Iq sAq6GIQrrm5vWPAyO3ox79zmrxHRCEhXPNxlT816oaz9+2B3VFo0jHrGboJxWIB/PPoG 7W+5YxoOUheRkD5Zysd3l0azMFn4ne6mj/iIiaJTmtMLK+ufVDO7sVGtP0KrUy8Hs0Lm QdQg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:mime-version :content-transfer-encoding; bh=bf3Dad1zscNI33FoKwPu/py5sOPRwrYDQb8QYdxZRy4=; b=SKTCvOUi9rTxqJp+LW5fE0JEMvd1GEScJc7deXAqsFhcjxGUu7M/APdemV91MDfuJo BUz8T8hcot4TXycV6FSdba4WCwD0yuzkgfi51zoyTykybVaq9ukdBoTfX24Sy1RTLJaX KBR9VcisE/u9qMAo7GixlRqfVj6gMNFrZkBwO4z8QmhTJDX6yFxQu9pK0h47KAMvVgYy 0oAGFw2j89IktENZ83NVW4IiDzEG6zN2h9uKA/aANxUvOWNPO/ksoOBZCdhEmxbAQeL+ HkiL0stcrALLW4qknebTJUz29GAvvVI2X83AvHX4Ydy+jtDQ6BFJwJznfI82J1yszNi/ wtYg== X-Gm-Message-State: AOAM531LqN6G/FpUfmHyAZI5ORcGL2dXW0MpW/CJLY7TbWrfJ0Tgz2dp I05FJPmRr8ffhvDcdSHf0cPfZg== X-Received: by 2002:a17:906:468d:: with SMTP id a13mr45376085ejr.253.1606128409768; Mon, 23 Nov 2020 02:46:49 -0800 (PST) Received: from localhost.localdomain ([2a02:2450:102f:d6a:f25:a362:ce86:20d]) by smtp.gmail.com with ESMTPSA id gf9sm4792416ejb.18.2020.11.23.02.46.48 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 23 Nov 2020 02:46:49 -0800 (PST) From: Robert Foss To: a.hajda@samsung.com, narmstrong@baylibre.com, Laurent.pinchart@ideasonboard.com, jonas@kwiboo.se, jernej.skrabec@siol.net, airlied@linux.ie, daniel@ffwll.ch, dri-devel@lists.freedesktop.org, linux-kernel@vger.kernel.org, John Stultz , Peter Collingbourne Cc: Alistair Delva , Vinod Koul , Anibal Limon , Bjorn Andersson , Robert Foss Subject: [PATCH v1] drm/bridge: lt9611: Fix handling of 4k panels Date: Mon, 23 Nov 2020 11:46:16 +0100 Message-Id: <20201123104616.1412688-1-robert.foss@linaro.org> X-Mailer: git-send-email 2.27.0 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org 4k requires two dsi pipes, so don't report MODE_OK when only a single pipe is configured. But rather report MODE_PANEL to signal that requirements of the panel are not being met. Reported-by: Peter Collingbourne Suggested-by: Peter Collingbourne Signed-off-by: Robert Foss Tested-by: John Stultz --- drivers/gpu/drm/bridge/lontium-lt9611.c | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/drivers/gpu/drm/bridge/lontium-lt9611.c b/drivers/gpu/drm/bridge/lontium-lt9611.c index d734d9402c35..e8eb8deb444b 100644 --- a/drivers/gpu/drm/bridge/lontium-lt9611.c +++ b/drivers/gpu/drm/bridge/lontium-lt9611.c @@ -867,8 +867,14 @@ static enum drm_mode_status lt9611_bridge_mode_valid(struct drm_bridge *bridge, const struct drm_display_mode *mode) { struct lt9611_mode *lt9611_mode = lt9611_find_mode(mode); + struct lt9611 *lt9611 = bridge_to_lt9611(bridge); - return lt9611_mode ? MODE_OK : MODE_BAD; + if (!lt9611_mode) + return MODE_BAD; + else if (lt9611_mode->intfs > 1 && !lt9611->dsi1) + return MODE_PANEL; + else + return MODE_OK; } static void lt9611_bridge_pre_enable(struct drm_bridge *bridge) -- 2.27.0