[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <56379EDD.50007@collabora.co.uk>
Date: Mon, 02 Nov 2015 17:35:25 +0000
From: Martyn Welch <martyn.welch@...labora.co.uk>
To: Andrew Bresticker <abrestic@...omium.org>
CC: "linux-tegra@...r.kernel.org" <linux-tegra@...r.kernel.org>,
Thierry Reding <thierry.reding@...il.com>,
Stephen Warren <swarren@...dotorg.org>,
Jon Hunter <jonathanh@...dia.com>,
"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>
Subject: Re: [RFC 0/8] Add support for NVIDIA Tegra XUSB
On 02/11/15 17:27, Andrew Bresticker wrote:
> Hi Martyn,
>
> On Mon, Nov 2, 2015 at 3:55 AM, Martyn Welch
> <martyn.welch@...labora.co.uk> wrote:
>> This series is based on commits that can be found in the git tree here:
>>
>> https://github.com/thierryreding/linux/commits/staging/xhci
>>
>> I have included the patches I've used from that tree as patches 1-5.
>>
>> The above patches were submitted for review back in May:
>>
>> https://lkml.org/lkml/2015/5/4/574
>>
>> The approach taken in these patches was deemed not appropriate (treating
>> the XUSB as a MFD).
>>
>> In patch 6 I add the bindings based in those submitted for review here
>> (with a few modifications currently required by the driver):
>>
>> https://www.spinics.net/lists/linux-usb/msg130940.html
>>
>> I have included my changes to the original patch series in patch 7. With
>> these modifications the patch series builds and works, but is rather hacky.
>> Devices for the mailbox driver and xHCI driver are now created in the xusb
>> driver (still under the mfd directory for now - it will be moved before
>> this series is submitted properly). As the child devices use
>> infrastructure which expects the device to be associated with a of_node,
>> it has been necessary to point the child device at the parents of_node
>> where this is needed. This approach did not seem viable for the mailbox
>> API, so to get that working the child device node was pointed to the
>> parents of_node (in tegra_xusb_add_device). The unfortunate side effect of
>> this is that upon device creation the parents probe routine gets called...
>>
>> Not good.
>>
>> Patch 8 attempts to resolve this. When passing the parents device node to
>> the mailbox API, the mailbox's receive callback was raising errors as
>> that function is looking for the drvdata stored in the child's device node,
>> but getting the parents. This patch jumps though a few hoops to get to the
>> child's device node.
> After my last submission, we had a discussion about the mailbox and
> decided not to use the mailbox framework and instead use a private API
> between the xHCI driver and the XUSB_PADCTL driver.
>
Ok.
>> Unfortunately, whilst the receive callback seems to be getting the right
>> drvdata, USB3 devices are being enumerated as USB2 devices rather than
>> USB3 devices, so something is clearly not right.
> Tegra124? Tegra210? Which board?
Tegra124, nyan-blaze.
Martyn
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists