On 1/25/23 13:46, Amadeusz Sławiński wrote: > Instead of passing address of structure, the containg structure is containing? > casted to target structure. While it works - the expected structure is cast? > the first field of containing one - it is bad practice, fix this by > passing pointer to structure field. > > Reviewed-by: Cezary Rojewski <cezary.rojewski@xxxxxxxxx> > Signed-off-by: Amadeusz Sławiński <amadeuszx.slawinski@xxxxxxxxxxxxxxx> > --- > sound/soc/soc-topology.c | 12 ++++++------ > 1 file changed, 6 insertions(+), 6 deletions(-) > > diff --git a/sound/soc/soc-topology.c b/sound/soc/soc-topology.c > index 766de161aa4a..c35c0c53a184 100644 > --- a/sound/soc/soc-topology.c > +++ b/sound/soc/soc-topology.c > @@ -721,7 +721,7 @@ static int soc_tplg_dbytes_create(struct soc_tplg *tplg, size_t size) > } > > /* pass control to driver for optional further init */ > - ret = soc_tplg_control_load(tplg, &kc, (struct snd_soc_tplg_ctl_hdr *)be); > + ret = soc_tplg_control_load(tplg, &kc, &be->hdr); > if (ret < 0) { > dev_err(tplg->dev, "ASoC: failed to init %s\n", be->hdr.name); > goto err; > @@ -805,7 +805,7 @@ static int soc_tplg_dmixer_create(struct soc_tplg *tplg, size_t size) > } > > /* pass control to driver for optional further init */ > - ret = soc_tplg_control_load(tplg, &kc, (struct snd_soc_tplg_ctl_hdr *)mc); > + ret = soc_tplg_control_load(tplg, &kc, &mc->hdr); > if (ret < 0) { > dev_err(tplg->dev, "ASoC: failed to init %s\n", mc->hdr.name); > goto err; > @@ -973,7 +973,7 @@ static int soc_tplg_denum_create(struct soc_tplg *tplg, size_t size) > } > > /* pass control to driver for optional further init */ > - ret = soc_tplg_control_load(tplg, &kc, (struct snd_soc_tplg_ctl_hdr *)ec); > + ret = soc_tplg_control_load(tplg, &kc, &ec->hdr); > if (ret < 0) { > dev_err(tplg->dev, "ASoC: failed to init %s\n", ec->hdr.name); > goto err; > @@ -1189,7 +1189,7 @@ static int soc_tplg_dapm_widget_dmixer_create(struct soc_tplg *tplg, struct snd_ > } > > /* pass control to driver for optional further init */ > - err = soc_tplg_control_load(tplg, kc, (struct snd_soc_tplg_ctl_hdr *)mc); > + err = soc_tplg_control_load(tplg, kc, &mc->hdr); > if (err < 0) { > dev_err(tplg->dev, "ASoC: failed to init %s\n", > mc->hdr.name); > @@ -1273,7 +1273,7 @@ static int soc_tplg_dapm_widget_denum_create(struct soc_tplg *tplg, struct snd_k > } > > /* pass control to driver for optional further init */ > - err = soc_tplg_control_load(tplg, kc, (struct snd_soc_tplg_ctl_hdr *)ec); > + err = soc_tplg_control_load(tplg, kc, &ec->hdr); > if (err < 0) { > dev_err(tplg->dev, "ASoC: failed to init %s\n", > ec->hdr.name); > @@ -1325,7 +1325,7 @@ static int soc_tplg_dapm_widget_dbytes_create(struct soc_tplg *tplg, struct snd_ > } > > /* pass control to driver for optional further init */ > - err = soc_tplg_control_load(tplg, kc, (struct snd_soc_tplg_ctl_hdr *)be); > + err = soc_tplg_control_load(tplg, kc, &be->hdr); > if (err < 0) { > dev_err(tplg->dev, "ASoC: failed to init %s\n", > be->hdr.name);