From mboxrd@z Thu Jan 1 00:00:00 1970 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 Content-Transfer-Encoding: 8bit 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)) -- 2.31.1