The Always On Subsystem (AOSS) Qualcomm Messaging Protocol (QMP) driver
is used to communicate with the AOSS for certain side-channel requests,
that are not available through the RPMh interface.
The communication is a very simple synchronous mechanism of messages
being written in message RAM and a doorbell in the AOSS is rung. As the
AOSS has processed the message length is cleared and an interrupt is
fired by the AOSS as acknowledgment.
The driver exposes the QDSS clock as a clock and the low-power state
associated with the remoteprocs in the system as a set of power-domains.
Signed-off-by: Bjorn Andersson <bjorn.andersson@xxxxxxxxxx>
---
Changes since v6:
- Squash the pd into the same driver as the communication, to simplify
the interaction.
- Representing the QDSS clocks as a clock/power domain turns out to
cascade into a request to make all Coresight drivers have a secondary
compatible to replace the required bus clock with a required power
domain. So in v7 this is exposed as a clock instead.
- Some error checking updates, as reported by Doug.