Thread (23 messages) 23 messages, 4 authors, 2015-02-25

[PATCH V6 05/12] mailbox: Add NVIDIA Tegra XUSB mailbox driver

From: Andrew Bresticker <hidden>
Date: 2014-12-02 19:06:22
Also in: linux-devicetree, linux-tegra, lkml

On Tue, Dec 2, 2014 at 1:47 AM, Thierry Reding [off-list ref] wrote:
On Mon, Nov 24, 2014 at 04:17:17PM -0800, Andrew Bresticker wrote:
quoted
The Tegra xHCI controller's firmware communicates requests to the host
processor through a mailbox interface.  While there is only a single
physical channel, messages sent by the controller can be divided
into two groups: those intended for the PHY driver and those intended
for the host-controller driver.  The requesting driver is assigned
one of two virtual channels when the single physical channel is
requested.  All incoming messages are sent to both virtual channels.

Signed-off-by: Andrew Bresticker <redacted>
Reviewed-by: Stephen Warren <redacted>
---
Thierry,

I've left this as a separate driver because I don't think it should be
combined with the xHCI host.  Stephen and I discussed this earlier in
review of v1 of this series and he agreed that the mailbox belongs in
its own DT node and driver.
My objection wasn't strictly against merging the drivers. What I don't
want to see is two devices sharing the same memory-mapped regions in DT.

That's based on earlier discussion with Stephen as well, because we have
had the same problem with USB and USB-PHY before. Unless I completely
misinterpreted we came to the conclusion that we should avoid this in
the future.
Yes, I understand your objection to having multiple drivers map the
same IO memory, however Stephen and I discussed this before [1] and
came to the conclusion that, although mapping the MMIO region in both
drivers was non-ideal, the alternatives had their own drawbacks as
well and that the approach I had taken was fine.
Like I said, this doesn't mean that both need to be in the same driver.
We could use MFD for example, or provide an entry point in the mailbox
driver that can be called from the XUSB driver to instantiate the
mailbox (which is really the same as MFD).
This does not look like the typical MFD, but I would agree that it's
the only reasonable alternative.  If Lee is fine with it, then I
suppose I could go the MFD route...  Lee: for context, the mailbox
registers live in one of the host-controller's MMIO regions - there
are no other shared resources.  This has been discussed, along with a
possible binding, in [1] as well.

[1] https://lkml.org/lkml/2014/8/27/727
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help