[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <99ec05e1-8bcd-48a5-84b6-760ac7c93317@linaro.org>
Date: Wed, 6 Dec 2023 09:10:30 +0100
From: Neil Armstrong <neil.armstrong@...aro.org>
To: Dan Carpenter <dan.carpenter@...aro.org>,
oe-kbuild@...ts.linux.dev,
Srinivas Kandagatla <srinivas.kandagatla@...aro.org>,
Banajit Goswami <bgoswami@...cinc.com>,
Andy Gross <agross@...nel.org>,
Bjorn Andersson <andersson@...nel.org>,
Konrad Dybcio <konrad.dybcio@...aro.org>,
Liam Girdwood <lgirdwood@...il.com>,
Mark Brown <broonie@...nel.org>,
Rob Herring <robh+dt@...nel.org>,
Krzysztof Kozlowski <krzk@...nel.org>,
Conor Dooley <conor+dt@...nel.org>,
Jaroslav Kysela <perex@...ex.cz>, Takashi Iwai <tiwai@...e.com>
Cc: lkp@...el.com, oe-kbuild-all@...ts.linux.dev,
linux-arm-msm@...r.kernel.org, alsa-devel@...a-project.org,
linux-sound@...r.kernel.org, devicetree@...r.kernel.org,
linux-kernel@...r.kernel.org
Subject: Re: [PATCH v2 5/5] ASoC: codecs: Add WCD939x Codec driver
Hi Dan,
On 06/12/2023 06:39, Dan Carpenter wrote:
> Hi Neil,
>
> kernel test robot noticed the following build warnings:
Thanks for the report, I'll fix all this
Neil
>
> https://git-scm.com/docs/git-format-patch#_base_tree_information]
>
> url: https://github.com/intel-lab-lkp/linux/commits/Neil-Armstrong/ASoC-dt-bindings-document-WCD939x-Audio-Codec/20231202-000916
> base: https://git.kernel.org/pub/scm/linux/kernel/git/broonie/sound.git for-next
> patch link: https://lore.kernel.org/r/20231201-topic-sm8650-upstream-wcd939x-codec-v2-5-94ed814b25aa%40linaro.org
> patch subject: [PATCH v2 5/5] ASoC: codecs: Add WCD939x Codec driver
> config: powerpc64-randconfig-r081-20231204 (https://download.01.org/0day-ci/archive/20231206/202312060127.FLhplIP3-lkp@intel.com/config)
> compiler: powerpc64-linux-gcc (GCC) 13.2.0
> reproduce: (https://download.01.org/0day-ci/archive/20231206/202312060127.FLhplIP3-lkp@intel.com/reproduce)
>
> If you fix the issue in a separate patch/commit (i.e. not just a new version of
> the same patch/commit), kindly add following tags
> | Reported-by: kernel test robot <lkp@...el.com>
> | Reported-by: Dan Carpenter <dan.carpenter@...aro.org>
> | Closes: https://lore.kernel.org/r/202312060127.FLhplIP3-lkp@intel.com/
>
> New smatch warnings:
> sound/soc/codecs/wcd939x.c:3168 wcd939x_typec_mux_set() error: 'wcd939x' dereferencing possible ERR_PTR()
> sound/soc/codecs/wcd939x.c:3221 wcd939x_swap_gnd_mic() warn: signedness bug returning '(-22)'
>
> Old smatch warnings:
> sound/soc/codecs/wcd939x.c:3170 wcd939x_typec_mux_set() error: 'wcd939x' dereferencing possible ERR_PTR()
> sound/soc/codecs/wcd939x.c:3173 wcd939x_typec_mux_set() error: 'wcd939x' dereferencing possible ERR_PTR()
> sound/soc/codecs/wcd939x.c:3174 wcd939x_typec_mux_set() error: 'wcd939x' dereferencing possible ERR_PTR()
> sound/soc/codecs/wcd939x.c:3176 wcd939x_typec_mux_set() error: 'wcd939x' dereferencing possible ERR_PTR()
> sound/soc/codecs/wcd939x.c:3177 wcd939x_typec_mux_set() error: 'wcd939x' dereferencing possible ERR_PTR()
> sound/soc/codecs/wcd939x.c:3179 wcd939x_typec_mux_set() error: 'wcd939x' dereferencing possible ERR_PTR()
>
> vim +/wcd939x +3168 sound/soc/codecs/wcd939x.c
>
> 6c302e2f95b1d1 Neil Armstrong 2023-12-01 3164 static int wcd939x_typec_mux_set(struct typec_mux_dev *mux,
> 6c302e2f95b1d1 Neil Armstrong 2023-12-01 3165 struct typec_mux_state *state)
> 6c302e2f95b1d1 Neil Armstrong 2023-12-01 3166 {
> 6c302e2f95b1d1 Neil Armstrong 2023-12-01 3167 struct wcd939x_priv *wcd939x = typec_mux_get_drvdata(mux);
> 6c302e2f95b1d1 Neil Armstrong 2023-12-01 @3168 unsigned int previous_mode = wcd939x->typec_mode;
>
> The Kconfig should probably depend on CONFIG_TYPEC to avoid a crash here.
>
> 6c302e2f95b1d1 Neil Armstrong 2023-12-01 3169
> 6c302e2f95b1d1 Neil Armstrong 2023-12-01 3170 if (!wcd939x->wcd_mbhc)
> 6c302e2f95b1d1 Neil Armstrong 2023-12-01 3171 return -EINVAL;
> 6c302e2f95b1d1 Neil Armstrong 2023-12-01 3172
> 6c302e2f95b1d1 Neil Armstrong 2023-12-01 3173 if (wcd939x->typec_mode != state->mode) {
> 6c302e2f95b1d1 Neil Armstrong 2023-12-01 3174 wcd939x->typec_mode = state->mode;
> 6c302e2f95b1d1 Neil Armstrong 2023-12-01 3175
> 6c302e2f95b1d1 Neil Armstrong 2023-12-01 3176 if (wcd939x->typec_mode == TYPEC_MODE_AUDIO)
> 6c302e2f95b1d1 Neil Armstrong 2023-12-01 3177 return wcd_mbhc_typec_report_plug(wcd939x->wcd_mbhc);
> 6c302e2f95b1d1 Neil Armstrong 2023-12-01 3178 else if (previous_mode == TYPEC_MODE_AUDIO)
> 6c302e2f95b1d1 Neil Armstrong 2023-12-01 3179 return wcd_mbhc_typec_report_unplug(wcd939x->wcd_mbhc);
> 6c302e2f95b1d1 Neil Armstrong 2023-12-01 3180 }
> 6c302e2f95b1d1 Neil Armstrong 2023-12-01 3181
> 6c302e2f95b1d1 Neil Armstrong 2023-12-01 3182 return 0;
> 6c302e2f95b1d1 Neil Armstrong 2023-12-01 3183 }
>
> [ snip ]
>
> 6c302e2f95b1d1 Neil Armstrong 2023-12-01 3216 static bool wcd939x_swap_gnd_mic(struct snd_soc_component *component, bool active)
> 6c302e2f95b1d1 Neil Armstrong 2023-12-01 3217 {
> 6c302e2f95b1d1 Neil Armstrong 2023-12-01 3218 struct wcd939x_priv *wcd939x = snd_soc_component_get_drvdata(component);
> 6c302e2f95b1d1 Neil Armstrong 2023-12-01 3219
> 6c302e2f95b1d1 Neil Armstrong 2023-12-01 3220 if (!wcd939x->typec_analog_mux || !wcd939x->typec_switch)
> 6c302e2f95b1d1 Neil Armstrong 2023-12-01 @3221 return -EINVAL;
>
> This is type bool. return false?
>
> 6c302e2f95b1d1 Neil Armstrong 2023-12-01 3222
> 6c302e2f95b1d1 Neil Armstrong 2023-12-01 3223 /* Report inversion via Type Switch of USBSS */
> 6c302e2f95b1d1 Neil Armstrong 2023-12-01 3224 return typec_switch_set(wcd939x->typec_switch,
> 6c302e2f95b1d1 Neil Armstrong 2023-12-01 3225 wcd939x->typec_orientation == TYPEC_ORIENTATION_REVERSE ?
> 6c302e2f95b1d1 Neil Armstrong 2023-12-01 3226 TYPEC_ORIENTATION_NORMAL : TYPEC_ORIENTATION_REVERSE);
> 6c302e2f95b1d1 Neil Armstrong 2023-12-01 3227 }
>
Powered by blists - more mailing lists