Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751453AbbD3KGL (ORCPT ); Thu, 30 Apr 2015 06:06:11 -0400 Received: from mail-wg0-f47.google.com ([74.125.82.47]:36204 "EHLO mail-wg0-f47.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1750946AbbD3KGG (ORCPT ); Thu, 30 Apr 2015 06:06:06 -0400 Date: Thu, 30 Apr 2015 11:06:00 +0100 From: Lee Jones To: Andrew Bresticker Cc: Stephen Warren , Thierry Reding , Alexandre Courbot , "linux-tegra@vger.kernel.org" , "linux-usb@vger.kernel.org" , "devicetree@vger.kernel.org" , "linux-arm-kernel@lists.infradead.org" , "linux-kernel@vger.kernel.org" , Rob Herring , Pawel Moll , Mark Rutland , Ian Campbell , Kumar Gala , Samuel Ortiz Subject: Re: [PATCH V7 4/9] mfd: Add binding document for NVIDIA Tegra XUSB Message-ID: <20150430100600.GC1815@x1> References: <1430174242-29465-1-git-send-email-abrestic@chromium.org> <1430174242-29465-5-git-send-email-abrestic@chromium.org> <20150429092545.GR9169@x1> <20150429183429.GB9169@x1> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: User-Agent: Mutt/1.5.21 (2010-09-15) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 4323 Lines: 101 On Wed, 29 Apr 2015, Andrew Bresticker wrote: > On Wed, Apr 29, 2015 at 11:34 AM, Lee Jones wrote: > > On Wed, 29 Apr 2015, Andrew Bresticker wrote: > > > >> Lee, > >> > >> On Wed, Apr 29, 2015 at 2:25 AM, Lee Jones wrote: > >> > On Mon, 27 Apr 2015, Andrew Bresticker wrote: > >> > > >> >> 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 > >> >> Cc: Rob Herring > >> >> Cc: Pawel Moll > >> >> Cc: Mark Rutland > >> >> Cc: Ian Campbell > >> >> Cc: Kumar Gala > >> >> Cc: Samuel Ortiz > >> >> Cc: Lee Jones > >> >> --- > >> >> New for v7. > >> >> --- > >> >> .../bindings/mfd/nvidia,tegra124-xusb.txt | 46 ++++++++++++++++++++++ > >> >> 1 file changed, 46 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..6a46680 > >> >> --- /dev/null > >> >> +++ b/Documentation/devicetree/bindings/mfd/nvidia,tegra124-xusb.txt > >> >> @@ -0,0 +1,46 @@ > >> >> +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,-xusb", "nvidia,tegra124-xusb"' > >> >> + where is tegra132. > >> > > >> > Okay. Why? > >> > >> Why what? This is the convention used for Tegra bindings and is also > >> documented in Documentation/devicetree/bindings/submitting-patches.txt. > >> See nvidia,tegra114-spi.txt and nvidia,tegra20-i2c.txt for other > >> examples of this. > > > > It seems strange to me that you'd mention two specific chips in one > > compatible string. What's the purpose of that? > > The Tegra maintainers can correct me if I'm wrong here, but the point > is, I think, to future-proof the binding. There are currently no > differences between Tegra124 and Tegra132 that need to be accounted > for in the driver, so the driver need only match against > "nvidia,tegra124-xusb". If a Tegra132-specific quirk comes about > later all Tegra132 device-trees will also include the > "nvidia,tegra132-*" compatible string, so we can simply update the > driver without breaking DT backwards-compatibility. I still don't understand why you need to use them both at the same time. Why don't you use nvidia,tegra124-* for Tegra124 and nvidia,tegra132-* for Tegra132? > >> >> + - reg: Must contain register base and length for each register set listed > >> >> + in reg-names. > >> > > >> > You've mentioned 2 of the cells, what about the remaining 2? > >> > >> The example given was for Tegra124, where there are two address cells > >> and two size cells. > > > > I don't get that. How does that work? > > Tegra124 has a physical address space of > 4GB because of LPAE, thus a > single cell each for address and size is not sufficient. The arm64 > Tegra SoCs will obviously also use two address and size cells. Take a > look at arch/arm/boot/dts/tegra124.dtsi. Okay, so these get shifted and &'ed into posstible 64bit addresses? I guess I just thought ARM64 addresses would look like: 0xXXXXXXXXXXXXXXXX 0xXXXX -- Lee Jones Linaro STMicroelectronics Landing Team Lead Linaro.org │ Open source software for ARM SoCs Follow Linaro: Facebook | Twitter | Blog -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/