Lines Matching refs:slave

62 					  struct sdw_slave *slave,  in _sdw_program_slave_port_params()  argument
83 ret = sdw_write(slave, addr1, t_params->offset2); in _sdw_program_slave_port_params()
90 ret = sdw_write(slave, addr2, t_params->blk_pkg_mode); in _sdw_program_slave_port_params()
107 ret = sdw_write(slave, addr3, wbuf); in _sdw_program_slave_port_params()
117 ret = sdw_write(slave, addr4, wbuf); in _sdw_program_slave_port_params()
130 struct sdw_slave_prop *slave_prop = &s_rt->slave->prop; in sdw_program_slave_port_params()
136 if (s_rt->slave->is_mockup_device) in sdw_program_slave_port_params()
139 dpn_prop = sdw_get_slave_dpn_prop(s_rt->slave, in sdw_program_slave_port_params()
165 ret = sdw_update(s_rt->slave, addr1, 0xF, wbuf); in sdw_program_slave_port_params()
167 dev_err(&s_rt->slave->dev, in sdw_program_slave_port_params()
175 ret = sdw_write(s_rt->slave, addr2, (p_params->bps - 1)); in sdw_program_slave_port_params()
177 dev_err(&s_rt->slave->dev, in sdw_program_slave_port_params()
186 ret = sdw_write(s_rt->slave, addr3, wbuf); in sdw_program_slave_port_params()
188 dev_err(&s_rt->slave->dev, in sdw_program_slave_port_params()
195 ret = sdw_write(s_rt->slave, addr4, t_params->offset1); in sdw_program_slave_port_params()
197 dev_err(&s_rt->slave->dev, in sdw_program_slave_port_params()
205 ret = sdw_write(s_rt->slave, addr5, t_params->blk_grp_ctrl); in sdw_program_slave_port_params()
207 dev_err(&s_rt->slave->dev, in sdw_program_slave_port_params()
216 ret = sdw_write(s_rt->slave, addr6, t_params->lane_ctrl); in sdw_program_slave_port_params()
218 dev_err(&s_rt->slave->dev, in sdw_program_slave_port_params()
226 ret = _sdw_program_slave_port_params(bus, s_rt->slave, in sdw_program_slave_port_params()
229 dev_err(&s_rt->slave->dev, in sdw_program_slave_port_params()
321 ret = sdw_write(s_rt->slave, addr, p_rt->ch_mask); in sdw_enable_disable_slave_ports()
323 ret = sdw_write(s_rt->slave, addr, 0x0); in sdw_enable_disable_slave_ports()
326 dev_err(&s_rt->slave->dev, in sdw_enable_disable_slave_ports()
404 const struct sdw_slave_ops *ops = s_rt->slave->ops; in sdw_do_port_prep()
408 ret = ops->port_prep(s_rt->slave, &prep_ch, cmd); in sdw_do_port_prep()
410 dev_err(&s_rt->slave->dev, in sdw_do_port_prep()
435 dpn_prop = sdw_get_slave_dpn_prop(s_rt->slave, in sdw_prep_deprep_slave_ports()
458 ret = sdw_configure_dpn_intr(s_rt->slave, p_rt->num, prep, in sdw_prep_deprep_slave_ports()
472 ret = sdw_write(s_rt->slave, addr, p_rt->ch_mask); in sdw_prep_deprep_slave_ports()
474 ret = sdw_write(s_rt->slave, addr, 0x0); in sdw_prep_deprep_slave_ports()
477 dev_err(&s_rt->slave->dev, in sdw_prep_deprep_slave_ports()
483 port_ready = &s_rt->slave->port_ready[prep_ch.num]; in sdw_prep_deprep_slave_ports()
487 val = sdw_read(s_rt->slave, SDW_DPN_PREPARESTATUS(p_rt->num)); in sdw_prep_deprep_slave_ports()
490 dev_err(&s_rt->slave->dev, in sdw_prep_deprep_slave_ports()
501 ret = sdw_configure_dpn_intr(s_rt->slave, p_rt->num, prep, in sdw_prep_deprep_slave_ports()
580 struct sdw_slave *slave; in sdw_notify_config() local
590 slave = s_rt->slave; in sdw_notify_config()
592 if (slave->ops->bus_config) { in sdw_notify_config()
593 ret = slave->ops->bus_config(slave, &bus->params); in sdw_notify_config()
596 slave->dev_num); in sdw_notify_config()
976 *sdw_alloc_slave_rt(struct sdw_slave *slave, in sdw_alloc_slave_rt() argument
989 s_rt->slave = slave; in sdw_alloc_slave_rt()
1006 struct sdw_slave *slave, in sdw_slave_port_release() argument
1015 if (s_rt->slave != slave) in sdw_slave_port_release()
1035 static void sdw_release_slave_stream(struct sdw_slave *slave, in sdw_release_slave_stream() argument
1045 if (s_rt->slave == slave) { in sdw_release_slave_stream()
1071 sdw_slave_port_release(s_rt->slave->bus, s_rt->slave, stream); in sdw_release_master_stream()
1072 sdw_release_slave_stream(s_rt->slave, stream); in sdw_release_master_stream()
1122 int sdw_stream_remove_slave(struct sdw_slave *slave, in sdw_stream_remove_slave() argument
1125 mutex_lock(&slave->bus->bus_lock); in sdw_stream_remove_slave()
1127 sdw_slave_port_release(slave->bus, slave, stream); in sdw_stream_remove_slave()
1128 sdw_release_slave_stream(slave, stream); in sdw_stream_remove_slave()
1130 mutex_unlock(&slave->bus->bus_lock); in sdw_stream_remove_slave()
1236 static int sdw_slave_port_config(struct sdw_slave *slave, in sdw_slave_port_config() argument
1246 p_rt = sdw_port_alloc(&slave->dev, port_config, i); in sdw_slave_port_config()
1254 ret = sdw_is_valid_port_range(&slave->dev, p_rt); in sdw_slave_port_config()
1345 int sdw_stream_add_slave(struct sdw_slave *slave, in sdw_stream_add_slave() argument
1355 mutex_lock(&slave->bus->bus_lock); in sdw_stream_add_slave()
1361 m_rt = sdw_alloc_master_rt(slave->bus, stream_config, stream); in sdw_stream_add_slave()
1363 dev_err(&slave->dev, in sdw_stream_add_slave()
1370 s_rt = sdw_alloc_slave_rt(slave, stream_config, stream); in sdw_stream_add_slave()
1372 dev_err(&slave->dev, in sdw_stream_add_slave()
1379 ret = sdw_config_stream(&slave->dev, stream, stream_config, true); in sdw_stream_add_slave()
1393 ret = sdw_slave_port_config(slave, s_rt, port_config, num_ports); in sdw_stream_add_slave()
1413 mutex_unlock(&slave->bus->bus_lock); in sdw_stream_add_slave()
1425 struct sdw_dpn_prop *sdw_get_slave_dpn_prop(struct sdw_slave *slave, in sdw_get_slave_dpn_prop() argument
1434 num_ports = hweight32(slave->prop.source_ports); in sdw_get_slave_dpn_prop()
1435 dpn_prop = slave->prop.src_dpn_prop; in sdw_get_slave_dpn_prop()
1437 num_ports = hweight32(slave->prop.sink_ports); in sdw_get_slave_dpn_prop()
1438 dpn_prop = slave->prop.sink_dpn_prop; in sdw_get_slave_dpn_prop()