Thread (7 messages) flat view 7 messages, 3 authors, 2014-06-20

Re: [PATCH v3 0/3] Qualcomm Resource Power Manager driver

From: Jassi Brar <hidden>
Date: 2014-06-19 20:01:24
Also in: linux-arm-kernel, linux-arm-msm, lkml

On 19 June 2014 23:52, Bjorn Andersson [off-list ref] wrote:
On Wed, Jun 18, 2014 at 8:55 PM, Jassi Brar [off-list ref] wrote:
quoted
On 18 June 2014 22:14, Kevin Hilman [off-list ref] wrote:
[...]
quoted
quoted
Thinking more about what this RPM driver actually does, and since you
mentioned patterns across SoCs, it seems to me the RPM driver bascially
just doing the IPC.

So, rather than MFD or drivers/soc, it seems to me that it should be
implmented as a controller in the new common mailbox framwork[1] being
worked on by Jassi Brar (added to Cc.)

IIUC, RPM is actually only doing one-way IPC (it only exposes a write()
interface to clients) so it seems like a rather simple implementation of
a mailbox controller.
Yup, qcom_rpm.c is exactly what drivers/mailbox/ is meant for.
The RPM provides a register file with 80ish registers of variable size, to
program the hardware you write to these registers. Then you write to a register
selector register and then signal an outgoing interrupt.
For mailbox_request_channel(), you have dev_get_qcom_rpm()  and
qcom_rpm_write() for mbox_send_message()
Rest all is what you need to fire off a message to remote or register
for interrupts. So nothing new to me.
That is, the interface exposed to the kernel by the SoC is not an mailbox like
interface.
 I don't understand how having to program 80 registers makes it "not
like mailbox"?
 I have used mailbox api to pass messages between CPUs (using PPI)
under same instance of Linux and otoh I think it could also support
IPC over gpio (if someone gets that desperate).
Mailbox isn't about how you program the h/w. Do whatever is needed to
send a message across.

BTW I haven't looked closely, but probably you could push the data tables in DT?

Cheers
-Jassi
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help