Lines Matching refs:mux_dev
353 struct typec_mux_dev *mux_dev;
360 mux_dev = mux->mux_devs[i];
361 module_put(mux_dev->dev.parent->driver->owner);
362 put_device(&mux_dev->dev);
370 struct typec_mux_dev *mux_dev;
378 mux_dev = mux->mux_devs[i];
380 ret = mux_dev->set(mux_dev, state);
412 struct typec_mux_dev *mux_dev;
418 mux_dev = kzalloc(sizeof(*mux_dev), GFP_KERNEL);
419 if (!mux_dev)
422 mux_dev->set = desc->set;
424 device_initialize(&mux_dev->dev);
425 mux_dev->dev.parent = parent;
426 mux_dev->dev.fwnode = desc->fwnode;
427 mux_dev->dev.class = &typec_mux_class;
428 mux_dev->dev.type = &typec_mux_dev_type;
429 mux_dev->dev.driver_data = desc->drvdata;
430 ret = dev_set_name(&mux_dev->dev, "%s-mux", desc->name ? desc->name : dev_name(parent));
432 put_device(&mux_dev->dev);
436 ret = device_add(&mux_dev->dev);
439 put_device(&mux_dev->dev);
443 return mux_dev;
449 * @mux_dev: USB Type-C Connector Multiplexer/DeMultiplexer
453 void typec_mux_unregister(struct typec_mux_dev *mux_dev)
455 if (!IS_ERR_OR_NULL(mux_dev))
456 device_unregister(&mux_dev->dev);
460 void typec_mux_set_drvdata(struct typec_mux_dev *mux_dev, void *data)
462 dev_set_drvdata(&mux_dev->dev, data);
466 void *typec_mux_get_drvdata(struct typec_mux_dev *mux_dev)
468 return dev_get_drvdata(&mux_dev->dev);