Commit 7d5f75a9 authored by Nicolas Frattaroli's avatar Nicolas Frattaroli Committed by Yury Norov
Browse files

media: synopsys: hdmirx: replace macros with bitfield variants



The era of hand-rolled HIWORD_UPDATE macros is over, at least for those
drivers that use constant masks.

Replace the UPDATE macro with bitfield.h's FIELD_PREP, to give us
additional error checking.

Also, replace the HIWORD_UPDATE macro at the same time with the new
FIELD_PREP_WM16 macro in hw_bitfield.h, which also gives us additional
error checking.

The UPDATE/HIWORD_UPDATE macros are left as wrappers around the
replacement macros, in order to not rock the boat too much, and keep the
changes easy to review.

Yury: drop extra parens around FIELD_PREPs (Dmitry)

Signed-off-by: default avatarNicolas Frattaroli <nicolas.frattaroli@collabora.com>
Acked-by: default avatarDmitry Osipenko <dmitry.osipenko@collabora.com>
Acked-by: default avatarHeiko Stuebner <heiko@sntech.de>
Signed-off-by: default avatarYury Norov (NVIDIA) <yury.norov@gmail.com>
parent 90fbf6a2
Loading
Loading
Loading
Loading
+4 −2
Original line number Diff line number Diff line
@@ -8,10 +8,12 @@
#ifndef DW_HDMIRX_H
#define DW_HDMIRX_H

#include <linux/bitfield.h>
#include <linux/bitops.h>
#include <linux/hw_bitfield.h>

#define UPDATE(x, h, l)		(((x) << (l)) & GENMASK((h), (l)))
#define HIWORD_UPDATE(v, h, l)	(((v) << (l)) | (GENMASK((h), (l)) << 16))
#define UPDATE(x, h, l)		FIELD_PREP(GENMASK((h), (l)), (x))
#define HIWORD_UPDATE(v, h, l)	FIELD_PREP_WM16(GENMASK((h), (l)), (v))

/* SYS_GRF */
#define SYS_GRF_SOC_CON1			0x0304