From: Hans de Goede <hdegoede@redhat.com>
To: Andy Shevchenko <andy.shevchenko@gmail.com>
Cc: Darren Hart <dvhart@infradead.org>,
Andy Shevchenko <andy@infradead.org>,
MyungJoo Ham <myungjoo.ham@samsung.com>,
Chanwoo Choi <cw00.choi@samsung.com>,
Mathias Nyman <mathias.nyman@intel.com>,
Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
Guenter Roeck <linux@roeck-us.net>,
Heikki Krogerus <heikki.krogerus@linux.intel.com>,
Platform Driver <platform-driver-x86@vger.kernel.org>,
Linux Kernel Mailing List <linux-kernel@vger.kernel.org>,
USB <linux-usb@vger.kernel.org>
Subject: Re: [PATCH v3 00/12] USB Type-C device-connection, mux and switch support
Date: Mon, 26 Feb 2018 12:19:52 +0100 [thread overview]
Message-ID: <f8fc1193-2057-497f-3494-aeef437f1341@redhat.com> (raw)
In-Reply-To: <CAHp75VevNQB_8BTaazq94RHQ_Nbs=CcjJwfw+Ph9iLunLYb9kg@mail.gmail.com>
Hi,
On 26-02-18 11:59, Andy Shevchenko wrote:
> On Mon, Feb 26, 2018 at 11:09 AM, Hans de Goede <hdegoede@redhat.com> wrote:
>> Hi All,
>>
>> Here is version 3 of Heikki's and my USB Type-C device-connection, mux and
>> switch support series. Version 2 and 3 bring various small code and style
>> fixes based on review (no major changes).
>>
>> Here is the original cover-letter of v1:
>>
>> Some devices with an USB Type-C connector have a bunch of muxes
>> behind that connector which need to be controlled by the kernel (rather
>> then having them controlled by firmware as on most devices).
>>
>> Quite a while back I submitted a patch-series to tie together these muxes
>> and the Type-C Port Manager (tcpm) code, using the then new drivers/mux
>> framework. But the way I used the mux framework went against what it was
>> designed for, so in the end that series got nowhere.
>>
>> Heikki Krogerus from Intel, who maintains the USB TYPEC subsystem, has
>> recently been working on solving the same problem for some boards he is
>> doing hardware-enablement for.
>>
>> Heikki has come up with a number of infrastructure patches for this.
>> The first one is a new device-connection framework. This solves the
>> problem of describing non bus device-links on x86 in what in my experience
>> with this problematic area is a really nice simple, clean and *generic*
>> way. This could for example in the near future also replace the custom
>> lookup code in the pwm subsys and the custom pwm_add_table() /
>> pwm_remove_table() functions.
>>
>> The other 3 patches add a framework for the different type of Type-C /
>> USB "muxes".
>>
>> Heikki and I have gone through a number of iterations of these patches
>> together and we believe these are now ready for merging. Since merging
>> infrastructure patches without users is not done and Heikki's own use-case
>> for these is not yet ready for merging, the rest of this series consists
>> of patches by me to make the Type-C connector found on some Cherry Trail
>> devices (finally) be able to actually work as an USB port and not just
>> a charge port.
>>
>> The last patch uses the new usb-role-switch framework to also do proper
>> devcie / host switching on CHT devices with a USB micro AB connector.
>> This is also a big feature for CHT users, because before this they had
>> to do a reboot to get an OTG-host cable recognized (on some devices).
>>
>> Part of this series is an usb-role-switch driver for the role-switch
>> found inside the xhci controller on e.g. CHT devices, this is currently
>> implemented as the generic xhci controller instantiating a platform
>> child-device for this, since this really is a separate chunk of HW
>> which happens to sit in the XHCI mmio space. This approach may not be
>> universally liked, given that in this new series the role-switch driver
>> is much smaller and does not have any external deps anymore we could
>> just integrate it into the xhci code if that is preferred.
>>
>> About merging this series (once everything is reviewed, etc.), there are
>> quite some interdependencies in it esp. a lot of the patches depend on
>> the first patch. Luckily patches 1-10 all apply to subsystems which are
>> maintained by Greg (most to the USB subsys). Which just leaves patches
>> 11 and 12 once 1-10 are merged. Greg, can you create an immutable branch
>> for the platform/x86 and extcon maintainers to merge once this is done?
>
> Didn't have time to comment on v2, so here we are:
> you are using in even the same file two styles, i.e. IS_ERR_OR_NULL
> vs. !x || IS_ERR(x) (and negative ones).
Good catch, I only see this in "usb: common: Small class for USB role switches",
will fix for v4.
> Reviewed-by: Andy Shevchenko <andy.shevchenko@gmail.com>
So with the above fixed I can apply your reviewed-by to the entire series?
Regards,
Hans
next prev parent reply other threads:[~2018-02-26 11:19 UTC|newest]
Thread overview: 17+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-02-26 9:09 Hans de Goede
2018-02-26 9:09 ` [PATCH v3 01/12] drivers: base: Unified device connection lookup Hans de Goede
2018-02-26 9:09 ` [PATCH v3 02/12] usb: typec: Start using ERR_PTR Hans de Goede
2018-02-26 9:09 ` [PATCH v3 03/12] usb: typec: API for controlling USB Type-C Multiplexers Hans de Goede
2018-02-26 9:09 ` [PATCH v3 04/12] usb: common: Small class for USB role switches Hans de Goede
2018-02-26 9:09 ` [PATCH v3 05/12] usb: typec: tcpm: Set USB role switch to device mode when configured as such Hans de Goede
2018-02-26 9:09 ` [PATCH v3 06/12] usb: typec: tcpm: Use new Type-C switch/mux and usb-role-switch functions Hans de Goede
2018-02-26 9:09 ` [PATCH v3 07/12] xhci: Add option to get next extended capability in list by passing id = 0 Hans de Goede
2018-02-26 9:09 ` [PATCH v3 08/12] xhci: Add Intel extended cap / otg phy mux handling Hans de Goede
2018-02-26 9:09 ` [PATCH v3 09/12] usb: roles: Add Intel xHCI USB role switch driver Hans de Goede
2018-02-26 11:42 ` Heikki Krogerus
2018-02-26 9:09 ` [PATCH v3 10/12] usb: typec: driver for Pericom PI3USB30532 Type-C cross switch Hans de Goede
2018-02-26 9:09 ` [PATCH v3 11/12] platform/x86: intel_cht_int33fe: Add device connections for the Type-C port Hans de Goede
2018-02-26 9:09 ` [PATCH v3 12/12] extcon: axp288: Set USB role where necessary Hans de Goede
2018-02-26 10:59 ` [PATCH v3 00/12] USB Type-C device-connection, mux and switch support Andy Shevchenko
2018-02-26 11:19 ` Hans de Goede [this message]
2018-02-26 11:39 ` Andy Shevchenko
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=f8fc1193-2057-497f-3494-aeef437f1341@redhat.com \
--to=hdegoede@redhat.com \
--cc=andy.shevchenko@gmail.com \
--cc=andy@infradead.org \
--cc=cw00.choi@samsung.com \
--cc=dvhart@infradead.org \
--cc=gregkh@linuxfoundation.org \
--cc=heikki.krogerus@linux.intel.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-usb@vger.kernel.org \
--cc=linux@roeck-us.net \
--cc=mathias.nyman@intel.com \
--cc=myungjoo.ham@samsung.com \
--cc=platform-driver-x86@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®