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.txtdiff --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