// SPDX-License-Identifier: GPL-2.0 // SPDX-FileCopyrightText: Copyright (c) 2026 NVIDIA CORPORATION & AFFILIATES. All rights reserved. //! GPU interrupt support. //! //! GIN, the GPU Interrupt and Notification unit, is the GPU's interrupt controller. It latches //! every interrupt source in a two-level register tree and delivers the tree to the CPU as a //! message-signaled PCI interrupt. //! //! See `Documentation/gpu/nova/core/interrupts.rst`. #[cfg(CONFIG_NOVA_CORE_SELFTESTS)] pub(crate) mod doorbell_test; pub(crate) mod gsp; mod hal; pub(crate) mod interrupt_tree; mod regs; /// The message-signaled interrupt type that Linux granted. /// /// nova-core never requests INTx, so this has no variant for it, unlike [`kernel::pci::IrqType`]. #[derive(Clone, Copy, Debug, Eq, PartialEq)] enum MsiType { /// A single message, which every subtree raises. Msi, /// One table entry per subtree. MsiX, }