[PATCH 12/17] drm/bridge: dw-hdmi: Replace open-coded parity calculation with parity32()

Kuan-Wei Chiu
2025-02-23T16:45:10Z

Refactor parity calculations to use the standard parity32() helper.
This change eliminates redundant implementations and improves code
efficiency.

Co-developed-by: Yu-Chun Lin <eleanor15x@gmail.com>
Signed-off-by: Yu-Chun Lin <eleanor15x@gmail.com>
Signed-off-by: Kuan-Wei Chiu <visitorckw@gmail.com>
---
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..833e65f33483 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 <linux/bitops.h>
#include <linux/io.h>
#include <linux/interrupt.h>
#include <linux/module.h>
@@ -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,
--
2.34.1