summaryrefslogtreecommitdiff
path: root/kernel
diff options
context:
space:
mode:
authorEliav Farber <farbere@amazon.com>2026-10-11 05:04:46 +0000
committerThomas Gleixner <tglx@kernel.org>2026-10-15 14:25:07 +0200
commit3d41f28682aa8375a025bc999e403852a78c092c (patch)
tree2e78272385be7771287c996fd2ac9b352f3f7d65 /kernel
parent485ab2a36d36edb2bb630d2491d2ab7ed11178fc (diff)
irqchip/al-fic: Support error and fatal outputs and FIC v2
FIC v2 hardware adds two interrupt outputs on top of the info output: an error output and a fatal output, each with its own mask register (AL_FIC_ERROR_MASK, AL_FIC_FATAL_MASK). A group drives exactly one of the three outputs. Read which output a group drives from the amazon,al-fic-mask devicetree property (info, error or fatal; absent means info) and program the matching mask register. Detect the hardware revision from the CONTROL register version field (bits 28-29). The revision is not in the devicetree, so requesting the error or fatal output on a v1 device - which has neither - is rejected at probe against the register. Name the selected output in the probe log line, in place of the "Legacy mode" text it replaces. A booted system then shows which output each group drives. The "v1" and "v2" names are this driver's labels for the CONTROL version field encoding (0 and 1). The driver seeds mask_cache from the value it programs rather than having the generic chip read the mask register back, so the error and fatal mask registers are never read - which also sidesteps the v2 erratum where they always read as 0 regardless of their contents. Reading CONTROL to get the version field turns the write that follows into a read-modify-write instead of a value built from CONTROL_MASK_MSI_X alone. Every RW bit in this register resets to 0, so the two are equivalent at probe time; the read-modify-write is kept anyway as the better practice; it costs nothing and does not depend on the reset value staying 0. Signed-off-by: Eliav Farber <farbere@amazon.com> Signed-off-by: Thomas Gleixner <tglx@kernel.org> Reviewed-by: Radu Rendec <radu@rendec.net> Link: https://patch.msgid.link/20261011050449.41903-8-farbere@amazon.com
Diffstat (limited to 'kernel')
0 files changed, 0 insertions, 0 deletions