CC: kbuild-...@lists.01.org
BCC: l...@intel.com
TO: "Pierre-Louis Bossart" <pierre-louis.boss...@linux.intel.com>

tree:   https://github.com/thesofproject/linux fix/hda-dai-suspend-rebase
head:   0ac790d31cc43959a77de573c8f0e9090313c69c
commit: 0ac790d31cc43959a77de573c8f0e9090313c69c [13/13] ASoC: sof-pcm: improve 
BE transition for PAUSE_RELEASE
:::::: branch date: 8 hours ago
:::::: commit date: 8 hours ago
config: i386-randconfig-m021-20220321 
(https://download.01.org/0day-ci/archive/20220322/202203221355.0zkwqwis-...@intel.com/config)
compiler: gcc-9 (Ubuntu 9.4.0-1ubuntu1~20.04) 9.4.0

If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <l...@intel.com>
Reported-by: Dan Carpenter <dan.carpen...@oracle.com>

smatch warnings:
sound/soc/soc-pcm.c:2185 dpcm_be_dai_trigger() error: uninitialized symbol 
'pause_stop_transition'.

vim +/pause_stop_transition +2185 sound/soc/soc-pcm.c

01d7584cd2e5a9 Liam Girdwood        2012-04-25  2088  
23607025303af6 Liam Girdwood        2014-01-17  2089  int 
dpcm_be_dai_trigger(struct snd_soc_pcm_runtime *fe, int stream,
45c0a188ca59e7 Mark Brown           2012-05-09  2090                           
int cmd)
01d7584cd2e5a9 Liam Girdwood        2012-04-25  2091  {
db3aa39c910684 Kuninori Morimoto    2021-03-15  2092    struct 
snd_soc_pcm_runtime *be;
0ac790d31cc439 Pierre-Louis Bossart 2022-03-21  2093    bool 
pause_stop_transition;
01d7584cd2e5a9 Liam Girdwood        2012-04-25  2094    struct snd_soc_dpcm 
*dpcm;
b2ae80663008a7 Takashi Iwai         2021-12-07  2095    unsigned long flags;
01d7584cd2e5a9 Liam Girdwood        2012-04-25  2096    int ret = 0;
01d7584cd2e5a9 Liam Girdwood        2012-04-25  2097  
8d6258a4dd2678 Kuninori Morimoto    2018-09-18  2098    for_each_dpcm_be(fe, 
stream, dpcm) {
db3aa39c910684 Kuninori Morimoto    2021-03-15  2099            struct 
snd_pcm_substream *be_substream;
01d7584cd2e5a9 Liam Girdwood        2012-04-25  2100  
db3aa39c910684 Kuninori Morimoto    2021-03-15  2101            be = dpcm->be;
db3aa39c910684 Kuninori Morimoto    2021-03-15  2102            be_substream = 
snd_soc_dpcm_get_substream(be, stream);
01d7584cd2e5a9 Liam Girdwood        2012-04-25  2103  
3c75c0ea5da749 Takashi Iwai         2022-01-19  2104            
snd_soc_dpcm_stream_lock_irqsave_nested(be, stream, flags);
b2ae80663008a7 Takashi Iwai         2021-12-07  2105  
01d7584cd2e5a9 Liam Girdwood        2012-04-25  2106            /* is this op 
for this BE ? */
01d7584cd2e5a9 Liam Girdwood        2012-04-25  2107            if 
(!snd_soc_dpcm_be_can_update(fe, be, stream))
b2ae80663008a7 Takashi Iwai         2021-12-07  2108                    goto 
next;
01d7584cd2e5a9 Liam Girdwood        2012-04-25  2109  
a9faca15a644ff Kuninori Morimoto    2020-12-01  2110            
dev_dbg(be->dev, "ASoC: trigger BE %s cmd %d\n",
a9faca15a644ff Kuninori Morimoto    2020-12-01  2111                    
be->dai_link->name, cmd);
a9faca15a644ff Kuninori Morimoto    2020-12-01  2112  
01d7584cd2e5a9 Liam Girdwood        2012-04-25  2113            switch (cmd) {
01d7584cd2e5a9 Liam Girdwood        2012-04-25  2114            case 
SNDRV_PCM_TRIGGER_START:
848aedfdc6ba25 Pierre-Louis Bossart 2021-12-07  2115                    if 
(!be->dpcm[stream].be_start &&
848aedfdc6ba25 Pierre-Louis Bossart 2021-12-07  2116                        
(be->dpcm[stream].state != SND_SOC_DPCM_STATE_PREPARE) &&
21fca8bdbb64df 이경택               2020-04-01  2117                           
(be->dpcm[stream].state != SND_SOC_DPCM_STATE_STOP) &&
3202e2f5fac003 Mark Brown           2021-08-30  2118                        
(be->dpcm[stream].state != SND_SOC_DPCM_STATE_PAUSED))
b2ae80663008a7 Takashi Iwai         2021-12-07  2119                            
goto next;
6479f7588651cb Pierre-Louis Bossart 2021-08-17  2120  
848aedfdc6ba25 Pierre-Louis Bossart 2021-12-07  2121                    
be->dpcm[stream].be_start++;
848aedfdc6ba25 Pierre-Louis Bossart 2021-12-07  2122                    if 
(be->dpcm[stream].be_start != 1)
848aedfdc6ba25 Pierre-Louis Bossart 2021-12-07  2123                            
goto next;
848aedfdc6ba25 Pierre-Louis Bossart 2021-12-07  2124  
a9faca15a644ff Kuninori Morimoto    2020-12-01  2125                    ret = 
soc_pcm_trigger(be_substream, cmd);
848aedfdc6ba25 Pierre-Louis Bossart 2021-12-07  2126                    if 
(ret) {
848aedfdc6ba25 Pierre-Louis Bossart 2021-12-07  2127                            
be->dpcm[stream].be_start--;
b2ae80663008a7 Takashi Iwai         2021-12-07  2128                            
goto next;
848aedfdc6ba25 Pierre-Louis Bossart 2021-12-07  2129                    }
01d7584cd2e5a9 Liam Girdwood        2012-04-25  2130  
3202e2f5fac003 Mark Brown           2021-08-30  2131                    
be->dpcm[stream].state = SND_SOC_DPCM_STATE_START;
01d7584cd2e5a9 Liam Girdwood        2012-04-25  2132                    break;
01d7584cd2e5a9 Liam Girdwood        2012-04-25  2133            case 
SNDRV_PCM_TRIGGER_RESUME:
3202e2f5fac003 Mark Brown           2021-08-30  2134                    if 
((be->dpcm[stream].state != SND_SOC_DPCM_STATE_SUSPEND))
b2ae80663008a7 Takashi Iwai         2021-12-07  2135                            
goto next;
6479f7588651cb Pierre-Louis Bossart 2021-08-17  2136  
848aedfdc6ba25 Pierre-Louis Bossart 2021-12-07  2137                    
be->dpcm[stream].be_start++;
848aedfdc6ba25 Pierre-Louis Bossart 2021-12-07  2138                    if 
(be->dpcm[stream].be_start != 1)
848aedfdc6ba25 Pierre-Louis Bossart 2021-12-07  2139                            
goto next;
848aedfdc6ba25 Pierre-Louis Bossart 2021-12-07  2140  
a9faca15a644ff Kuninori Morimoto    2020-12-01  2141                    ret = 
soc_pcm_trigger(be_substream, cmd);
848aedfdc6ba25 Pierre-Louis Bossart 2021-12-07  2142                    if 
(ret) {
848aedfdc6ba25 Pierre-Louis Bossart 2021-12-07  2143                            
be->dpcm[stream].be_start--;
b2ae80663008a7 Takashi Iwai         2021-12-07  2144                            
goto next;
848aedfdc6ba25 Pierre-Louis Bossart 2021-12-07  2145                    }
01d7584cd2e5a9 Liam Girdwood        2012-04-25  2146  
3202e2f5fac003 Mark Brown           2021-08-30  2147                    
be->dpcm[stream].state = SND_SOC_DPCM_STATE_START;
01d7584cd2e5a9 Liam Girdwood        2012-04-25  2148                    break;
01d7584cd2e5a9 Liam Girdwood        2012-04-25  2149            case 
SNDRV_PCM_TRIGGER_PAUSE_RELEASE:
3aa1e96a2b95e2 Pierre-Louis Bossart 2021-12-07  2150                    if 
(!be->dpcm[stream].be_start &&
3aa1e96a2b95e2 Pierre-Louis Bossart 2021-12-07  2151                        
(be->dpcm[stream].state != SND_SOC_DPCM_STATE_START) &&
3aa1e96a2b95e2 Pierre-Louis Bossart 2021-12-07  2152                        
(be->dpcm[stream].state != SND_SOC_DPCM_STATE_STOP) &&
3aa1e96a2b95e2 Pierre-Louis Bossart 2021-12-07  2153                        
(be->dpcm[stream].state != SND_SOC_DPCM_STATE_PAUSED))
b2ae80663008a7 Takashi Iwai         2021-12-07  2154                            
goto next;
6479f7588651cb Pierre-Louis Bossart 2021-08-17  2155  
0ac790d31cc439 Pierre-Louis Bossart 2022-03-21  2156                    
fe->dpcm[stream].fe_pause = false;
0ac790d31cc439 Pierre-Louis Bossart 2022-03-21  2157                    
be->dpcm[stream].be_pause--;
0ac790d31cc439 Pierre-Louis Bossart 2022-03-21  2158  
848aedfdc6ba25 Pierre-Louis Bossart 2021-12-07  2159                    
be->dpcm[stream].be_start++;
848aedfdc6ba25 Pierre-Louis Bossart 2021-12-07  2160                    if 
(be->dpcm[stream].be_start != 1)
848aedfdc6ba25 Pierre-Louis Bossart 2021-12-07  2161                            
goto next;
848aedfdc6ba25 Pierre-Louis Bossart 2021-12-07  2162  
a9faca15a644ff Kuninori Morimoto    2020-12-01  2163                    ret = 
soc_pcm_trigger(be_substream, cmd);
848aedfdc6ba25 Pierre-Louis Bossart 2021-12-07  2164                    if 
(ret) {
848aedfdc6ba25 Pierre-Louis Bossart 2021-12-07  2165                            
be->dpcm[stream].be_start--;
b2ae80663008a7 Takashi Iwai         2021-12-07  2166                            
goto next;
848aedfdc6ba25 Pierre-Louis Bossart 2021-12-07  2167                    }
01d7584cd2e5a9 Liam Girdwood        2012-04-25  2168  
3202e2f5fac003 Mark Brown           2021-08-30  2169                    
be->dpcm[stream].state = SND_SOC_DPCM_STATE_START;
01d7584cd2e5a9 Liam Girdwood        2012-04-25  2170                    break;
01d7584cd2e5a9 Liam Girdwood        2012-04-25  2171            case 
SNDRV_PCM_TRIGGER_STOP:
21fca8bdbb64df 이경택               2020-04-01  2172                       if 
((be->dpcm[stream].state != SND_SOC_DPCM_STATE_START) &&
3202e2f5fac003 Mark Brown           2021-08-30  2173                        
(be->dpcm[stream].state != SND_SOC_DPCM_STATE_PAUSED))
b2ae80663008a7 Takashi Iwai         2021-12-07  2174                            
goto next;
01d7584cd2e5a9 Liam Girdwood        2012-04-25  2175  
848aedfdc6ba25 Pierre-Louis Bossart 2021-12-07  2176                    if 
(be->dpcm[stream].state == SND_SOC_DPCM_STATE_START)
848aedfdc6ba25 Pierre-Louis Bossart 2021-12-07  2177                            
be->dpcm[stream].be_start--;
848aedfdc6ba25 Pierre-Louis Bossart 2021-12-07  2178  
848aedfdc6ba25 Pierre-Louis Bossart 2021-12-07  2179                    if 
(be->dpcm[stream].be_start != 0)
b2ae80663008a7 Takashi Iwai         2021-12-07  2180                            
goto next;
01d7584cd2e5a9 Liam Girdwood        2012-04-25  2181  
0ac790d31cc439 Pierre-Louis Bossart 2022-03-21  2182                    if 
(fe->dpcm[stream].fe_pause)
0ac790d31cc439 Pierre-Louis Bossart 2022-03-21  2183                            
pause_stop_transition = true;
0ac790d31cc439 Pierre-Louis Bossart 2022-03-21  2184  
0ac790d31cc439 Pierre-Louis Bossart 2022-03-21 @2185                    if 
(pause_stop_transition) {
0ac790d31cc439 Pierre-Louis Bossart 2022-03-21  2186                            
fe->dpcm[stream].fe_pause = false;
0ac790d31cc439 Pierre-Louis Bossart 2022-03-21  2187                            
be->dpcm[stream].be_pause--;
0ac790d31cc439 Pierre-Louis Bossart 2022-03-21  2188                    }
0ac790d31cc439 Pierre-Louis Bossart 2022-03-21  2189  
0ac790d31cc439 Pierre-Louis Bossart 2022-03-21  2190                    if 
(be->dpcm[stream].be_pause != 0)
0ac790d31cc439 Pierre-Louis Bossart 2022-03-21  2191                            
ret = soc_pcm_trigger(be_substream, SNDRV_PCM_TRIGGER_PAUSE_PUSH);
0ac790d31cc439 Pierre-Louis Bossart 2022-03-21  2192                    else
0ac790d31cc439 Pierre-Louis Bossart 2022-03-21  2193                            
ret = soc_pcm_trigger(be_substream, SNDRV_PCM_TRIGGER_STOP);
0ac790d31cc439 Pierre-Louis Bossart 2022-03-21  2194  
848aedfdc6ba25 Pierre-Louis Bossart 2021-12-07  2195                    if 
(ret) {
848aedfdc6ba25 Pierre-Louis Bossart 2021-12-07  2196                            
if (be->dpcm[stream].state == SND_SOC_DPCM_STATE_START)
848aedfdc6ba25 Pierre-Louis Bossart 2021-12-07  2197                            
        be->dpcm[stream].be_start++;
0ac790d31cc439 Pierre-Louis Bossart 2022-03-21  2198                            
if (pause_stop_transition) {
0ac790d31cc439 Pierre-Louis Bossart 2022-03-21  2199                            
        fe->dpcm[stream].fe_pause = true;
0ac790d31cc439 Pierre-Louis Bossart 2022-03-21  2200                            
        be->dpcm[stream].be_pause++;
0ac790d31cc439 Pierre-Louis Bossart 2022-03-21  2201                            
}
b2ae80663008a7 Takashi Iwai         2021-12-07  2202                            
goto next;
848aedfdc6ba25 Pierre-Louis Bossart 2021-12-07  2203                    }
01d7584cd2e5a9 Liam Girdwood        2012-04-25  2204  
0ac790d31cc439 Pierre-Louis Bossart 2022-03-21  2205                    if 
(be->dpcm[stream].be_pause != 0)
0ac790d31cc439 Pierre-Louis Bossart 2022-03-21  2206                            
be->dpcm[stream].state = SND_SOC_DPCM_STATE_PAUSED;
0ac790d31cc439 Pierre-Louis Bossart 2022-03-21  2207                    else
3202e2f5fac003 Mark Brown           2021-08-30  2208                            
be->dpcm[stream].state = SND_SOC_DPCM_STATE_STOP;
0ac790d31cc439 Pierre-Louis Bossart 2022-03-21  2209  
01d7584cd2e5a9 Liam Girdwood        2012-04-25  2210                    break;
01d7584cd2e5a9 Liam Girdwood        2012-04-25  2211            case 
SNDRV_PCM_TRIGGER_SUSPEND:
3202e2f5fac003 Mark Brown           2021-08-30  2212                    if 
(be->dpcm[stream].state != SND_SOC_DPCM_STATE_START)
b2ae80663008a7 Takashi Iwai         2021-12-07  2213                            
goto next;
01d7584cd2e5a9 Liam Girdwood        2012-04-25  2214  
848aedfdc6ba25 Pierre-Louis Bossart 2021-12-07  2215                    
be->dpcm[stream].be_start--;
848aedfdc6ba25 Pierre-Louis Bossart 2021-12-07  2216                    if 
(be->dpcm[stream].be_start != 0)
b2ae80663008a7 Takashi Iwai         2021-12-07  2217                            
goto next;
01d7584cd2e5a9 Liam Girdwood        2012-04-25  2218  
a9faca15a644ff Kuninori Morimoto    2020-12-01  2219                    ret = 
soc_pcm_trigger(be_substream, cmd);
848aedfdc6ba25 Pierre-Louis Bossart 2021-12-07  2220                    if 
(ret) {
848aedfdc6ba25 Pierre-Louis Bossart 2021-12-07  2221                            
be->dpcm[stream].be_start++;
b2ae80663008a7 Takashi Iwai         2021-12-07  2222                            
goto next;
848aedfdc6ba25 Pierre-Louis Bossart 2021-12-07  2223                    }
01d7584cd2e5a9 Liam Girdwood        2012-04-25  2224  
3202e2f5fac003 Mark Brown           2021-08-30  2225                    
be->dpcm[stream].state = SND_SOC_DPCM_STATE_SUSPEND;
01d7584cd2e5a9 Liam Girdwood        2012-04-25  2226                    break;
01d7584cd2e5a9 Liam Girdwood        2012-04-25  2227            case 
SNDRV_PCM_TRIGGER_PAUSE_PUSH:
3202e2f5fac003 Mark Brown           2021-08-30  2228                    if 
(be->dpcm[stream].state != SND_SOC_DPCM_STATE_START)
b2ae80663008a7 Takashi Iwai         2021-12-07  2229                            
goto next;
01d7584cd2e5a9 Liam Girdwood        2012-04-25  2230  
0ac790d31cc439 Pierre-Louis Bossart 2022-03-21  2231                    
fe->dpcm[stream].fe_pause = true;
0ac790d31cc439 Pierre-Louis Bossart 2022-03-21  2232                    
be->dpcm[stream].be_pause++;
0ac790d31cc439 Pierre-Louis Bossart 2022-03-21  2233  
848aedfdc6ba25 Pierre-Louis Bossart 2021-12-07  2234                    
be->dpcm[stream].be_start--;
848aedfdc6ba25 Pierre-Louis Bossart 2021-12-07  2235                    if 
(be->dpcm[stream].be_start != 0)
b2ae80663008a7 Takashi Iwai         2021-12-07  2236                            
goto next;
01d7584cd2e5a9 Liam Girdwood        2012-04-25  2237  
a9faca15a644ff Kuninori Morimoto    2020-12-01  2238                    ret = 
soc_pcm_trigger(be_substream, cmd);
848aedfdc6ba25 Pierre-Louis Bossart 2021-12-07  2239                    if 
(ret) {
848aedfdc6ba25 Pierre-Louis Bossart 2021-12-07  2240                            
be->dpcm[stream].be_start++;
b2ae80663008a7 Takashi Iwai         2021-12-07  2241                            
goto next;
848aedfdc6ba25 Pierre-Louis Bossart 2021-12-07  2242                    }
01d7584cd2e5a9 Liam Girdwood        2012-04-25  2243  
3202e2f5fac003 Mark Brown           2021-08-30  2244                    
be->dpcm[stream].state = SND_SOC_DPCM_STATE_PAUSED;
01d7584cd2e5a9 Liam Girdwood        2012-04-25  2245                    break;
01d7584cd2e5a9 Liam Girdwood        2012-04-25  2246            }
b2ae80663008a7 Takashi Iwai         2021-12-07  2247  next:
b2ae80663008a7 Takashi Iwai         2021-12-07  2248            
snd_soc_dpcm_stream_unlock_irqrestore(be, stream, flags);
b2ae80663008a7 Takashi Iwai         2021-12-07  2249            if (ret)
b2ae80663008a7 Takashi Iwai         2021-12-07  2250                    break;
01d7584cd2e5a9 Liam Girdwood        2012-04-25  2251    }
db3aa39c910684 Kuninori Morimoto    2021-03-15  2252    if (ret < 0)
db3aa39c910684 Kuninori Morimoto    2021-03-15  2253            
dev_err(fe->dev, "ASoC: %s() failed at %s (%d)\n",
db3aa39c910684 Kuninori Morimoto    2021-03-15  2254                    
__func__, be->dai_link->name, ret);
01d7584cd2e5a9 Liam Girdwood        2012-04-25  2255    return ret;
01d7584cd2e5a9 Liam Girdwood        2012-04-25  2256  }
01d7584cd2e5a9 Liam Girdwood        2012-04-25  2257  
EXPORT_SYMBOL_GPL(dpcm_be_dai_trigger);
01d7584cd2e5a9 Liam Girdwood        2012-04-25  2258  

-- 
0-DAY CI Kernel Test Service
https://01.org/lkp
_______________________________________________
kbuild mailing list -- kbuild@lists.01.org
To unsubscribe send an email to kbuild-le...@lists.01.org

Reply via email to