This patch adds the param argument to the function parameter of the call-back probe_channel. This parameter is needed to configure the channels of an attached device. Signed-off-by: Christian Gromm <christian.gromm@xxxxxxxxxxxxx> --- v2: v3: v4: drivers/staging/most/cdev/cdev.c | 2 +- drivers/staging/most/core.c | 6 ++++-- drivers/staging/most/core.h | 3 ++- drivers/staging/most/net/net.c | 3 ++- drivers/staging/most/sound/sound.c | 3 +-- drivers/staging/most/video/video.c | 3 ++- 6 files changed, 12 insertions(+), 8 deletions(-) diff --git a/drivers/staging/most/cdev/cdev.c b/drivers/staging/most/cdev/cdev.c index f2b347c..97408ec 100644 --- a/drivers/staging/most/cdev/cdev.c +++ b/drivers/staging/most/cdev/cdev.c @@ -425,7 +425,7 @@ static int comp_tx_completion(struct most_interface *iface, int channel_id) * Returns 0 on success or error code otherwise. */ static int comp_probe(struct most_interface *iface, int channel_id, - struct most_channel_config *cfg, char *name) + struct most_channel_config *cfg, char *name, char *args) { struct comp_channel *c; unsigned long cl_flags; diff --git a/drivers/staging/most/core.c b/drivers/staging/most/core.c index 956daf8..3671482 100644 --- a/drivers/staging/most/core.c +++ b/drivers/staging/most/core.c @@ -701,6 +701,7 @@ static struct most_channel *get_channel(char *mdev, char *mdev_ch) static inline int link_channel_to_component(struct most_channel *c, struct core_component *comp, + char *name, char *comp_param) { int ret; @@ -714,7 +715,8 @@ inline int link_channel_to_component(struct most_channel *c, return -ENOSPC; *comp_ptr = comp; - ret = comp->probe_channel(c->iface, c->channel_id, &c->cfg, comp_param); + ret = comp->probe_channel(c->iface, c->channel_id, &c->cfg, name, + comp_param); if (ret) { *comp_ptr = NULL; return ret; @@ -775,7 +777,7 @@ static ssize_t add_link_store(struct device_driver *drv, if (!c) return -ENODEV; - ret = link_channel_to_component(c, comp, comp_param); + ret = link_channel_to_component(c, comp, "name", comp_param); if (ret) return ret; return len; diff --git a/drivers/staging/most/core.h b/drivers/staging/most/core.h index 64cc02f..025dd1d 100644 --- a/drivers/staging/most/core.h +++ b/drivers/staging/most/core.h @@ -266,7 +266,8 @@ struct core_component { struct list_head list; const char *name; int (*probe_channel)(struct most_interface *iface, int channel_idx, - struct most_channel_config *cfg, char *name); + struct most_channel_config *cfg, char *name, + char *param); int (*disconnect_channel)(struct most_interface *iface, int channel_idx); int (*rx_completion)(struct mbo *mbo); diff --git a/drivers/staging/most/net/net.c b/drivers/staging/most/net/net.c index e20584b..c8a64e2 100644 --- a/drivers/staging/most/net/net.c +++ b/drivers/staging/most/net/net.c @@ -293,7 +293,8 @@ static struct net_dev_context *get_net_dev_hold(struct most_interface *iface) } static int comp_probe_channel(struct most_interface *iface, int channel_idx, - struct most_channel_config *ccfg, char *name) + struct most_channel_config *ccfg, char *name, + char *args) { struct net_dev_context *nd; struct net_dev_channel *ch; diff --git a/drivers/staging/most/sound/sound.c b/drivers/staging/most/sound/sound.c index 79ab3a7..02fcd32 100644 --- a/drivers/staging/most/sound/sound.c +++ b/drivers/staging/most/sound/sound.c @@ -579,7 +579,7 @@ static void release_adapter(struct sound_adapter *adpt) */ static int audio_probe_channel(struct most_interface *iface, int channel_id, struct most_channel_config *cfg, - char *arg_list) + char *device_name, char *arg_list) { struct channel *channel; struct sound_adapter *adpt; @@ -588,7 +588,6 @@ static int audio_probe_channel(struct most_interface *iface, int channel_id, int capture_count = 0; int ret; int direction; - char *device_name; u16 ch_num; u8 create = 0; char *sample_res; diff --git a/drivers/staging/most/video/video.c b/drivers/staging/most/video/video.c index ad7e28a..adca250 100644 --- a/drivers/staging/most/video/video.c +++ b/drivers/staging/most/video/video.c @@ -453,7 +453,8 @@ static void comp_v4l2_dev_release(struct v4l2_device *v4l2_dev) } static int comp_probe_channel(struct most_interface *iface, int channel_idx, - struct most_channel_config *ccfg, char *name) + struct most_channel_config *ccfg, char *name, + char *args) { int ret; struct most_video_dev *mdev = get_comp_dev(iface, channel_idx); -- 2.7.4 _______________________________________________ devel mailing list devel@xxxxxxxxxxxxxxxxxxxxxx http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel