Message ID | 20230607193328.3359487-1-pholla@chromium.org (mailing list archive) |
---|---|
State | Accepted |
Commit | 92c9c3baad6b1fd584fbabeaa4756f9b77926cb5 |
Headers | show |
Series | [v2] usb: typec: Fix fast_role_swap_current show function | expand |
On Wed, Jun 07, 2023 at 07:33:26PM +0000, Pavan Holla wrote: > The current implementation mistakenly performs a & operation on > the output of sysfs_emit. This patch performs the & operation before > calling sysfs_emit. > > Fixes: 662a60102c12 ("usb: typec: Separate USB Power Delivery from USB Type-C") > Reported-by: Benson Leung <bleung@chromium.org> > Signed-off-by: Pavan Holla <pholla@chromium.org> Reviewed-by: Heikki Krogerus <heikki.krogerus@linux.intel.com> > --- > drivers/usb/typec/pd.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/drivers/usb/typec/pd.c b/drivers/usb/typec/pd.c > index 0bcde1ff4d39..8cc66e4467c4 100644 > --- a/drivers/usb/typec/pd.c > +++ b/drivers/usb/typec/pd.c > @@ -95,7 +95,7 @@ peak_current_show(struct device *dev, struct device_attribute *attr, char *buf) > static ssize_t > fast_role_swap_current_show(struct device *dev, struct device_attribute *attr, char *buf) > { > - return sysfs_emit(buf, "%u\n", to_pdo(dev)->pdo >> PDO_FIXED_FRS_CURR_SHIFT) & 3; > + return sysfs_emit(buf, "%u\n", (to_pdo(dev)->pdo >> PDO_FIXED_FRS_CURR_SHIFT) & 3); > } > static DEVICE_ATTR_RO(fast_role_swap_current); > > -- > 2.41.0.rc0.172.g3f132b7071-goog
Hi Pavan, On Wed, Jun 7, 2023 at 12:33 PM Pavan Holla <pholla@chromium.org> wrote: > > The current implementation mistakenly performs a & operation on > the output of sysfs_emit. This patch performs the & operation before > calling sysfs_emit. > > Fixes: 662a60102c12 ("usb: typec: Separate USB Power Delivery from USB Type-C") > Reported-by: Benson Leung <bleung@chromium.org> > Signed-off-by: Pavan Holla <pholla@chromium.org> Reviewed-by: Benson Leung <bleung@chromium.org> > --- > drivers/usb/typec/pd.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/drivers/usb/typec/pd.c b/drivers/usb/typec/pd.c > index 0bcde1ff4d39..8cc66e4467c4 100644 > --- a/drivers/usb/typec/pd.c > +++ b/drivers/usb/typec/pd.c > @@ -95,7 +95,7 @@ peak_current_show(struct device *dev, struct device_attribute *attr, char *buf) > static ssize_t > fast_role_swap_current_show(struct device *dev, struct device_attribute *attr, char *buf) > { > - return sysfs_emit(buf, "%u\n", to_pdo(dev)->pdo >> PDO_FIXED_FRS_CURR_SHIFT) & 3; > + return sysfs_emit(buf, "%u\n", (to_pdo(dev)->pdo >> PDO_FIXED_FRS_CURR_SHIFT) & 3); > } > static DEVICE_ATTR_RO(fast_role_swap_current); > > -- > 2.41.0.rc0.172.g3f132b7071-goog >
On Wed, Jun 7, 2023 at 12:33 PM Pavan Holla <pholla@chromium.org> wrote: > > The current implementation mistakenly performs a & operation on > the output of sysfs_emit. This patch performs the & operation before > calling sysfs_emit. > > Fixes: 662a60102c12 ("usb: typec: Separate USB Power Delivery from USB Type-C") > Reported-by: Benson Leung <bleung@chromium.org> > Signed-off-by: Pavan Holla <pholla@chromium.org> Reviewed-by: Prashant Malani <pmalani@chromium.org>
diff --git a/drivers/usb/typec/pd.c b/drivers/usb/typec/pd.c index 0bcde1ff4d39..8cc66e4467c4 100644 --- a/drivers/usb/typec/pd.c +++ b/drivers/usb/typec/pd.c @@ -95,7 +95,7 @@ peak_current_show(struct device *dev, struct device_attribute *attr, char *buf) static ssize_t fast_role_swap_current_show(struct device *dev, struct device_attribute *attr, char *buf) { - return sysfs_emit(buf, "%u\n", to_pdo(dev)->pdo >> PDO_FIXED_FRS_CURR_SHIFT) & 3; + return sysfs_emit(buf, "%u\n", (to_pdo(dev)->pdo >> PDO_FIXED_FRS_CURR_SHIFT) & 3); } static DEVICE_ATTR_RO(fast_role_swap_current);
The current implementation mistakenly performs a & operation on the output of sysfs_emit. This patch performs the & operation before calling sysfs_emit. Fixes: 662a60102c12 ("usb: typec: Separate USB Power Delivery from USB Type-C") Reported-by: Benson Leung <bleung@chromium.org> Signed-off-by: Pavan Holla <pholla@chromium.org> --- drivers/usb/typec/pd.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)