From patchwork Thu Mar 6 16:25:26 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Kuan-Wei Chiu X-Patchwork-Id: 14004865 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org 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 smtp.lore.kernel.org (Postfix) with ESMTPS id 9B919C282D1 for ; Thu, 6 Mar 2025 16:26:09 +0000 (UTC) Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id F2E5E10E316; Thu, 6 Mar 2025 16:26:08 +0000 (UTC) Authentication-Results: gabe.freedesktop.org; dkim=pass (2048-bit key; unprotected) header.d=gmail.com header.i=@gmail.com header.b="GLwilzkx"; dkim-atps=neutral Received: from mail-pj1-f42.google.com (mail-pj1-f42.google.com [209.85.216.42]) by gabe.freedesktop.org (Postfix) with ESMTPS id 9DA9E10E18D for ; Thu, 6 Mar 2025 16:26:07 +0000 (UTC) Received: by mail-pj1-f42.google.com with SMTP id 98e67ed59e1d1-2ff6ae7667dso1672240a91.0 for ; Thu, 06 Mar 2025 08:26:07 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1741278367; x=1741883167; darn=lists.freedesktop.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=Bwdp+8POnpYEEnQ2mWPyy8f6+vYv2yxFxSEYWvX3Jsg=; b=GLwilzkxScUzyvfC22rljnF+sRuY39WpPar9EhY21LUvC2KIvYxKv3oEKykcITcS3Z 3IisSaHLXYuXmwJwMhWs0zpJ7b35Bhw2eO1rSKqS/ZBxlkOR6imLhz1NuA/BzTWXK/A/ 6cmXUBcTrez0Io6SDwIK2Enw0xpT7CsBgpq+aB/8hBBuCHIVRpNeE7mbmbo6/gW6ssZ/ VMyQ67+2Wm1+ifgpp4joLVOgliQ3STZbMT0GQlhMJTBzIWkqfuGI7O7FgwJECeHQ9B0S XQ9Vwnja2+LO0a5H0igeQe7H/ObrBfXfZ+2sj998vlZaNSnIdb9I8HCPYOrqjcl5gq+V 5ltA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1741278367; x=1741883167; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=Bwdp+8POnpYEEnQ2mWPyy8f6+vYv2yxFxSEYWvX3Jsg=; b=JKMFtFTMSbCpnm2kr8Lf5fEtQQq9IvHu/f6UdmLAEt6dobziq93x5sbGtYdcBmzcLm S7gekPmOlRrxxkoRrlOHnTjtQlGjUiCYPFaKH7SbHJzXjC7HVZB+RJ3n5Yn51hITH3MC /Mx8fB5VirKRqmEK/hMP+U4d78TEaTzCV9NZ4TWBEs4/7snBtrOn6fOdGAzJFwcQWETQ erD5l16fd8WqFy3bsPCpRhKRRn6l3/fHIcXNJMbYtcNGKQO7ATVCcwACr/851dMB9L7H b9M2oC/vi9EmRnsFKO0i+vwATIw+Vx4Hxfg5tzG6DlEmdjj5OpRKDe9OwXPqyEJ0av8Y 5LCg== X-Forwarded-Encrypted: i=1; AJvYcCXPgmRT8uEEEKG03X8flJv4rRPyyOMIF+IXlp5dNTYF9vDtmqCLCNDaZiCFYryYSQ19ZofxRt8Nclo=@lists.freedesktop.org X-Gm-Message-State: AOJu0YzpPjC1eXGoAPKW6IW2WwnGLSyaGqeeIUueAXjRfoGt4KwFZhXT pnxjFP1MY8unFhi4e1WhgDdSj33BW9a5srdxsUU9P6p1Mcn0uuZS X-Gm-Gg: ASbGncvyJF2BAu5ACG4/jV5v8MH5QYBoxkZJahEccL0THJF7NxdnAVZ2OL1WSEcfpEb nYWOf46neUNvOAzDr1QsSH73AoT8QjLhd6wnW0ODtqbMM6kYbOPBa7GA0JBXeL3ZDjeDJscyEaO fkiDgnH60j7JO6lgUeij5q3+qnK2Uw7y8u6DdTUJH5aq0ZZgHpQidjMpZOGxJT1mwdnTR60bIlH JexPxwPZlzwVRdDv6cuYjfJrEYre912sdiQrC1psfXoiyxoFbcOa2lNNI3axm2yZPlDo29tyrEZ cT/8PvspNPtZslJFglcKgn1Z8QUDoQxmvBnD7qFtBFDbNUpbhubR5g+gVucs/AHxMw3SZjghDEI = X-Google-Smtp-Source: AGHT+IFHH+1zpB7N9XuTVJAOvoyUY8hkKo2wZOm3e52unMZzsjH5Hx1bGZW2MZ4mGhzudOerhh255w== X-Received: by 2002:a17:90b:4b44:b0:2ff:7b28:a51c with SMTP id 98e67ed59e1d1-2ff7b28a652mr259914a91.34.1741278367078; Thu, 06 Mar 2025 08:26:07 -0800 (PST) Received: from visitorckw-System-Product-Name.. ([140.113.216.168]) by smtp.gmail.com with ESMTPSA id 98e67ed59e1d1-2ff693e75bfsm1464298a91.33.2025.03.06.08.25.59 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 06 Mar 2025 08:26:06 -0800 (PST) From: Kuan-Wei Chiu To: tglx@linutronix.de, mingo@redhat.com, bp@alien8.de, dave.hansen@linux.intel.com, x86@kernel.org, jk@ozlabs.org, joel@jms.id.au, eajames@linux.ibm.com, andrzej.hajda@intel.com, neil.armstrong@linaro.org, rfoss@kernel.org, maarten.lankhorst@linux.intel.com, mripard@kernel.org, tzimmermann@suse.de, airlied@gmail.com, simona@ffwll.ch, dmitry.torokhov@gmail.com, mchehab@kernel.org, awalls@md.metrocast.net, hverkuil@xs4all.nl, miquel.raynal@bootlin.com, richard@nod.at, vigneshr@ti.com, louis.peens@corigine.com, andrew+netdev@lunn.ch, davem@davemloft.net, edumazet@google.com, pabeni@redhat.com, parthiban.veerasooran@microchip.com, arend.vanspriel@broadcom.com, johannes@sipsolutions.net, gregkh@linuxfoundation.org, jirislaby@kernel.org, yury.norov@gmail.com, akpm@linux-foundation.org Cc: hpa@zytor.com, alistair@popple.id.au, linux@rasmusvillemoes.dk, Laurent.pinchart@ideasonboard.com, jonas@kwiboo.se, jernej.skrabec@gmail.com, kuba@kernel.org, linux-kernel@vger.kernel.org, linux-fsi@lists.ozlabs.org, dri-devel@lists.freedesktop.org, linux-input@vger.kernel.org, linux-media@vger.kernel.org, linux-mtd@lists.infradead.org, oss-drivers@corigine.com, netdev@vger.kernel.org, linux-wireless@vger.kernel.org, brcm80211@lists.linux.dev, brcm80211-dev-list.pdl@broadcom.com, linux-serial@vger.kernel.org, bpf@vger.kernel.org, jserv@ccns.ncku.edu.tw, Kuan-Wei Chiu , Yu-Chun Lin Subject: [PATCH v3 01/16] bitops: Change parity8() return type to bool Date: Fri, 7 Mar 2025 00:25:26 +0800 Message-Id: <20250306162541.2633025-2-visitorckw@gmail.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20250306162541.2633025-1-visitorckw@gmail.com> References: <20250306162541.2633025-1-visitorckw@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: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" Change return type to bool for better clarity. Update the kernel doc comment accordingly, including fixing "@value" to "@val" and adjusting examples. Also mark the function with __attribute_const__ to allow potential compiler optimizations. Co-developed-by: Yu-Chun Lin Signed-off-by: Yu-Chun Lin Signed-off-by: Kuan-Wei Chiu --- include/linux/bitops.h | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/include/linux/bitops.h b/include/linux/bitops.h index c1cb53cf2f0f..44e5765b8bec 100644 --- a/include/linux/bitops.h +++ b/include/linux/bitops.h @@ -231,26 +231,26 @@ static inline int get_count_order_long(unsigned long l) /** * parity8 - get the parity of an u8 value - * @value: the value to be examined + * @val: the value to be examined * * Determine the parity of the u8 argument. * * Returns: - * 0 for even parity, 1 for odd parity + * false for even parity, true for odd parity * * Note: This function informs you about the current parity. Example to bail * out when parity is odd: * - * if (parity8(val) == 1) + * if (parity8(val) == true) * return -EBADMSG; * * If you need to calculate a parity bit, you need to draw the conclusion from * this result yourself. Example to enforce odd parity, parity bit is bit 7: * - * if (parity8(val) == 0) + * if (parity8(val) == false) * val ^= BIT(7); */ -static inline int parity8(u8 val) +static inline __attribute_const__ bool parity8(u8 val) { /* * One explanation of this algorithm: From patchwork Thu Mar 6 16:25:27 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Kuan-Wei Chiu X-Patchwork-Id: 14004866 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org 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 smtp.lore.kernel.org (Postfix) with ESMTPS id 0124AC282D1 for ; Thu, 6 Mar 2025 16:26:18 +0000 (UTC) Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id 5002F10E030; Thu, 6 Mar 2025 16:26:18 +0000 (UTC) Authentication-Results: gabe.freedesktop.org; dkim=pass (2048-bit key; unprotected) header.d=gmail.com header.i=@gmail.com header.b="OC3N8xjt"; dkim-atps=neutral Received: from mail-pj1-f43.google.com (mail-pj1-f43.google.com [209.85.216.43]) by gabe.freedesktop.org (Postfix) with ESMTPS id A28C710E03D for ; Thu, 6 Mar 2025 16:26:17 +0000 (UTC) Received: by mail-pj1-f43.google.com with SMTP id 98e67ed59e1d1-2f9d3d0f55dso1499871a91.1 for ; Thu, 06 Mar 2025 08:26:17 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1741278377; x=1741883177; darn=lists.freedesktop.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=g4VnYHrG4RwnHlGdrfRVkI5G3ZqKaX1Ck3mTCfWdoMQ=; b=OC3N8xjtxKL7IIZ8ZhulaflVu+qbZHPy7E7gVdc5NvvGXTVUYYsX7fQDc6sfVuDtls YK0oEVAzzH/907CVDOOXG1MGX95GIzTVN6aiE1/DNAB1m86SeBNjh+eBeN69kywpLXGm AkeEfc0UiszAzsm9j9vcK+JlLAIdaHSa+Dr5J3NLGaTmr3WMv4sdgwiWW8I1DdR4LFYw SvW1I5dIyh60hUaeahsqpQL1L4psXpmAojV7yUKwhkHQgwICdHfv161VSNybVWcnCq4H SpfPsv9VYJDiJj6yN3tcm+1DTUtM0+YDdzMgN2d3EwaCWj5E+RRBKpYvM6hfpVCZU/F7 M7Dg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1741278377; x=1741883177; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=g4VnYHrG4RwnHlGdrfRVkI5G3ZqKaX1Ck3mTCfWdoMQ=; b=njeMJWDRHzxhJrsyWiP/uMo2fT8pDTF1nsGipWxDT2Kb/CJ7jpWNKpPR9BsoekANvP 6tNWKwLMuIYpr0kujYg4lr0D4gxJDiq6B0vK1qm7Oq3OpfrNr5TXOCiEXFR6ttZ92epf huaGbfR+FVJM+cnVHoO7zNwWlPCCegEkq5GKYX7JuDKlctQT3+wXVeYWZJGb60u+NaTP vV55U4x1b1xCYDk7lK2s0SSJRYJsoZiQgP/ZF2sY+w5evcVhRkSZIVCD7IekNkjTUCEZ FaDKnb+bud2MZP8wik+xb7xHMWY7neAKnrbKs6nL9B0RvOeBYQuffXjmsK1ARNR28Jp6 21SA== X-Forwarded-Encrypted: i=1; AJvYcCV+EvUkbi4NiVI9WvTjBUG/CbRBjn5W/FQsU8nml5PaKNlWgLF8yIcZitGuHIubzH62kbLPx97UMCE=@lists.freedesktop.org X-Gm-Message-State: AOJu0Yxp3dS3qAYmM4X7K0T/jwvkVNycAYQ4uKaFgeea9DNROKmlbc5v Nc8jZsd7vqbTrwzQt8+EDHwgZwD+GHaZ9F9HAnVasjMDi5bTfecO X-Gm-Gg: ASbGncvxROOwMnCKm+9YXYVFprmZcbwPbOtDkuFkxhYPPqjzx5y0WA69nI0vgY0hJyX urHhQwvF/kuOHoAFSbBYjSXNtQvubPqFrPwmnQEvHlB1smYKIRnPJNGDP1Sjt5wMHHnlOIuAvqQ 2Q36LQk07xd/IIy8tpcp5ltjM9C18JBkR3OR4R/GI389iA24XzdSsAYmoXOMasbFWwjLopY4Syq VCC/0nzdq14mJHwPdPiPZ35Xc5mKrSqtkPF+x4D9bRwC0A35LAwDnKwm5iewjqUJDZWGl3Jsp41 MhJ/T8Nfh+fhX0g3FcR4hv8lsQfgjqSjymywIrN2HPkgIy5mm42DQrMbR1bL77ucCodv6T656lM = X-Google-Smtp-Source: AGHT+IHz+gPXGVLABcu1Z5L/FQeF1foGDNMRW0PUwFQDBuhtYoYyf91GQ4fqN6r0d6c4jX9sVUpwVA== X-Received: by 2002:a17:90b:264c:b0:2ee:863e:9ffc with SMTP id 98e67ed59e1d1-2ff49753d20mr10753652a91.21.1741278377011; Thu, 06 Mar 2025 08:26:17 -0800 (PST) Received: from visitorckw-System-Product-Name.. ([140.113.216.168]) by smtp.gmail.com with ESMTPSA id 98e67ed59e1d1-2ff693e75bfsm1464298a91.33.2025.03.06.08.26.08 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 06 Mar 2025 08:26:16 -0800 (PST) From: Kuan-Wei Chiu To: tglx@linutronix.de, mingo@redhat.com, bp@alien8.de, dave.hansen@linux.intel.com, x86@kernel.org, jk@ozlabs.org, joel@jms.id.au, eajames@linux.ibm.com, andrzej.hajda@intel.com, neil.armstrong@linaro.org, rfoss@kernel.org, maarten.lankhorst@linux.intel.com, mripard@kernel.org, tzimmermann@suse.de, airlied@gmail.com, simona@ffwll.ch, dmitry.torokhov@gmail.com, mchehab@kernel.org, awalls@md.metrocast.net, hverkuil@xs4all.nl, miquel.raynal@bootlin.com, richard@nod.at, vigneshr@ti.com, louis.peens@corigine.com, andrew+netdev@lunn.ch, davem@davemloft.net, edumazet@google.com, pabeni@redhat.com, parthiban.veerasooran@microchip.com, arend.vanspriel@broadcom.com, johannes@sipsolutions.net, gregkh@linuxfoundation.org, jirislaby@kernel.org, yury.norov@gmail.com, akpm@linux-foundation.org Cc: hpa@zytor.com, alistair@popple.id.au, linux@rasmusvillemoes.dk, Laurent.pinchart@ideasonboard.com, jonas@kwiboo.se, jernej.skrabec@gmail.com, kuba@kernel.org, linux-kernel@vger.kernel.org, linux-fsi@lists.ozlabs.org, dri-devel@lists.freedesktop.org, linux-input@vger.kernel.org, linux-media@vger.kernel.org, linux-mtd@lists.infradead.org, oss-drivers@corigine.com, netdev@vger.kernel.org, linux-wireless@vger.kernel.org, brcm80211@lists.linux.dev, brcm80211-dev-list.pdl@broadcom.com, linux-serial@vger.kernel.org, bpf@vger.kernel.org, jserv@ccns.ncku.edu.tw, Kuan-Wei Chiu , Yu-Chun Lin Subject: [PATCH v3 02/16] bitops: Add parity16(), parity32(), and parity64() helpers Date: Fri, 7 Mar 2025 00:25:27 +0800 Message-Id: <20250306162541.2633025-3-visitorckw@gmail.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20250306162541.2633025-1-visitorckw@gmail.com> References: <20250306162541.2633025-1-visitorckw@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: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" Add parity16(), parity32(), and parity64() to compute the parity of 16-bit, 32-bit, and 64-bit values, respectively. Each function extends parity8() by XOR-ing upper and lower halves, reducing the input size progressively. Co-developed-by: Yu-Chun Lin Signed-off-by: Yu-Chun Lin Signed-off-by: Kuan-Wei Chiu --- include/linux/bitops.h | 42 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 42 insertions(+) diff --git a/include/linux/bitops.h b/include/linux/bitops.h index 44e5765b8bec..906757e1ddf8 100644 --- a/include/linux/bitops.h +++ b/include/linux/bitops.h @@ -260,6 +260,48 @@ static inline __attribute_const__ bool parity8(u8 val) return (0x6996 >> (val & 0xf)) & 1; } +/** + * parity16 - get the parity of an u16 value + * @val: the value to be examined + * + * Determine the parity of the u16 argument. + * + * Returns: + * false for even parity, true for odd parity + */ +static inline __attribute_const__ bool parity16(u16 val) +{ + return parity8(val ^ (val >> 8)); +} + +/** + * parity32 - get the parity of an u32 value + * @val: the value to be examined + * + * Determine the parity of the u32 argument. + * + * Returns: + * false for even parity, true for odd parity + */ +static inline __attribute_const__ bool parity32(u32 val) +{ + return parity16(val ^ (val >> 16)); +} + +/** + * parity64 - get the parity of an u64 value + * @val: the value to be examined + * + * Determine the parity of the u64 argument. + * + * Returns: + * false for even parity, true for odd parity + */ +static inline __attribute_const__ bool parity64(u64 val) +{ + return parity32(val ^ (val >> 32)); +} + /** * __ffs64 - find first set bit in a 64 bit word * @word: The 64 bit word From patchwork Thu Mar 6 16:25:28 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Kuan-Wei Chiu X-Patchwork-Id: 14004867 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org 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 smtp.lore.kernel.org (Postfix) with ESMTPS id 332ACC282D1 for ; Thu, 6 Mar 2025 16:26:28 +0000 (UTC) Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id 9E2E610E29C; Thu, 6 Mar 2025 16:26:27 +0000 (UTC) Authentication-Results: gabe.freedesktop.org; dkim=pass (2048-bit key; unprotected) header.d=gmail.com header.i=@gmail.com header.b="JzH45KXe"; dkim-atps=neutral Received: from mail-pj1-f44.google.com (mail-pj1-f44.google.com [209.85.216.44]) by gabe.freedesktop.org (Postfix) with ESMTPS id 2852F10E29C for ; Thu, 6 Mar 2025 16:26:27 +0000 (UTC) Received: by mail-pj1-f44.google.com with SMTP id 98e67ed59e1d1-2fec13a4067so1481924a91.2 for ; Thu, 06 Mar 2025 08:26:27 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1741278387; x=1741883187; darn=lists.freedesktop.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=Nutb7MJ9eZ82YUrFszN8Vow0UKyoKuoqD2og5G/xi8M=; b=JzH45KXenVAFqEu6+YUF3S5kPxteZ4eFBVWYXfHgBvRmohdKLiW0bj8tOhyDSfIK+f 7cFHv15uINY7+c5f9ahBdkbgr+eGqr6sDBEM8L4A9jcfpkV2NRG9V7fKREz1ErVKzV0+ JHCzFrdT5YsvO+cx7BfmsO8FmA/7x6sdXYlEOtbK9PBrqkrjB+CPzzrAOGpvP86h6kx6 b5zEVG1DkD7B1uZAqjKbbKudbIpUgWuDHYkGMZJMZ+PJbAcsgZOq9Y3dhrn/qouAKWiD yX8c938niRo0IA30n1J79ptNm4DUrX+aGDnXBP8rj8hXAVVV8D/U7YZ1S6Q7wLvQZBLM PKag== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1741278387; x=1741883187; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=Nutb7MJ9eZ82YUrFszN8Vow0UKyoKuoqD2og5G/xi8M=; b=uBz3tOlnDeqcrfzDbig+tpeBhYAysNjwuCSDVf14tYCspNc9d+h0EgFV76EASo0Mf8 oL19EYG7vUKv7GF5vNfwyizbfjx4G/jcXxtl7hkOuM67vVKm1/vzWeDB7xQ6LdKRWjYP 1LL8qsupcBcTmzgosqANSEsZoZI/vTDD8dOAfC//Bccmmi893lALuBaETmcbBUc+hh2q lM3D5pnKqsHchaD3ShAkwe46mP9KtZ1Y+/KiWaQdFrGqMSZVmM7HDw0dT0pL7Hqt5blw RWf1ZgysAKjZicQ+C2uG0PHis+7cCyNHaDi2+ekYXQ/i/gqDXtSIsrMPcuU7DhUPLSwR 1E2Q== X-Forwarded-Encrypted: i=1; AJvYcCU44PHyWq4ph84FdzhkxxT/U28bgqr/w7b9N9axzNmn/jevGNDq6Q9ouBswNovBmZWNAre5LilODbQ=@lists.freedesktop.org X-Gm-Message-State: AOJu0Yz7o/odg62ZSgurq2zT1y4WtSuxFWLXL0AqAj2jbd9bSpz01+YE 4jNTZsgBqFhAENZnRNaUyoMBedLXaIEP7iORN9DK4tOD7lWg++e2 X-Gm-Gg: ASbGncvlpvhzgEuiTw2X5HEmAWu/Y7IzmC/Z8EJIJcPO/bwjdZmsLxKol95Yi1/gV68 NMEpkgTuD31/uLVKJBZ/wBkrGeojeRB8yZoB2uekXPPAJHs2BIPeCgNhYI7DLJYljgMM8bA3XqX svvAaXTtLtHVpQuOiizWUGOr8Kt15tQhtL6+/kZqGMdai9p+cAjWKQZl8uK7IxbFG+5Ns2p1pBp BCi8Oiv33eAGX2Z2MFoJsla3dpRm5zwm3ORSMhW4zmAbrPtpHBiMPowtFzWUOVxGPlQCN0ZFN8g bSLRbKlnEuK5uiptok41lbXwz7as0CmmhdaFrCF78sa8SwhxJofnYMyUzzEvPVoim6V1cgez9b4 = X-Google-Smtp-Source: AGHT+IGnAbA7Y19sbet7/e0FnFCoTVhlFvSe7Bxbq8+Kkwl3FpD5fIN6ErN6a+dRmXJdCrcvBmbfjw== X-Received: by 2002:a17:90b:4c07:b0:2ff:6ac2:c5a6 with SMTP id 98e67ed59e1d1-2ff6ac2c770mr3503350a91.31.1741278386628; Thu, 06 Mar 2025 08:26:26 -0800 (PST) Received: from visitorckw-System-Product-Name.. ([140.113.216.168]) by smtp.gmail.com with ESMTPSA id 98e67ed59e1d1-2ff693e75bfsm1464298a91.33.2025.03.06.08.26.18 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 06 Mar 2025 08:26:26 -0800 (PST) From: Kuan-Wei Chiu To: tglx@linutronix.de, mingo@redhat.com, bp@alien8.de, dave.hansen@linux.intel.com, x86@kernel.org, jk@ozlabs.org, joel@jms.id.au, eajames@linux.ibm.com, andrzej.hajda@intel.com, neil.armstrong@linaro.org, rfoss@kernel.org, maarten.lankhorst@linux.intel.com, mripard@kernel.org, tzimmermann@suse.de, airlied@gmail.com, simona@ffwll.ch, dmitry.torokhov@gmail.com, mchehab@kernel.org, awalls@md.metrocast.net, hverkuil@xs4all.nl, miquel.raynal@bootlin.com, richard@nod.at, vigneshr@ti.com, louis.peens@corigine.com, andrew+netdev@lunn.ch, davem@davemloft.net, edumazet@google.com, pabeni@redhat.com, parthiban.veerasooran@microchip.com, arend.vanspriel@broadcom.com, johannes@sipsolutions.net, gregkh@linuxfoundation.org, jirislaby@kernel.org, yury.norov@gmail.com, akpm@linux-foundation.org Cc: hpa@zytor.com, alistair@popple.id.au, linux@rasmusvillemoes.dk, Laurent.pinchart@ideasonboard.com, jonas@kwiboo.se, jernej.skrabec@gmail.com, kuba@kernel.org, linux-kernel@vger.kernel.org, linux-fsi@lists.ozlabs.org, dri-devel@lists.freedesktop.org, linux-input@vger.kernel.org, linux-media@vger.kernel.org, linux-mtd@lists.infradead.org, oss-drivers@corigine.com, netdev@vger.kernel.org, linux-wireless@vger.kernel.org, brcm80211@lists.linux.dev, brcm80211-dev-list.pdl@broadcom.com, linux-serial@vger.kernel.org, bpf@vger.kernel.org, jserv@ccns.ncku.edu.tw, Kuan-Wei Chiu , Yu-Chun Lin Subject: [PATCH v3 03/16] media: media/test_drivers: Replace open-coded parity calculation with parity8() Date: Fri, 7 Mar 2025 00:25:28 +0800 Message-Id: <20250306162541.2633025-4-visitorckw@gmail.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20250306162541.2633025-1-visitorckw@gmail.com> References: <20250306162541.2633025-1-visitorckw@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: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" Refactor parity calculations to use the standard parity8() helper. This change eliminates redundant implementations and improves code efficiency. Co-developed-by: Yu-Chun Lin Signed-off-by: Yu-Chun Lin Signed-off-by: Kuan-Wei Chiu --- drivers/media/test-drivers/vivid/vivid-vbi-gen.c | 8 ++------ 1 file changed, 2 insertions(+), 6 deletions(-) diff --git a/drivers/media/test-drivers/vivid/vivid-vbi-gen.c b/drivers/media/test-drivers/vivid/vivid-vbi-gen.c index 70a4024d461e..e0f4151bda18 100644 --- a/drivers/media/test-drivers/vivid/vivid-vbi-gen.c +++ b/drivers/media/test-drivers/vivid/vivid-vbi-gen.c @@ -5,6 +5,7 @@ * Copyright 2014 Cisco Systems, Inc. and/or its affiliates. All rights reserved. */ +#include #include #include #include @@ -165,12 +166,7 @@ static const u8 vivid_cc_sequence2[30] = { static u8 calc_parity(u8 val) { - unsigned i; - unsigned tot = 0; - - for (i = 0; i < 7; i++) - tot += (val & (1 << i)) ? 1 : 0; - return val | ((tot & 1) ? 0 : 0x80); + return val | (parity8(val) ? 0 : 0x80); } static void vivid_vbi_gen_set_time_of_day(u8 *packet) From patchwork Thu Mar 6 16:25:29 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Kuan-Wei Chiu X-Patchwork-Id: 14004868 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org 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 smtp.lore.kernel.org (Postfix) with ESMTPS id C28D6C282D1 for ; Thu, 6 Mar 2025 16:26:39 +0000 (UTC) Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id 3AB3910E18D; Thu, 6 Mar 2025 16:26:39 +0000 (UTC) Authentication-Results: gabe.freedesktop.org; dkim=pass (2048-bit key; unprotected) header.d=gmail.com header.i=@gmail.com header.b="A3/64ltK"; dkim-atps=neutral Received: from mail-pj1-f49.google.com (mail-pj1-f49.google.com [209.85.216.49]) by gabe.freedesktop.org (Postfix) with ESMTPS id F1E1710E18D for ; Thu, 6 Mar 2025 16:26:37 +0000 (UTC) Received: by mail-pj1-f49.google.com with SMTP id 98e67ed59e1d1-2fee4d9c2efso1691776a91.3 for ; Thu, 06 Mar 2025 08:26:37 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1741278397; x=1741883197; darn=lists.freedesktop.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=r0Ho2aCKNYfg5T/o22fFzxZ+UyjSx6Fm0wn6W8o8Gr8=; b=A3/64ltKL5vlDiqh9lDeFJrBXvfnG0wXHKrJkgpn/TaWmO+lVP6ZCbM9vMn6x6Sa2U SvN+znMAez9YEp/W/oJTOp6FhygeXiaq6VvPlWO7rGf/tw9+FJMgcAFzN/y+pX3/Hf/o 0nY936hDwB/4eXpaYZ57HpS7xhBZ6Kdnf86MPsiQ5KUVYwHVuSSzZcYOX1KMgCLLS5rA K/WIoqpB4UuE7pFXpVixSXms8sgBb7Jtvvys1EwnVh7dP5+SxYmAT8Baoj27Jdn8OU6h uRp7Dcq/HsIc1DvMMm3xFIW8Vg4f9f/T8YdDaVH8oXY9vhHH8crKvMyU5bdWfrILcGHB 0lsQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1741278397; x=1741883197; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=r0Ho2aCKNYfg5T/o22fFzxZ+UyjSx6Fm0wn6W8o8Gr8=; b=VyP6IGOU6jWzmEBwE83WAuNc3y0Ho872yEhM0+zpMbLhrpU266ms4p5V1adIxyw/Jl 8PwFARR6KD5bvw7S4fYV+MOpThCycqtlD258zA3y2ssaFIw2xuli50rx5RKiPuKAaGoO uhOU/LNhNGGZmp0PY69pTgF5N0mqtIK8Rm4b4sJmie518HNRYWMC6Cjj+k+vtaK42oGi wrqlSqdIosn8ALZ+7rkwlQJUqO2zl9lbwaIehmcQXtAfxHhsCu2ltVz85KKKlszI8EUB XjyI8XR1A/v6sF9HIlNYcogdwTATFGeZqJF9Ng42U0PpEmJEQlGH7H1hGPPYjce1IEpy wNwg== X-Forwarded-Encrypted: i=1; AJvYcCWptnWB0W43GvuZmaMSWBs/todUyz5yRdEIWAKcnzjHIhJwiU5HSAmaXsOcKdbvRjKedKXjOYBKQDM=@lists.freedesktop.org X-Gm-Message-State: AOJu0YxuwLjuoyvXRQMYbtNpG3tIo9VndEIJsuuCoY9Uwp8RzSUDbFrp F0aoDukaVprDsZTkhl8m7vpR1LvnU+/X+MTpe1JVujxvjJ5hHaSu X-Gm-Gg: ASbGncvhdn4CgHuTUpTRhVkDwGaMPKECK2WbVq1nDanS/qHsAYHSHrkkCit/nOolBTB e25cJ7rMaS+PIlbhvCI0B0zzwrmJ7ROZNWPnAcPyY22Vx2mHmUiZW9odA3r9OWx7v5Yfzzuub1E PuGZAZzuE7Hzds3NXujq7ERA1Bbppkb100v5hpBmq+IlsO3KE/kwPVYHTUxA8x2EpNKeBzJJzc8 SuW8j8mHcgtrFKI+ragNkuHg43Lh60aRYauQ8MGbbEiN9jTnWouLYzEIlxvYQ4eD0NecaBc6BAs MdLHG4wzmrqre+LrR5lk9lsBVJVMlbygbfS1JDd0JklsIKXAQU4fb0ptTAqlWZoQAuAsVkTNNIo = X-Google-Smtp-Source: AGHT+IEdHwa48DziWanocz8wQ67fQs43cM3+X1TXQ11+KVNWCpcETjdD+vdPtUkiB0WUQbIndA90jg== X-Received: by 2002:a17:90b:1cc6:b0:2fe:afbc:cd53 with SMTP id 98e67ed59e1d1-2ff497a62c4mr12413101a91.28.1741278397498; Thu, 06 Mar 2025 08:26:37 -0800 (PST) Received: from visitorckw-System-Product-Name.. ([140.113.216.168]) by smtp.gmail.com with ESMTPSA id 98e67ed59e1d1-2ff693e75bfsm1464298a91.33.2025.03.06.08.26.29 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 06 Mar 2025 08:26:36 -0800 (PST) From: Kuan-Wei Chiu To: tglx@linutronix.de, mingo@redhat.com, bp@alien8.de, dave.hansen@linux.intel.com, x86@kernel.org, jk@ozlabs.org, joel@jms.id.au, eajames@linux.ibm.com, andrzej.hajda@intel.com, neil.armstrong@linaro.org, rfoss@kernel.org, maarten.lankhorst@linux.intel.com, mripard@kernel.org, tzimmermann@suse.de, airlied@gmail.com, simona@ffwll.ch, dmitry.torokhov@gmail.com, mchehab@kernel.org, awalls@md.metrocast.net, hverkuil@xs4all.nl, miquel.raynal@bootlin.com, richard@nod.at, vigneshr@ti.com, louis.peens@corigine.com, andrew+netdev@lunn.ch, davem@davemloft.net, edumazet@google.com, pabeni@redhat.com, parthiban.veerasooran@microchip.com, arend.vanspriel@broadcom.com, johannes@sipsolutions.net, gregkh@linuxfoundation.org, jirislaby@kernel.org, yury.norov@gmail.com, akpm@linux-foundation.org Cc: hpa@zytor.com, alistair@popple.id.au, linux@rasmusvillemoes.dk, Laurent.pinchart@ideasonboard.com, jonas@kwiboo.se, jernej.skrabec@gmail.com, kuba@kernel.org, linux-kernel@vger.kernel.org, linux-fsi@lists.ozlabs.org, dri-devel@lists.freedesktop.org, linux-input@vger.kernel.org, linux-media@vger.kernel.org, linux-mtd@lists.infradead.org, oss-drivers@corigine.com, netdev@vger.kernel.org, linux-wireless@vger.kernel.org, brcm80211@lists.linux.dev, brcm80211-dev-list.pdl@broadcom.com, linux-serial@vger.kernel.org, bpf@vger.kernel.org, jserv@ccns.ncku.edu.tw, Kuan-Wei Chiu , Yu-Chun Lin Subject: [PATCH v3 04/16] media: pci: cx18-av-vbi: Replace open-coded parity calculation with parity8() Date: Fri, 7 Mar 2025 00:25:29 +0800 Message-Id: <20250306162541.2633025-5-visitorckw@gmail.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20250306162541.2633025-1-visitorckw@gmail.com> References: <20250306162541.2633025-1-visitorckw@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: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" Refactor parity calculations to use the standard parity8() helper. This change eliminates redundant implementations and improves code efficiency. Co-developed-by: Yu-Chun Lin Signed-off-by: Yu-Chun Lin Signed-off-by: Kuan-Wei Chiu --- drivers/media/pci/cx18/cx18-av-vbi.c | 12 ++---------- 1 file changed, 2 insertions(+), 10 deletions(-) diff --git a/drivers/media/pci/cx18/cx18-av-vbi.c b/drivers/media/pci/cx18/cx18-av-vbi.c index 65281d40c681..1a113aad9cd4 100644 --- a/drivers/media/pci/cx18/cx18-av-vbi.c +++ b/drivers/media/pci/cx18/cx18-av-vbi.c @@ -8,6 +8,7 @@ */ +#include #include "cx18-driver.h" /* @@ -56,15 +57,6 @@ struct vbi_anc_data { /* u8 fill[]; Variable number of fill bytes */ }; -static int odd_parity(u8 c) -{ - c ^= (c >> 4); - c ^= (c >> 2); - c ^= (c >> 1); - - return c & 1; -} - static int decode_vps(u8 *dst, u8 *p) { static const u8 biphase_tbl[] = { @@ -278,7 +270,7 @@ int cx18_av_decode_vbi_line(struct v4l2_subdev *sd, break; case 6: sdid = V4L2_SLICED_CAPTION_525; - err = !odd_parity(p[0]) || !odd_parity(p[1]); + err = !parity8(p[0]) || !parity8(p[1]); break; case 9: sdid = V4L2_SLICED_VPS; From patchwork Thu Mar 6 16:25:30 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Kuan-Wei Chiu X-Patchwork-Id: 14004869 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org 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 smtp.lore.kernel.org (Postfix) with ESMTPS id 9A183C282DE for ; Thu, 6 Mar 2025 16:26:50 +0000 (UTC) Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id 1525110E969; Thu, 6 Mar 2025 16:26:50 +0000 (UTC) Authentication-Results: gabe.freedesktop.org; dkim=pass (2048-bit key; unprotected) header.d=gmail.com header.i=@gmail.com header.b="GBk9RvSK"; dkim-atps=neutral Received: from mail-pj1-f47.google.com (mail-pj1-f47.google.com [209.85.216.47]) by gabe.freedesktop.org (Postfix) with ESMTPS id 2576F10E969 for ; Thu, 6 Mar 2025 16:26:49 +0000 (UTC) Received: by mail-pj1-f47.google.com with SMTP id 98e67ed59e1d1-2fea8d8c322so2026953a91.2 for ; Thu, 06 Mar 2025 08:26:49 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1741278408; x=1741883208; darn=lists.freedesktop.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=TZw0QJRtM6IhR4KZmh2KNqroHre3ebnX5GDU+1y6qXk=; b=GBk9RvSKrN7T7RIhg9k+rLC/NJtJ1uh+tZSc8pC8yRnKC3kfb1vsjT3qxBKLY43pls WM4SBWTEUT8muXx9F2TUVPSLRooVGWpQypyj+8KeQS9v4/8rPoruLc6ValVT9nwqTn7Z TvcWhYXjXEnJI57tzCUkuD0pNQlP1MptOLZ3nr1aHi5GSrmlizU9Y1AthrGJObeP70CK 5z1AsI59Mb79RkmF80cqWiEiv+sSraegTG1QKm7jwgpwFUT+TCrfCw59weOv+ZPym2LG /7o98akIgOMNQTXcy64JtSUwOk3VbZbE7vOcvFA/f8ExxUG5+kAtqmxQ5mQZIR0Hi2Km CjvQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1741278408; x=1741883208; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=TZw0QJRtM6IhR4KZmh2KNqroHre3ebnX5GDU+1y6qXk=; b=ovgQCG8s1TZ8i8XPAPxkECrXm6RDRdeICUUBVpyYCaR2O6zMNWVhiTzSxNAfwAo1BI r66EABWUdrUKTH6pAQqCzxU2kErzWEATyiGx418fk6XC1GDvxJnrGjAcCXC8o/zn/D+c OoZxEPDd2hbVs3DGTk4IGl8+Bwo1iHH275mStFz/wmOe0FwkI/4OhyfjG38sLaNU44bW qYGufYn46rcZfkUfqaKiB3q7qCjGJotJiaakgp+IvSP61Fe32qYGCcXmett6B44zgw1i R7HD2498q5dl8cAHmFv2HAQB4ww95Lh7gArfYesA6qtGg0aSd4tKECOMUUYObruWMYM1 mW/A== X-Forwarded-Encrypted: i=1; AJvYcCXaPrvE1dNhAF2eEuWkYC5zt446/+ad6DD5o9MvyKIezwjAddorXChTKp0yohWzxksDmMaQlHVpNFQ=@lists.freedesktop.org X-Gm-Message-State: AOJu0YyyFINQ1lRFNwMigx6YTPqCbmMsbDltWvlOXJ6A7J7CISgwKYW5 CMgiJcJ7NCFCnrre4N3jot/l9VJ0S+IEMi4YSp38tF4W5r5DsAeY X-Gm-Gg: ASbGncsEaAvBs247vqjP5bvniSbSCY29kZrNMW00iu71IJMXT0le4G5sbUutzBKkTBL 78jeoiQK3GhIC1FM3H+AVDiBJom4xvCEfiO/92Sr6CWFjSL9cNUhNC45z+Cjd9BGvo4O/9luR2D QXWhQi8V9cNen5x4xK8L9bVF/c4qRNvKnLGNTLEzJxMTqGeuZbV/RrSRL1i2wAdH818iaa7jl6t /JFPLZKW9jW3V38QvXYaMBYKSRPyBdgQbxa7UhRKDXVsKLZQh20Vyz3YNyBNfumkOdn38w591rr hkYU/padw21k1yHc0v6gnvdvdUyP6sDwb1zeJq2yCbFS/XlVULW76UFlJ0MJuEr5lhJz0JWktRk = X-Google-Smtp-Source: AGHT+IE6epbCXvOg8cIc3QqWkrmaal2XvyOtsnANvbKq/mA/VIWvo3NmMHOwXwWdALV1bmHV/eFsdg== X-Received: by 2002:a17:90b:4b44:b0:2ff:7b28:a51c with SMTP id 98e67ed59e1d1-2ff7b28a652mr262212a91.34.1741278408658; Thu, 06 Mar 2025 08:26:48 -0800 (PST) Received: from visitorckw-System-Product-Name.. ([140.113.216.168]) by smtp.gmail.com with ESMTPSA id 98e67ed59e1d1-2ff693e75bfsm1464298a91.33.2025.03.06.08.26.40 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 06 Mar 2025 08:26:48 -0800 (PST) From: Kuan-Wei Chiu To: tglx@linutronix.de, mingo@redhat.com, bp@alien8.de, dave.hansen@linux.intel.com, x86@kernel.org, jk@ozlabs.org, joel@jms.id.au, eajames@linux.ibm.com, andrzej.hajda@intel.com, neil.armstrong@linaro.org, rfoss@kernel.org, maarten.lankhorst@linux.intel.com, mripard@kernel.org, tzimmermann@suse.de, airlied@gmail.com, simona@ffwll.ch, dmitry.torokhov@gmail.com, mchehab@kernel.org, awalls@md.metrocast.net, hverkuil@xs4all.nl, miquel.raynal@bootlin.com, richard@nod.at, vigneshr@ti.com, louis.peens@corigine.com, andrew+netdev@lunn.ch, davem@davemloft.net, edumazet@google.com, pabeni@redhat.com, parthiban.veerasooran@microchip.com, arend.vanspriel@broadcom.com, johannes@sipsolutions.net, gregkh@linuxfoundation.org, jirislaby@kernel.org, yury.norov@gmail.com, akpm@linux-foundation.org Cc: hpa@zytor.com, alistair@popple.id.au, linux@rasmusvillemoes.dk, Laurent.pinchart@ideasonboard.com, jonas@kwiboo.se, jernej.skrabec@gmail.com, kuba@kernel.org, linux-kernel@vger.kernel.org, linux-fsi@lists.ozlabs.org, dri-devel@lists.freedesktop.org, linux-input@vger.kernel.org, linux-media@vger.kernel.org, linux-mtd@lists.infradead.org, oss-drivers@corigine.com, netdev@vger.kernel.org, linux-wireless@vger.kernel.org, brcm80211@lists.linux.dev, brcm80211-dev-list.pdl@broadcom.com, linux-serial@vger.kernel.org, bpf@vger.kernel.org, jserv@ccns.ncku.edu.tw, Kuan-Wei Chiu , Yu-Chun Lin Subject: [PATCH v3 05/16] media: saa7115: Replace open-coded parity calculation with parity8() Date: Fri, 7 Mar 2025 00:25:30 +0800 Message-Id: <20250306162541.2633025-6-visitorckw@gmail.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20250306162541.2633025-1-visitorckw@gmail.com> References: <20250306162541.2633025-1-visitorckw@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: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" Refactor parity calculations to use the standard parity8() helper. This change eliminates redundant implementations and improves code efficiency. Co-developed-by: Yu-Chun Lin Signed-off-by: Yu-Chun Lin Signed-off-by: Kuan-Wei Chiu --- drivers/media/i2c/saa7115.c | 12 ++---------- 1 file changed, 2 insertions(+), 10 deletions(-) diff --git a/drivers/media/i2c/saa7115.c b/drivers/media/i2c/saa7115.c index a1c71187e773..b8b8f206ec3a 100644 --- a/drivers/media/i2c/saa7115.c +++ b/drivers/media/i2c/saa7115.c @@ -25,6 +25,7 @@ #include "saa711x_regs.h" +#include #include #include #include @@ -664,15 +665,6 @@ static const unsigned char saa7115_init_misc[] = { 0x00, 0x00 }; -static int saa711x_odd_parity(u8 c) -{ - c ^= (c >> 4); - c ^= (c >> 2); - c ^= (c >> 1); - - return c & 1; -} - static int saa711x_decode_vps(u8 *dst, u8 *p) { static const u8 biphase_tbl[] = { @@ -1227,7 +1219,7 @@ static int saa711x_decode_vbi_line(struct v4l2_subdev *sd, struct v4l2_decode_vb vbi->type = V4L2_SLICED_TELETEXT_B; break; case 4: - if (!saa711x_odd_parity(p[0]) || !saa711x_odd_parity(p[1])) + if (!parity8(p[0]) || !parity8(p[1])) return 0; vbi->type = V4L2_SLICED_CAPTION_525; break; From patchwork Thu Mar 6 16:25:31 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Kuan-Wei Chiu X-Patchwork-Id: 14004870 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org 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 smtp.lore.kernel.org (Postfix) with ESMTPS id AD962C282DE for ; Thu, 6 Mar 2025 16:27:00 +0000 (UTC) Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id 1EB1510E9F0; Thu, 6 Mar 2025 16:27:00 +0000 (UTC) Authentication-Results: gabe.freedesktop.org; dkim=pass (2048-bit key; unprotected) header.d=gmail.com header.i=@gmail.com header.b="at0z524C"; dkim-atps=neutral Received: from mail-pj1-f45.google.com (mail-pj1-f45.google.com [209.85.216.45]) by gabe.freedesktop.org (Postfix) with ESMTPS id BA61610E9F0 for ; Thu, 6 Mar 2025 16:26:58 +0000 (UTC) Received: by mail-pj1-f45.google.com with SMTP id 98e67ed59e1d1-2feb91a2492so1694387a91.2 for ; Thu, 06 Mar 2025 08:26:58 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1741278418; x=1741883218; darn=lists.freedesktop.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=OLC46Ss2m89bTVvfLJi0Yp7p5tSaqeo4vrmp4oYzA88=; b=at0z524CbpK0qNvhjzSb/j7amq58IblLh0k9P43C+PkoT4EpC+e/hwBXZHVDDq10Dv pH84ulLk3QSXQfqnUYXU/Bdyfa7EZox3D3uQh/fd/s/d3CW2AxJUNuOYyGRIWbWskSt5 yPdV18ewOVnndRkISASvUcpGPLiepCX0kcfGtFOCzjA9mf/cKKxOeFcmxItD2vg1C5QI 0pOz6pwceEKVQeS7NQzQG1mb4hlJGLAdrEnyB2Hl3u82uojLwusWFTjDRGVqGDUuQaah pLcdScKOw6ozhryeK0dwOPaOtdJMI8Xkc7i+nb8yT4yA0JRbnkQqsQnbeFQvHX21JnnH av8g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1741278418; x=1741883218; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=OLC46Ss2m89bTVvfLJi0Yp7p5tSaqeo4vrmp4oYzA88=; b=U1Rq7iT+bYAja6Tof9AJVw35TYaWb8JC4TOWQ175eXfBbCbSmPQOwVk7xOWOsgx2uq ErOlZi4j3BGGO1jCG5Y8oABoMfcjZBvDYAlEJC6OHV73bd3xhNjAF6tgmSXrXuJ+U11I rjOp7uRXAQ0/9nFn4zNg9kOKw/mMszFFhaJM0AtCnGIiZyk3BAmx5P7q5t/BPOnTXZIy mWfKu07tp5s63etw3/hc6IfBY6uijK2mbRVMW2ejIz2IbLAVkYi5i1sOJKXEzeMpP1C6 hr2JYyJMQJNSxEDWBEg7YWOC8UBB0vSsMl3Z92zu3QroPTF69AM9iY0oTV/CoUNRuRR0 7TYw== X-Forwarded-Encrypted: i=1; AJvYcCU2R8ZqoykIYcBKRWHGxA2AR3gdW2+ThKnhUzGfC3oTln5WAfNlT85qODxUxWbyehUkwjNX/I361g0=@lists.freedesktop.org X-Gm-Message-State: AOJu0YzhcSWeE9j7L8bpwtM7/77Ge/Q5HUlCmKDeKosAjJqUl+1rwNay 4ARMdQx/7I4Zg3Q9B+ohS5gohCOATlMHOgFT6V2kuv4uVIfed3Bb X-Gm-Gg: ASbGnctRhphJTmPGG8eUUDShdkunnLYWlcca3F/+7AJls5stGlxt90dlHl05vRa1wE8 iIsD0DAGTDB/2jQkJHRMsBHhf+1CwPFgo/GW4SoZ3SKUp40OKKdpXmYtGsIv0eMRdmVbBv/1NPb R3eZ0/R5iWY3iytr9Y9eTMxVe0UmVNffo4BPPzdBaRimK2eNE+1BdWpQ6BZXIDQ3+S2obQrPlwy ApLbSeht+TuTuXXJfDp39LjtN339yTzAJ0jVz5X5/hV0EPr6BgyIhxGaeNz0CZ4pw2ilOGKWCRE vEYPRMaQB1rTEZaBU9eWmVJicBlLS6UcaiHxlWrlkeJ1paR+GJyeQt+tITga9b7J1WWMWNE0qyM = X-Google-Smtp-Source: AGHT+IG03DCzCpNpvI11hw07lC+sk1Ut5naphaEWX0iSJy+1ysJZeXoZKrfH0dsPOSnHxsIbzbSOpg== X-Received: by 2002:a17:90b:3c87:b0:2fa:15ab:4df5 with SMTP id 98e67ed59e1d1-2ff497ccd9emr10053018a91.34.1741278418239; Thu, 06 Mar 2025 08:26:58 -0800 (PST) Received: from visitorckw-System-Product-Name.. ([140.113.216.168]) by smtp.gmail.com with ESMTPSA id 98e67ed59e1d1-2ff693e75bfsm1464298a91.33.2025.03.06.08.26.50 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 06 Mar 2025 08:26:57 -0800 (PST) From: Kuan-Wei Chiu To: tglx@linutronix.de, mingo@redhat.com, bp@alien8.de, dave.hansen@linux.intel.com, x86@kernel.org, jk@ozlabs.org, joel@jms.id.au, eajames@linux.ibm.com, andrzej.hajda@intel.com, neil.armstrong@linaro.org, rfoss@kernel.org, maarten.lankhorst@linux.intel.com, mripard@kernel.org, tzimmermann@suse.de, airlied@gmail.com, simona@ffwll.ch, dmitry.torokhov@gmail.com, mchehab@kernel.org, awalls@md.metrocast.net, hverkuil@xs4all.nl, miquel.raynal@bootlin.com, richard@nod.at, vigneshr@ti.com, louis.peens@corigine.com, andrew+netdev@lunn.ch, davem@davemloft.net, edumazet@google.com, pabeni@redhat.com, parthiban.veerasooran@microchip.com, arend.vanspriel@broadcom.com, johannes@sipsolutions.net, gregkh@linuxfoundation.org, jirislaby@kernel.org, yury.norov@gmail.com, akpm@linux-foundation.org Cc: hpa@zytor.com, alistair@popple.id.au, linux@rasmusvillemoes.dk, Laurent.pinchart@ideasonboard.com, jonas@kwiboo.se, jernej.skrabec@gmail.com, kuba@kernel.org, linux-kernel@vger.kernel.org, linux-fsi@lists.ozlabs.org, dri-devel@lists.freedesktop.org, linux-input@vger.kernel.org, linux-media@vger.kernel.org, linux-mtd@lists.infradead.org, oss-drivers@corigine.com, netdev@vger.kernel.org, linux-wireless@vger.kernel.org, brcm80211@lists.linux.dev, brcm80211-dev-list.pdl@broadcom.com, linux-serial@vger.kernel.org, bpf@vger.kernel.org, jserv@ccns.ncku.edu.tw, Kuan-Wei Chiu , Yu-Chun Lin Subject: [PATCH v3 06/16] serial: max3100: Replace open-coded parity calculation with parity8() Date: Fri, 7 Mar 2025 00:25:31 +0800 Message-Id: <20250306162541.2633025-7-visitorckw@gmail.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20250306162541.2633025-1-visitorckw@gmail.com> References: <20250306162541.2633025-1-visitorckw@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: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" Refactor parity calculations to use the standard parity8() helper. This change eliminates redundant implementations and improves code efficiency. Co-developed-by: Yu-Chun Lin Signed-off-by: Yu-Chun Lin Signed-off-by: Kuan-Wei Chiu --- Changes in v3: - Change parity8(c) to !!parity8(c). drivers/tty/serial/max3100.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/drivers/tty/serial/max3100.c b/drivers/tty/serial/max3100.c index cde5f1c86353..419d74043498 100644 --- a/drivers/tty/serial/max3100.c +++ b/drivers/tty/serial/max3100.c @@ -16,6 +16,7 @@ /* 4 MAX3100s should be enough for everyone */ #define MAX_MAX3100 4 +#include #include #include #include @@ -133,7 +134,7 @@ static int max3100_do_parity(struct max3100_port *s, u16 c) else c &= 0xff; - parity = parity ^ (hweight8(c) & 1); + parity = parity ^ !!parity8(c); return parity; } From patchwork Thu Mar 6 16:25:32 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Kuan-Wei Chiu X-Patchwork-Id: 14004871 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org 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 smtp.lore.kernel.org (Postfix) with ESMTPS id A4F55C282D1 for ; Thu, 6 Mar 2025 16:27:10 +0000 (UTC) Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id 1B8AE10E95D; Thu, 6 Mar 2025 16:27:10 +0000 (UTC) Authentication-Results: gabe.freedesktop.org; dkim=pass (2048-bit key; unprotected) header.d=gmail.com header.i=@gmail.com header.b="Gk0kI4Yt"; dkim-atps=neutral Received: from mail-pj1-f43.google.com (mail-pj1-f43.google.com [209.85.216.43]) by gabe.freedesktop.org (Postfix) with ESMTPS id 06D6410E9E7 for ; Thu, 6 Mar 2025 16:27:09 +0000 (UTC) Received: by mail-pj1-f43.google.com with SMTP id 98e67ed59e1d1-2ff615a114bso2088219a91.0 for ; Thu, 06 Mar 2025 08:27:09 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1741278428; x=1741883228; darn=lists.freedesktop.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=vfkeURT+EbeVrjHOwezSCAhftS9inN7HFKHEaavRXXI=; b=Gk0kI4Yt62eC8TrofuHaajb2silr4N0xpTNTfhzIxODC4JkSsvUUAgwVrYO2RKpbxB 9RAeEmaBL8CVhIFhac8fvOVLB945G/LdvtkZhKhcv2k9ohBFZElbqyDtHQWmoehorPEV EqhatyEInGJRVhaF2FhNix1gC5XNzvWjCqAcPLy/d9RXbPQZtw/Kj20jxIWdI5TwhYe5 OUPqcj9UYUFMR4azoTsjvOTsdlw2cMUEsw3/hxESk5uMWdq6Qyv+Af9IIslzV472jWfK wjjqx6sdbWSiTW7VAqPccXQWeiVwGJo4XTkudA04IrgUe+QbrJ2cTWLi0bgM2ZQW+Nn/ rYGw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1741278428; x=1741883228; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=vfkeURT+EbeVrjHOwezSCAhftS9inN7HFKHEaavRXXI=; b=k7nE61klotpDxE4dNF1NAKtua9e8WmA/EeHsML/21WuWIETg9KktZw3n2qdWhBIQIh wV14GrItDBHo3N6wsKSyg1PRK6VbPBC03TiRZx2MkcsVIs1nOPk+gjrRBdAS/DA+0sJa 47VPyuAQrw8MDH0PA9uUd1kQSHuoE93BM0heH4/Hp2U07FbL9cq2OrRLAp4z1muRL1J/ mcG8zlzDoZMA4JU8TY+c+LzVQIlrIWtAGZGDt+QXxRKIEdliWDQ2ZSKE3Y3JdhE6x/Ng j7rnYEDmt6ajwo6Yhip38a7Vp3oGwz0kTyaJMwd1UvdEX/QblQ6DA/R0sjdDxDPnOFTT P2fg== X-Forwarded-Encrypted: i=1; AJvYcCUh7y6Lxok/aW/JHsv6qdf6sv4OpbXOn11y74AWDIsLiBbO+45/0H0y1cL3wFeTrnHTv4x5zX6Y6c0=@lists.freedesktop.org X-Gm-Message-State: AOJu0YxBLzsGDJjt9KDwwQ/fOogg2IpXYrB8wKUAwrEno2DJpP54BXm8 v8h0/Qo59fJNPjYPKYYXcyiX9nx3NLhn4YzR2E++1kUhHoYa5s7U X-Gm-Gg: ASbGncsGeR/QlG5qBznnp1ICRF22RkAMad6dowqnTdQhVfbu/avb2/KG+sNKvLl7krT /GcTii8pAINg6E7Wg3Hzt7OOC3Bhdl6bTL0Asm1bwseJp+QS5Te78yJv5hfqZbJJVOI78qwwqxh b5uJvkLtcadA8jHR+BU9WM0zB8bCyyi33SSHNX5mQQRFKjTy7EwW7lsKYCJphcmG/QUbAdJoZSx I/cc3LhvjmqeZqhSRXMyi+3H3vHMAYsckwpUrEQs2GrBjyIPcShL+Gz7wdTPJpwGowDmwK7QeuV 1sHdPT4ljvUScQCefWw7M2iwv3i46k1HGMf/4fQjqy76X8UNIQIm5fIlAxsAIHPTPslEAMwItm4 = X-Google-Smtp-Source: AGHT+IGNBcefivOmpQNsVFSdkYo/uQMo0VhzohCZYprzHPevS02kDmNn83LuER8aDdhmdhff3Ulvpw== X-Received: by 2002:a17:90b:1808:b0:2fa:17e4:b1cf with SMTP id 98e67ed59e1d1-2ff7b59dcffmr195851a91.2.1741278428557; Thu, 06 Mar 2025 08:27:08 -0800 (PST) Received: from visitorckw-System-Product-Name.. ([140.113.216.168]) by smtp.gmail.com with ESMTPSA id 98e67ed59e1d1-2ff693e75bfsm1464298a91.33.2025.03.06.08.27.00 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 06 Mar 2025 08:27:08 -0800 (PST) From: Kuan-Wei Chiu To: tglx@linutronix.de, mingo@redhat.com, bp@alien8.de, dave.hansen@linux.intel.com, x86@kernel.org, jk@ozlabs.org, joel@jms.id.au, eajames@linux.ibm.com, andrzej.hajda@intel.com, neil.armstrong@linaro.org, rfoss@kernel.org, maarten.lankhorst@linux.intel.com, mripard@kernel.org, tzimmermann@suse.de, airlied@gmail.com, simona@ffwll.ch, dmitry.torokhov@gmail.com, mchehab@kernel.org, awalls@md.metrocast.net, hverkuil@xs4all.nl, miquel.raynal@bootlin.com, richard@nod.at, vigneshr@ti.com, louis.peens@corigine.com, andrew+netdev@lunn.ch, davem@davemloft.net, edumazet@google.com, pabeni@redhat.com, parthiban.veerasooran@microchip.com, arend.vanspriel@broadcom.com, johannes@sipsolutions.net, gregkh@linuxfoundation.org, jirislaby@kernel.org, yury.norov@gmail.com, akpm@linux-foundation.org Cc: hpa@zytor.com, alistair@popple.id.au, linux@rasmusvillemoes.dk, Laurent.pinchart@ideasonboard.com, jonas@kwiboo.se, jernej.skrabec@gmail.com, kuba@kernel.org, linux-kernel@vger.kernel.org, linux-fsi@lists.ozlabs.org, dri-devel@lists.freedesktop.org, linux-input@vger.kernel.org, linux-media@vger.kernel.org, linux-mtd@lists.infradead.org, oss-drivers@corigine.com, netdev@vger.kernel.org, linux-wireless@vger.kernel.org, brcm80211@lists.linux.dev, brcm80211-dev-list.pdl@broadcom.com, linux-serial@vger.kernel.org, bpf@vger.kernel.org, jserv@ccns.ncku.edu.tw, Kuan-Wei Chiu , Yu-Chun Lin Subject: [PATCH v3 07/16] lib/bch: Replace open-coded parity calculation with parity32() Date: Fri, 7 Mar 2025 00:25:32 +0800 Message-Id: <20250306162541.2633025-8-visitorckw@gmail.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20250306162541.2633025-1-visitorckw@gmail.com> References: <20250306162541.2633025-1-visitorckw@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: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" Refactor parity calculations to use the standard parity32() helper. This change eliminates redundant implementations and improves code efficiency. Co-developed-by: Yu-Chun Lin Signed-off-by: Yu-Chun Lin Signed-off-by: Kuan-Wei Chiu --- Changes in v3: - Change parity32(mask) to !!parity32(mask). lib/bch.c | 14 +------------- 1 file changed, 1 insertion(+), 13 deletions(-) diff --git a/lib/bch.c b/lib/bch.c index 1c0cb07cdfeb..6c29122c0982 100644 --- a/lib/bch.c +++ b/lib/bch.c @@ -311,18 +311,6 @@ static inline int deg(unsigned int poly) return fls(poly)-1; } -static inline int parity(unsigned int x) -{ - /* - * public domain code snippet, lifted from - * http://www-graphics.stanford.edu/~seander/bithacks.html - */ - x ^= x >> 1; - x ^= x >> 2; - x = (x & 0x11111111U) * 0x11111111U; - return (x >> 28) & 1; -} - /* Galois field basic operations: multiply, divide, inverse, etc. */ static inline unsigned int gf_mul(struct bch_control *bch, unsigned int a, @@ -524,7 +512,7 @@ static int solve_linear_system(struct bch_control *bch, unsigned int *rows, tmp = 0; for (r = m-1; r >= 0; r--) { mask = rows[r] & (tmp|1); - tmp |= parity(mask) << (m-r); + tmp |= !!parity32(mask) << (m-r); } sol[p] = tmp >> 1; } From patchwork Thu Mar 6 16:25:33 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Kuan-Wei Chiu X-Patchwork-Id: 14004872 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org 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 smtp.lore.kernel.org (Postfix) with ESMTPS id E0CCDC282D1 for ; Thu, 6 Mar 2025 16:27:20 +0000 (UTC) Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id 4F31A10E03D; Thu, 6 Mar 2025 16:27:20 +0000 (UTC) Authentication-Results: gabe.freedesktop.org; dkim=pass (2048-bit key; unprotected) header.d=gmail.com header.i=@gmail.com header.b="GvlZwSZk"; dkim-atps=neutral Received: from mail-pl1-f179.google.com (mail-pl1-f179.google.com [209.85.214.179]) by gabe.freedesktop.org (Postfix) with ESMTPS id C23A310E03D for ; Thu, 6 Mar 2025 16:27:18 +0000 (UTC) Received: by mail-pl1-f179.google.com with SMTP id d9443c01a7336-22337bc9ac3so19028835ad.1 for ; Thu, 06 Mar 2025 08:27:18 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1741278438; x=1741883238; darn=lists.freedesktop.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=XN5ImNH6dAdBfCykY87Jt3WvSMwHnviLIgPuEMqr3Q4=; b=GvlZwSZkHN5aKvXLGs9x7MSOXEWEYAJglaftledDpAbID73c/h55Jy8z3sPkJDjtzx EJXHmS7yEWcx7DeCnx2HYeCOCvkE6e+cxxBuIFQcy5dQjI7Fs9PxRhwUeZw5XDWLudyQ NZ3EdchmiQCigUPa/6+6hL8b50ygKUS48XHtWK5GC8GQTywjOfxHHU1bfH2qPA4lS64U e1WDqb9lz0aiIpOjl6KDK8dhjkNdVEhHbRj6SH+kY2E1GXtEM+DjMvyqJVQiCQsBwI7q gMnodjKO4/cQEDR0cS4QH6Yf7h+5Z1Wy6UlhUPzspHf6mBMRzY+vNVmMlgX6QyJzcd7F 4qkg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1741278438; x=1741883238; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=XN5ImNH6dAdBfCykY87Jt3WvSMwHnviLIgPuEMqr3Q4=; b=nQzmN5RPZIgPGFAQdqcuWe/R9nDefN8fH2A4qp9Fbu7Jr/t6pVHRPk7y/zM/bS3B5Q vQlW+A31tHsw8pi9AqlsWZ0P+giNBVvcSR3p7M6nwfB0TeoSye0PY30eTxAqMHpQ4Jwu 9upipCHBTpTZfKSZPlfTcLaXt8Blad2+jF1CXcmIYR7P9GR364EkgOb0SnfVAeN81KHT BBwenCzHGsjh9v+/cdlpbUqXojxENVj9v4u83gtfAiEfcziIjNckSIyk0uy6Y9aGFNFh BGFSgUNZqNZ8MKLJs4EpNAKrPeLWtgkqnKE3dLoUQ4OvHJiQJ8wIQHi5lQRL1eckHK92 CC4g== X-Forwarded-Encrypted: i=1; AJvYcCX/gZwCa7uNbhE4oR5mdZaOINcY0HmmkeFqyPQrfwIH2jn2goSF6Rl+AclHjdC4MvVkKRUgJugk+y8=@lists.freedesktop.org X-Gm-Message-State: AOJu0YznrKt6xhxrFSsmx+OQX9lXrQDk3HcyisJfSs/vZUR8JmGiUu0Q U6x2c34ySuQrs/A00e6roXSpCOKUiWef9EoXPzF8MwW2it659h2n X-Gm-Gg: ASbGncsttZyRuIj4/TCohF/TV7ki0OpM9q8NCK0Lrd7dlL0+pQytCeZ7i+oV057B288 LQV1e8ED8/hiW2BgrfG9PDjlkr6ifyCGjvehqHk0cqyCdT++woEkN7qImMJ/fwYAjhUGqZvs6T7 ke/GAH6l3CuR1XNbbfcyxnfg7d6Uv5TO5VGRTpGw6SZBssO8HdC5GZIPP63N1hHonPaBmhOc4j6 BDqJUuUYSre7Uj+c7/UhORJ0NJkpWsVDkFqxycZh3QeJpK0wKbKN2pYZ8aTMoILzhlNshrLclwq 6eF3IsuK/11BESV4j45tWvJ5wokPqksdAPsQN2sF2EgSbcLUX8sI/CKuk+/f9kaOrl9f//hD5e0 = X-Google-Smtp-Source: AGHT+IF18uiSk+IKiG1ozkM3lMeST4qvi8jhpDhJUoUXK6z5h5Y70JgwenicEaPtYCl0NNS2nVYnUA== X-Received: by 2002:a17:902:e5cf:b0:224:1eaa:5de1 with SMTP id d9443c01a7336-2241eaa5f50mr17212195ad.18.1741278438234; Thu, 06 Mar 2025 08:27:18 -0800 (PST) Received: from visitorckw-System-Product-Name.. ([140.113.216.168]) by smtp.gmail.com with ESMTPSA id 98e67ed59e1d1-2ff693e75bfsm1464298a91.33.2025.03.06.08.27.10 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 06 Mar 2025 08:27:17 -0800 (PST) From: Kuan-Wei Chiu To: tglx@linutronix.de, mingo@redhat.com, bp@alien8.de, dave.hansen@linux.intel.com, x86@kernel.org, jk@ozlabs.org, joel@jms.id.au, eajames@linux.ibm.com, andrzej.hajda@intel.com, neil.armstrong@linaro.org, rfoss@kernel.org, maarten.lankhorst@linux.intel.com, mripard@kernel.org, tzimmermann@suse.de, airlied@gmail.com, simona@ffwll.ch, dmitry.torokhov@gmail.com, mchehab@kernel.org, awalls@md.metrocast.net, hverkuil@xs4all.nl, miquel.raynal@bootlin.com, richard@nod.at, vigneshr@ti.com, louis.peens@corigine.com, andrew+netdev@lunn.ch, davem@davemloft.net, edumazet@google.com, pabeni@redhat.com, parthiban.veerasooran@microchip.com, arend.vanspriel@broadcom.com, johannes@sipsolutions.net, gregkh@linuxfoundation.org, jirislaby@kernel.org, yury.norov@gmail.com, akpm@linux-foundation.org Cc: hpa@zytor.com, alistair@popple.id.au, linux@rasmusvillemoes.dk, Laurent.pinchart@ideasonboard.com, jonas@kwiboo.se, jernej.skrabec@gmail.com, kuba@kernel.org, linux-kernel@vger.kernel.org, linux-fsi@lists.ozlabs.org, dri-devel@lists.freedesktop.org, linux-input@vger.kernel.org, linux-media@vger.kernel.org, linux-mtd@lists.infradead.org, oss-drivers@corigine.com, netdev@vger.kernel.org, linux-wireless@vger.kernel.org, brcm80211@lists.linux.dev, brcm80211-dev-list.pdl@broadcom.com, linux-serial@vger.kernel.org, bpf@vger.kernel.org, jserv@ccns.ncku.edu.tw, Kuan-Wei Chiu , Yu-Chun Lin Subject: [PATCH v3 08/16] Input: joystick - Replace open-coded parity calculation with parity32() Date: Fri, 7 Mar 2025 00:25:33 +0800 Message-Id: <20250306162541.2633025-9-visitorckw@gmail.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20250306162541.2633025-1-visitorckw@gmail.com> References: <20250306162541.2633025-1-visitorckw@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: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" Refactor parity calculations to use the standard parity32() helper. This change eliminates redundant implementations and improves code efficiency. Co-developed-by: Yu-Chun Lin Signed-off-by: Yu-Chun Lin Signed-off-by: Kuan-Wei Chiu --- Changes in v3: - Change condition if(parity32(pkt) == 1) to if(parity32(pkt)). drivers/input/joystick/grip_mp.c | 17 ++--------------- 1 file changed, 2 insertions(+), 15 deletions(-) diff --git a/drivers/input/joystick/grip_mp.c b/drivers/input/joystick/grip_mp.c index 5eadb5a3ca37..26a7ae785942 100644 --- a/drivers/input/joystick/grip_mp.c +++ b/drivers/input/joystick/grip_mp.c @@ -18,6 +18,7 @@ #include #include #include +#include #define DRIVER_DESC "Gravis Grip Multiport driver" @@ -112,20 +113,6 @@ static const int axis_map[] = { 5, 9, 1, 5, 6, 10, 2, 6, 4, 8, 0, 4, 5, 9, 1, 5 static int register_slot(int i, struct grip_mp *grip); -/* - * Returns whether an odd or even number of bits are on in pkt. - */ - -static int bit_parity(u32 pkt) -{ - int x = pkt ^ (pkt >> 16); - x ^= x >> 8; - x ^= x >> 4; - x ^= x >> 2; - x ^= x >> 1; - return x & 1; -} - /* * Poll gameport; return true if all bits set in 'onbits' are on and * all bits set in 'offbits' are off. @@ -236,7 +223,7 @@ static int mp_io(struct gameport* gameport, int sendflags, int sendcode, u32 *pa pkt = (pkt >> 2) | 0xf0000000; } - if (bit_parity(pkt) == 1) + if (parity32(pkt)) return IO_RESET; /* Acknowledge packet receipt */ From patchwork Thu Mar 6 16:25:34 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Kuan-Wei Chiu X-Patchwork-Id: 14004873 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org 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 smtp.lore.kernel.org (Postfix) with ESMTPS id 24D00C282D1 for ; Thu, 6 Mar 2025 16:27:30 +0000 (UTC) Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id 83CA010E9E7; Thu, 6 Mar 2025 16:27:29 +0000 (UTC) Authentication-Results: gabe.freedesktop.org; dkim=pass (2048-bit key; unprotected) header.d=gmail.com header.i=@gmail.com header.b="PZqO50yj"; dkim-atps=neutral Received: from mail-pj1-f54.google.com (mail-pj1-f54.google.com [209.85.216.54]) by gabe.freedesktop.org (Postfix) with ESMTPS id B794710E9E7 for ; Thu, 6 Mar 2025 16:27:28 +0000 (UTC) Received: by mail-pj1-f54.google.com with SMTP id 98e67ed59e1d1-2fa8ac56891so1506831a91.2 for ; Thu, 06 Mar 2025 08:27:28 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1741278448; x=1741883248; darn=lists.freedesktop.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=OqxvpgZHoGiLr6YH8sD6RZa4e3r1mx+K51Pz7JFmQwA=; b=PZqO50yjoPG89ug6PTh6UO/NExQFXVX9JmFyS9Rblq2mA/0qJ/rOY0KX6CKTu2eKwY KgwHpEzHKxjHRaHOxdkXfSP09H2m7AGGn5JS0U2D6/IetpBOKxIXrhI+HWlgqVBd2D/n UNyaOsENwNhZtFt9pj4sQAWW0Rm/M0JYZdRcqdHQW9iSbGqKbM19aUoT1tEMrubqY/6t QksUpMjH+OB6bHIXt2kbu/GYV5M+SLbdHwnUuvnrBy0FWK8PAZv2Iy9fODSI43Smjcbu 12IQRNWoVuQB+ea8lYwEcUXHG3fRgwlW3JEiUGVIHJN9mCG+3AjjWxfxb5OcoaPNjLBx +y5A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1741278448; x=1741883248; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=OqxvpgZHoGiLr6YH8sD6RZa4e3r1mx+K51Pz7JFmQwA=; b=ZGCLg28A4TefoV6/2iFEn5XYKiqeTV6oNOA2mCReX2i4OeLqrlCO+xE7cQJQEmMMxO XlLMNK4JZ5I1jhWPt8+3EJIH8BZmvGlJ6GhEUu1PsiteBJ0sz2CwmZdn1giztYmi4DI0 dZI+F+ClatnYPnzOtA39+SP9RyNDe809cYQcgfWPVVimP9E0dTiw7wZRPtM8Wmk5fFU8 rp3pWUSyW9ZM1nK6h5+MV9BeISTjHH0Lzbs6SuhCNy/mUXgy2E+0alecq/x5EbxMDTe5 /s/N7ZrA6xncSdUHlAnkzYxKGSXOPkX66DLvZlwhmH/8WB2H4JQklXMg4IhdRbtSPQq+ lnPg== X-Forwarded-Encrypted: i=1; AJvYcCXZJJ5IV7vArb6Fs6NvSQWPd0/hDVkraGFwGUoLa6Pl2/KukEONaqiY4NrKEbXtwNEaDSOkC88IwYk=@lists.freedesktop.org X-Gm-Message-State: AOJu0YxyaSlVv7rjMz3r1qomA25FP+QUGwDZX28w8NZH5Lwik3tS/tDF MvpYv+y1hm8LaQqeYDfYd2xMPzx8A2CyHHc/12AdkLJYH724cNWm X-Gm-Gg: ASbGnctb3Z9i6aYZO4aFznva/mbSRfU0qrLBvD7Bf1immIgmlPVDahZmAR9IWD9iqKw uHyvkUpngld1LSNZdadvptPQ+ML4p36eXPItHww4YOwrcCdH+qM9gL02Rc6TIYmYmo6mABKGzwT NQ29wHYZl57AYANi61U+Eq/1G8+C+75RJchuhAgQGVqi78HPLyIxBvyl4KO0E7GjZF61ZZBEVSj UEJoudGw+NVWXTQPNw+csHx0AYD+zUCLlcsshcmr5XcG/NNhz+zd81S3wle1GPkYjiwVEb2p8AK R7+UGpk5Z0seZr/EtkjdICLh5agjPvNkLRH5xruxV0jtkaJmCDVupogA6gpBYzVWCj8QW034tGI = X-Google-Smtp-Source: AGHT+IHUo1VQ1LAiyQ9UXLap7uh1jhPtCUcmwdFlNac3xPKGa9S5gSb9W1skAcfvxZCU/ssK4wuDpg== X-Received: by 2002:a17:90b:17d1:b0:2ee:ed1c:e451 with SMTP id 98e67ed59e1d1-2ff497cd4b3mr11755081a91.15.1741278448219; Thu, 06 Mar 2025 08:27:28 -0800 (PST) Received: from visitorckw-System-Product-Name.. ([140.113.216.168]) by smtp.gmail.com with ESMTPSA id 98e67ed59e1d1-2ff693e75bfsm1464298a91.33.2025.03.06.08.27.20 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 06 Mar 2025 08:27:27 -0800 (PST) From: Kuan-Wei Chiu To: tglx@linutronix.de, mingo@redhat.com, bp@alien8.de, dave.hansen@linux.intel.com, x86@kernel.org, jk@ozlabs.org, joel@jms.id.au, eajames@linux.ibm.com, andrzej.hajda@intel.com, neil.armstrong@linaro.org, rfoss@kernel.org, maarten.lankhorst@linux.intel.com, mripard@kernel.org, tzimmermann@suse.de, airlied@gmail.com, simona@ffwll.ch, dmitry.torokhov@gmail.com, mchehab@kernel.org, awalls@md.metrocast.net, hverkuil@xs4all.nl, miquel.raynal@bootlin.com, richard@nod.at, vigneshr@ti.com, louis.peens@corigine.com, andrew+netdev@lunn.ch, davem@davemloft.net, edumazet@google.com, pabeni@redhat.com, parthiban.veerasooran@microchip.com, arend.vanspriel@broadcom.com, johannes@sipsolutions.net, gregkh@linuxfoundation.org, jirislaby@kernel.org, yury.norov@gmail.com, akpm@linux-foundation.org Cc: hpa@zytor.com, alistair@popple.id.au, linux@rasmusvillemoes.dk, Laurent.pinchart@ideasonboard.com, jonas@kwiboo.se, jernej.skrabec@gmail.com, kuba@kernel.org, linux-kernel@vger.kernel.org, linux-fsi@lists.ozlabs.org, dri-devel@lists.freedesktop.org, linux-input@vger.kernel.org, linux-media@vger.kernel.org, linux-mtd@lists.infradead.org, oss-drivers@corigine.com, netdev@vger.kernel.org, linux-wireless@vger.kernel.org, brcm80211@lists.linux.dev, brcm80211-dev-list.pdl@broadcom.com, linux-serial@vger.kernel.org, bpf@vger.kernel.org, jserv@ccns.ncku.edu.tw, Kuan-Wei Chiu , Yu-Chun Lin Subject: [PATCH v3 09/16] net: ethernet: oa_tc6: Replace open-coded parity calculation with parity32() Date: Fri, 7 Mar 2025 00:25:34 +0800 Message-Id: <20250306162541.2633025-10-visitorckw@gmail.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20250306162541.2633025-1-visitorckw@gmail.com> References: <20250306162541.2633025-1-visitorckw@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: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" Refactor parity calculations to use the standard parity32() helper. This change eliminates redundant implementations and improves code efficiency. Co-developed-by: Yu-Chun Lin Signed-off-by: Yu-Chun Lin Signed-off-by: Kuan-Wei Chiu --- drivers/net/ethernet/oa_tc6.c | 19 +++---------------- 1 file changed, 3 insertions(+), 16 deletions(-) diff --git a/drivers/net/ethernet/oa_tc6.c b/drivers/net/ethernet/oa_tc6.c index db200e4ec284..f02dba7b89a1 100644 --- a/drivers/net/ethernet/oa_tc6.c +++ b/drivers/net/ethernet/oa_tc6.c @@ -6,6 +6,7 @@ */ #include +#include #include #include #include @@ -177,19 +178,6 @@ static int oa_tc6_spi_transfer(struct oa_tc6 *tc6, return spi_sync(tc6->spi, &msg); } -static int oa_tc6_get_parity(u32 p) -{ - /* Public domain code snippet, lifted from - * http://www-graphics.stanford.edu/~seander/bithacks.html - */ - p ^= p >> 1; - p ^= p >> 2; - p = (p & 0x11111111U) * 0x11111111U; - - /* Odd parity is used here */ - return !((p >> 28) & 1); -} - static __be32 oa_tc6_prepare_ctrl_header(u32 addr, u8 length, enum oa_tc6_register_op reg_op) { @@ -202,7 +190,7 @@ static __be32 oa_tc6_prepare_ctrl_header(u32 addr, u8 length, FIELD_PREP(OA_TC6_CTRL_HEADER_ADDR, addr) | FIELD_PREP(OA_TC6_CTRL_HEADER_LENGTH, length - 1); header |= FIELD_PREP(OA_TC6_CTRL_HEADER_PARITY, - oa_tc6_get_parity(header)); + !parity32(header)); return cpu_to_be32(header); } @@ -940,8 +928,7 @@ static __be32 oa_tc6_prepare_data_header(bool data_valid, bool start_valid, FIELD_PREP(OA_TC6_DATA_HEADER_END_BYTE_OFFSET, end_byte_offset); - header |= FIELD_PREP(OA_TC6_DATA_HEADER_PARITY, - oa_tc6_get_parity(header)); + header |= FIELD_PREP(OA_TC6_DATA_HEADER_PARITY, !parity32(header)); return cpu_to_be32(header); } From patchwork Thu Mar 6 16:25:35 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Kuan-Wei Chiu X-Patchwork-Id: 14004874 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org 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 smtp.lore.kernel.org (Postfix) with ESMTPS id C6959C282D1 for ; Thu, 6 Mar 2025 16:27:40 +0000 (UTC) Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id 3BB7310E9EF; Thu, 6 Mar 2025 16:27:40 +0000 (UTC) Authentication-Results: gabe.freedesktop.org; dkim=pass (2048-bit key; unprotected) header.d=gmail.com header.i=@gmail.com header.b="C6GPDvNA"; dkim-atps=neutral Received: from mail-pj1-f44.google.com (mail-pj1-f44.google.com [209.85.216.44]) by gabe.freedesktop.org (Postfix) with ESMTPS id 1614B10E9EF for ; Thu, 6 Mar 2025 16:27:39 +0000 (UTC) Received: by mail-pj1-f44.google.com with SMTP id 98e67ed59e1d1-2fef5c978ccso1515359a91.1 for ; Thu, 06 Mar 2025 08:27:39 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1741278458; x=1741883258; darn=lists.freedesktop.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=Ih00TRqmhmd1Mh0sl7zFiAmpBAeBPMq/8Nno4TrvKu8=; b=C6GPDvNAhZWuToL7KXOa21ELZjOiFzhN+JxvScTqQOJ35xyaJcOiNN+Ue6r5q5TLjF P23L7Mgd2r4qttywJ5Ri9aImZ47JEa0cMAxvz7twY2PghFMzkvkp96p23vZqsBXIosqj 8qqwpVG5SsBi5BJSjuM+IY1bM9KxUVNoN9cobV6zAZ/+IF9M8hmyNQxkjceJ9P8EiLI5 oavB9t6K0ONHVPczyXCvIaZisuol6iWxqIGLvJ0eZGqL9brhycHtCSCxwhKI07cqn8Kd LlW5SF9nRevpA2KdxPZVBif4Zg7ZGAYg/H2sKcVGNajPMTOXRdzOEE9Gy8tHeb3T8VkK Mbjg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1741278458; x=1741883258; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=Ih00TRqmhmd1Mh0sl7zFiAmpBAeBPMq/8Nno4TrvKu8=; b=IHZtWOPnI/4YzhpCi90o+hqlWwdHC4LXM2fOtlrGQOjTgzIgPEGyi0COlqRq8JQWmI e7duY4W1GOKGBbUvxSdlejqiGSDnK3T/8i75KB5UCDxED2s3YebJj1dQHQ9z8bEL8yuP WIRIQcYKO+QA8ufSF2wphrK5Zc3LojXjRcuTwVDhNnsswOnu0rh0r0ShTUc9UFt+qJKd D6rYir5jeCDeA2p2ci3IEYXpu7aSh/NFQpyBw/HAO2Qhok49RszBAio6zY8wP+DjESMY xSm4xtgNjAvEy99xypDzGGmOstJc8yMUY4yAtOlu/W0gYb6TgxsxoeF58dmT0BdZBw5X +7FQ== X-Forwarded-Encrypted: i=1; AJvYcCX+2SXLqVQGHsFyuwA+FOIiOTlAx5ZmdZut1vWdxv6QqS52VhpCLxDv6c9YzDwvF+WnV55t7cKIKhw=@lists.freedesktop.org X-Gm-Message-State: AOJu0YyAhvyrMf7qqUi294eHexsyMFqbC58xA/AKj7d68LpFzfw1KXNU IE0+XYU565ZQ+NgCBrqeh5cAxLe1rVWPMDcZzbx1SPF4ZQSljnY2 X-Gm-Gg: ASbGncsqCEG/04RaMLMQN9zqeQaLhOLMBISHh0uPz8CoNbr6RhNQxbtdyjO6OZy8e/q 8UM/W8NDZ6oPP9bCTS7i/5DAiuj3P1R7sDTeFi07Z9NT97BPBjJ9bWu5HTjesg42lGEFQvM3aGd J0XbKAa7wfKgpNGQHlAZyJkBR3rA+VYXQGMfXQl9f+hmHIFteiQ3br9jdDEZDVsDecG9Q0F0wP1 FkeAV8hF7Sj51t2VGF8ltSw93fZmsj/QUehd0fg/d6B99gKtxUqpyCoub6mbIOv/rP1MP09bHG2 ophQlTfs0EOSINZrI0uDc7MrJuJFaCjpif1IeZzpTWubcrWvpWzeea9lcKXuiBsCPiP58sXLnsI = X-Google-Smtp-Source: AGHT+IHic3IzGXhBZWP6zBd/pJJw64LoRGQ/N6k6+q6inZlCxRIB1pB5KkHjt//av4DrSwa4YWD19w== X-Received: by 2002:a17:90b:1e04:b0:2ee:a76a:830 with SMTP id 98e67ed59e1d1-2ff49841eeamr12538794a91.24.1741278458615; Thu, 06 Mar 2025 08:27:38 -0800 (PST) Received: from visitorckw-System-Product-Name.. ([140.113.216.168]) by smtp.gmail.com with ESMTPSA id 98e67ed59e1d1-2ff693e75bfsm1464298a91.33.2025.03.06.08.27.30 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 06 Mar 2025 08:27:38 -0800 (PST) From: Kuan-Wei Chiu To: tglx@linutronix.de, mingo@redhat.com, bp@alien8.de, dave.hansen@linux.intel.com, x86@kernel.org, jk@ozlabs.org, joel@jms.id.au, eajames@linux.ibm.com, andrzej.hajda@intel.com, neil.armstrong@linaro.org, rfoss@kernel.org, maarten.lankhorst@linux.intel.com, mripard@kernel.org, tzimmermann@suse.de, airlied@gmail.com, simona@ffwll.ch, dmitry.torokhov@gmail.com, mchehab@kernel.org, awalls@md.metrocast.net, hverkuil@xs4all.nl, miquel.raynal@bootlin.com, richard@nod.at, vigneshr@ti.com, louis.peens@corigine.com, andrew+netdev@lunn.ch, davem@davemloft.net, edumazet@google.com, pabeni@redhat.com, parthiban.veerasooran@microchip.com, arend.vanspriel@broadcom.com, johannes@sipsolutions.net, gregkh@linuxfoundation.org, jirislaby@kernel.org, yury.norov@gmail.com, akpm@linux-foundation.org Cc: hpa@zytor.com, alistair@popple.id.au, linux@rasmusvillemoes.dk, Laurent.pinchart@ideasonboard.com, jonas@kwiboo.se, jernej.skrabec@gmail.com, kuba@kernel.org, linux-kernel@vger.kernel.org, linux-fsi@lists.ozlabs.org, dri-devel@lists.freedesktop.org, linux-input@vger.kernel.org, linux-media@vger.kernel.org, linux-mtd@lists.infradead.org, oss-drivers@corigine.com, netdev@vger.kernel.org, linux-wireless@vger.kernel.org, brcm80211@lists.linux.dev, brcm80211-dev-list.pdl@broadcom.com, linux-serial@vger.kernel.org, bpf@vger.kernel.org, jserv@ccns.ncku.edu.tw, Kuan-Wei Chiu , Yu-Chun Lin Subject: [PATCH v3 10/16] wifi: brcm80211: Replace open-coded parity calculation with parity32() Date: Fri, 7 Mar 2025 00:25:35 +0800 Message-Id: <20250306162541.2633025-11-visitorckw@gmail.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20250306162541.2633025-1-visitorckw@gmail.com> References: <20250306162541.2633025-1-visitorckw@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: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" Refactor parity calculations to use the standard parity32() helper. This change eliminates redundant implementations and improves code efficiency. Co-developed-by: Yu-Chun Lin Signed-off-by: Yu-Chun Lin Signed-off-by: Kuan-Wei Chiu Acked-by: Arend van Spriel --- .../wireless/broadcom/brcm80211/brcmsmac/dma.c | 16 +--------------- 1 file changed, 1 insertion(+), 15 deletions(-) diff --git a/drivers/net/wireless/broadcom/brcm80211/brcmsmac/dma.c b/drivers/net/wireless/broadcom/brcm80211/brcmsmac/dma.c index 80c35027787a..d1a1ecd97d42 100644 --- a/drivers/net/wireless/broadcom/brcm80211/brcmsmac/dma.c +++ b/drivers/net/wireless/broadcom/brcm80211/brcmsmac/dma.c @@ -17,6 +17,7 @@ #include #include #include +#include #include #include @@ -283,21 +284,6 @@ struct dma_info { bool aligndesc_4k; }; -/* Check for odd number of 1's */ -static u32 parity32(__le32 data) -{ - /* no swap needed for counting 1's */ - u32 par_data = *(u32 *)&data; - - par_data ^= par_data >> 16; - par_data ^= par_data >> 8; - par_data ^= par_data >> 4; - par_data ^= par_data >> 2; - par_data ^= par_data >> 1; - - return par_data & 1; -} - static bool dma64_dd_parity(struct dma64desc *dd) { return parity32(dd->addrlow ^ dd->addrhigh ^ dd->ctrl1 ^ dd->ctrl2); From patchwork Thu Mar 6 16:25:36 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Kuan-Wei Chiu X-Patchwork-Id: 14004875 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org 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 smtp.lore.kernel.org (Postfix) with ESMTPS id EE386C282D1 for ; Thu, 6 Mar 2025 16:27:49 +0000 (UTC) Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id 4FFD810E9F8; Thu, 6 Mar 2025 16:27:49 +0000 (UTC) Authentication-Results: gabe.freedesktop.org; dkim=pass (2048-bit key; unprotected) header.d=gmail.com header.i=@gmail.com header.b="ZdcXhXVL"; dkim-atps=neutral Received: from mail-pj1-f44.google.com (mail-pj1-f44.google.com [209.85.216.44]) by gabe.freedesktop.org (Postfix) with ESMTPS id 90CF310E9EB for ; Thu, 6 Mar 2025 16:27:48 +0000 (UTC) Received: by mail-pj1-f44.google.com with SMTP id 98e67ed59e1d1-2feb91a25bdso1493867a91.1 for ; Thu, 06 Mar 2025 08:27:48 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1741278468; x=1741883268; darn=lists.freedesktop.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=/lzzZDV4xgSskf5edAWcKAl1UECahSIOp1fWE1tA1yk=; b=ZdcXhXVLdMI+Cb5qDHIzAgn2FGwDN+Yg2QKARsyXwejDqkkoMN5fte9S6chhpWqCea s7x1/8hST4OT3yq927pu9NCTfmgIAfcpm/HISzZm2B6mdDZ6MXgj938q8DW3WWYLDoW1 tmayJm4oLPKvYjZCaDgPVo/s14LRl864R1/iExtVmMHUwYS0NAfGggm9/mrO+N8UOVMl o0UvbELJ48gC2VdD84H/aToXffPikvHxR4jQRjbV9uOi07bKCagd54jiszIYlBgUbuVR a7dzjTg7x8AQN4YT2sZAFQyoHBVO2gQL1/bFnPIrj+XpuFFslZbFrmjCyTavqb45Fkrd 0sMw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1741278468; x=1741883268; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=/lzzZDV4xgSskf5edAWcKAl1UECahSIOp1fWE1tA1yk=; b=JUx6Vjy8MZqzCSFt57rDPY+uVc4TpFKjaikpW9xGVH//nKtDLgH1kU1Sj3EploH3S1 2KvZBB2uvhcVUA9/oyryZjgG+gzUmatmxueXjI2vltWSEXT0d+RdCxKq3RkNg+M7PapD LWnm50GXdbjfhI51OKiOp77+9yJcbkPFjr3fJg4N92qdQC2LoTxOlt9Xw8iKyotNIlI8 XCRzzqBp06RErewz1AOVQvima9qE78v6aajN75iX0hlUcGeYgrBuMrltC75MTaWjQr6u 4ES1S9TvniWRg25OeT9+DnCt9cgSW5JLBCVY7pZnppG50VwrXtvYHH3QgRRt2PlPHVr8 m/YA== X-Forwarded-Encrypted: i=1; AJvYcCVX90WRadeD4YU3YhqS7Y9U1Rqp8NOqq9eo0ebjCJSwWEEys1UmG49NffKdCHHwbG3sPSRdRUvfMjQ=@lists.freedesktop.org X-Gm-Message-State: AOJu0YyIRVsxSfJWeXxhGGWhgfS0SwvSN6lAc4GaRxOwVXE73RKD9yai M3fLAfqGMI6ih9epHpLwuz4Xk1fBmkneO2jL7i0vDu6FC7hzj5+B X-Gm-Gg: ASbGncvcgtF6tFcwAY/PzW8UsKhEBjcAiZpdi+ktryK8/Ebmx72DHCWn9hHA1Wj+Sxp W/m4HEgmoK2159kc4Lu1stcgupYE9AYff1uxWJNcjtZ59/lN5dwm5q3T+8pNRwQumNMwNSWK1e3 Qd44UNgqmudTnuElDz0b9PfCqX06D5GYcIzmDlI6f50YEcH9vR9q5AdZkAwK8aLEENJSxM3h8gC vw7vwYrqvpnyP21jPU93tsjlavahuwxsAe6yQKF0mI3XmenRBUN1ih5ygPTiTuIK4rO3KN75204 YN17asLlnhP6EFg/+M6bGGs7mIqeKWLk1zLTU/TEufkWcLWwKPXSFnVulfWDqjtEUxY5YRXCFag = X-Google-Smtp-Source: AGHT+IHWBk8+6ksfik0EhK6cGMIWVO4KCt6lAGGIta1FZHsm7ob/3ELoZ4FHcMM7AbzddV9ZAUKTxA== X-Received: by 2002:a17:90a:c888:b0:2fe:a77b:d97e with SMTP id 98e67ed59e1d1-2ff49728368mr13045551a91.11.1741278468014; Thu, 06 Mar 2025 08:27:48 -0800 (PST) Received: from visitorckw-System-Product-Name.. ([140.113.216.168]) by smtp.gmail.com with ESMTPSA id 98e67ed59e1d1-2ff693e75bfsm1464298a91.33.2025.03.06.08.27.40 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 06 Mar 2025 08:27:47 -0800 (PST) From: Kuan-Wei Chiu To: tglx@linutronix.de, mingo@redhat.com, bp@alien8.de, dave.hansen@linux.intel.com, x86@kernel.org, jk@ozlabs.org, joel@jms.id.au, eajames@linux.ibm.com, andrzej.hajda@intel.com, neil.armstrong@linaro.org, rfoss@kernel.org, maarten.lankhorst@linux.intel.com, mripard@kernel.org, tzimmermann@suse.de, airlied@gmail.com, simona@ffwll.ch, dmitry.torokhov@gmail.com, mchehab@kernel.org, awalls@md.metrocast.net, hverkuil@xs4all.nl, miquel.raynal@bootlin.com, richard@nod.at, vigneshr@ti.com, louis.peens@corigine.com, andrew+netdev@lunn.ch, davem@davemloft.net, edumazet@google.com, pabeni@redhat.com, parthiban.veerasooran@microchip.com, arend.vanspriel@broadcom.com, johannes@sipsolutions.net, gregkh@linuxfoundation.org, jirislaby@kernel.org, yury.norov@gmail.com, akpm@linux-foundation.org Cc: hpa@zytor.com, alistair@popple.id.au, linux@rasmusvillemoes.dk, Laurent.pinchart@ideasonboard.com, jonas@kwiboo.se, jernej.skrabec@gmail.com, kuba@kernel.org, linux-kernel@vger.kernel.org, linux-fsi@lists.ozlabs.org, dri-devel@lists.freedesktop.org, linux-input@vger.kernel.org, linux-media@vger.kernel.org, linux-mtd@lists.infradead.org, oss-drivers@corigine.com, netdev@vger.kernel.org, linux-wireless@vger.kernel.org, brcm80211@lists.linux.dev, brcm80211-dev-list.pdl@broadcom.com, linux-serial@vger.kernel.org, bpf@vger.kernel.org, jserv@ccns.ncku.edu.tw, Kuan-Wei Chiu , Yu-Chun Lin Subject: [PATCH v3 11/16] drm/bridge: dw-hdmi: Replace open-coded parity calculation with parity32() Date: Fri, 7 Mar 2025 00:25:36 +0800 Message-Id: <20250306162541.2633025-12-visitorckw@gmail.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20250306162541.2633025-1-visitorckw@gmail.com> References: <20250306162541.2633025-1-visitorckw@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: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" Refactor parity calculations to use the standard parity32() helper. This change eliminates redundant implementations and improves code efficiency. Co-developed-by: Yu-Chun Lin Signed-off-by: Yu-Chun Lin Signed-off-by: Kuan-Wei Chiu --- Changes in v3: - Change parity32(sample) to !!parity32(sample). drivers/gpu/drm/bridge/synopsys/dw-hdmi-ahb-audio.c | 8 ++------ 1 file changed, 2 insertions(+), 6 deletions(-) diff --git a/drivers/gpu/drm/bridge/synopsys/dw-hdmi-ahb-audio.c b/drivers/gpu/drm/bridge/synopsys/dw-hdmi-ahb-audio.c index cf1f66b7b192..a992ecb149d7 100644 --- a/drivers/gpu/drm/bridge/synopsys/dw-hdmi-ahb-audio.c +++ b/drivers/gpu/drm/bridge/synopsys/dw-hdmi-ahb-audio.c @@ -4,6 +4,7 @@ * * Written and tested against the Designware HDMI Tx found in iMX6. */ +#include #include #include #include @@ -171,12 +172,7 @@ static void dw_hdmi_reformat_iec958(struct snd_dw_hdmi *dw, static u32 parity(u32 sample) { - sample ^= sample >> 16; - sample ^= sample >> 8; - sample ^= sample >> 4; - sample ^= sample >> 2; - sample ^= sample >> 1; - return (sample & 1) << 27; + return !!parity32(sample) << 27; } static void dw_hdmi_reformat_s24(struct snd_dw_hdmi *dw, From patchwork Thu Mar 6 16:25:37 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Kuan-Wei Chiu X-Patchwork-Id: 14004876 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org 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 smtp.lore.kernel.org (Postfix) with ESMTPS id C703BC282D1 for ; Thu, 6 Mar 2025 16:27:59 +0000 (UTC) Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id 12B6C10E9F2; Thu, 6 Mar 2025 16:27:59 +0000 (UTC) Authentication-Results: gabe.freedesktop.org; dkim=pass (2048-bit key; unprotected) header.d=gmail.com header.i=@gmail.com header.b="GOJubE6x"; dkim-atps=neutral Received: from mail-pj1-f50.google.com (mail-pj1-f50.google.com [209.85.216.50]) by gabe.freedesktop.org (Postfix) with ESMTPS id BC2F810E9F2 for ; Thu, 6 Mar 2025 16:27:57 +0000 (UTC) Received: by mail-pj1-f50.google.com with SMTP id 98e67ed59e1d1-2ff187f027fso1640038a91.1 for ; Thu, 06 Mar 2025 08:27:57 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1741278477; x=1741883277; darn=lists.freedesktop.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=VAZ6yehSc4MEYrK/rteyLhLjWQGTSbLYrKbJr1roEME=; b=GOJubE6xjVC7T+kN3+SWK4Dff2JJn3ZNqisujfLDOa0o0ds6537pTGbqwdVJ88lgAP 9fXuBzW0LBEPpnWH4oDoPBPLPhZWw9OFYWL9uJ/8bguBbYSOam/S3QwdPnpdEd+8kaeE peOSSZz4+MAzwVr0Jql/I7zuVzr6QgzgBcjtFWlREOuUwVFH2CJU0jxyfGsgJTi6w7rH ETEcnB5zYKjSjyCp/hi+GASKOp1myR3Stx6myJwNpB+ShAsgjNDTDsp3yyOlvjUPgeWI EDb51j8+b4xhU+FQXklK6kqOYY7voGfAaz6R/hwE2KaRbXwD0yRDdJpbrMAKy2wI+vaL ERZA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1741278477; x=1741883277; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=VAZ6yehSc4MEYrK/rteyLhLjWQGTSbLYrKbJr1roEME=; b=Rw412zT6xU9VGYuIobbVFhZRCW+Z7+I82lOs1EExJjUHFQw+JLI6vT1tgfwjyHqCfU farFj7Jk44yrUY3xSGteBC78D9j0B8F4ozvwrElcWYaBL4B3mC0Sp8/GlLTTGV2Lc8os AvxaknfXh+Dd7aubnIhA/qNOxbILvVOJd/wYrCmrzEikKAQ0D3dNQuyBtua5Secs6xFR wPlORzSXL1eOHGUeqEbvS0smdcSOGauVTDgZ/j0t8JYg9xUb7ltVWrOlHzVItQJpKlY3 26oPhATtaLwNI0NpJ2fIPkPVQBAWGbEST1iE5+i2fZgeVshbTXEUvT6D5GxivoKkgemB xfSg== X-Forwarded-Encrypted: i=1; AJvYcCV6PUI+OyFY0OmtO7SqG5mpgj6OpTeeluDEeMeMkAaApZt/V8E9B70mzd9o+HW9rvFEZLXtU1qs7Og=@lists.freedesktop.org X-Gm-Message-State: AOJu0Yzp/KduUlEGmmois2lg2TB/pCq/yGf5+UUM/sH8skYgA/XXG9OP eFgeuUwrIjxwOFB/PJcC9Rvge/h7R4VZWH9OYOs/0n7XOS8z+O8N X-Gm-Gg: ASbGnctcjTHJwYp35Kn5VjTFHl5y75dCOUGCDDPjAy1kFlG0HzXIJMP///v081h9Usn Y1WN+lnW1BvBDVL1+xs191va+4HeC2qFtaa6Xs9yGFRlwlaDE190rBE0pmztmHn/0ll6zYP+nG9 sHkeP/6LkUcm2lUDutuUnprO2OKa6Gy5nx/gSPalDSQAZZWrX2jBNjt7t5OX+hdArRMu5QVclxv IuI1NRv//DmoYnLEA/ltSzJlgUPUrziHm/JXhuBoAamQHs9j7SNHCJoo7LEttPkABSOdMWObD4c 7Xb96ggbexNXgedHGshuLH7zJgO3TdsLXYQsWojUkpzg9MR1bai7oZjF8IpTZrNHQ0xkwdeF4TQ = X-Google-Smtp-Source: AGHT+IGSTp6IoXEU2YpG6BXR34TKK6tsBmlfHVAOxv0eBhCn0t3RdyPBa0hZZRnTXXw4e83qNulrtA== X-Received: by 2002:a17:90a:e707:b0:2fa:1d9f:c80 with SMTP id 98e67ed59e1d1-2ff618003c5mr6206329a91.17.1741278477310; Thu, 06 Mar 2025 08:27:57 -0800 (PST) Received: from visitorckw-System-Product-Name.. ([140.113.216.168]) by smtp.gmail.com with ESMTPSA id 98e67ed59e1d1-2ff693e75bfsm1464298a91.33.2025.03.06.08.27.49 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 06 Mar 2025 08:27:56 -0800 (PST) From: Kuan-Wei Chiu To: tglx@linutronix.de, mingo@redhat.com, bp@alien8.de, dave.hansen@linux.intel.com, x86@kernel.org, jk@ozlabs.org, joel@jms.id.au, eajames@linux.ibm.com, andrzej.hajda@intel.com, neil.armstrong@linaro.org, rfoss@kernel.org, maarten.lankhorst@linux.intel.com, mripard@kernel.org, tzimmermann@suse.de, airlied@gmail.com, simona@ffwll.ch, dmitry.torokhov@gmail.com, mchehab@kernel.org, awalls@md.metrocast.net, hverkuil@xs4all.nl, miquel.raynal@bootlin.com, richard@nod.at, vigneshr@ti.com, louis.peens@corigine.com, andrew+netdev@lunn.ch, davem@davemloft.net, edumazet@google.com, pabeni@redhat.com, parthiban.veerasooran@microchip.com, arend.vanspriel@broadcom.com, johannes@sipsolutions.net, gregkh@linuxfoundation.org, jirislaby@kernel.org, yury.norov@gmail.com, akpm@linux-foundation.org Cc: hpa@zytor.com, alistair@popple.id.au, linux@rasmusvillemoes.dk, Laurent.pinchart@ideasonboard.com, jonas@kwiboo.se, jernej.skrabec@gmail.com, kuba@kernel.org, linux-kernel@vger.kernel.org, linux-fsi@lists.ozlabs.org, dri-devel@lists.freedesktop.org, linux-input@vger.kernel.org, linux-media@vger.kernel.org, linux-mtd@lists.infradead.org, oss-drivers@corigine.com, netdev@vger.kernel.org, linux-wireless@vger.kernel.org, brcm80211@lists.linux.dev, brcm80211-dev-list.pdl@broadcom.com, linux-serial@vger.kernel.org, bpf@vger.kernel.org, jserv@ccns.ncku.edu.tw, Kuan-Wei Chiu , Yu-Chun Lin Subject: [PATCH v3 12/16] mtd: ssfdc: Replace open-coded parity calculation with parity32() Date: Fri, 7 Mar 2025 00:25:37 +0800 Message-Id: <20250306162541.2633025-13-visitorckw@gmail.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20250306162541.2633025-1-visitorckw@gmail.com> References: <20250306162541.2633025-1-visitorckw@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: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" Refactor parity calculations to use the standard parity32() helper. This change eliminates redundant implementations and improves code efficiency. Co-developed-by: Yu-Chun Lin Signed-off-by: Yu-Chun Lin Signed-off-by: Kuan-Wei Chiu --- Changes in v3: - Change variable 'parity' type from int to bool. drivers/mtd/ssfdc.c | 20 ++++---------------- 1 file changed, 4 insertions(+), 16 deletions(-) diff --git a/drivers/mtd/ssfdc.c b/drivers/mtd/ssfdc.c index 46c01fa2ec46..53a72576a646 100644 --- a/drivers/mtd/ssfdc.c +++ b/drivers/mtd/ssfdc.c @@ -7,6 +7,7 @@ * Based on NTFL and MTDBLOCK_RO drivers */ +#include #include #include #include @@ -178,24 +179,11 @@ static int read_raw_oob(struct mtd_info *mtd, loff_t offs, uint8_t *buf) return 0; } -/* Parity calculator on a word of n bit size */ -static int get_parity(int number, int size) -{ - int k; - int parity; - - parity = 1; - for (k = 0; k < size; k++) { - parity += (number >> k); - parity &= 1; - } - return parity; -} - /* Read and validate the logical block address field stored in the OOB */ static int get_logical_address(uint8_t *oob_buf) { - int block_address, parity; + int block_address; + bool parity; int offset[2] = {6, 11}; /* offset of the 2 address fields within OOB */ int j; int ok = 0; @@ -215,7 +203,7 @@ static int get_logical_address(uint8_t *oob_buf) block_address &= 0x7FF; block_address >>= 1; - if (get_parity(block_address, 10) != parity) { + if (parity32(block_address & 0x3ff) == parity) { pr_debug("SSFDC_RO: logical address field%d" "parity error(0x%04X)\n", j+1, block_address); From patchwork Thu Mar 6 16:25:38 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Kuan-Wei Chiu X-Patchwork-Id: 14004877 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org 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 smtp.lore.kernel.org (Postfix) with ESMTPS id E5B1AC282D1 for ; Thu, 6 Mar 2025 16:28:08 +0000 (UTC) Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id 5B9FB10E9EB; Thu, 6 Mar 2025 16:28:08 +0000 (UTC) Authentication-Results: gabe.freedesktop.org; dkim=pass (2048-bit key; unprotected) header.d=gmail.com header.i=@gmail.com header.b="mT8RDgRu"; dkim-atps=neutral Received: from mail-pj1-f54.google.com (mail-pj1-f54.google.com [209.85.216.54]) by gabe.freedesktop.org (Postfix) with ESMTPS id 2F60310E9F1 for ; Thu, 6 Mar 2025 16:28:07 +0000 (UTC) Received: by mail-pj1-f54.google.com with SMTP id 98e67ed59e1d1-2fef5c978ccso1516108a91.1 for ; Thu, 06 Mar 2025 08:28:07 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1741278487; x=1741883287; darn=lists.freedesktop.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=dVzC5eNDjiMbvhvqlOK1r/73KNx64ddnKPcxwil96xE=; b=mT8RDgRuEiK7q/ocOJfyCLXc73EJlriBBh8qhQ8n69rh7kjOQi0tW2z+RU9qMShLgA tkCj0DRNLGAI2VyGT/EvEuS/ZYXOzvhbL7dgDZrS+gcLPSsCiMTR1xffTIdVaIDTMGKo RYKnlzT1uNcwgdHjVxfeKVkyEIEFTJ3NAchj9sF6QlvmDE3CPCDI5YQgLNCafB93dIBe 6RnxKI/73Y+dmE4tU4SalGiPNIKV5pGxT6+48UDeAhEG2MhvxHdYaHCJbQ+kWUCUT6II rSw7pCjSZNbInAZAI59JkQbiOWARGM+E7CHwBR7sJFhPJXZcCQ4HWP8z1r4MwSA5vn0I PhhA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1741278487; x=1741883287; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=dVzC5eNDjiMbvhvqlOK1r/73KNx64ddnKPcxwil96xE=; b=A6CVKuNVogmOI0EW8Tqt1sx1inJ5SaB1pa797LV2fp7G3JChciogvNdIoiyrTZBEVG 9MjDFgpWkAzfk7CW9WVW2qyh+jxS3Ihzmn25wMcCZX/cs/574Z7HRnyT6lG55O5/AQSu qaf2DvA4Q2jXO7njyRWA+0X+ddiGzj51d+EcgYekNczYOyAYYs/qwN0C226XKZqu2/K1 Zay7BKpY6eDgPjpawHEUyZtwKkbIDGvU/Mhim3aXeu1obZRJaUZTjdVsbFVmaIQIy99F 50ZiFmv5GIP8MQQf+BXvReXmyIff54sU8V15Ir2f7uhlqP92VpJ0eFKx26wzkpJrFKEm bHiQ== X-Forwarded-Encrypted: i=1; AJvYcCUjt3H5S+y+7Uyht8bb4dA4CEX9+bprZ/5dwRjeNzMqNBL1pwTCRbfJqNpuPbRNEXTjnlLKa8dJvd8=@lists.freedesktop.org X-Gm-Message-State: AOJu0Yw2oqm2fgHdYR5SVn0x3lPViNPpLl8syPL5hPm4DzscsVZVGHtk NNJ8+t9xbrY59fcXQOgDvmm99I4pWxnFDSv+yD0eLtyFcx4GKsQq X-Gm-Gg: ASbGncs2AuUsge/ZWnXSbzhkVsIHj9EUdUagQZnS36/1J53fyQauVKZbFaxJ0I9Ze0z 3f0ckDmLvtpJDHYhKBE9o74a5WxsGe9ym7knBjAZz5RdulcsasLEi7zrz9sjXY1arz0S3zKSy3W 1FNcjsrW3lzWItxygtBvi8MFW9gmWEy59+MY7jDVju+PZpYU+0ZenkbWcaR5ovlxEi2z+goutRD e3I27os+vhvRjrzM23mw72Qz2Dh3BZvgCUL8j4mqf7JRDAWG21lE7j9RYw+4AG+XYIUrSiSRTwz GpVw0g23dVQALdAe+I7Yu/9ruCSXCIv2Ew/JJHtafN5Wh2/Ie6uc6GVuCRuFvfb+BI3/4bUb/28 = X-Google-Smtp-Source: AGHT+IG1hUiIY04WmIWjSTraivZtBZJVGW/maYZ4w8gjs57Y/NbYWELqgVEzi3PK9/fk5EW05X3DDQ== X-Received: by 2002:a17:90a:c108:b0:2ff:5357:1c7e with SMTP id 98e67ed59e1d1-2ff53571ccbmr8979955a91.20.1741278486674; Thu, 06 Mar 2025 08:28:06 -0800 (PST) Received: from visitorckw-System-Product-Name.. ([140.113.216.168]) by smtp.gmail.com with ESMTPSA id 98e67ed59e1d1-2ff693e75bfsm1464298a91.33.2025.03.06.08.27.58 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 06 Mar 2025 08:28:06 -0800 (PST) From: Kuan-Wei Chiu To: tglx@linutronix.de, mingo@redhat.com, bp@alien8.de, dave.hansen@linux.intel.com, x86@kernel.org, jk@ozlabs.org, joel@jms.id.au, eajames@linux.ibm.com, andrzej.hajda@intel.com, neil.armstrong@linaro.org, rfoss@kernel.org, maarten.lankhorst@linux.intel.com, mripard@kernel.org, tzimmermann@suse.de, airlied@gmail.com, simona@ffwll.ch, dmitry.torokhov@gmail.com, mchehab@kernel.org, awalls@md.metrocast.net, hverkuil@xs4all.nl, miquel.raynal@bootlin.com, richard@nod.at, vigneshr@ti.com, louis.peens@corigine.com, andrew+netdev@lunn.ch, davem@davemloft.net, edumazet@google.com, pabeni@redhat.com, parthiban.veerasooran@microchip.com, arend.vanspriel@broadcom.com, johannes@sipsolutions.net, gregkh@linuxfoundation.org, jirislaby@kernel.org, yury.norov@gmail.com, akpm@linux-foundation.org Cc: hpa@zytor.com, alistair@popple.id.au, linux@rasmusvillemoes.dk, Laurent.pinchart@ideasonboard.com, jonas@kwiboo.se, jernej.skrabec@gmail.com, kuba@kernel.org, linux-kernel@vger.kernel.org, linux-fsi@lists.ozlabs.org, dri-devel@lists.freedesktop.org, linux-input@vger.kernel.org, linux-media@vger.kernel.org, linux-mtd@lists.infradead.org, oss-drivers@corigine.com, netdev@vger.kernel.org, linux-wireless@vger.kernel.org, brcm80211@lists.linux.dev, brcm80211-dev-list.pdl@broadcom.com, linux-serial@vger.kernel.org, bpf@vger.kernel.org, jserv@ccns.ncku.edu.tw, Kuan-Wei Chiu , Yu-Chun Lin Subject: [PATCH v3 13/16] fsi: i2cr: Replace open-coded parity calculation with parity32() Date: Fri, 7 Mar 2025 00:25:38 +0800 Message-Id: <20250306162541.2633025-14-visitorckw@gmail.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20250306162541.2633025-1-visitorckw@gmail.com> References: <20250306162541.2633025-1-visitorckw@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: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" Refactor parity calculations to use the standard parity32() helper. This change eliminates redundant implementations and improves code efficiency. Co-developed-by: Yu-Chun Lin Signed-off-by: Yu-Chun Lin Signed-off-by: Kuan-Wei Chiu --- Changes in v3: - Change parity ^= parity32(v) to parity != parity32(v). drivers/fsi/fsi-master-i2cr.c | 10 ++-------- 1 file changed, 2 insertions(+), 8 deletions(-) diff --git a/drivers/fsi/fsi-master-i2cr.c b/drivers/fsi/fsi-master-i2cr.c index 40f1f4d231e5..46511236bbca 100644 --- a/drivers/fsi/fsi-master-i2cr.c +++ b/drivers/fsi/fsi-master-i2cr.c @@ -1,6 +1,7 @@ // SPDX-License-Identifier: GPL-2.0 /* Copyright (C) IBM Corporation 2023 */ +#include #include #include #include @@ -38,14 +39,7 @@ static const u8 i2cr_cfam[] = { static bool i2cr_check_parity32(u32 v, bool parity) { - u32 i; - - for (i = 0; i < 32; ++i) { - if (v & (1u << i)) - parity = !parity; - } - - return parity; + return parity != parity32(v); } static bool i2cr_check_parity64(u64 v) From patchwork Thu Mar 6 16:25:39 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Kuan-Wei Chiu X-Patchwork-Id: 14004878 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org 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 smtp.lore.kernel.org (Postfix) with ESMTPS id 195F5C282D1 for ; Thu, 6 Mar 2025 16:28:19 +0000 (UTC) Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id 8671010EA00; Thu, 6 Mar 2025 16:28:18 +0000 (UTC) Authentication-Results: gabe.freedesktop.org; dkim=pass (2048-bit key; unprotected) header.d=gmail.com header.i=@gmail.com header.b="l34di33X"; dkim-atps=neutral Received: from mail-pj1-f42.google.com (mail-pj1-f42.google.com [209.85.216.42]) by gabe.freedesktop.org (Postfix) with ESMTPS id 00B8410E9F9 for ; Thu, 6 Mar 2025 16:28:16 +0000 (UTC) Received: by mail-pj1-f42.google.com with SMTP id 98e67ed59e1d1-2ff187f027fso1640787a91.1 for ; Thu, 06 Mar 2025 08:28:16 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1741278496; x=1741883296; darn=lists.freedesktop.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=BS9Ngq0ErapA9ho16k90z8id/zApcMAPWGpuMTc0x9A=; b=l34di33X9MSlqczlpjLBeDyLf7jt8WiKFf+c7AR2iqOVCwkxU+DKIlWt/Z7MChaSr0 IDeekLvQT05HIwKrQ3PATvfCgaqGMCEcQJDZLPXGhJfPqDb/F0efOwMbzsTBx2PnXutW rYNueToXOKD+QwZYmTza8BwpEIIF4kE6clVPeH2bzsrFr8HvVg0Slax2Q+TzyqGm1cGq Mytw9qxBvEdp0Mr7VdRKNTYc9FNrXmMFdAM8ELkxsiwR/o4i7jpzxNj0FFSgfeVuam4t UhCJtD27VOGbOjchXNDeyGpUB7GB5C8HibKK1J3qm94lltLdhzBzhQpAcW2kUnNi00h9 8AgQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1741278496; x=1741883296; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=BS9Ngq0ErapA9ho16k90z8id/zApcMAPWGpuMTc0x9A=; b=RmGQCIeDkw502EGtNfeOsk5ZZpNk8OhwMrNbAqdgI+mvu7+CFFM9vosHVcEVcRLgA6 uDEYehLlI8qpDQkn64F5+Uc+cOerOiDzaF8E/wBkYmlPzL0dV3LrleBGqdSlV5avh1+S RRVHBTIoM++/tZT003dMAIygDwQqegWeTcsc3FUKU38p4jSxaeonw6w8tPMewU7zYNrk 1XG/IfcpV+gycVToG8s+iOuCAbdwZ07Cf3zeWYFJm1aFeXqT0VL/F0UZ2t6frnIT14N0 +BJTkXD7L98Kiy6jms8Y/Avn2Nl0ec8wC1QKHW7Vg7FXfuSngaXkgomH+AJxkNzqH6iI YgAg== X-Forwarded-Encrypted: i=1; AJvYcCU++Xlqmy8YU9RUr/lQVROuK4IcwWoShcqhnjvzOwSQEDrqRPDPjDM4kqiaqHaTCPFupJJz+P9TElA=@lists.freedesktop.org X-Gm-Message-State: AOJu0YwiHJwPDdaWCIi/ci5jrNO+g6TBFMS++7S0jgghxdzN5vlu7Pcw WDPG5pZFHuOxRI/R8cgHoi5ufXCRPlddhoNxdKUD2F4xqaZQ6GF3 X-Gm-Gg: ASbGnct3oeiLD+UZxQhbDk5IH2Jh0coIC2v3wtpqsD6lIBL8yOo4vRxd8i1kptbC4Td 5UcxtxlrYf9qjBMEhVN+IbmoKLLbrAMfDIV9f7T4NUHtwl9AUV6dkaMWfvtaTUfazFI9PcBK2Vq VhweNYXBvTD762cNZQONnvDIuQUXWQXUoJyiEuW7O04DfQ+VRCSXBcr7eHPpRF3jZV3msSTgevX 1xg1cS1evn4tnE/eY+pONzk91ZvtyyKot28wAUfwdq1MoMXhToPiNUSl97ROCZcrVRrQ00U+blP 3L3fpiNB6v6GtXdVGnuUL0X4w8dy1l/9SpaqVtQ/Y6KxxBW152+udZdLKsW9JllcHD0FNjeQwIA = X-Google-Smtp-Source: AGHT+IFnMh654YdQkj0YFSRHf+ssdwCg9qa/rMgaUesbiD2om2YrQrVL25CKfgP6tloqN6SwFoBXOA== X-Received: by 2002:a17:90b:4c4f:b0:2fa:6793:e860 with SMTP id 98e67ed59e1d1-2ff6162ec0fmr6970693a91.0.1741278496344; Thu, 06 Mar 2025 08:28:16 -0800 (PST) Received: from visitorckw-System-Product-Name.. ([140.113.216.168]) by smtp.gmail.com with ESMTPSA id 98e67ed59e1d1-2ff693e75bfsm1464298a91.33.2025.03.06.08.28.08 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 06 Mar 2025 08:28:15 -0800 (PST) From: Kuan-Wei Chiu To: tglx@linutronix.de, mingo@redhat.com, bp@alien8.de, dave.hansen@linux.intel.com, x86@kernel.org, jk@ozlabs.org, joel@jms.id.au, eajames@linux.ibm.com, andrzej.hajda@intel.com, neil.armstrong@linaro.org, rfoss@kernel.org, maarten.lankhorst@linux.intel.com, mripard@kernel.org, tzimmermann@suse.de, airlied@gmail.com, simona@ffwll.ch, dmitry.torokhov@gmail.com, mchehab@kernel.org, awalls@md.metrocast.net, hverkuil@xs4all.nl, miquel.raynal@bootlin.com, richard@nod.at, vigneshr@ti.com, louis.peens@corigine.com, andrew+netdev@lunn.ch, davem@davemloft.net, edumazet@google.com, pabeni@redhat.com, parthiban.veerasooran@microchip.com, arend.vanspriel@broadcom.com, johannes@sipsolutions.net, gregkh@linuxfoundation.org, jirislaby@kernel.org, yury.norov@gmail.com, akpm@linux-foundation.org Cc: hpa@zytor.com, alistair@popple.id.au, linux@rasmusvillemoes.dk, Laurent.pinchart@ideasonboard.com, jonas@kwiboo.se, jernej.skrabec@gmail.com, kuba@kernel.org, linux-kernel@vger.kernel.org, linux-fsi@lists.ozlabs.org, dri-devel@lists.freedesktop.org, linux-input@vger.kernel.org, linux-media@vger.kernel.org, linux-mtd@lists.infradead.org, oss-drivers@corigine.com, netdev@vger.kernel.org, linux-wireless@vger.kernel.org, brcm80211@lists.linux.dev, brcm80211-dev-list.pdl@broadcom.com, linux-serial@vger.kernel.org, bpf@vger.kernel.org, jserv@ccns.ncku.edu.tw, Kuan-Wei Chiu , Yu-Chun Lin Subject: [PATCH v3 14/16] fsi: i2cr: Replace open-coded parity calculation with parity64() Date: Fri, 7 Mar 2025 00:25:39 +0800 Message-Id: <20250306162541.2633025-15-visitorckw@gmail.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20250306162541.2633025-1-visitorckw@gmail.com> References: <20250306162541.2633025-1-visitorckw@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: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" Refactor parity calculations to use the standard parity64() helper. This change eliminates redundant implementations and improves code efficiency. Co-developed-by: Yu-Chun Lin Signed-off-by: Yu-Chun Lin Signed-off-by: Kuan-Wei Chiu --- Changes in v3: - Change parity ^= parity64(v) to parity != parity64(v). drivers/fsi/fsi-master-i2cr.c | 8 +------- 1 file changed, 1 insertion(+), 7 deletions(-) diff --git a/drivers/fsi/fsi-master-i2cr.c b/drivers/fsi/fsi-master-i2cr.c index 46511236bbca..3356c478e395 100644 --- a/drivers/fsi/fsi-master-i2cr.c +++ b/drivers/fsi/fsi-master-i2cr.c @@ -44,15 +44,9 @@ static bool i2cr_check_parity32(u32 v, bool parity) static bool i2cr_check_parity64(u64 v) { - u32 i; bool parity = I2CR_INITIAL_PARITY; - for (i = 0; i < 64; ++i) { - if (v & (1llu << i)) - parity = !parity; - } - - return parity; + return parity != parity64(v); } static u32 i2cr_get_command(u32 address, bool parity) From patchwork Thu Mar 6 16:25:40 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Kuan-Wei Chiu X-Patchwork-Id: 14004879 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org 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 smtp.lore.kernel.org (Postfix) with ESMTPS id AC435C282DE for ; Thu, 6 Mar 2025 16:28:31 +0000 (UTC) Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id 15E6610E751; Thu, 6 Mar 2025 16:28:31 +0000 (UTC) Authentication-Results: gabe.freedesktop.org; dkim=pass (2048-bit key; unprotected) header.d=gmail.com header.i=@gmail.com header.b="DCS5f+y5"; dkim-atps=neutral Received: from mail-pj1-f47.google.com (mail-pj1-f47.google.com [209.85.216.47]) by gabe.freedesktop.org (Postfix) with ESMTPS id A283D10E751 for ; Thu, 6 Mar 2025 16:28:29 +0000 (UTC) Received: by mail-pj1-f47.google.com with SMTP id 98e67ed59e1d1-2f44353649aso1509216a91.0 for ; Thu, 06 Mar 2025 08:28:29 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1741278509; x=1741883309; darn=lists.freedesktop.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=rykqQnwPkGRFwR5KILLeuUxXhWjh1d/Lo2VO4W9LQtQ=; b=DCS5f+y5w4DB79FrvlOvfSHLF4AKMpisfTa7wQOl3uHUqQcOCJjmCLqyYj+zaP5bcn 0IVZyCS+qIi7tcHCsfgurUM7AKL2DGZCorMDYEKPImQC+Ayq419Ftsk5Dq+m5dfJJj2f 9va/FzyyuXZpFJi2t3t9MRkfd+G7tYRkuVQ9PBbANNGZwMn+jPObTR0j2Ihhtqv5xPJ3 MGk0b+kMBJ78Cd8v9AywSCpGP8jwKWUGpW99ZNuSTTvrqO5wVATdSwycKHKpdsvVtXog 6SNwA9pWeZcXRCbPFOwyZS/hxyFiCB/FHV8yeblToURXmJXQvAKwRGD2PyFDnmHmnsN3 vRSA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1741278509; x=1741883309; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=rykqQnwPkGRFwR5KILLeuUxXhWjh1d/Lo2VO4W9LQtQ=; b=JOMLIEHb4bKSxE2Six5N3lR+uxmlSq2uXZ5fBM+FWiVuViSZ5X6LK47bFX6VHKV/Vg gqmv6FuAP/bHIusjG7vclqluL+rBbSXtWFTwqiHehHU/XNleOkQDFU0CeCjTxBOD1AYr WY1oqUTxmfCK/MPWw5af11c6qOA3lHBD0C1hYLyRTDnz1kbKuoraL1PHx4tr3JNTdIZ6 GIw4AUoSp/lPTCc2Jpi3rKm3XDFsn97vrP/2krxkftFpe+JQoqOXVeqXYn5kfS75u3kT cgp3vkQ/v3CgA0dzS4+4ggNu1PCAsgbsHfHiqzlme8B4LfjG82jl/XEWgTNS450v7QKE ZNdA== X-Forwarded-Encrypted: i=1; AJvYcCXm0G6YuU6Z8pK4PobZTPILX/2zGZ/bpGFqqeW91f+D8BQz3o/zlEIG1dCiGEw3JWUVhGPMgYTOwY8=@lists.freedesktop.org X-Gm-Message-State: AOJu0YzUo7njfoAn7pGil0EY/chGcBXuEgi386ywQHS7V5o9eL75inGc O6iGdfqAASKPaTYiuwsWD5hYOCosTQPyDEBVJJQTKAHjYTnbP9fd X-Gm-Gg: ASbGncvGnG4Uvkr+c+Lr/nQ5gCOsErcTXi21j9IsFNgPvN1lJUdGkg0wq6d9nsjl9SY sNuAUFGdlDapfw1Rm65G3gqWuKhhddzm6HWwnMXujPHAwPqngMZYSvrulHyzJK9cSdZyLkITRUL ZwOu8Tnt4lUiWl47NhXBbl451L9jkSOBmjZw+cl5m1L+DmthwBx2Hdlcl+LYyTus/7S5Ob78R3b SIc9Mih6l7O/cA2LtyNHuj0BpXfcMI4RyuZUXaCoVkDP5l2jWKCNbIP3K2C6s0YENK7oVwbARDh 5VOwMyRUlMIH+C7mUsw2lGNhmvPBdoiBBsPBMRXr6uSOERkS8rQe9pGLx/plTJsDSlYxdXrupgI = X-Google-Smtp-Source: AGHT+IE7CMC10LMwovhBW4tB6jZafU5napSqaqhkL82rznmGKafZamE59+csgSshd0lW2KvQujLljw== X-Received: by 2002:a17:90b:568b:b0:2f9:c139:b61f with SMTP id 98e67ed59e1d1-2ff49728389mr14240353a91.14.1741278507670; Thu, 06 Mar 2025 08:28:27 -0800 (PST) Received: from visitorckw-System-Product-Name.. ([140.113.216.168]) by smtp.gmail.com with ESMTPSA id 98e67ed59e1d1-2ff693e75bfsm1464298a91.33.2025.03.06.08.28.19 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 06 Mar 2025 08:28:27 -0800 (PST) From: Kuan-Wei Chiu To: tglx@linutronix.de, mingo@redhat.com, bp@alien8.de, dave.hansen@linux.intel.com, x86@kernel.org, jk@ozlabs.org, joel@jms.id.au, eajames@linux.ibm.com, andrzej.hajda@intel.com, neil.armstrong@linaro.org, rfoss@kernel.org, maarten.lankhorst@linux.intel.com, mripard@kernel.org, tzimmermann@suse.de, airlied@gmail.com, simona@ffwll.ch, dmitry.torokhov@gmail.com, mchehab@kernel.org, awalls@md.metrocast.net, hverkuil@xs4all.nl, miquel.raynal@bootlin.com, richard@nod.at, vigneshr@ti.com, louis.peens@corigine.com, andrew+netdev@lunn.ch, davem@davemloft.net, edumazet@google.com, pabeni@redhat.com, parthiban.veerasooran@microchip.com, arend.vanspriel@broadcom.com, johannes@sipsolutions.net, gregkh@linuxfoundation.org, jirislaby@kernel.org, yury.norov@gmail.com, akpm@linux-foundation.org Cc: hpa@zytor.com, alistair@popple.id.au, linux@rasmusvillemoes.dk, Laurent.pinchart@ideasonboard.com, jonas@kwiboo.se, jernej.skrabec@gmail.com, kuba@kernel.org, linux-kernel@vger.kernel.org, linux-fsi@lists.ozlabs.org, dri-devel@lists.freedesktop.org, linux-input@vger.kernel.org, linux-media@vger.kernel.org, linux-mtd@lists.infradead.org, oss-drivers@corigine.com, netdev@vger.kernel.org, linux-wireless@vger.kernel.org, brcm80211@lists.linux.dev, brcm80211-dev-list.pdl@broadcom.com, linux-serial@vger.kernel.org, bpf@vger.kernel.org, jserv@ccns.ncku.edu.tw, Kuan-Wei Chiu , Yu-Chun Lin Subject: [PATCH v3 15/16] Input: joystick - Replace open-coded parity calculation with parity64() Date: Fri, 7 Mar 2025 00:25:40 +0800 Message-Id: <20250306162541.2633025-16-visitorckw@gmail.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20250306162541.2633025-1-visitorckw@gmail.com> References: <20250306162541.2633025-1-visitorckw@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: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" Refactor parity calculations to use the standard parity64() helper. This change eliminates redundant implementations and improves code efficiency. Co-developed-by: Yu-Chun Lin Signed-off-by: Yu-Chun Lin Signed-off-by: Kuan-Wei Chiu --- drivers/input/joystick/sidewinder.c | 24 +++++------------------- 1 file changed, 5 insertions(+), 19 deletions(-) diff --git a/drivers/input/joystick/sidewinder.c b/drivers/input/joystick/sidewinder.c index 3a5873e5fcb3..9fe980096f70 100644 --- a/drivers/input/joystick/sidewinder.c +++ b/drivers/input/joystick/sidewinder.c @@ -7,6 +7,7 @@ * Microsoft SideWinder joystick family driver for Linux */ +#include #include #include #include @@ -240,21 +241,6 @@ static void sw_init_digital(struct gameport *gameport) local_irq_restore(flags); } -/* - * sw_parity() computes parity of __u64 - */ - -static int sw_parity(__u64 t) -{ - int x = t ^ (t >> 32); - - x ^= x >> 16; - x ^= x >> 8; - x ^= x >> 4; - x ^= x >> 2; - x ^= x >> 1; - return x & 1; -} /* * sw_ccheck() checks synchronization bits and computes checksum of nibbles. @@ -316,7 +302,7 @@ static int sw_parse(unsigned char *buf, struct sw *sw) for (i = 0; i < sw->number; i ++) { - if (sw_parity(GB(i*15,15))) + if (parity64(GB(i*15,15))) return -1; input_report_abs(sw->dev[i], ABS_X, GB(i*15+3,1) - GB(i*15+2,1)); @@ -333,7 +319,7 @@ static int sw_parse(unsigned char *buf, struct sw *sw) case SW_ID_PP: case SW_ID_FFP: - if (!sw_parity(GB(0,48)) || (hat = GB(42,4)) > 8) + if (!parity64(GB(0,48)) || (hat = GB(42,4)) > 8) return -1; dev = sw->dev[0]; @@ -354,7 +340,7 @@ static int sw_parse(unsigned char *buf, struct sw *sw) case SW_ID_FSP: - if (!sw_parity(GB(0,43)) || (hat = GB(28,4)) > 8) + if (!parity64(GB(0,43)) || (hat = GB(28,4)) > 8) return -1; dev = sw->dev[0]; @@ -379,7 +365,7 @@ static int sw_parse(unsigned char *buf, struct sw *sw) case SW_ID_FFW: - if (!sw_parity(GB(0,33))) + if (!parity64(GB(0,33))) return -1; dev = sw->dev[0]; From patchwork Thu Mar 6 16:25:41 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Kuan-Wei Chiu X-Patchwork-Id: 14004880 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org 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 smtp.lore.kernel.org (Postfix) with ESMTPS id B9419C282D1 for ; Thu, 6 Mar 2025 16:28:39 +0000 (UTC) Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id 22B1410E9F4; Thu, 6 Mar 2025 16:28:39 +0000 (UTC) Authentication-Results: gabe.freedesktop.org; dkim=pass (2048-bit key; unprotected) header.d=gmail.com header.i=@gmail.com header.b="TNvQowNL"; dkim-atps=neutral Received: from mail-pj1-f44.google.com (mail-pj1-f44.google.com [209.85.216.44]) by gabe.freedesktop.org (Postfix) with ESMTPS id 4343810E9F4 for ; Thu, 6 Mar 2025 16:28:37 +0000 (UTC) Received: by mail-pj1-f44.google.com with SMTP id 98e67ed59e1d1-2fec13a4067so1485872a91.2 for ; Thu, 06 Mar 2025 08:28:37 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1741278517; x=1741883317; darn=lists.freedesktop.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=AlCo47pw1I/mq/I7vHIVVBFEFMdGZP7EQcov25MLW34=; b=TNvQowNLS9yWqLMOpgL+5Yssf7rRhQ2yKjicIKwTU9pn9g2qSMp3+EFYF6xnfpVsBe 2JdptVYq9Lshy+fTvUB/Yfm1u/Wn/z/xmWdw1xC9MexpZGXoFHR8uGkhGjqMp3I4oJDH uiFvR3LN1Z2O3PJKjfmvSR0+T3mjtKSBGsZFGnsqjOHwwuHiY24bbmh20r7l+RTl7xYE +QtwJCpDURy/gF2D6GSd8JUadW08hctddThMH1YL0zzUaQCw6wVFXSq9r5ngNNBEubIl xOnsaaiRElFqIb/ItXY8YCj3nfYm7BJM1RsXNx9QUbt9zNRlD/zaF0m8vMIAk5Z8EYLy EBTg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1741278517; x=1741883317; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=AlCo47pw1I/mq/I7vHIVVBFEFMdGZP7EQcov25MLW34=; b=hL3NptBm6riNWGA23tlOT0TDK7vB3he0P0JMSZAg84oEc2YbB81ePi7/XOIEFHrHW4 iyjJYKBRm+uzdoWM5sPF9eoOB7RwOOT8HdpBrJ89DTzQa/rX9+w+PewIE4N9IdR9o4ZX FNsuiUymETQ7JbBPwWFPxsTJi1yLqfjAiWISg/j7a88yWnWxGxg48/AOhHDy9nwJ4k+e m8q7yKlDr2XslHutSf/gClOV9Aroxuo6qaAuDatomAwWncCZ6i7lu2AL8Z3ntAYl0d9C UWmR9B9O5+cGZe1bV6jgP+ePKyqBOFTVdGoyM7HKs5vpVkCsno/dJ5DK31EFk8vv10Lp A+Zw== X-Forwarded-Encrypted: i=1; AJvYcCUUKQNR66HhARN6+/c6OqszxaPhlKs83uZu0stv5Td1BkWCqDM7yzo2qO5ah4eGOgpwcC9VCLrq+Yo=@lists.freedesktop.org X-Gm-Message-State: AOJu0Yx5WEeVJ4BBYfkOXliro0YiOZFyPSMnczv7475TPN+Z5PIQpzTK GE2T0G9DJedq+a12cZkxWbj3ZBPpHGe7yjITLxNEquQsxHwIYDFh X-Gm-Gg: ASbGncvBax6pnoO2uenvKyhpFpHmWAueclVDI7dVyS7vGEe6fcAJGKxobHf8hidevwa Ctom15pyXEyC5nVY/n7fc/e+19FlWokbRzVgqfiQNEVKOrRtU/JGvgUhn8a4GBhxP94ikg9SqRf crestB2PkKw42SO7FzAh4XpCpGwXJLRjAeT1npK9BXivan6LlS815X95MoSi9noZBfPmSvQyE6y PNqvhU55gJ+U8k8PgWaqJt2AeRMJiL1zJ636HLesLznqW69Rzi6IY7cp5KjZT3ubXHK4hCoPqFS Vbts6lfF2nDGTZoRHpUBmGaifDJkf8VFeE7ubQOamvwXhpnDZo4fzHf2Q9Lendk5hg1X2UyarOA = X-Google-Smtp-Source: AGHT+IEEoNncBZARV2kGM5Yy+T23A5PpEPT2NiyzW+biIXJ8M18fImFLR3KC2etUuhFwV9KdupSQZw== X-Received: by 2002:a17:90b:1f88:b0:2fe:68a5:d84b with SMTP id 98e67ed59e1d1-2ff49716658mr11420319a91.1.1741278516777; Thu, 06 Mar 2025 08:28:36 -0800 (PST) Received: from visitorckw-System-Product-Name.. ([140.113.216.168]) by smtp.gmail.com with ESMTPSA id 98e67ed59e1d1-2ff693e75bfsm1464298a91.33.2025.03.06.08.28.28 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 06 Mar 2025 08:28:36 -0800 (PST) From: Kuan-Wei Chiu To: tglx@linutronix.de, mingo@redhat.com, bp@alien8.de, dave.hansen@linux.intel.com, x86@kernel.org, jk@ozlabs.org, joel@jms.id.au, eajames@linux.ibm.com, andrzej.hajda@intel.com, neil.armstrong@linaro.org, rfoss@kernel.org, maarten.lankhorst@linux.intel.com, mripard@kernel.org, tzimmermann@suse.de, airlied@gmail.com, simona@ffwll.ch, dmitry.torokhov@gmail.com, mchehab@kernel.org, awalls@md.metrocast.net, hverkuil@xs4all.nl, miquel.raynal@bootlin.com, richard@nod.at, vigneshr@ti.com, louis.peens@corigine.com, andrew+netdev@lunn.ch, davem@davemloft.net, edumazet@google.com, pabeni@redhat.com, parthiban.veerasooran@microchip.com, arend.vanspriel@broadcom.com, johannes@sipsolutions.net, gregkh@linuxfoundation.org, jirislaby@kernel.org, yury.norov@gmail.com, akpm@linux-foundation.org Cc: hpa@zytor.com, alistair@popple.id.au, linux@rasmusvillemoes.dk, Laurent.pinchart@ideasonboard.com, jonas@kwiboo.se, jernej.skrabec@gmail.com, kuba@kernel.org, linux-kernel@vger.kernel.org, linux-fsi@lists.ozlabs.org, dri-devel@lists.freedesktop.org, linux-input@vger.kernel.org, linux-media@vger.kernel.org, linux-mtd@lists.infradead.org, oss-drivers@corigine.com, netdev@vger.kernel.org, linux-wireless@vger.kernel.org, brcm80211@lists.linux.dev, brcm80211-dev-list.pdl@broadcom.com, linux-serial@vger.kernel.org, bpf@vger.kernel.org, jserv@ccns.ncku.edu.tw, Kuan-Wei Chiu , Yu-Chun Lin Subject: [PATCH v3 16/16] nfp: bpf: Replace open-coded parity calculation with parity64() Date: Fri, 7 Mar 2025 00:25:41 +0800 Message-Id: <20250306162541.2633025-17-visitorckw@gmail.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20250306162541.2633025-1-visitorckw@gmail.com> References: <20250306162541.2633025-1-visitorckw@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: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" Refactor parity calculations to use the standard parity64() helper. This change eliminates redundant implementations and improves code efficiency. Co-developed-by: Yu-Chun Lin Signed-off-by: Yu-Chun Lin Signed-off-by: Kuan-Wei Chiu --- Changes in v3: - Change parity64() to !!parity64(). drivers/net/ethernet/netronome/nfp/nfp_asm.c | 7 +------ 1 file changed, 1 insertion(+), 6 deletions(-) diff --git a/drivers/net/ethernet/netronome/nfp/nfp_asm.c b/drivers/net/ethernet/netronome/nfp/nfp_asm.c index 154399c5453f..14306f128497 100644 --- a/drivers/net/ethernet/netronome/nfp/nfp_asm.c +++ b/drivers/net/ethernet/netronome/nfp/nfp_asm.c @@ -295,11 +295,6 @@ static const u64 nfp_ustore_ecc_polynomials[NFP_USTORE_ECC_POLY_WORDS] = { 0x0daf69a46910ULL, }; -static bool parity(u64 value) -{ - return hweight64(value) & 1; -} - int nfp_ustore_check_valid_no_ecc(u64 insn) { if (insn & ~GENMASK_ULL(NFP_USTORE_OP_BITS, 0)) @@ -314,7 +309,7 @@ u64 nfp_ustore_calc_ecc_insn(u64 insn) int i; for (i = 0; i < NFP_USTORE_ECC_POLY_WORDS; i++) - ecc |= parity(nfp_ustore_ecc_polynomials[i] & insn) << i; + ecc |= !!parity64(nfp_ustore_ecc_polynomials[i] & insn) << i; return insn | (u64)ecc << NFP_USTORE_OP_BITS; }