Re: [QUESTION] Public availability of the MHI specification

Manivannan Sadhasivam <[email protected]> Tue, 28 Apr 2026 13:42:52 +0530
Newsgroups dev.linux.lists.mhi
Message-ID <lxx5zfhequqedinh5vlmqmfucaeo3ltp5yypn4dhlw2mkw4roc@digcn3fue7ph>
Hi,

On Tue, Apr 28, 2026 at 06:32:08AM +0000, [email protected] wrote:
> Hi,
> 
> I am looking into the MHI bus subsystem (drivers/bus/mhi/) to better 
> understand the protocol and the semantics behind the MMIO register 
> layout defined in drivers/bus/mhi/common.h. My motivation is that I 
> would like to use MHI to communicate with a PCIe device rather than 
> reinventing a similar protocol from scratch.
> 
> The in-tree documentation (Documentation/mhi/) gives a good 
> architectural overview, and several comments in the code refer to the 
> MHI specification by section number (e.g. drivers/bus/mhi/ep/main.c:57 
> mentions "section 4.3, Interrupt moderation") and by version (commit 
> 48f98496b1de mentions "MHI spec v1.2"). However, I could not find a 
> pointer to the specification document itself.
> 
> Could you tell me:
> 1. Is the MHI specification publicly available? If so, where can it be 
> downloaded (Qualcomm developer portal, elsewhere)?
> 2. Is MHI intended/suitable for use with non-Qualcomm devices, or would 
> you recommend against going down that path?
> 

MHI is a Qualcomm's proprietary, patented [1] protocol. So you cannot use it in
non-Qcom products without getting prior approval from Qualcomm. Also, the spec
is not open as it is not meant to be developed outside of Qualcomm products.

If you just want a protocol that works on top of physical transport like PCIe on
all platforms, I'd suggest using an opensource transport like VirtIO.

- Mani

[1] https://patents.google.com/patent/US20140207991A1/en

-- 
மணிவண்ணன் சதாசிவம்