Hi Oliver, > > +static ssize_t alternate_mode_store(struct device *dev, > > + struct device_attribute *attr, > > + const char *buf, size_t size) > > +{ > > + struct typec_port *port = to_typec_port(dev); > > + struct typec_alt_mode alt_mode; > > + int ret; > > + > > + if (!port->cap->set_alt_mode) { > > + dev_warn(dev, "entering Alternate Modes not supported\n"); > > + return -EOPNOTSUPP; > > + } > > + > > + if (!port->connected) > > + return -ENXIO; > > Doesn't this need locking? Yes, I need to fix the locking. > And why wouldn't user space want to preselect a mode? That is tricky, as we would need to keep a list of the preselected modes and for all SVIDs the connector supports. I don't think it would be practical to do from this file as we would then use it differently when connected and not connected, so the preselected modes would probable be better to give from a separate file. That is certainly doable, but is it really useful? I not really against adding that support, but I would like to keep this interface as simple as possible. Thanks, -- heikki -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html