]> git.ipfire.org Git - thirdparty/kernel/linux.git/commit
dmaengine: tegra: Support address width > 39 bits
authorAkhil R <akhilrajeev@nvidia.com>
Tue, 31 Mar 2026 10:22:59 +0000 (15:52 +0530)
committerVinod Koul <vkoul@kernel.org>
Thu, 4 Jun 2026 06:51:19 +0000 (12:21 +0530)
commit286632b9bf1cf239482d54b592cc1d5bbd5ec783
tree50d40976cc019bd98bb2038d73ccd0a9912afb07
parent5000beabae65310ec81db40dcda181b0a6192ff3
dmaengine: tegra: Support address width > 39 bits

Tegra264 supports address width of 41 bits. Unlike older SoCs which use
a common high_addr register for upper address bits, Tegra264 has separate
src_high and dst_high registers to accommodate this wider address space.

Add an addr_bits property to the device data structure to specify the
number of address bits supported on each device and use that to program
the appropriate registers.

Update the sg_req struct to remove the high_addr field and use
dma_addr_t for src and dst to store the complete addresses. Extract
the high address bits only when programming the registers.

Signed-off-by: Akhil R <akhilrajeev@nvidia.com>
Reviewed-by: Frank Li <Frank.Li@nxp.com>
Reviewed-by: Jon Hunter <jonathanh@nvidia.com>
Link: https://patch.msgid.link/20260331102303.33181-7-akhilrajeev@nvidia.com
Signed-off-by: Vinod Koul <vkoul@kernel.org>
drivers/dma/tegra186-gpc-dma.c