Thread (46 messages) 46 messages, 10 authors, 2015-06-30

Re: [PATCH v8 4/9] mfd: Add binding document for NVIDIA Tegra XUSB

From: Lee Jones <hidden>
Date: 2015-05-14 07:45:13
Also in: linux-arm-kernel, linux-tegra, lkml

On Thu, 14 May 2015, Jon Hunter wrote:
On 14/05/15 08:29, Lee Jones wrote:
quoted
On Wed, 13 May 2015, Andrew Bresticker wrote:
quoted
On Wed, May 13, 2015 at 9:50 AM, Lee Jones [off-list ref] wrote:
quoted
On Wed, 13 May 2015, Andrew Bresticker wrote:
quoted
Lee,

On Wed, May 13, 2015 at 7:39 AM, Lee Jones [off-list ref] wrote:
quoted
On Mon, 04 May 2015, Andrew Bresticker wrote:
quoted
Add a binding document for the XUSB host complex on NVIDIA Tegra124
and later SoCs.  The XUSB host complex includes a mailbox for
communication with the XUSB micro-controller and an xHCI host-controller.

Signed-off-by: Andrew Bresticker <redacted>
Cc: Rob Herring <redacted>
Cc: Pawel Moll <redacted>
Cc: Mark Rutland <redacted>
Cc: Ian Campbell <redacted>
Cc: Kumar Gala <redacted>
Cc: Samuel Ortiz <sameo-VuQAYsv1563Yd54FQh9/CA@public.gmane.org>
Cc: Lee Jones <redacted>
---
Changes from v7:
 - Move non-shared resources into child nodes.
New for v7.
---
 .../bindings/mfd/nvidia,tegra124-xusb.txt          | 37 ++++++++++++++++++++++
 1 file changed, 37 insertions(+)
 create mode 100644 Documentation/devicetree/bindings/mfd/nvidia,tegra124-xusb.txt
diff --git a/Documentation/devicetree/bindings/mfd/nvidia,tegra124-xusb.txt b/Documentation/devicetree/bindings/mfd/nvidia,tegra124-xusb.txt
new file mode 100644
index 0000000..bc50110
--- /dev/null
+++ b/Documentation/devicetree/bindings/mfd/nvidia,tegra124-xusb.txt
@@ -0,0 +1,37 @@
+NVIDIA Tegra XUSB host copmlex
+==============================
+
+The XUSB host complex on Tegra124 and later SoCs contains an xHCI host
+controller and a mailbox for communication with the XUSB micro-controller.
+
+Required properties:
+--------------------
+ - compatible: For Tegra124, must contain "nvidia,tegra124-xusb".
+   Otherwise, must contain '"nvidia,<chip>-xusb", "nvidia,tegra124-xusb"'
+   where <chip> is tegra132.
+ - reg: Must contain the base and length of the XUSB FPCI registers.
+ - ranges: Bus address mapping for the XUSB block.  Can be empty since the
+   mapping is 1:1.
+ - #address-cells: Must be 2.
+ - #size-cells: Must be 2.
+
+Example:
+--------
+     usb@0,70098000 {
+             compatible = "nvidia,tegra124-xusb";
+             reg = <0x0 0x70098000 0x0 0x1000>;
+             ranges;
+
+             #address-cells = <2>;
+             #size-cells = <2>;
+
+             usb-host@0,70090000 {
+                     compatible = "nvidia,tegra124-xhci";
+                     ...
+             };
+
+             mailbox {
+                     compatible = "nvidia,tegra124-xusb-mbox";
+                     ...
+             };
This doesn't appear to be a proper MFD.  I would have the USB and
Mailbox devices probe seperately and use a phandle to point the USB
device to its Mailbox.

usb@xyz {
        mboxes = <&xusb-mailbox, [chan]>;
};
Then what will set up the shared regmap?  The point of using an MFD
here was to share a register set with both the mailbox and xHCI
drivers and avoid having to map the same register set twice in two
separate drivers.
Can you share the mapping please?
What do you mean?  That's what the MFD is doing now by setting up an
MMIO regmap to be shared between the two devices.
I mean, can you share the documentation with me. :)
You can download the documentation from here [1]. See chapter 19 USB
complex. However, I will warn you that unfortunately, you need to sign
up for an account :-(
I'll give that a miss for the time being.  See my other mail for now.

-- 
Lee Jones
Linaro STMicroelectronics Landing Team Lead
Linaro.org │ Open source software for ARM SoCs
Follow Linaro: Facebook | Twitter | Blog
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help