devicetree.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Jun Li <jun.li@nxp.com>
To: Heikki Krogerus <heikki.krogerus@linux.intel.com>,
	Mats Karrman <mats.dev.list@gmail.com>
Cc: "robh+dt@kernel.org" <robh+dt@kernel.org>,
	"gregkh@linuxfoundation.org" <gregkh@linuxfoundation.org>,
	"linux@roeck-us.net" <linux@roeck-us.net>,
	"a.hajda@samsung.com" <a.hajda@samsung.com>,
	"cw00.choi@samsung.com" <cw00.choi@samsung.com>,
	"shufan_lee@richtek.com" <shufan_lee@richtek.com>,
	Peter Chen <peter.chen@nxp.com>,
	"gsomlo@gmail.com" <gsomlo@gmail.com>,
	"devicetree@vger.kernel.org" <devicetree@vger.kernel.org>,
	"linux-usb@vger.kernel.org" <linux-usb@vger.kernel.org>,
	dl-linux-imx <linux-imx@nxp.com>
Subject: RE: [PATCH v5 05/14] usb: typec: add API to get typec basic port power and data config
Date: Thu, 17 May 2018 14:05:41 +0000	[thread overview]
Message-ID: <VI1PR0402MB39179F63BCF3E605443D877389910@VI1PR0402MB3917.eurprd04.prod.outlook.com> (raw)
In-Reply-To: <20180517123506.GF11469@kuha.fi.intel.com>

Hi Heikki,

> > I reread this patch and tried to see it more in the context of the
> > other patches and the existing code. The naming of the existing string
> > tables doesn't help in getting this right, however I have a proposal:
> >
> > typec_find_port_power_role() to get to TYPEC_PORT_SRC/SNK/DRP
> > typec_find_port_data_role() to get to TYPEC_PORT_DFP/UFP/DRD
> > typec_find_power_role() to get to TYPEC_SINK/SOURCE
> >
> > and sometime, if the use should arise
> >
> > typec_find_data_role() to get to TYPEC_DEVICE/HOST
> >
> > I think it is fairly comprehensible, *_port_* concerns a capability
> > and without *_port_* it is an actual state. Plus it matches the names
> > of the constants.
> 
> Well, there are now four things to consider:
> 
> 1) the roles (power and data) the port is capable of supporting
> 2) Try.SRC and Try.SNK, i.e. the preferred role
> 3) the current roles
> 4) the role(s) the user want's to limit the use of a port with DRP ports
> 
> The last one I don't know if it's relevant with these functions. It's not
> information that we would get for example from firmware.
> 
> I also don't think we need to use these functions with the current roles the port
> is in.
> 
> If the preferred role is "sink" or "source", so just like the power role, we don't
> need separate function for it here.
> 
> So isn't two functions all we need here: one for the power and one for data
> role?

Take power as an example, can we use one function to only look up
typec_port_types[]? as capability(typec_port_type) and state(typec_role)
are different enum, and the allowed strings are different.

static const char * const typec_roles[] = {
	[TYPEC_SINK]    = "sink",
	[TYPEC_SOURCE]  = "source",
};

static const char * const typec_port_types[] = {
	[TYPEC_PORT_SRC] = "source",
	[TYPEC_PORT_SNK] = "sink",
	[TYPEC_PORT_DRP] = "dual",
};

Thanks
Li Jun
> 
> 
> Thanks,
> 
> --
> heikki

  reply	other threads:[~2018-05-17 14:05 UTC|newest]

Thread overview: 50+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-05-03  0:24 [PATCH v5 00/14] staging: typec: tcpci: move out of staging Li Jun
2018-05-03  0:24 ` [PATCH v5 01/14] dt-bindings: connector: add properties for typec Li Jun
2018-05-03  7:27   ` Oliver Neukum
2018-05-03  8:35     ` Jun Li
2018-05-03  9:17       ` Oliver Neukum
2018-05-04  8:59         ` Jun Li
2018-05-08 10:03           ` Oliver Neukum
2018-05-10  0:43             ` Jun Li
2018-05-07 15:58   ` Rob Herring
2018-05-08  5:36     ` Jun Li
2018-05-11 19:49   ` Mats Karrman
2018-05-14  9:06     ` Jun Li
2018-05-16  7:21   ` Peter Chen
2018-05-17 13:16     ` Jun Li
2018-05-03  0:24 ` [PATCH v5 02/14] dt-bindings: usb: add documentation for typec port controller(TCPCI) Li Jun
2018-05-07 16:01   ` Rob Herring
2018-05-03  0:24 ` [PATCH v5 03/14] staging: typec: tcpci: add compatible string for nxp ptn5110 Li Jun
2018-05-11 19:51   ` Mats Karrman
2018-05-14  9:15     ` Jun Li
2018-05-03  0:24 ` [PATCH v5 04/14] usb: typec: add fwnode to tcpc Li Jun
2018-05-03  0:24 ` [PATCH v5 05/14] usb: typec: add API to get typec basic port power and data config Li Jun
2018-05-11 19:55   ` Mats Karrman
2018-05-14  9:36     ` Jun Li
2018-05-15 20:52       ` Mats Karrman
2018-05-16 12:25         ` Heikki Krogerus
2018-05-16 20:55           ` Mats Karrman
2018-05-17 12:35             ` Heikki Krogerus
2018-05-17 14:05               ` Jun Li [this message]
2018-05-17 14:24                 ` Heikki Krogerus
2018-05-17 14:41                   ` Jun Li
2018-05-21 13:12                     ` Heikki Krogerus
2018-05-22 14:19                       ` Jun Li
2018-05-17 13:53             ` Jun Li
2018-05-17 13:26           ` Jun Li
2018-05-17 13:16         ` Jun Li
2018-05-03  0:24 ` [PATCH v5 06/14] usb: typec: tcpm: support get typec and pd config from device properties Li Jun
2018-05-03  0:24 ` [PATCH v5 07/14] staging: typec: tcpci: remove unused tcpci_tcpc_config Li Jun
2018-05-03  0:24 ` [PATCH v5 08/14] staging: typec: tcpci: register port before request irq Li Jun
2018-05-03  8:29   ` Sergei Shtylyov
2018-05-03  8:34     ` Sergei Shtylyov
2018-05-03  0:24 ` [PATCH v5 09/14] staging: typec: tcpci: enable vbus detection Li Jun
2018-05-03  0:24 ` [PATCH v5 10/14] typec: tcpm: add starting value for drp toggling Li Jun
2018-05-03  0:24 ` [PATCH v5 11/14] usb: typec: tcpm: set cc for drp toggling attach Li Jun
2018-05-03  0:24 ` [PATCH v5 12/14] staging: typec: tcpci: keep the not connecting cc line open Li Jun
2018-05-16  8:35   ` Peter Chen
2018-05-17 13:17     ` Jun Li
2018-05-03  0:24 ` [PATCH v5 13/14] staging: typec: tcpci: Only touch target bit when enable vconn Li Jun
2018-05-03  0:24 ` [PATCH v5 14/14] staging: typec: tcpci: move tcpci driver out of staging Li Jun
2018-05-11 21:37   ` Mats Karrman
2018-05-14  9:38     ` Jun Li

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=VI1PR0402MB39179F63BCF3E605443D877389910@VI1PR0402MB3917.eurprd04.prod.outlook.com \
    --to=jun.li@nxp.com \
    --cc=a.hajda@samsung.com \
    --cc=cw00.choi@samsung.com \
    --cc=devicetree@vger.kernel.org \
    --cc=gregkh@linuxfoundation.org \
    --cc=gsomlo@gmail.com \
    --cc=heikki.krogerus@linux.intel.com \
    --cc=linux-imx@nxp.com \
    --cc=linux-usb@vger.kernel.org \
    --cc=linux@roeck-us.net \
    --cc=mats.dev.list@gmail.com \
    --cc=peter.chen@nxp.com \
    --cc=robh+dt@kernel.org \
    --cc=shufan_lee@richtek.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).