[PATCH] bus: mhi: host: Allocate entire MHI control config once

Jeff Johnson jeff.johnson at oss.qualcomm.com
Fri Apr 25 09:56:05 PDT 2025


On 4/24/2025 10:37 PM, Manivannan Sadhasivam wrote:
> I was confused by the fact that ath11k driver adds an offset of 0x1000000 to the
> reserved region for the iova_start:
> https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/drivers/net/wireless/ath/ath11k/mhi.c?h=v6.15-rc3#n331

This predates my role as maintainer.
I was an internal reviewer, but in internal review (as well as the public v1)
the code was using dedicated 'qcom' DT entries and did not have an offset.

So I looked at the entire patch history:
https://lore.kernel.org/linux-wireless/?q=s%3A%22ath11k%3A+Use+reserved+host+DDR+addresses+from+DT+for+PCI+devices%22

The offset was added in v2.

There is nothing that describes why the offset was added, and nobody
questioned it.


> 
> So this means the firmware will only map the memory from reserved + 0x1000000
> for MHI data structures. But even with current implementation, the MHI stack
> doesn't know anything about the offset, because it just relies on
> dma_alloc_coherent() API which will only honor the reserved region pointed by
> 'memory' property in the node (without the offset).
> 
> So I'm not sure how the firmware makes sure that the data structures lives
> within the offset region. This is more of a question to ath11k folks.
> 
> But your series is not going to make it any worse. Sorry about the confusion.
> 
> - Mani
> 




More information about the ath11k mailing list