Message ID | 20220127191659.3560810-1-pmalani@chromium.org (mailing list archive) |
---|---|
State | Accepted |
Commit | 53eeb07381f2fa426807df6a68fc580b8463dae4 |
Headers | show |
Series | platform/chrome: cros_ec_typec: Make try power role optional | expand |
Hi Prashant, On Thu, Jan 27, 2022 at 07:16:59PM +0000, Prashant Malani wrote: > Some boards prefer not to specify a try-power-role. Update the port > property parsing logic to not error out in case a try-power-role is not > specified. > > Cc: Heikki Krogerus <heikki.krogerus@linux.intel.com> > Signed-off-by: Prashant Malani <pmalani@chromium.org> This looks good to me. Heikki, if this usage of TYPEC_NO_PREFERRED_ROLE looks good to you, I can merge it. Benson > --- > drivers/platform/chrome/cros_ec_typec.c | 15 ++++++++------- > 1 file changed, 8 insertions(+), 7 deletions(-) > > diff --git a/drivers/platform/chrome/cros_ec_typec.c b/drivers/platform/chrome/cros_ec_typec.c > index 5de0bfb0bc4d..ee12658009e5 100644 > --- a/drivers/platform/chrome/cros_ec_typec.c > +++ b/drivers/platform/chrome/cros_ec_typec.c > @@ -115,17 +115,18 @@ static int cros_typec_parse_port_props(struct typec_capability *cap, > return ret; > cap->data = ret; > > + /* Try-power-role is optional. */ > ret = fwnode_property_read_string(fwnode, "try-power-role", &buf); > if (ret) { > - dev_err(dev, "try-power-role not found: %d\n", ret); > - return ret; > + dev_warn(dev, "try-power-role not found: %d\n", ret); > + cap->prefer_role = TYPEC_NO_PREFERRED_ROLE; > + } else { > + ret = typec_find_power_role(buf); > + if (ret < 0) > + return ret; > + cap->prefer_role = ret; > } > > - ret = typec_find_power_role(buf); > - if (ret < 0) > - return ret; > - cap->prefer_role = ret; > - > cap->fwnode = fwnode; > > return 0; > -- > 2.35.0.rc0.227.g00780c9af4-goog >
Hi, On Thu, Jan 27, 2022 at 10:20:52PM -0800, Benson Leung wrote: > Hi Prashant, > > On Thu, Jan 27, 2022 at 07:16:59PM +0000, Prashant Malani wrote: > > Some boards prefer not to specify a try-power-role. Update the port > > property parsing logic to not error out in case a try-power-role is not > > specified. > > > > Cc: Heikki Krogerus <heikki.krogerus@linux.intel.com> > > Signed-off-by: Prashant Malani <pmalani@chromium.org> > > This looks good to me. > > Heikki, if this usage of TYPEC_NO_PREFERRED_ROLE looks good to you, I can > merge it. This is OK by me. FWIW: Acked-by: Heikki Krogerus <heikki.krogerus@linux.intel.com> thanks, > > --- > > drivers/platform/chrome/cros_ec_typec.c | 15 ++++++++------- > > 1 file changed, 8 insertions(+), 7 deletions(-) > > > > diff --git a/drivers/platform/chrome/cros_ec_typec.c b/drivers/platform/chrome/cros_ec_typec.c > > index 5de0bfb0bc4d..ee12658009e5 100644 > > --- a/drivers/platform/chrome/cros_ec_typec.c > > +++ b/drivers/platform/chrome/cros_ec_typec.c > > @@ -115,17 +115,18 @@ static int cros_typec_parse_port_props(struct typec_capability *cap, > > return ret; > > cap->data = ret; > > > > + /* Try-power-role is optional. */ > > ret = fwnode_property_read_string(fwnode, "try-power-role", &buf); > > if (ret) { > > - dev_err(dev, "try-power-role not found: %d\n", ret); > > - return ret; > > + dev_warn(dev, "try-power-role not found: %d\n", ret); > > + cap->prefer_role = TYPEC_NO_PREFERRED_ROLE; > > + } else { > > + ret = typec_find_power_role(buf); > > + if (ret < 0) > > + return ret; > > + cap->prefer_role = ret; > > } > > > > - ret = typec_find_power_role(buf); > > - if (ret < 0) > > - return ret; > > - cap->prefer_role = ret; > > - > > cap->fwnode = fwnode; > > > > return 0;
diff --git a/drivers/platform/chrome/cros_ec_typec.c b/drivers/platform/chrome/cros_ec_typec.c index 5de0bfb0bc4d..ee12658009e5 100644 --- a/drivers/platform/chrome/cros_ec_typec.c +++ b/drivers/platform/chrome/cros_ec_typec.c @@ -115,17 +115,18 @@ static int cros_typec_parse_port_props(struct typec_capability *cap, return ret; cap->data = ret; + /* Try-power-role is optional. */ ret = fwnode_property_read_string(fwnode, "try-power-role", &buf); if (ret) { - dev_err(dev, "try-power-role not found: %d\n", ret); - return ret; + dev_warn(dev, "try-power-role not found: %d\n", ret); + cap->prefer_role = TYPEC_NO_PREFERRED_ROLE; + } else { + ret = typec_find_power_role(buf); + if (ret < 0) + return ret; + cap->prefer_role = ret; } - ret = typec_find_power_role(buf); - if (ret < 0) - return ret; - cap->prefer_role = ret; - cap->fwnode = fwnode; return 0;
Some boards prefer not to specify a try-power-role. Update the port property parsing logic to not error out in case a try-power-role is not specified. Cc: Heikki Krogerus <heikki.krogerus@linux.intel.com> Signed-off-by: Prashant Malani <pmalani@chromium.org> --- drivers/platform/chrome/cros_ec_typec.c | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-)