diff mbox series

[v4,3/4] usb: typec: mux: add "compatible" property for switch match

Message ID 1603098195-9923-3-git-send-email-jun.li@nxp.com
State Superseded
Headers show
Series [v4,1/4] dt-bindings: usb: add documentation for typec switch simple driver | expand

Commit Message

Jun Li Oct. 19, 2020, 9:03 a.m. UTC
For those need a dedicated typec switch simple solution driver,
use compatible property for matching.

Signed-off-by: Li Jun <jun.li@nxp.com>
---
New patch for v4.

 drivers/usb/typec/mux.c | 7 ++++---
 1 file changed, 4 insertions(+), 3 deletions(-)

Comments

Peter Chen Oct. 20, 2020, 6:05 a.m. UTC | #1
On 20-10-19 17:03:14, Li Jun wrote:
> For those need a dedicated typec switch simple solution driver,

> use compatible property for matching.

> 

> Signed-off-by: Li Jun <jun.li@nxp.com>

> ---

> New patch for v4.

> 

>  drivers/usb/typec/mux.c | 7 ++++---

>  1 file changed, 4 insertions(+), 3 deletions(-)

> 

> diff --git a/drivers/usb/typec/mux.c b/drivers/usb/typec/mux.c

> index 52ad277..3da17d1 100644

> --- a/drivers/usb/typec/mux.c

> +++ b/drivers/usb/typec/mux.c

> @@ -39,7 +39,8 @@ static void *typec_switch_match(struct device_connection *con, int ep,

>  {

>  	struct device *dev;

>  

> -	if (con->id && !fwnode_property_present(con->fwnode, con->id))

> +	if (con->id && !fwnode_is_compatible(con->fwnode, con->id) &&

> +		       !fwnode_property_present(con->fwnode, con->id))

>  		return NULL;


If property is not present, should not fwnode_is_compatible return NULL?

Peter

>  

>  	dev = class_find_device(&typec_mux_class, NULL, con->fwnode,

> @@ -61,8 +62,8 @@ struct typec_switch *fwnode_typec_switch_get(struct fwnode_handle *fwnode)

>  {

>  	struct typec_switch *sw;

>  

> -	sw = fwnode_connection_find_match(fwnode, "orientation-switch", NULL,

> -					  typec_switch_match);

> +	sw = fwnode_connection_find_match(fwnode, "typec-orientation-switch",

> +					  NULL, typec_switch_match);

>  	if (!IS_ERR_OR_NULL(sw))

>  		WARN_ON(!try_module_get(sw->dev.parent->driver->owner));

>  

> -- 

> 2.7.4

> 


-- 

Thanks,
Peter Chen
diff mbox series

Patch

diff --git a/drivers/usb/typec/mux.c b/drivers/usb/typec/mux.c
index 52ad277..3da17d1 100644
--- a/drivers/usb/typec/mux.c
+++ b/drivers/usb/typec/mux.c
@@ -39,7 +39,8 @@  static void *typec_switch_match(struct device_connection *con, int ep,
 {
 	struct device *dev;
 
-	if (con->id && !fwnode_property_present(con->fwnode, con->id))
+	if (con->id && !fwnode_is_compatible(con->fwnode, con->id) &&
+		       !fwnode_property_present(con->fwnode, con->id))
 		return NULL;
 
 	dev = class_find_device(&typec_mux_class, NULL, con->fwnode,
@@ -61,8 +62,8 @@  struct typec_switch *fwnode_typec_switch_get(struct fwnode_handle *fwnode)
 {
 	struct typec_switch *sw;
 
-	sw = fwnode_connection_find_match(fwnode, "orientation-switch", NULL,
-					  typec_switch_match);
+	sw = fwnode_connection_find_match(fwnode, "typec-orientation-switch",
+					  NULL, typec_switch_match);
 	if (!IS_ERR_OR_NULL(sw))
 		WARN_ON(!try_module_get(sw->dev.parent->driver->owner));