From patchwork Thu Jun 10 11:12:34 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Thierry Reding X-Patchwork-Id: 12312697 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-13.5 required=3.0 tests=BAYES_00, DKIM_ADSP_CUSTOM_MED,DKIM_INVALID,DKIM_SIGNED,FREEMAIL_FORGED_FROMDOMAIN, FREEMAIL_FROM,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_CR_TRAILER, INCLUDES_PATCH,MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED, USER_AGENT_GIT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 7E2F5C47094 for ; Thu, 10 Jun 2021 11:11:01 +0000 (UTC) Received: from gabe.freedesktop.org (gabe.freedesktop.org [131.252.210.177]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id 3CF886128A for ; Thu, 10 Jun 2021 11:11:01 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 3CF886128A Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=gmail.com Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=dri-devel-bounces@lists.freedesktop.org Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id 6766D6E4C5; Thu, 10 Jun 2021 11:11:00 +0000 (UTC) Received: from mail-wm1-x32f.google.com (mail-wm1-x32f.google.com [IPv6:2a00:1450:4864:20::32f]) by gabe.freedesktop.org (Postfix) with ESMTPS id A4F0B6E1DE for ; Thu, 10 Jun 2021 11:10:58 +0000 (UTC) Received: by mail-wm1-x32f.google.com with SMTP id l11-20020a05600c4f0bb029017a7cd488f5so6200051wmq.0 for ; Thu, 10 Jun 2021 04:10:58 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id:mime-version :content-transfer-encoding; bh=JUI62iOUljGBICelPT/HeQgi8+XFwHWZxTIpml7ykIY=; b=r6xevSU6lzB8tJxNHC5dQZMiQZ6fVIuiOkCN+UHyg5Tqoke4zatOQoiFzlxBxquG4m PyXhg1Qh5CJoBHu+w0dE6hdJhYmUfjY2MjEJ9I/U8m8td9Z24g6EVcDF1EJzHPo+epPd CeNtC67cUjNyx6YhkaQDFxvm3Q7RV1yo1hcUh7JbghFE4rUMMrh12+e9sVg4kU54pD2S 3aRMTQ1xEGyBlPCUxAqF3VCYJzaLwHEhSin35o/dXl11+qt57w1eOsSM4ougW5lljLo3 W09Fm2LdLzwnhiiXw/e0L3cEUR5xkwELGhNksqDifiQHJ5gJHBN0e37QQUl/lwQPHQEV ZemQ== 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=JUI62iOUljGBICelPT/HeQgi8+XFwHWZxTIpml7ykIY=; b=CJthOAS4nTfJMCk4+3ksJtKJ/G3Wq/Av7+eBCX9WMxknJYTyaS6rAI812AANNeWmvD wwPNh+zGwwmVyKJlKHQ0Jo3oqOmOqQOEb9s+JmZXQh6uGZ9Uj6es/Yu1Kssv+QvC3XZ3 eNCsU97qsAVw0yfJ14A1HlT9bKwk1n++x/nYNw7+9zDPzYQYP7cOjRnA5xRcTGqEmd4c fkfuiRKQeQT8L9tLlsAVkD0ojLpwoO+xZnbyuCALT6K7/bGTz0GBi8d5jyIi+9n14Wmx WUyHTYVkZRLjjAue/Dy8pvmzOZDp1NoyZjcFZuHaIWSgte8YtDV0iStnDPTZjmPhq9iA cqpQ== X-Gm-Message-State: AOAM5328OCdP3r6rt04CikL09+GrnPTKjj9oh2oNCuDCGnOd8qVyk9I3 nDDr3oQ3fesSFfiTOmzYFHw1gsI0yG4= X-Google-Smtp-Source: ABdhPJwKsLXN9vZI6DHgytzqOkPrbnNEtBROxLr2MuWq6NEcTnFmqnAIyb4erOeUfXdXYtykFuEwAA== X-Received: by 2002:a1c:7c13:: with SMTP id x19mr14580625wmc.96.1623323456894; Thu, 10 Jun 2021 04:10:56 -0700 (PDT) Received: from localhost ([62.96.65.119]) by smtp.gmail.com with ESMTPSA id w11sm3021474wrv.89.2021.06.10.04.10.55 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 10 Jun 2021 04:10:56 -0700 (PDT) From: Thierry Reding To: dri-devel@lists.freedesktop.org Subject: [PATCH 1/3] drm/fourcc: Add macros to determine the modifier vendor Date: Thu, 10 Jun 2021 13:12:34 +0200 Message-Id: <20210610111236.3814211-1-thierry.reding@gmail.com> X-Mailer: git-send-email 2.31.1 MIME-Version: 1.0 X-BeenThere: dri-devel@lists.freedesktop.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Direct Rendering Infrastructure - Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: David Airlie , Thomas Zimmermann , Daniel Vetter , Daniel Stone Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" From: Thierry Reding When working with framebuffer modifiers, it can be useful to extract the vendor identifier or check a modifier against a given vendor identifier. Add one macro that extracts the vendor identifier and a helper to check a modifier against a given vendor identifier. Reviewed-by: Daniel Vetter Acked-by: Daniel Stone Signed-off-by: Thierry Reding --- include/uapi/drm/drm_fourcc.h | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/include/uapi/drm/drm_fourcc.h b/include/uapi/drm/drm_fourcc.h index f7156322aba5..36771d8ffc4a 100644 --- a/include/uapi/drm/drm_fourcc.h +++ b/include/uapi/drm/drm_fourcc.h @@ -373,6 +373,12 @@ extern "C" { #define DRM_FORMAT_RESERVED ((1ULL << 56) - 1) +#define fourcc_mod_get_vendor(modifier) \ + (((modifier) >> 56) & 0xff) + +#define fourcc_mod_is_vendor(modifier, vendor) \ + (fourcc_mod_get_vendor(modifier) == DRM_FORMAT_MOD_VENDOR_## vendor) + #define fourcc_mod_code(vendor, val) \ ((((__u64)DRM_FORMAT_MOD_VENDOR_## vendor) << 56) | ((val) & 0x00ffffffffffffffULL)) From patchwork Thu Jun 10 11:12:35 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Thierry Reding X-Patchwork-Id: 12312699 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-13.5 required=3.0 tests=BAYES_00, DKIM_ADSP_CUSTOM_MED,DKIM_INVALID,DKIM_SIGNED,FREEMAIL_FORGED_FROMDOMAIN, FREEMAIL_FROM,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_CR_TRAILER, INCLUDES_PATCH,MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED, USER_AGENT_GIT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 2A6AAC48BDF for ; Thu, 10 Jun 2021 11:11:06 +0000 (UTC) Received: from gabe.freedesktop.org (gabe.freedesktop.org [131.252.210.177]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id E6D9C613DF for ; Thu, 10 Jun 2021 11:11:05 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org E6D9C613DF Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=gmail.com Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=dri-devel-bounces@lists.freedesktop.org Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id 7D2696E1DE; Thu, 10 Jun 2021 11:11:03 +0000 (UTC) Received: from mail-wr1-x42c.google.com (mail-wr1-x42c.google.com [IPv6:2a00:1450:4864:20::42c]) by gabe.freedesktop.org (Postfix) with ESMTPS id 2D6A96E1DE for ; Thu, 10 Jun 2021 11:11:02 +0000 (UTC) Received: by mail-wr1-x42c.google.com with SMTP id l2so1823925wrw.6 for ; Thu, 10 Jun 2021 04:11:02 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=ky5Kpe2t4rqcmS1P6ETrRh0lq4Wv9QSSmNhBLDEJIys=; b=D6jPESI+fdTnPeqy4l6ZRgQBqKADAKLBQpp45BfUI7bivF6mI+Jz8jnOt0NoHBBqqT KKSmmmT6RZ0yT4c7OV89MUrxDLUjf5WMn9ksyFYVBifJGqrtUOwipO4u0scKAWMrx+/g qeDV8ZNsd488aUVL8nFKZhImEfE+QDQMdHAy6WlmPBPHmx5kvuMnnRBCvJlA+r8c9hM4 +UEJObkmxPiw4e6R0bJ91xJnBCR3BDq5hwk6M8CyzSmqouFvkiDzPf6hGmTUYqe4hZlL 0xIvw70ivrNwj7SGd2MIkWcObHxqgh9nf9l9GnN8pI6qLjq/4WfQZjsppHwSgWB0QCOE JT8g== 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:in-reply-to :references:mime-version:content-transfer-encoding; bh=ky5Kpe2t4rqcmS1P6ETrRh0lq4Wv9QSSmNhBLDEJIys=; b=If/qSlXSqvxVy2zK0uBRla737aURaAb7/SVbmvkbFiA9rVrCh3MzQN8dOCwYYlay26 zqTxjcM74aEKQvNKpkuGckB6NLqKXot63AB1HWMY6omDnwx4AHlDSGM7mwBK7zKL7E91 chAjueMi1TuJpWbsldUbxaQ/Q7EedHqNIrUT2PqqP7sDxG7JSLgbTTiNNT8X8apH+0+H 5vYcC1qDBkFoGAL/IEFYMkQ50GGZPnOrT3NXIui69PdleXyr4dq/YOfb3dsflvDq84zu eFQiNYQeTjSc7t7XSpidQKGI8QVzB4ILbhvSXnOBQlNFqoQ23ALP5BEcQFEQWMDXvgVm IcWg== X-Gm-Message-State: AOAM533zC9u7yR/n2QDgqn1nXtPFuwUltLL6jf1FImNT7XRy7yHd/HXK kwmJ+DRFMQV5y7yKCy/idPkP+haSEMQ= X-Google-Smtp-Source: ABdhPJzZgxMbUZE+KBsfi93X3f0Ey2WaV6IOUJbwff2+73t/W8pR0UyMRd/xKmFc9Z2ufpsupc98iw== X-Received: by 2002:a05:6000:184a:: with SMTP id c10mr4697238wri.232.1623323460251; Thu, 10 Jun 2021 04:11:00 -0700 (PDT) Received: from localhost ([62.96.65.119]) by smtp.gmail.com with ESMTPSA id i2sm2533106wmo.40.2021.06.10.04.10.58 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 10 Jun 2021 04:10:59 -0700 (PDT) From: Thierry Reding To: dri-devel@lists.freedesktop.org Subject: [PATCH 2/3] drm/arm: malidp: Use fourcc_mod_is_vendor() helper Date: Thu, 10 Jun 2021 13:12:35 +0200 Message-Id: <20210610111236.3814211-2-thierry.reding@gmail.com> X-Mailer: git-send-email 2.31.1 In-Reply-To: <20210610111236.3814211-1-thierry.reding@gmail.com> References: <20210610111236.3814211-1-thierry.reding@gmail.com> MIME-Version: 1.0 X-BeenThere: dri-devel@lists.freedesktop.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Direct Rendering Infrastructure - Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: David Airlie , Thomas Zimmermann , Daniel Vetter Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" From: Thierry Reding Rather than open-coding the vendor extraction operation, use the newly introduced helper macro. Reviewed-by: Daniel Vetter Signed-off-by: Thierry Reding --- drivers/gpu/drm/arm/malidp_planes.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/gpu/drm/arm/malidp_planes.c b/drivers/gpu/drm/arm/malidp_planes.c index 8c2ab3d653b7..0562bdaac00c 100644 --- a/drivers/gpu/drm/arm/malidp_planes.c +++ b/drivers/gpu/drm/arm/malidp_planes.c @@ -165,7 +165,7 @@ bool malidp_format_mod_supported(struct drm_device *drm, return !malidp_hw_format_is_afbc_only(format); } - if ((modifier >> 56) != DRM_FORMAT_MOD_VENDOR_ARM) { + if (!fourcc_mod_is_vendor(modifier, ARM)) { DRM_ERROR("Unknown modifier (not Arm)\n"); return false; } From patchwork Thu Jun 10 11:12:36 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Thierry Reding X-Patchwork-Id: 12312701 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-13.5 required=3.0 tests=BAYES_00, DKIM_ADSP_CUSTOM_MED,DKIM_INVALID,DKIM_SIGNED,FREEMAIL_FORGED_FROMDOMAIN, FREEMAIL_FROM,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_CR_TRAILER, INCLUDES_PATCH,MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED, USER_AGENT_GIT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 63260C47094 for ; Thu, 10 Jun 2021 11:11:08 +0000 (UTC) Received: from gabe.freedesktop.org (gabe.freedesktop.org [131.252.210.177]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id 345BE6128A for ; Thu, 10 Jun 2021 11:11:08 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 345BE6128A Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=gmail.com Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=dri-devel-bounces@lists.freedesktop.org Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id 57B626ECFC; Thu, 10 Jun 2021 11:11:05 +0000 (UTC) Received: from mail-wr1-x42f.google.com (mail-wr1-x42f.google.com [IPv6:2a00:1450:4864:20::42f]) by gabe.freedesktop.org (Postfix) with ESMTPS id 5245A6ECFD for ; Thu, 10 Jun 2021 11:11:04 +0000 (UTC) Received: by mail-wr1-x42f.google.com with SMTP id m18so1836411wrv.2 for ; Thu, 10 Jun 2021 04:11:04 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=12906iPsWJQOVdQadbOK6b29G12HcaqUh9zhbldpC20=; b=rITqrsiKVVZtPuJaF7u8Oy0uTnx1Vs1Dm0Ye4QHx52LF3prZy3GNTOPJWGnyUt36Pr QUtS3Ln0+YajAXBOqSCptntS0vWm0A+fuSbXwQWyDjiorsjes9wWU6i4/epp4KJxlt6n dvO5FyQ2YJYi9tcYYFtuheP1NrV/ZI+s8IOMMZbHLUKodnf1cqvQFCmBcTfuiIr9nHQG B42ZamCECoq8qImqsxOGlPdMqL61L0V9ulZnqgYQ0pEijhgEptpzJURWjoj0zPoAWb8V /ea8nIa7gGsKUFf6Qh7UUJ2aeB96SWcdZvUeyLN5t2Wi8Ux9aAb1ad3x8tOG8HqRrvF/ 0Pdg== 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:in-reply-to :references:mime-version:content-transfer-encoding; bh=12906iPsWJQOVdQadbOK6b29G12HcaqUh9zhbldpC20=; b=uaOGE9JZKkuyWj8XRtt6MFTBhrpp0iggzPXVs0i2nGR4J/Gx8tcvujzgHho11CkAqm b0QnVr0/9wPlICYFrPkrauv/fWPbzoGg/XIYHDS6fJ7BKplbTJvkHp8TTSOhNeR0eMIG Ou9T1UaIfypisNuB9DE65HJmuD/rt/GKgLAKnhetQEab3vQ6y9lys9Z+Ptx+LigywTzZ wP7jhfvsJ6IQ5SNPAiTZjiDrhoCZojvyTS0uqe3YPdK2QVZr7ILzXWhz9DIJXu9/X+I1 PJrvLLilfUSumR4zpKuaaVZpBWU1Wz6DqkQzXnpG7fC9zt+YyR4Y8k0DSbAi43Gdfurg J3/Q== X-Gm-Message-State: AOAM533Ppo51QKwv9gjZhtDTK3tp3Uy+A4di8RixJj9vw4rViY+iGb2R qFIrjsXXys9Kl9jjG9DWlW1O504HAx0= X-Google-Smtp-Source: ABdhPJw4UVZXmrMmhWf0uMQEf4MET3d2Za+7WFlMLjnvK3gLs5c3x1tYoxFbmXVj6y+pHJJzf36iyg== X-Received: by 2002:adf:db4d:: with SMTP id f13mr4878613wrj.243.1623323462386; Thu, 10 Jun 2021 04:11:02 -0700 (PDT) Received: from localhost ([62.96.65.119]) by smtp.gmail.com with ESMTPSA id d13sm1370182wrs.41.2021.06.10.04.11.01 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 10 Jun 2021 04:11:01 -0700 (PDT) From: Thierry Reding To: dri-devel@lists.freedesktop.org Subject: [PATCH 3/3] drm/tegra: Use fourcc_mod_is_vendor() helper Date: Thu, 10 Jun 2021 13:12:36 +0200 Message-Id: <20210610111236.3814211-3-thierry.reding@gmail.com> X-Mailer: git-send-email 2.31.1 In-Reply-To: <20210610111236.3814211-1-thierry.reding@gmail.com> References: <20210610111236.3814211-1-thierry.reding@gmail.com> MIME-Version: 1.0 X-BeenThere: dri-devel@lists.freedesktop.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Direct Rendering Infrastructure - Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: David Airlie , Thomas Zimmermann Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" From: Thierry Reding Rather than open-coding the vendor extraction operation, use the newly introduced helper macro. Signed-off-by: Thierry Reding Reviewed-by: Daniel Vetter --- drivers/gpu/drm/tegra/fb.c | 2 +- drivers/gpu/drm/tegra/plane.c | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/drivers/gpu/drm/tegra/fb.c b/drivers/gpu/drm/tegra/fb.c index cae8b8cbe9dd..c04dda8353fd 100644 --- a/drivers/gpu/drm/tegra/fb.c +++ b/drivers/gpu/drm/tegra/fb.c @@ -44,7 +44,7 @@ int tegra_fb_get_tiling(struct drm_framebuffer *framebuffer, { uint64_t modifier = framebuffer->modifier; - if ((modifier >> 56) == DRM_FORMAT_MOD_VENDOR_NVIDIA) { + if (fourcc_mod_is_vendor(modifier, NVIDIA)) { if ((modifier & DRM_FORMAT_MOD_NVIDIA_SECTOR_LAYOUT) == 0) tiling->sector_layout = TEGRA_BO_SECTOR_LAYOUT_TEGRA; else diff --git a/drivers/gpu/drm/tegra/plane.c b/drivers/gpu/drm/tegra/plane.c index 2e65b4075ce6..f7496425fa83 100644 --- a/drivers/gpu/drm/tegra/plane.c +++ b/drivers/gpu/drm/tegra/plane.c @@ -109,7 +109,7 @@ static bool tegra_plane_format_mod_supported(struct drm_plane *plane, return true; /* check for the sector layout bit */ - if ((modifier >> 56) == DRM_FORMAT_MOD_VENDOR_NVIDIA) { + if (fourcc_mod_is_vendor(modifier, NVIDIA)) { if (modifier & DRM_FORMAT_MOD_NVIDIA_SECTOR_LAYOUT) { if (!tegra_plane_supports_sector_layout(plane)) return false;