Introduces support for new DSP IOVA formatting and hardware-specific configuration required to enable ADSP and CDSP functionality on the Kaanapali SoC.
Add support for a new IOVA formatting scheme by adding a sid_pos to the DSP driver. Sid_pos standardizes the placement of the stream ID (SID) within the physical address, which is required for DSPs to operate correctly on Kaanapali. DSP currently supports 32-bit IOVA (32-bit PA + 4-bit SID) for both Q6 and user DMA (uDMA) access. This is being upgraded to 34-bit PA + 4-bit SID due to a hardware revision in CDSP for Kaanapali SoC, which expands the DMA addressable range. To support CDSP operation, this series updates the DMA mask configuration to reflect the expanded DMA addressable range. Patch [v1]: https://lore.kernel.org/all/[email protected]/ Changes in v2: - Rename phys to dma_addr for clarity - Remove iova_format, add soc_data with sid_pos in channel ctx - Remove sid_pos and pa_bits from the session ctx Kumari Pallavi (3): misc: fastrpc: Rename phys to dma_addr for clarity misc: fastrpc: Add support for new DSP IOVA formatting misc: fastrpc: Update dma_mask for CDSP support on Kaanapali SoC drivers/misc/fastrpc.c | 126 ++++++++++++++++++++++++++++------------- 1 file changed, 88 insertions(+), 38 deletions(-) -- 2.34.1
