All of lore.kernel.org
 help / color / mirror / Atom feed
From: Heikki Krogerus <heikki.krogerus@linux.intel.com>
To: Badhri Jagan Sridharan <badhri@google.com>,
	Oliver Neukum <oneukum@suse.com>
Cc: Guenter Roeck <linux@roeck-us.net>,
	Mats Karrman <mats.dev.list@gmail.com>,
	Greg KH <gregkh@linuxfoundation.org>,
	Felipe Balbi <felipe.balbi@linux.intel.com>,
	LKML <linux-kernel@vger.kernel.org>,
	USB <linux-usb@vger.kernel.org>
Subject: Re: [PATCH v17 2/3] usb: USB Type-C connector class
Date: Wed, 19 Apr 2017 14:23:23 +0300	[thread overview]
Message-ID: <20170419112323.GD24062@kuha.fi.intel.com> (raw)
In-Reply-To: <CAPTae5+O83bJm6KL2zWNhYv-SiZ2E490CLt02BbK4hG1xKXraw@mail.gmail.com>

Hi,

On Tue, Apr 18, 2017 at 11:52:33AM -0700, Badhri Jagan Sridharan wrote:
> Hi Heikki,
> 
> I have a question regarding the preferred_role node.
> 
> +What:          /sys/class/typec/<port>/preferred_role
> +Date:          March 2017
> +Contact:       Heikki Krogerus <heikki.krogerus@linux.intel.com>
> +Description:
> +               The user space can notify the driver about the preferred role.
> +               It should be handled as enabling of Try.SRC or Try.SNK, as
> +               defined in USB Type-C specification, in the port drivers. By
> +               default the preferred role should come from the platform.
> +
> +               Valid values: source, sink, none (to remove preference)
> 
> What is the expected behavior when the userspace changes the
> preferred_role node when the port is in connected state ?
> 
> 1.  the state machine re-resolves the port roles right away based on
> the new state machine in place ? (or)

No! There are separate attributes for sending role swap requests.

The attribute will "enable" Try.SRC/SNK states, i.e. next time the
state machine is executed, those states need to be considered.
Changing the value of this attribute must not affect the current
connection.

> 2. Wait till the subsequent connect for resolving port roles based on the
> new state machine.

Yes.

> For #1 to happen the policy_engine layer would have to reset the port
> to resolve the port roles based on the (Try.SRC /Try.SNK/ Default)
> new state machine preference.
> 
> Say for example when two non-PD devices following none (default state
> machine) are connected, the port role resolution is going to be random.
> But, if the userspace in one of the devices later changes the
> preferred_role to source, then that device is most likely to become source
> if the Try.SRC state-machine is re-run.
> 
> Does the above question fall under a policy decision ? If so, should there
> be another node to say if the port roles have to re-resolved  based on the
> new state machine right away ?

I don't think we should even consider option #1, but just to be sure,
Oliver, what do you say?

I guess we need to say in the documentation explicitly that changing
the value will not affect the current connection.


Thanks,

-- 
heikki

  reply	other threads:[~2017-04-19 11:25 UTC|newest]

Thread overview: 64+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-02-21 14:24 [PATCH v17 0/3] USB Type-C Connector class Heikki Krogerus
2017-02-21 14:24 ` [PATCH v17 1/3] lib/string: add sysfs_match_string helper Heikki Krogerus
2017-02-21 14:24 ` [PATCH v17 2/3] usb: USB Type-C connector class Heikki Krogerus
2017-03-02 15:22   ` Mats Karrman
2017-03-03  3:13     ` Guenter Roeck
2017-03-03  7:29       ` Mats Karrman
2017-03-03  9:48         ` Enric Balletbo Serra
2017-03-03 12:59         ` Heikki Krogerus
2017-03-03 14:49           ` Guenter Roeck
2017-03-03 19:27           ` Mats Karrman
2017-03-06  9:37             ` Oliver Neukum
2017-03-06 13:14             ` Heikki Krogerus
2017-03-07 22:30               ` Mats Karrman
2017-03-08  1:38                 ` Guenter Roeck
2017-04-08 23:09                   ` USB Type-C Port Manager API concern Mats Karrman
2017-04-09 15:16                     ` Guenter Roeck
2017-04-09 21:05                       ` Mats Karrman
2017-04-14  2:57                         ` Guenter Roeck
2017-04-14  8:30                           ` Mats Karrman
2017-03-08 13:58                 ` [PATCH v17 2/3] usb: USB Type-C connector class Heikki Krogerus
2017-03-10 22:22                   ` Mats Karrman
2017-03-10 23:41                     ` Guenter Roeck
2017-04-18 18:52                       ` Badhri Jagan Sridharan
2017-04-19 11:23                         ` Heikki Krogerus [this message]
2017-04-19 14:45                           ` Badhri Jagan Sridharan
2017-04-19 15:14                             ` Guenter Roeck
2017-04-19 17:22                               ` Badhri Jagan Sridharan
2017-04-19 19:29                                 ` Guenter Roeck
2017-04-20 12:24                                 ` Heikki Krogerus
2017-04-20 19:46                                   ` Badhri Jagan Sridharan
2017-04-21 12:12                                     ` Heikki Krogerus
2017-04-21 13:14                                       ` Guenter Roeck
2017-04-21 14:27                                     ` Rajaram R
2017-04-21 16:43                                       ` Guenter Roeck
2017-04-22  9:23                                         ` Rajaram R
2017-04-24 17:50                                           ` Badhri Jagan Sridharan
2017-04-25  8:26                                             ` Rajaram R
2017-04-25 14:10                                               ` Guenter Roeck
2017-04-27  6:20                                                 ` Rajaram R
2017-04-27 18:10                                                   ` Guenter Roeck
2017-04-28 10:52                                                     ` Heikki Krogerus
2017-04-20 11:55                             ` Heikki Krogerus
2017-03-03 14:41         ` Guenter Roeck
2017-03-03  3:35   ` Peter Chen
2017-03-03  4:29     ` Guenter Roeck
2017-03-03  4:52       ` Peter Chen
2017-03-03 14:36         ` Guenter Roeck
2017-03-06  1:24           ` Peter Chen
2017-03-03 14:31     ` Heikki Krogerus
2017-03-06  1:15       ` Peter Chen
2017-03-06 13:16         ` Heikki Krogerus
2017-03-07  1:36           ` Peter Chen
2017-03-07  8:57             ` Heikki Krogerus
2017-03-08  1:53               ` Guenter Roeck
2017-03-08  6:50                 ` Peter Chen
2017-03-08 14:44                   ` Guenter Roeck
2017-03-09  2:00                     ` Peter Chen
2017-02-21 14:24 ` [PATCH v17 3/3] usb: typec: add driver for Intel Whiskey Cove PMIC USB Type-C PHY Heikki Krogerus
2017-02-21 15:42 ` [PATCH v17 0/3] USB Type-C Connector class Felipe Balbi
2017-03-21 11:14   ` Heikki Krogerus
2017-03-21 10:23 ` Greg KH
2017-03-21 10:37   ` Heikki Krogerus
2017-03-22 21:15     ` Mats Karrman
2017-03-23  8:16       ` Heikki Krogerus

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=20170419112323.GD24062@kuha.fi.intel.com \
    --to=heikki.krogerus@linux.intel.com \
    --cc=badhri@google.com \
    --cc=felipe.balbi@linux.intel.com \
    --cc=gregkh@linuxfoundation.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-usb@vger.kernel.org \
    --cc=linux@roeck-us.net \
    --cc=mats.dev.list@gmail.com \
    --cc=oneukum@suse.com \
    /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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.