Received: by 2002:a05:6a10:2785:0:0:0:0 with SMTP id ia5csp1825986pxb; Sun, 10 Jan 2021 12:22:48 -0800 (PST) X-Google-Smtp-Source: ABdhPJwSSq4TIPWA1b5ZRFDdk+C0iVAUgi10g64CgPGk2Aq6eRFWpfLoSJDrU0ZFJkKnZs6jEQg9 X-Received: by 2002:a17:906:1cd4:: with SMTP id i20mr9018463ejh.415.1610310168282; Sun, 10 Jan 2021 12:22:48 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1610310168; cv=none; d=google.com; s=arc-20160816; b=wlgu1dyE6MfVxU+5YUX8XR66duGuN3g7AhfABBiFVzjZQC+66jUs4SN2wiZIeX1PVT mnnnKGcdIdP9v9cIHFE8BFRmFgoaCdEKeBF8lahVye3aJDQKVujF6r9AjbC7V7qZy7wq cTH6U3dCd1m2ZhDFD4KDAc7pbaxXPhdxG2r42+ybm/CQM/1c6lrnsWEq+2adEb+qE7ON dZFbiUv5XYlPrg246HVhNxGdh81MEQfcp575WI1ZBdRFmlZED2+FOj7OR3AN3okx2a1Q wqjZ+bOcxS4jF5Qd7ClI42O1RrA0yH7AjufbgFGWaTwQg6NUkEFt3brLubpUJO0Ew1UL 3JPQ== 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 :references:in-reply-to:message-id:date:subject:cc:to:from; bh=kc3679UNcs5RO2/0SmkjseGIZ5a1Z2O+ogN3ZkCIgRQ=; b=mNSq+R1b5HA3ug8lfQdAsGC6mjHTUMjipaH2yG6KHP9sPfPT5KJKx7UbknI+Vvgcml X3JXPHfwoZozyoMGnle44iSO5Vz/2PDqhpfmo9M6r1DeFe/x2fVkVKnoIDwoIFePkA9n KEPoPbpuBTgTSABEWLGSdgLy/ouarI4Qqi8iZ1jVyjKXWVpPCo1cWfMHAxkZIxoXVOgn h9KzV8qGDWfGh3mu+mk4KcezRLdOVJpM8PG8zGqr4trOGmRGAuNBTV5KSC7jA8clxYlH GvHRPqgT72+6Qm05zXvYU2w0qjjnhcJsVUJamfOY4gDj6v2mjl3+/k3N1hKmB5hoWLzD Sxaw== ARC-Authentication-Results: i=1; mx.google.com; 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=fail (p=NONE sp=NONE dis=NONE) header.from=siol.net Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id i3si5991018edj.120.2021.01.10.12.22.24; Sun, 10 Jan 2021 12:22:48 -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; 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=fail (p=NONE sp=NONE dis=NONE) header.from=siol.net Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1727069AbhAJUUp (ORCPT + 99 others); Sun, 10 Jan 2021 15:20:45 -0500 Received: from mailoutvs23.siol.net ([185.57.226.214]:50936 "EHLO mail.siol.net" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1727027AbhAJUUo (ORCPT ); Sun, 10 Jan 2021 15:20:44 -0500 Received: from localhost (localhost [127.0.0.1]) by mail.siol.net (Postfix) with ESMTP id 9C3D05217D7; Sun, 10 Jan 2021 21:20:02 +0100 (CET) X-Virus-Scanned: amavisd-new at psrvmta11.zcs-production.pri Received: from mail.siol.net ([127.0.0.1]) by localhost (psrvmta11.zcs-production.pri [127.0.0.1]) (amavisd-new, port 10032) with ESMTP id 922D92QtKVk1; Sun, 10 Jan 2021 21:20:02 +0100 (CET) Received: from mail.siol.net (localhost [127.0.0.1]) by mail.siol.net (Postfix) with ESMTPS id 4FD4A521513; Sun, 10 Jan 2021 21:20:02 +0100 (CET) Received: from kista.localdomain (cpe-86-58-58-53.static.triera.net [86.58.58.53]) (Authenticated sender: 031275009) by mail.siol.net (Postfix) with ESMTPSA id 0E5595217D7; Sun, 10 Jan 2021 21:20:00 +0100 (CET) From: Jernej Skrabec To: mripard@kernel.org, wens@csie.org Cc: jernej.skrabec@siol.net, irlied@linux.ie, daniel@ffwll.ch, dri-devel@lists.freedesktop.org, linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, linux-sunxi@googlegroups.com Subject: [PATCH 3/3] drm/sun4i: Add support for BT2020 to DE3 Date: Sun, 10 Jan 2021 21:19:47 +0100 Message-Id: <20210110201947.3611649-4-jernej.skrabec@siol.net> X-Mailer: git-send-email 2.30.0 In-Reply-To: <20210110201947.3611649-1-jernej.skrabec@siol.net> References: <20210110201947.3611649-1-jernej.skrabec@siol.net> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org DE3 supports 10-bit formats, so it's only naturally to also support BT2020 encoding. Add support for it. Signed-off-by: Jernej Skrabec --- drivers/gpu/drm/sun4i/sun8i_csc.c | 12 +++++++++++- drivers/gpu/drm/sun4i/sun8i_vi_layer.c | 2 ++ 2 files changed, 13 insertions(+), 1 deletion(-) diff --git a/drivers/gpu/drm/sun4i/sun8i_csc.c b/drivers/gpu/drm/sun4i/su= n8i_csc.c index 1d10714e417e..9bd62de0c288 100644 --- a/drivers/gpu/drm/sun4i/sun8i_csc.c +++ b/drivers/gpu/drm/sun4i/sun8i_csc.c @@ -69,7 +69,7 @@ static const u32 yuv2rgb[2][2][12] =3D { * c20 c21 c22 [d2 const2] */ =20 -static const u32 yuv2rgb_de3[2][2][12] =3D { +static const u32 yuv2rgb_de3[2][3][12] =3D { [DRM_COLOR_YCBCR_LIMITED_RANGE] =3D { [DRM_COLOR_YCBCR_BT601] =3D { 0x0002542A, 0x00000000, 0x0003312A, 0xFFC00000, @@ -80,6 +80,11 @@ static const u32 yuv2rgb_de3[2][2][12] =3D { 0x0002542A, 0x00000000, 0x000395E2, 0xFFC00000, 0x0002542A, 0xFFFF92D2, 0xFFFEEF27, 0xFE000000, 0x0002542A, 0x0004398C, 0x00000000, 0xFE000000, + }, + [DRM_COLOR_YCBCR_BT2020] =3D { + 0x0002542A, 0x00000000, 0x00035B7B, 0xFFC00000, + 0x0002542A, 0xFFFFA017, 0xFFFEB2FC, 0xFE000000, + 0x0002542A, 0x00044896, 0x00000000, 0xFE000000, } }, [DRM_COLOR_YCBCR_FULL_RANGE] =3D { @@ -92,6 +97,11 @@ static const u32 yuv2rgb_de3[2][2][12] =3D { 0x00020000, 0x00000000, 0x0003264C, 0x00000000, 0x00020000, 0xFFFFA018, 0xFFFF1053, 0xFE000000, 0x00020000, 0x0003B611, 0x00000000, 0xFE000000, + }, + [DRM_COLOR_YCBCR_BT2020] =3D { + 0x00020000, 0x00000000, 0x0002F2FE, 0x00000000, + 0x00020000, 0xFFFFABC0, 0xFFFEDB78, 0xFE000000, + 0x00020000, 0x0003C346, 0x00000000, 0xFE000000, } }, }; diff --git a/drivers/gpu/drm/sun4i/sun8i_vi_layer.c b/drivers/gpu/drm/sun= 4i/sun8i_vi_layer.c index 76393fc976fe..8cc294a9969d 100644 --- a/drivers/gpu/drm/sun4i/sun8i_vi_layer.c +++ b/drivers/gpu/drm/sun4i/sun8i_vi_layer.c @@ -543,6 +543,8 @@ struct sun8i_vi_layer *sun8i_vi_layer_init_one(struct= drm_device *drm, =20 supported_encodings =3D BIT(DRM_COLOR_YCBCR_BT601) | BIT(DRM_COLOR_YCBCR_BT709); + if (mixer->cfg->is_de3) + supported_encodings |=3D BIT(DRM_COLOR_YCBCR_BT2020); =20 supported_ranges =3D BIT(DRM_COLOR_YCBCR_LIMITED_RANGE) | BIT(DRM_COLOR_YCBCR_FULL_RANGE); --=20 2.30.0