bitfield: Add FIELD_MODIFY() helper
authorLuo Jie <quic_luoj@quicinc.com>
Thu, 17 Apr 2025 10:47:08 +0000 (18:47 +0800)
committerYury Norov <yury.norov@gmail.com>
Tue, 29 Apr 2025 19:58:38 +0000 (15:58 -0400)
commita256ae22570ee4c3427fdc703a58a89afee6a332
tree8168df33dba0f19402ca698901f73cb6196e38e2
parent89a44a808814d4717a8bf945ddebd5c39bfffcf4
bitfield: Add FIELD_MODIFY() helper

Add a helper for replacing the contents of bitfield in memory
with the specified value.

Even though a helper xxx_replace_bits() is available, it is not
well documented, and only reports errors at the run time, which
will not be helpful to catch possible overflow errors due to
incorrect parameter types used.

FIELD_MODIFY(REG_FIELD_C, &reg, c) is the wrapper to the code below.

reg &= ~REG_FIELD_C;
reg |= FIELD_PREP(REG_FIELD_C, c);

Yury: trim commit message, align backslashes.

Signed-off-by: Luo Jie <quic_luoj@quicinc.com>
Signed-off-by: Yury Norov <yury.norov@gmail.com>
include/linux/bitfield.h