]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
irqchip/gic-v3-its: Use FIELD_MODIFY()
authorHans Zhang <18255117159@163.com>
Thu, 30 Apr 2026 16:29:54 +0000 (00:29 +0800)
committerThomas Gleixner <tglx@kernel.org>
Mon, 11 May 2026 14:16:21 +0000 (16:16 +0200)
Use FIELD_MODIFY() to remove open-coded bit manipulation.

No functional change intended.

Signed-off-by: Hans Zhang <18255117159@163.com>
Signed-off-by: Thomas Gleixner <tglx@kernel.org>
Link: https://patch.msgid.link/20260430162954.44156-1-18255117159@163.com
drivers/irqchip/irq-gic-v3-its.c

index 291d7668cc8daf6a969452aa33a7bc44fe394d31..e78795b7acfd64de8950d75ca44116fffb0b3af6 100644 (file)
@@ -4784,8 +4784,7 @@ static bool __maybe_unused its_enable_quirk_cavium_22375(void *data)
        struct its_node *its = data;
 
        /* erratum 22375: only alloc 8MB table size (20 bits) */
-       its->typer &= ~GITS_TYPER_DEVBITS;
-       its->typer |= FIELD_PREP(GITS_TYPER_DEVBITS, 20 - 1);
+       FIELD_MODIFY(GITS_TYPER_DEVBITS, &its->typer, 20 - 1);
        its->flags |= ITS_FLAGS_WORKAROUND_CAVIUM_22375;
 
        return true;
@@ -4805,8 +4804,7 @@ static bool __maybe_unused its_enable_quirk_qdf2400_e0065(void *data)
        struct its_node *its = data;
 
        /* On QDF2400, the size of the ITE is 16Bytes */
-       its->typer &= ~GITS_TYPER_ITT_ENTRY_SIZE;
-       its->typer |= FIELD_PREP(GITS_TYPER_ITT_ENTRY_SIZE, 16 - 1);
+       FIELD_MODIFY(GITS_TYPER_ITT_ENTRY_SIZE, &its->typer, 16 - 1);
 
        return true;
 }
@@ -4840,10 +4838,8 @@ static bool __maybe_unused its_enable_quirk_socionext_synquacer(void *data)
                its->get_msi_base = its_irq_get_msi_base_pre_its;
 
                ids = ilog2(pre_its_window[1]) - 2;
-               if (device_ids(its) > ids) {
-                       its->typer &= ~GITS_TYPER_DEVBITS;
-                       its->typer |= FIELD_PREP(GITS_TYPER_DEVBITS, ids - 1);
-               }
+               if (device_ids(its) > ids)
+                       FIELD_MODIFY(GITS_TYPER_DEVBITS, &its->typer, ids - 1);
 
                /* the pre-ITS breaks isolation, so disable MSI remapping */
                its->msi_domain_flags &= ~IRQ_DOMAIN_FLAG_ISOLATED_MSI;