Commit Graph

3 Commits

Author SHA1 Message Date
Konstantin Dorfman
a1def2c51f soc: qcom: spcom: fix uapi for SPU kernel-pil
This change adds missing userspace type definition,
fixing dependence.

Change-Id: I5020c38948579a2a929175f535553f6ada009051
Signed-off-by: Konstantin Dorfman <kdorfman@codeaurora.org>
2018-05-14 00:06:00 -07:00
Konstantin Dorfman
f88175ac87 soc: qcom: spcom: add kernel-pil support for SPU
Add an API to userspace that supports SPU PIL.
This API restart SPU.

Change-Id: I934dec53a931e3b97092892b7f1f80599355f961
Signed-off-by: Kineret Berger <kberger@codeaurora.org>
Signed-off-by: Konstantin Dorfman <kdorfman@codeaurora.org>
2018-05-03 16:52:57 +03:00
Konstantin Dorfman
754a8023cd soc: qcom: add secure processor communication (spcom) driver
This driver supports communication with secure processor subsystem
over rpmsg and ungerlying glink transport layer.
The communication is based on using shared memory and interrupts.
This driver exposes interface to user space.

Migrate from using glink api to rpmsg api:
- removed not used glink functionality
- removed not used kernel api to spcom functionality
- implemented rpmsg driver registration for each new spcom channel
open/close/tx/rx/poll flows fixes:
- rpmsg_abort flag introduced to synchronize close() of a channel with
  pending sending or receiving data from the channel
- tx implemented as rpmsg_trysend() every 10ms (timeout_msec total)
- poll imlemented link up/down events as first/last rpmsg device
  probed/removed
- locking

ION api replaced by dma-buf:
ION api depricated.
This change implements following functionality:
Lock/unlock shared buffer by reference counting on underline dma-buf.
Translation user allocated shared buffer virtual address to
physical address (to enable SPU access to the buffer).

Change-Id: I28d704b18a3b0de9711ff3235c3f5551e7302557
Signed-off-by: Konstantin Dorfman <kdorfman@codeaurora.org>
2018-04-17 16:35:08 +03:00