summaryrefslogtreecommitdiff
path: root/drivers/usb/typec/class.c
diff options
context:
space:
mode:
authorHeikki Krogerus <heikki.krogerus@linux.intel.com>2020-03-02 16:53:46 +0300
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2020-03-04 13:11:52 +0300
commit774a9df6aeac236282dc0ec711b73865b64ef6a1 (patch)
treeabfc37c5004516b465bc0a90aa507ca1213c1fea /drivers/usb/typec/class.c
parentef441dd6af91e1f4265e890021ac3ad631b2b10e (diff)
downloadlinux-774a9df6aeac236282dc0ec711b73865b64ef6a1.tar.xz
usb: typec: mux: Add helpers for setting the mux state
Adding helpers typec_switch_set() and typec_mux_set() that simply call the ->set callback function of the mux. These functions make it possible to set the mux states also from outside the class code. Signed-off-by: Heikki Krogerus <heikki.krogerus@linux.intel.com> Link: https://lore.kernel.org/r/20200302135353.56659-3-heikki.krogerus@linux.intel.com Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'drivers/usb/typec/class.c')
-rw-r--r--drivers/usb/typec/class.c10
1 files changed, 4 insertions, 6 deletions
diff --git a/drivers/usb/typec/class.c b/drivers/usb/typec/class.c
index bf97c31d0bba..2a33ff159d04 100644
--- a/drivers/usb/typec/class.c
+++ b/drivers/usb/typec/class.c
@@ -1510,11 +1510,9 @@ int typec_set_orientation(struct typec_port *port,
{
int ret;
- if (port->sw) {
- ret = port->sw->set(port->sw, orientation);
- if (ret)
- return ret;
- }
+ ret = typec_switch_set(port->sw, orientation);
+ if (ret)
+ return ret;
port->orientation = orientation;
sysfs_notify(&port->dev.kobj, NULL, "orientation");
@@ -1550,7 +1548,7 @@ int typec_set_mode(struct typec_port *port, int mode)
state.mode = mode;
- return port->mux ? port->mux->set(port->mux, &state) : 0;
+ return typec_mux_set(port->mux, &state);
}
EXPORT_SYMBOL_GPL(typec_set_mode);