RE: [PATCH v3 03/12] usb: typec: add fwnode to tcpc

2018-03-13 Thread Jun Li

> -Original Message-
> From: Heikki Krogerus [mailto:heikki.kroge...@linux.intel.com]
> Sent: 2018年3月13日 19:18
> To: Jun Li 
> Cc: robh...@kernel.org; mark.rutl...@arm.com;
> gre...@linuxfoundation.org; a.ha...@samsung.com; li...@roeck-us.net;
> yue...@google.com; shufan_...@richtek.com; o_leve...@orange.fr;
> linux-usb@vger.kernel.org; dl-linux-imx 
> Subject: Re: [PATCH v3 03/12] usb: typec: add fwnode to tcpc
> 
> Hi Jun Li,
> 
> On Tue, Mar 13, 2018 at 05:34:29PM +0800, Li Jun wrote:
> > Add fwnode handle to get the fwnode so we can get typec configs it
> > contains.
> >
> > Signed-off-by: Heikki Krogerus 
> 
> You should not sign-off patches for other people. If you check section
> 13 from Documentation/process/submitting-patches.rst you'll find definition
> for "Suggested-by" tag. I believe that is the appropriate tag that you should
> using in this case.

You are right, my copy paste mistake, I will correct this.

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


Re: [PATCH v3 03/12] usb: typec: add fwnode to tcpc

2018-03-13 Thread Heikki Krogerus
Hi Jun Li,

On Tue, Mar 13, 2018 at 05:34:29PM +0800, Li Jun wrote:
> Add fwnode handle to get the fwnode so we can get typec configs
> it contains.
> 
> Signed-off-by: Heikki Krogerus 

You should not sign-off patches for other people. If you check section
13 from Documentation/process/submitting-patches.rst you'll find
definition for "Suggested-by" tag. I believe that is the appropriate
tag that you should using in this case.


Thanks,

-- 
heikki
--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[PATCH v3 03/12] usb: typec: add fwnode to tcpc

2018-03-13 Thread Li Jun
Add fwnode handle to get the fwnode so we can get typec configs
it contains.

Signed-off-by: Heikki Krogerus 
Signed-off-by: Li Jun 
---
 drivers/staging/typec/tcpci.c | 14 +++---
 drivers/usb/typec/tcpm.c  |  1 +
 include/linux/usb/tcpm.h  |  2 ++
 3 files changed, 10 insertions(+), 7 deletions(-)

diff --git a/drivers/staging/typec/tcpci.c b/drivers/staging/typec/tcpci.c
index 076d97e..24ad44f 100644
--- a/drivers/staging/typec/tcpci.c
+++ b/drivers/staging/typec/tcpci.c
@@ -10,6 +10,7 @@
 #include 
 #include 
 #include 
+#include 
 #include 
 #include 
 #include 
@@ -463,17 +464,16 @@ static const struct regmap_config tcpci_regmap_config = {
.max_register = 0x7F, /* 0x80 .. 0xFF are vendor defined */
 };
 
-static const struct tcpc_config tcpci_tcpc_config = {
-   .type = TYPEC_PORT_DFP,
-   .default_role = TYPEC_SINK,
-};
-
 static int tcpci_parse_config(struct tcpci *tcpci)
 {
tcpci->controls_vbus = true; /* XXX */
 
-   /* TODO: Populate struct tcpc_config from ACPI/device-tree */
-   tcpci->tcpc.config = &tcpci_tcpc_config;
+   tcpci->tcpc.fwnode = device_get_named_child_node(tcpci->dev,
+"connector");
+   if (!tcpci->tcpc.fwnode) {
+   dev_err(tcpci->dev, "Can't find connector node.\n");
+   return -EINVAL;
+   }
 
return 0;
 }
diff --git a/drivers/usb/typec/tcpm.c b/drivers/usb/typec/tcpm.c
index 3f0851b..7500dc0 100644
--- a/drivers/usb/typec/tcpm.c
+++ b/drivers/usb/typec/tcpm.c
@@ -3735,6 +3735,7 @@ struct tcpm_port *tcpm_register_port(struct device *dev, 
struct tcpc_dev *tcpc)
else
port->try_role = TYPEC_NO_PREFERRED_ROLE;
 
+   port->typec_caps.fwnode = tcpc->fwnode;
port->typec_caps.prefer_role = tcpc->config->default_role;
port->typec_caps.type = tcpc->config->type;
port->typec_caps.data = tcpc->config->data;
diff --git a/include/linux/usb/tcpm.h b/include/linux/usb/tcpm.h
index f0d839d..e2e2db3 100644
--- a/include/linux/usb/tcpm.h
+++ b/include/linux/usb/tcpm.h
@@ -115,6 +115,7 @@ enum tcpc_mux_mode {
 /**
  * struct tcpc_dev - Port configuration and callback functions
  * @config:Pointer to port configuration
+ * @fwnode:Pointer to port fwnode
  * @get_vbus:  Called to read current VBUS state
  * @get_current_limit:
  * Optional; called by the tcpm core when configured as a snk
@@ -143,6 +144,7 @@ enum tcpc_mux_mode {
  */
 struct tcpc_dev {
const struct tcpc_config *config;
+   struct fwnode_handle *fwnode;
 
int (*init)(struct tcpc_dev *dev);
int (*get_vbus)(struct tcpc_dev *dev);
-- 
2.7.4

--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html