Received: by 2002:a25:1506:0:0:0:0:0 with SMTP id 6csp1872015ybv; Thu, 6 Feb 2020 11:19:51 -0800 (PST) X-Google-Smtp-Source: APXvYqyHTkrHiT1/sLcmhc7I3xWHS7bKj092aNP16NQ8jltRXGoVcwPbOctgPIQGQPqcLge58YCs X-Received: by 2002:aca:2210:: with SMTP id b16mr7765600oic.32.1581016791190; Thu, 06 Feb 2020 11:19:51 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1581016791; cv=none; d=google.com; s=arc-20160816; b=iFpeRg/NRs32qQvfvxB1r2B7q9RsqBcHKmQ02gqiw2twBGn1CKLXEo2y1rU8WTjhaS JhrZLAcNsTqFO4rSptmL4Sn0CJsXYGiws97f5d1MEAIrcVb51MeUw8sPWklGqSqM6Cxf CQ7nV0j5eiQGeg2gxUQ70a7kmC78snzVc1I6z1JK1bcpx+JNIOWgiNvVToYe+b9vCD9V qKc1heA3Fb7Q/yJU3z1qvuAKgC0SQhgDUDC5OOidSPLVN5jlUr3ZFraXRcShYaqCw8HK rYocOA/jG2cTZHD+77N3kb5SrGn5QBd/Ck0nTvgjZeY95YtbdmvY2JkOeVT+QMxnvVB2 VWig== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding:mime-version :message-id:date:subject:cc:to:from:dkim-signature; bh=7C4Ha7zAXoHJLeQuNXMkRQPbmeP4ogREDDVwBdo96PU=; b=gPnh5TNlszWExmVJDXq64oLDR+SrEQ7vl5g4cJ4UPde3dIYvs5jgorn2FJcqq6r8N7 6lycsVsrp6Ff3eulBMR7CT4Y2rmj4qsi+oSZGODfpd2E/KIf7FvQjH+RQDLskNvg+P1r JNCJY+azABFlKx6OJBrxGJPDGDRzgW1vgVDrhf+c16O/SseCKKvTv8BW8yZ09qmpKHzQ 9R31blARSvyaTkRnPwMOZw/ecfI8ro0CMG//A+T1cCVMpVkQz9Hq76fIYWsQQG7cPfG2 e4F6bJAzwYczeJ5UmoZfZqiJNbptBTZwiYx6F/f8miG+h6Dx71xhCpXvJcMnq8wo1pve TJGQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@baylibre-com.20150623.gappssmtp.com header.s=20150623 header.b=DxnTXJPq; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id m16si324341otj.7.2020.02.06.11.19.39; Thu, 06 Feb 2020 11:19:51 -0800 (PST) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; dkim=pass header.i=@baylibre-com.20150623.gappssmtp.com header.s=20150623 header.b=DxnTXJPq; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1727836AbgBFTSk (ORCPT + 99 others); Thu, 6 Feb 2020 14:18:40 -0500 Received: from mail-wr1-f65.google.com ([209.85.221.65]:43574 "EHLO mail-wr1-f65.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1727479AbgBFTSk (ORCPT ); Thu, 6 Feb 2020 14:18:40 -0500 Received: by mail-wr1-f65.google.com with SMTP id z9so8541817wrs.10 for ; Thu, 06 Feb 2020 11:18:38 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=baylibre-com.20150623.gappssmtp.com; s=20150623; h=from:to:cc:subject:date:message-id:mime-version :content-transfer-encoding; bh=7C4Ha7zAXoHJLeQuNXMkRQPbmeP4ogREDDVwBdo96PU=; b=DxnTXJPqXXPnizJLFNrqa8GwJ8gMWT/axeWYGzcs3ljXjPgGTyKNnBVVA21YieyHxn k6v/3pUpzARJ8UF8hbtsbjgwA5koasldIhE9esnWmv9fb8wrU30l7FpIa2j9RZLV21nM NQjz6sWEVlRvKoNM9icc+5FvS9SOzdX5tWCRYpAigUOBi1QUUh+f8YhLwrw+zvOyEecl ppc45FZOr/DBqaSDGmVBYBlRWqs1Q0h8ACoyqG1Oglt2yIRBAB92tqdBciC2LQEBu6hm DF49GWWLO91Z3pIJDuBYpqgB/w8lx5C5sV0p+/R7MhYxbVu2s7Vs+bUszVITV2jVje+G Cf0g== 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=7C4Ha7zAXoHJLeQuNXMkRQPbmeP4ogREDDVwBdo96PU=; b=mgCEItdcMUzwz5Z6eFtOgExDs4jtrk027aOalmnxYUBJnFwjXAy8JDnV1cnpFFm4Pe E3h6Dzii1AIF/GkbK1YnceE9f3n7xEy8loPWKF90eksqRtrd16u/tWi2TSrD3emMSnlg X38Ll6x9l2SJQ+yeiyQNvOhL/dqEI5L3hDUMXUIkqhrkhNjbCMaiz2w68aLTe+YqaW9R 7LFT7d2A/7ITaMw4nvNBewmEj2LZ7ORj8wEzSfFlFRzUyHob+4cDffY/ZH04MMmYdLzZ k8zz3sm5S+eicbuZ656+fPEuPHDHPIY5hBFD/Ln3QBMia7wyia2XpMyo6BV4zFJGNd+R lKRQ== X-Gm-Message-State: APjAAAW6fHUPDyWv5E4CTMI3bfhwDVpfryANSMBx5Sk7ifGavWgnOab2 dxAZJd79icO4hJ5vM9IHs4cXTw== X-Received: by 2002:a05:6000:4:: with SMTP id h4mr5608872wrx.403.1581016717398; Thu, 06 Feb 2020 11:18:37 -0800 (PST) Received: from bender.baylibre.local ([2a01:e35:2ec0:82b0:7d33:17f7:8097:ecc7]) by smtp.gmail.com with ESMTPSA id m3sm272662wrs.53.2020.02.06.11.18.36 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 06 Feb 2020 11:18:36 -0800 (PST) From: Neil Armstrong To: a.hajda@samsung.com, Laurent.pinchart@ideasonboard.com, jonas@kwiboo.se, jernej.skrabec@siol.net, boris.brezillon@collabora.com Cc: Neil Armstrong , linux-amlogic@lists.infradead.org, dri-devel@lists.freedesktop.org, linux-kernel@vger.kernel.org Subject: [PATCH v4 00/11] drm/bridge: dw-hdmi: implement bus-format negotiation and YUV420 support Date: Thu, 6 Feb 2020 20:18:23 +0100 Message-Id: <20200206191834.6125-1-narmstrong@baylibre.com> X-Mailer: git-send-email 2.22.0 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org This patchset is based on Boris's v10 "drm: Add support for bus-format negotiation" at [1] patchset to implement full bus-format negotiation for DW-HDMI, including YUV420 support and 10/12/16bit YUV444, YUV422 and RGB. The Color Space Converter support is already implemented. And the counterpart implementation in the Amlogic Meson VPU dw-hdmi glue : - basic bus-format negotiation to select YUV444 bus-format as DW-HDMI input - YUV420 support when HDMI2.0 YUV420 modeset This is a follow-up from the previous attempts : - "drm/meson: Add support for HDMI2.0 YUV420 4k60" at [2] - "drm/meson: Add support for HDMI2.0 4k60" at [3] Changes sincd v3 at [6]: - Added "Plug atomic state hooks to the default implementation" on drm/bridge: dw-hdmi - Also added these atomic state hooks in meson-dw-hdmi in patch 7 - Rebased on latest drm-misc-next including patches 1-7 of [1] Changes since RFC v2 at [5]: - Added fixes from Jonas, who tested and integrated it for Rockchip SoCs - Added support for 10/12/16bit tmds clock calculation - Added support for max_bcp connector property - Adapted to Boris's v4 patchset - Fixed typos reported by boris Changes since RFC v1 at [4]: - Rewrote negociation using the v2 patchset, including full DW-HDMI fmt negociation [1] https://patchwork.freedesktop.org/patch/msgid/20200128135514.108171-1-boris.brezillon@collabora.com [2] https://patchwork.freedesktop.org/patch/msgid/20190520133753.23871-1-narmstrong@baylibre.com [3] https://patchwork.freedesktop.org/patch/msgid/1549022873-40549-1-git-send-email-narmstrong@baylibre.com [4] https://patchwork.freedesktop.org/patch/msgid/20190820084109.24616-1-narmstrong@baylibre.com [5] https://patchwork.freedesktop.org/patch/msgid/20190827081425.15011-1-narmstrong@baylibre.com [6] https://patchwork.freedesktop.org/patch/msgid/20191218154637.17509-1-narmstrong@baylibre.com Jonas Karlman (2): drm/bridge: dw-hdmi: set mtmdsclock for deep color drm/bridge: dw-hdmi: add max bpc connector property Neil Armstrong (9): drm/bridge: dw-hdmi: Plug atomic state hooks to the default implementation drm/bridge: synopsys: dw-hdmi: add bus format negociation drm/bridge: synopsys: dw-hdmi: allow ycbcr420 modes for >= 0x200a drm/meson: venc: make drm_display_mode const drm/meson: meson_dw_hdmi: add bridge and switch to drm_bridge_funcs drm/meson: dw-hdmi: stop enforcing input_bus_format drm/meson: venc: add support for YUV420 setup drm/meson: vclk: add support for YUV420 setup drm/meson: Add YUV420 output support drivers/gpu/drm/bridge/synopsys/dw-hdmi.c | 302 +++++++++++++++++++++- drivers/gpu/drm/meson/meson_dw_hdmi.c | 200 +++++++++++--- drivers/gpu/drm/meson/meson_vclk.c | 93 +++++-- drivers/gpu/drm/meson/meson_vclk.h | 7 +- drivers/gpu/drm/meson/meson_venc.c | 10 +- drivers/gpu/drm/meson/meson_venc.h | 4 +- drivers/gpu/drm/meson/meson_venc_cvbs.c | 6 +- include/drm/bridge/dw_hdmi.h | 1 + 8 files changed, 548 insertions(+), 75 deletions(-) -- 2.22.0