From patchwork Mon Jul 17 13:25:40 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Geert Uytterhoeven X-Patchwork-Id: 121329 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a59:c923:0:b0:3e4:2afc:c1 with SMTP id j3csp1122359vqt; Mon, 17 Jul 2023 06:48:22 -0700 (PDT) X-Google-Smtp-Source: APBJJlEMAN6mTSZmDd5OAuhXIkaOOvI/OwCIKl6+r8u/rozMv4vSvDeIUTWp3US26kWHGBqdVp1r X-Received: by 2002:a05:6e02:216d:b0:348:7ac8:ce6b with SMTP id s13-20020a056e02216d00b003487ac8ce6bmr6475558ilv.17.1689601701887; Mon, 17 Jul 2023 06:48:21 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1689601701; cv=none; d=google.com; s=arc-20160816; b=J+jt+1cHp18DbBFiVzIgdOpWiqGPaXBM1NhX/fh3W5BNeDOoXimzwoKTYUccimnqi9 Ugk5k6+k+ttqSwburlw5QOjuSmqsOavyFn+xbBrvEA+FcDSZ7P3FxO0VFJY3vSNgh4hB I1M/3NkciK9JFmUHoklg/nt8v0K0UurJv8++CiP2kk4WnkSKFc/Mvshe3nmg0mhmY8l9 Rq0qlrb+acc9ICXoHhc4QKy7daPeL57DlqE1/+6pBasMfDqC4Gsk7gZx1fVIPpUgiY3N JLA0ZagTmLAiXPzLbodN47KFQUGjA94x2zr9ATlpYCLLseuW4wKclLPHG/4umD0qwbAX lHfA== 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; bh=PB0/S4sqnqT4Ml80LqHsWdiTrTVuNxKA4YlDjRc8bmQ=; fh=3S4GTVz/Du1AnHfEXnVLM7ztIp6/yX5SL3uzMaY2XXs=; b=tlsMZUqL6e7PkDSZdYEq6p3LVfbodqnSsltfcc9KXCvDOHOUVWnk0IS04IoE3W6OlE 5VsYa36RPwhLzpgUydsce2aSFRReMHCghCH+EE6hv71tYbdtvs+3COajv0/n34LB5hV+ 6/wt0e/1oqbOJuN3pC8nZXlXQK0sAwAMEuMhudF+p+uoFyAGyBkpZAbI6oYOmlqNigU1 mz6nk5q5oLW2ufiWmEJLEef2hFnM5W8QHyJJGH5Wvvq19CXXfkBfJT0CtGTnWCFrzHAl 3R/w9H3AQub97Y1wqcyIT0gRWqCJ95WCgLk1hD9ag7AyTvnnTJgfu2TyS9fAj0cAsPya 3lhw== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id c16-20020a17090abf1000b00263eb5054f2si5793877pjs.105.2023.07.17.06.48.08; Mon, 17 Jul 2023 06:48:21 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S231724AbjGQN0f (ORCPT + 99 others); Mon, 17 Jul 2023 09:26:35 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:36214 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S231518AbjGQN0W (ORCPT ); Mon, 17 Jul 2023 09:26:22 -0400 Received: from baptiste.telenet-ops.be (baptiste.telenet-ops.be [IPv6:2a02:1800:120:4::f00:13]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id A4F43D1 for ; Mon, 17 Jul 2023 06:26:01 -0700 (PDT) Received: from ramsan.of.borg ([IPv6:2a02:1810:ac12:ed40:5803:2d6d:5bbc:e252]) by baptiste.telenet-ops.be with bizsmtp id NDRh2A00S0ucMBo01DRhqK; Mon, 17 Jul 2023 15:25:42 +0200 Received: from rox.of.borg ([192.168.97.57]) by ramsan.of.borg with esmtp (Exim 4.95) (envelope-from ) id 1qLOEG-001fvt-Th; Mon, 17 Jul 2023 15:25:41 +0200 Received: from geert by rox.of.borg with local (Exim 4.95) (envelope-from ) id 1qLOEP-007Qxj-Qe; Mon, 17 Jul 2023 15:25:41 +0200 From: Geert Uytterhoeven To: Russell King , David Airlie , Daniel Vetter Cc: dri-devel@lists.freedesktop.org, linux-kernel@vger.kernel.org, Geert Uytterhoeven , Russell King Subject: [PATCH v2 resend 2] drm/armada: Fix off-by-one error in armada_overlay_get_property() Date: Mon, 17 Jul 2023 15:25:40 +0200 Message-Id: X-Mailer: git-send-email 2.34.1 MIME-Version: 1.0 X-Spam-Status: No, score=-2.4 required=5.0 tests=BAYES_00, HEADER_FROM_DIFFERENT_DOMAINS,RCVD_IN_DNSWL_LOW,SPF_HELO_NONE,SPF_NONE, T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-getmail-retrieved-from-mailbox: INBOX X-GMAIL-THRID: 1771675793702339634 X-GMAIL-MSGID: 1771675793702339634 As ffs() returns one more than the index of the first bit set (zero means no bits set), the color key mode value is shifted one position too much. Fix this by using FIELD_GET() instead. Fixes: c96103b6c49ff9a8 ("drm/armada: move colorkey properties into overlay plane state") Signed-off-by: Geert Uytterhoeven Reviewed-by: Russell King (Oracle) --- Compile-tested only. v2: - Add Reviewed-by. --- drivers/gpu/drm/armada/armada_overlay.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/drivers/gpu/drm/armada/armada_overlay.c b/drivers/gpu/drm/armada/armada_overlay.c index f21eb8fb76d87285..3b9bd8ecda137f6d 100644 --- a/drivers/gpu/drm/armada/armada_overlay.c +++ b/drivers/gpu/drm/armada/armada_overlay.c @@ -4,6 +4,8 @@ * Rewritten from the dovefb driver, and Armada510 manuals. */ +#include + #include #include #include @@ -445,8 +447,8 @@ static int armada_overlay_get_property(struct drm_plane *plane, drm_to_overlay_state(state)->colorkey_ug, drm_to_overlay_state(state)->colorkey_vb, 0); } else if (property == priv->colorkey_mode_prop) { - *val = (drm_to_overlay_state(state)->colorkey_mode & - CFG_CKMODE_MASK) >> ffs(CFG_CKMODE_MASK); + *val = FIELD_GET(CFG_CKMODE_MASK, + drm_to_overlay_state(state)->colorkey_mode); } else if (property == priv->brightness_prop) { *val = drm_to_overlay_state(state)->brightness + 256; } else if (property == priv->contrast_prop) {