Lines Matching refs:muxc
319 static int pca954x_select_chan(struct i2c_mux_core *muxc, u32 chan)
321 struct pca954x *data = i2c_mux_priv(muxc);
329 ret = pca954x_reg_write(muxc->parent, client, regval);
336 static int pca954x_deselect_mux(struct i2c_mux_core *muxc, u32 chan)
338 struct pca954x *data = i2c_mux_priv(muxc);
345 return pca954x_select_chan(muxc, idle_state);
350 return pca954x_reg_write(muxc->parent, client,
364 struct i2c_mux_core *muxc = i2c_get_clientdata(client);
365 struct pca954x *data = i2c_mux_priv(muxc);
375 struct i2c_mux_core *muxc = i2c_get_clientdata(client);
376 struct pca954x *data = i2c_mux_priv(muxc);
388 i2c_lock_bus(muxc->parent, I2C_LOCK_SEGMENT);
396 ret = pca954x_deselect_mux(muxc, 0);
398 i2c_unlock_bus(muxc->parent, I2C_LOCK_SEGMENT);
434 static int pca954x_irq_setup(struct i2c_mux_core *muxc)
436 struct pca954x *data = i2c_mux_priv(muxc);
464 static void pca954x_cleanup(struct i2c_mux_core *muxc)
466 struct pca954x *data = i2c_mux_priv(muxc);
478 i2c_mux_del_adapters(muxc);
561 struct i2c_mux_core *muxc;
569 muxc = i2c_mux_alloc(adap, dev, PCA954X_MAX_NCHANS, sizeof(*data), 0,
571 if (!muxc)
573 data = i2c_mux_priv(muxc);
575 i2c_set_clientdata(client, muxc);
640 ret = pca954x_irq_setup(muxc);
646 ret = i2c_mux_add_adapter(muxc, 0, num);
673 pca954x_cleanup(muxc);
679 struct i2c_mux_core *muxc = i2c_get_clientdata(client);
683 pca954x_cleanup(muxc);
689 struct i2c_mux_core *muxc = i2c_get_clientdata(client);
690 struct pca954x *data = i2c_mux_priv(muxc);