drivers/gpu/nova-core/gsp/cmdq.rs
0 → 100644
+656
−0
File added.
Preview size limit exceeded, changes collapsed.
+334
−1
File changed.
Preview size limit exceeded, changes collapsed.
Loading
This commit introduces core infrastructure for handling GSP command and message queues in the nova-core driver. The command queue system enables bidirectional communication between the host driver and GSP firmware through a remote message passing interface. The interface is based on passing serialised data structures over a ring buffer with separate transmit and receive queues. Commands are sent by writing to the CPU transmit queue and waiting for completion via the receive queue. To ensure safety mutable or immutable (depending on whether it is a send or receive operation) references are taken on the command queue when allocating the message to write/read to. This ensures message memory remains valid and the command queue can't be mutated whilst an operation is in progress. Currently this is only used by the probe() routine and therefore can only used by a single thread of execution. Locking to enable safe access from multiple threads will be introduced in a future series when that becomes necessary. Signed-off-by:Alistair Popple <apopple@nvidia.com> Co-developed-by:
Alexandre Courbot <acourbot@nvidia.com> Signed-off-by:
Alexandre Courbot <acourbot@nvidia.com> Message-ID: <20251110-gsp_boot-v9-9-8ae4058e3c0e@nvidia.com>
File added.
Preview size limit exceeded, changes collapsed.
File changed.
Preview size limit exceeded, changes collapsed.