lkml.org 
[lkml]   [2017]   [Mar]   [5]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: [PATCH v17 2/3] usb: USB Type-C connector class
    On Fri, Mar 03, 2017 at 06:36:50AM -0800, Guenter Roeck wrote:
    > On 03/02/2017 08:52 PM, Peter Chen wrote:
    > >On Thu, Mar 02, 2017 at 08:29:07PM -0800, Guenter Roeck wrote:
    > >>On 03/02/2017 07:35 PM, Peter Chen wrote:
    > >>>On Tue, Feb 21, 2017 at 05:24:04PM +0300, Heikki Krogerus wrote:
    > >>>>+/* --------------------------------------- */
    > >>>>+/* Driver callbacks to report role updates */
    > >>>>+
    > >>>>+/**
    > >>>>+ * typec_set_data_role - Report data role change
    > >>>>+ * @port: The USB Type-C Port where the role was changed
    > >>>>+ * @role: The new data role
    > >>>>+ *
    > >>>>+ * This routine is used by the port drivers to report data role changes.
    > >>>>+ */
    > >>>>+void typec_set_data_role(struct typec_port *port, enum typec_data_role role)
    > >>>>+{
    > >>>>+ if (port->data_role == role)
    > >>>>+ return;
    > >>>>+
    > >>>>+ port->data_role = role;
    > >>>>+ sysfs_notify(&port->dev.kobj, NULL, "data_role");
    > >>>>+ kobject_uevent(&port->dev.kobj, KOBJ_CHANGE);
    > >>>>+}
    > >>>>+EXPORT_SYMBOL_GPL(typec_set_data_role);
    > >>>>+
    > >>>
    > >>>Hi Keikki,
    > >>>
    > >>>Have you tested this interface with real dual-role controller/board?
    > >>
    > >>If it helps, my primary test system is a HP Chromebook 13 G1.
    > >>
    > >>>What interface you use when you receive this event to handle
    > >>>dual-role switch? I am wonder if a common dual-role class is
    > >>>needed, then we can have a common user utility.
    > >>
    > >>I don't really understand "What interface you use when you receive
    > >>this event". Can you explain ?
    > >>
    > >
    > >I mean "How to trigger kernel USB controller driver do role switch?"
    > >
    >
    > I think this should be handled by the lower level driver. I am wide open
    > to other ideas, though.
    >

    Would you show me how it works at your test system if it is not
    a private thing?

    > >>>
    > >>>Eg, if "data_role" has changed, the udev can echo "data_role" to
    > >>>/sys/class/usb-dual-role/role
    > >>>
    > >>That sounds like a kernel event delivered to user space via udev or
    > >>sysfs notification and returned back into the kernel through a sysfs
    > >>attribute. Do I understand that correctly ?
    > >>
    > >
    > >Yes.
    > >
    >
    > That doesn't sound like a good idea to me, and I don't see a technical reason
    > to require it.
    >

    I don't like it either, but current kernel has no ability to handle it
    except you use hardware signal like extcon-gpio or controller id as
    input pin to SoC handle this event.

    --

    Best Regards,
    Peter Chen

    \
     
     \ /
      Last update: 2017-03-06 02:25    [W:7.342 / U:0.012 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site