[PATCH v3 6/7] iommu/riscv: Command and fault queue support
Baolu Lu
baolu.lu at linux.intel.com
Wed May 1 20:51:22 PDT 2024
On 5/1/24 4:01 AM, Tomasz Jeznach wrote:
> Introduce device command submission and fault reporting queues,
> as described in Chapter 3.1 and 3.2 of the RISC-V IOMMU Architecture
> Specification.
>
> Command and fault queues are instantiated in contiguous system memory
> local to IOMMU device domain, or mapped from fixed I/O space provided
> by the hardware implementation. Detection of the location and maximum
> allowed size of the queue utilize WARL properties of queue base control
> register. Driver implementation will try to allocate up to 128KB of
> system memory, while respecting hardware supported maximum queue size.
>
> Interrupts allocation is based on interrupt vectors availability and
> distributed to all queues in simple round-robin fashion. For hardware
> Implementation with fixed event type to interrupt vector assignment
> IVEC WARL property is used to discover such mappings.
>
> Address translation, command and queue fault handling in this change
> is limited to simple fault reporting without taking any action.
>
> Signed-off-by: Tomasz Jeznach<tjeznach at rivosinc.com>
Reviewed-by: Lu Baolu <baolu.lu at linux.intel.com>
Best regards,
baolu
More information about the linux-riscv
mailing list