* [broonie-sound:for-7.4 65/72] sound/soc/mediatek/mt8195/mt8195-dai-etdm.c:1610 mtk_dai_etdm_startup() warn: missing unwind goto?
@ 2026-10-18 7:50 kernel test robot
0 siblings, 0 replies; only message in thread
From: kernel test robot @ 2026-10-18 7:50 UTC (permalink / raw)
To: oe-kbuild; +Cc: lkp, Dan Carpenter
Unfiltered warning: this smatch report is sent as-is and has not been
reviewed for false positives, so please treat it with due skepticism.
BCC: lkp@intel.com
CC: oe-kbuild-all@lists.linux.dev
TO: bui duc phuc <phucduc.bui@gmail.com>
CC: Mark Brown <broonie@kernel.org>
CC: Ajay Kumar Nandam <ajay.nandam@oss.qualcomm.com>
tree: https://git.kernel.org/pub/scm/linux/kernel/git/broonie/sound.git for-7.4
head: ba982c33278c1fc739c8c220f410d6539de9d9b9
commit: 8e67c67f3fd2505b8b7a9dd38d8dabe47273490d [65/72] ASoC: mediatek: mt8195: Fix ETDM startup error handling
:::::: branch date: 2 days ago
:::::: commit date: 2 days ago
config: nios2-randconfig-r2202-20261017 (https://download.01.org/0day-ci/archive/20261018/202610180401.HuIoGPEA-lkp@intel.com/config)
compiler: nios2-linux-gcc (GCC) 11.5.0
smatch: v0.5.0-9187-g5189e3fb
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@intel.com>
| Reported-by: Dan Carpenter <error27@gmail.com>
| Closes: https://lore.kernel.org/r/202610180401.HuIoGPEA-lkp@intel.com/
smatch warnings:
sound/soc/mediatek/mt8195/mt8195-dai-etdm.c:1610 mtk_dai_etdm_startup() warn: missing unwind goto?
vim +1610 sound/soc/mediatek/mt8195/mt8195-dai-etdm.c
1de9a54acafba2 Trevor Wu 2021-08-19 1567
1de9a54acafba2 Trevor Wu 2021-08-19 1568 /* dai ops */
1de9a54acafba2 Trevor Wu 2021-08-19 1569 static int mtk_dai_etdm_startup(struct snd_pcm_substream *substream,
1de9a54acafba2 Trevor Wu 2021-08-19 1570 struct snd_soc_dai *dai)
1de9a54acafba2 Trevor Wu 2021-08-19 1571 {
1de9a54acafba2 Trevor Wu 2021-08-19 1572 struct mtk_base_afe *afe = snd_soc_dai_get_drvdata(dai);
1de9a54acafba2 Trevor Wu 2021-08-19 1573 struct mt8195_afe_private *afe_priv = afe->platform_priv;
1de9a54acafba2 Trevor Wu 2021-08-19 1574 struct mtk_dai_etdm_priv *mst_etdm_data;
1de9a54acafba2 Trevor Wu 2021-08-19 1575 int cg_id;
1de9a54acafba2 Trevor Wu 2021-08-19 1576 int mst_dai_id;
1de9a54acafba2 Trevor Wu 2021-08-19 1577 int slv_dai_id;
8e67c67f3fd250 bui duc phuc 2026-10-14 1578 int i, ret;
1de9a54acafba2 Trevor Wu 2021-08-19 1579
1de9a54acafba2 Trevor Wu 2021-08-19 1580 if (is_cowork_mode(dai)) {
1de9a54acafba2 Trevor Wu 2021-08-19 1581 mst_dai_id = get_etdm_cowork_master_id(dai);
ff728899065922 Trevor Wu 2023-03-07 1582 if (!mt8195_afe_etdm_is_valid(mst_dai_id))
ff728899065922 Trevor Wu 2023-03-07 1583 return -EINVAL;
1de9a54acafba2 Trevor Wu 2021-08-19 1584
8e67c67f3fd250 bui duc phuc 2026-10-14 1585 ret = mtk_dai_etdm_enable_mclk(afe, mst_dai_id);
8e67c67f3fd250 bui duc phuc 2026-10-14 1586 if (ret)
8e67c67f3fd250 bui duc phuc 2026-10-14 1587 return ret;
1de9a54acafba2 Trevor Wu 2021-08-19 1588 cg_id = mtk_dai_etdm_get_cg_id_by_dai_id(mst_dai_id);
8e67c67f3fd250 bui duc phuc 2026-10-14 1589 if (cg_id >= 0) {
8e67c67f3fd250 bui duc phuc 2026-10-14 1590 ret = mt8195_afe_enable_clk(afe, afe_priv->clk[cg_id]);
8e67c67f3fd250 bui duc phuc 2026-10-14 1591 if (ret)
8e67c67f3fd250 bui duc phuc 2026-10-14 1592 goto err_disable_mclk;
8e67c67f3fd250 bui duc phuc 2026-10-14 1593 }
1de9a54acafba2 Trevor Wu 2021-08-19 1594
1de9a54acafba2 Trevor Wu 2021-08-19 1595 mst_etdm_data = afe_priv->dai_priv[mst_dai_id];
1de9a54acafba2 Trevor Wu 2021-08-19 1596
1de9a54acafba2 Trevor Wu 2021-08-19 1597 for (i = 0; i < mst_etdm_data->cowork_slv_count; i++) {
1de9a54acafba2 Trevor Wu 2021-08-19 1598 slv_dai_id = mst_etdm_data->cowork_slv_id[i];
1de9a54acafba2 Trevor Wu 2021-08-19 1599 cg_id = mtk_dai_etdm_get_cg_id_by_dai_id(slv_dai_id);
8e67c67f3fd250 bui duc phuc 2026-10-14 1600 if (cg_id >= 0) {
8e67c67f3fd250 bui duc phuc 2026-10-14 1601 ret = mt8195_afe_enable_clk(afe,
1de9a54acafba2 Trevor Wu 2021-08-19 1602 afe_priv->clk[cg_id]);
8e67c67f3fd250 bui duc phuc 2026-10-14 1603 if (ret)
8e67c67f3fd250 bui duc phuc 2026-10-14 1604 goto err_disable_slv_clk;
8e67c67f3fd250 bui duc phuc 2026-10-14 1605 }
1de9a54acafba2 Trevor Wu 2021-08-19 1606 }
1de9a54acafba2 Trevor Wu 2021-08-19 1607 } else {
8e67c67f3fd250 bui duc phuc 2026-10-14 1608 ret = mtk_dai_etdm_enable_mclk(afe, dai->id);
8e67c67f3fd250 bui duc phuc 2026-10-14 1609 if (ret)
8e67c67f3fd250 bui duc phuc 2026-10-14 @1610 return ret;
1de9a54acafba2 Trevor Wu 2021-08-19 1611
1de9a54acafba2 Trevor Wu 2021-08-19 1612 cg_id = mtk_dai_etdm_get_cg_id_by_dai_id(dai->id);
8e67c67f3fd250 bui duc phuc 2026-10-14 1613 if (cg_id >= 0) {
8e67c67f3fd250 bui duc phuc 2026-10-14 1614 ret = mt8195_afe_enable_clk(afe, afe_priv->clk[cg_id]);
8e67c67f3fd250 bui duc phuc 2026-10-14 1615 if (ret)
8e67c67f3fd250 bui duc phuc 2026-10-14 1616 goto err_disable_mclk;
8e67c67f3fd250 bui duc phuc 2026-10-14 1617 }
1de9a54acafba2 Trevor Wu 2021-08-19 1618 }
1de9a54acafba2 Trevor Wu 2021-08-19 1619
1de9a54acafba2 Trevor Wu 2021-08-19 1620 return 0;
8e67c67f3fd250 bui duc phuc 2026-10-14 1621
8e67c67f3fd250 bui duc phuc 2026-10-14 1622 err_disable_slv_clk:
8e67c67f3fd250 bui duc phuc 2026-10-14 1623 while (--i >= 0) {
8e67c67f3fd250 bui duc phuc 2026-10-14 1624 slv_dai_id = mst_etdm_data->cowork_slv_id[i];
8e67c67f3fd250 bui duc phuc 2026-10-14 1625 cg_id = mtk_dai_etdm_get_cg_id_by_dai_id(slv_dai_id);
8e67c67f3fd250 bui duc phuc 2026-10-14 1626 if (cg_id >= 0)
8e67c67f3fd250 bui duc phuc 2026-10-14 1627 mt8195_afe_disable_clk(afe, afe_priv->clk[cg_id]);
8e67c67f3fd250 bui duc phuc 2026-10-14 1628 }
8e67c67f3fd250 bui duc phuc 2026-10-14 1629
8e67c67f3fd250 bui duc phuc 2026-10-14 1630 cg_id = mtk_dai_etdm_get_cg_id_by_dai_id(mst_dai_id);
8e67c67f3fd250 bui duc phuc 2026-10-14 1631 if (cg_id >= 0)
8e67c67f3fd250 bui duc phuc 2026-10-14 1632 mt8195_afe_disable_clk(afe, afe_priv->clk[cg_id]);
8e67c67f3fd250 bui duc phuc 2026-10-14 1633
8e67c67f3fd250 bui duc phuc 2026-10-14 1634 err_disable_mclk:
8e67c67f3fd250 bui duc phuc 2026-10-14 1635 mtk_dai_etdm_disable_mclk(afe, is_cowork_mode(dai) ? mst_dai_id : dai->id);
8e67c67f3fd250 bui duc phuc 2026-10-14 1636
8e67c67f3fd250 bui duc phuc 2026-10-14 1637 return ret;
1de9a54acafba2 Trevor Wu 2021-08-19 1638 }
1de9a54acafba2 Trevor Wu 2021-08-19 1639
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2026-10-18 7:52 UTC | newest]
Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-10-18 7:50 [broonie-sound:for-7.4 65/72] sound/soc/mediatek/mt8195/mt8195-dai-etdm.c:1610 mtk_dai_etdm_startup() warn: missing unwind goto? kernel test robot
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.